Skip to content

Commit 462d77b

Browse files
adjustments to NoticeError use with wolfsftp
1 parent 4feb908 commit 462d77b

File tree

1 file changed

+13
-22
lines changed

1 file changed

+13
-22
lines changed

src/wolfsftp.c

Lines changed: 13 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6989,14 +6989,12 @@ static int SFTP_STAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr, byte type)
69896989
WLOG(WS_LOG_SFTP, "SFTP LSTAT STATE: SEND_TYPE_REQ");
69906990
ret = SendPacketType(ssh, type, (byte*)dir, state->dirSz);
69916991
if (ret != WS_SUCCESS) {
6992-
if (ssh->error == WS_WANT_READ ||
6993-
ssh->error == WS_WANT_WRITE)
6992+
if (NoticeError(ssh)) {
69946993
return WS_FATAL_ERROR;
6995-
else {
6996-
ret_fatal = 1;
6997-
state->state = STATE_LSTAT_CLEANUP;
6998-
continue;
69996994
}
6995+
ret_fatal = 1;
6996+
state->state = STATE_LSTAT_CLEANUP;
6997+
continue;
70006998
}
70016999
state->state = STATE_LSTAT_GET_HEADER;
70027000
FALL_THROUGH;
@@ -7007,14 +7005,12 @@ static int SFTP_STAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr, byte type)
70077005
ret = SFTP_GetHeader(ssh, &state->reqId, &state->type,
70087006
&state->buffer);
70097007
if (ret <= 0) {
7010-
if (ssh->error == WS_WANT_READ ||
7011-
ssh->error == WS_WANT_WRITE)
7008+
if (NoticeError(ssh)) {
70127009
return WS_FATAL_ERROR;
7013-
else {
7014-
state->state = STATE_LSTAT_CLEANUP;
7015-
ret_fatal = 1;
7016-
continue;
70177010
}
7011+
state->state = STATE_LSTAT_CLEANUP;
7012+
ret_fatal = 1;
7013+
continue;
70187014
}
70197015

70207016
state->state = STATE_LSTAT_CHECK_REQ_ID;
@@ -7726,12 +7722,8 @@ int wolfSSH_SFTP_SendReadPacket(WOLFSSH* ssh, byte* handle, word32 handleSz,
77267722
if (NoticeError(ssh)) {
77277723
return WS_FATAL_ERROR;
77287724
}
7729-
if (ssh->error != WS_WANT_READ &&
7730-
ssh->error != WS_WANT_WRITE) {
7731-
state->state = STATE_SEND_READ_CLEANUP;
7732-
continue;
7733-
}
7734-
return ret;
7725+
state->state = STATE_SEND_READ_CLEANUP;
7726+
continue;
77357727
}
77367728
wolfSSH_SFTP_buffer_free(ssh, &state->buffer);
77377729
state->state = STATE_SEND_READ_GET_HEADER;
@@ -8855,9 +8847,9 @@ int wolfSSH_SFTP_Get(WOLFSSH* ssh, char* from,
88558847
WLOG(WS_LOG_SFTP, "SFTP GET STATE: STAT");
88568848
ret = wolfSSH_SFTP_STAT(ssh, from, &state->attrib);
88578849
if (ret != WS_SUCCESS) {
8858-
if (ssh->error == WS_WANT_READ ||
8859-
ssh->error == WS_WANT_WRITE)
8850+
if (NoticeError(ssh)) {
88608851
return WS_FATAL_ERROR;
8852+
}
88618853
WLOG(WS_LOG_SFTP, "Error verifying file");
88628854
state->state = STATE_GET_CLEANUP;
88638855
continue;
@@ -8882,8 +8874,7 @@ int wolfSSH_SFTP_Get(WOLFSSH* ssh, char* from,
88828874
ret = wolfSSH_SFTP_Open(ssh, from, WOLFSSH_FXF_READ, NULL,
88838875
state->handle, &state->handleSz);
88848876
if (ret != WS_SUCCESS) {
8885-
if (ssh->error == WS_WANT_READ ||
8886-
ssh->error == WS_WANT_WRITE) {
8877+
if (NoticeError(ssh)) {
88878878
return WS_FATAL_ERROR;
88888879
}
88898880
WLOG(WS_LOG_SFTP, "Error getting handle");

0 commit comments

Comments
 (0)