From 887b4fa3ba57b2c8e3f80758616575e0096f7fe6 Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Wed, 2 Jan 2019 13:31:20 -0700 Subject: [PATCH] adjust read on SFTP get --- src/wolfsftp.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/wolfsftp.c b/src/wolfsftp.c index f0533a9..b21a727 100644 --- a/src/wolfsftp.c +++ b/src/wolfsftp.c @@ -5135,6 +5135,10 @@ int wolfSSH_SFTP_Get(WOLFSSH* ssh, char* from, state->handle, state->handleSz, state->gOfst, state->r, WOLFSSH_MAX_SFTP_RW); + if (wolfSSH_get_error(ssh) == WS_WANT_READ) { + return WS_FATAL_ERROR; + } + if (sz > 0) { if ((long)WFWRITE(state->r, 1, sz, state->fl) != sz) { @@ -5148,7 +5152,7 @@ int wolfSSH_SFTP_Get(WOLFSSH* ssh, char* from, } } } while (sz > 0 && ssh->sftpInt == 0); - if (ret != WS_SUCCESS) { + if (sz < 0) { state->state = STATE_GET_CLEANUP; continue; }