From 94db97821876532de7c49d2561498159d3d3eb61 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Thu, 11 Jul 2013 18:34:49 +1000 Subject: [PATCH] flush channel after EOF and CLOSE --- src/channels.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/channels.c b/src/channels.c index 728f6c18..c62da229 100644 --- a/src/channels.c +++ b/src/channels.c @@ -1147,6 +1147,10 @@ int ssh_channel_send_eof(ssh_channel channel){ channel->local_channel, channel->remote_channel); + rc = ssh_channel_flush(channel); + if(rc == SSH_ERROR) + goto error; + channel->local_eof = 1; return rc; @@ -1203,6 +1207,10 @@ int ssh_channel_close(ssh_channel channel){ channel->state=SSH_CHANNEL_STATE_CLOSED; } + rc = ssh_channel_flush(channel); + if(rc == SSH_ERROR) + goto error; + return rc; error: buffer_reinit(session->out_buffer);