From 06df7c1b3186bfac123377f1433fcb4bb778eb9c Mon Sep 17 00:00:00 2001 From: milo Date: Sun, 8 Aug 2010 23:00:23 +0200 Subject: socket: Make sure we only transmit data if we have some. Signed-off-by: Andreas Schneider --- libssh/socket.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'libssh/socket.c') diff --git a/libssh/socket.c b/libssh/socket.c index d8e3ac1..9f50e20 100644 --- a/libssh/socket.c +++ b/libssh/socket.c @@ -511,8 +511,11 @@ void ssh_socket_fd_set(ssh_socket s, fd_set *set, socket_t *max_fd) { int ssh_socket_write(ssh_socket s, const void *buffer, int len) { ssh_session session = s->session; enter_function(); - if (buffer_add_data(s->out_buffer, buffer, len) < 0) { - return SSH_ERROR; + if(len > 0) { + if (buffer_add_data(s->out_buffer, buffer, len) < 0) { + return SSH_ERROR; + } + ssh_socket_set_towrite(s); } leave_function(); return SSH_OK; -- cgit