Skip to content

Commit b813327

Browse files
Use NoticeError through out in wolfsftp for non fatal error checking
1 parent 8975bc8 commit b813327

File tree

1 file changed

+16
-26
lines changed

1 file changed

+16
-26
lines changed

src/wolfsftp.c

Lines changed: 16 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6435,15 +6435,15 @@ static WS_SFTPNAME* wolfSSH_SFTP_DoName(WOLFSSH* ssh)
64356435
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
64366436
wolfSSH_SFTP_buffer_size(&state->buffer));
64376437
if (ret < 0) {
6438-
if (ssh->error != WS_WANT_READ) {
6438+
if (!NoticeError(ssh)) {
64396439
wolfSSH_SFTP_ClearState(ssh, STATE_ID_NAME);
64406440
}
64416441
return NULL;
64426442
}
64436443

64446444
wolfSSH_SFTP_buffer_rewind(&state->buffer);
64456445
wolfSSH_SFTP_DoStatus(ssh, reqId, &state->buffer);
6446-
if (ssh->error != WS_WANT_READ) {
6446+
if (!NoticeError(ssh)) {
64476447
wolfSSH_SFTP_ClearState(ssh, STATE_ID_NAME);
64486448
}
64496449
return NULL;
@@ -6458,7 +6458,7 @@ static WS_SFTPNAME* wolfSSH_SFTP_DoName(WOLFSSH* ssh)
64586458
wolfSSH_SFTP_buffer_size(&state->buffer) -
64596459
wolfSSH_SFTP_buffer_idx(&state->buffer));
64606460
if (ret <= 0) {
6461-
if (ssh->error != WS_WANT_READ) {
6461+
if (!NoticeError(ssh)) {
64626462
wolfSSH_SFTP_ClearState(ssh, STATE_ID_NAME);
64636463
}
64646464
return NULL;
@@ -6909,8 +6909,7 @@ int wolfSSH_SFTP_CHMOD(WOLFSSH* ssh, char* n, char* oct)
69096909
case STATE_CHMOD_GET:
69106910
/* get current attributes of path */
69116911
if ((ret = wolfSSH_SFTP_STAT(ssh, n, &state->atr)) != WS_SUCCESS) {
6912-
if (ssh->error != WS_WANT_READ
6913-
&& ssh->error != WS_WANT_WRITE) {
6912+
if (!NoticeError(ssh)) {
69146913
break;
69156914
}
69166915
return ret;
@@ -7042,7 +7041,7 @@ static int SFTP_STAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr, byte type)
70427041
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
70437042
wolfSSH_SFTP_buffer_size(&state->buffer));
70447043
if (ret < 0) {
7045-
if (ssh->error != WS_WANT_READ) {
7044+
if (!NoticeError(ssh)) {
70467045
wolfSSH_SFTP_ClearState(ssh, STATE_ID_LSTAT);
70477046
}
70487047
return WS_FATAL_ERROR;
@@ -7211,8 +7210,7 @@ int wolfSSH_SFTP_SetSTAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr)
72117210
/* send header and type specific data */
72127211
case STATE_SET_ATR_SEND:
72137212
if (wolfSSH_SFTP_buffer_send(ssh, &state->buffer) < 0) {
7214-
if (ssh->error != WS_WANT_READ
7215-
&& ssh->error != WS_WANT_WRITE) {
7213+
if (!NoticeError(ssh)) {
72167214
ret = WS_FATAL_ERROR;
72177215
break;
72187216
}
@@ -7229,8 +7227,7 @@ int wolfSSH_SFTP_SetSTAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr)
72297227
case STATE_SET_ATR_GET:
72307228
maxSz = SFTP_GetHeader(ssh, &state->reqId, &type, &state->buffer);
72317229
if (maxSz <= 0) {
7232-
if (ssh->error != WS_WANT_READ
7233-
&& ssh->error != WS_WANT_WRITE) {
7230+
if (!NoticeError(ssh)) {
72347231
ret = WS_FATAL_ERROR;
72357232
break;
72367233
}
@@ -7257,8 +7254,7 @@ int wolfSSH_SFTP_SetSTAT(WOLFSSH* ssh, char* dir, WS_SFTP_FILEATRB* atr)
72577254
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
72587255
wolfSSH_SFTP_buffer_size(&state->buffer));
72597256
if (ret < 0) {
7260-
if (ssh->error != WS_WANT_READ
7261-
&& ssh->error != WS_WANT_WRITE) {
7257+
if (!NoticeError(ssh)) {
72627258
ret = WS_FATAL_ERROR;
72637259
break;
72647260
}
@@ -8174,8 +8170,7 @@ int wolfSSH_SFTP_Close(WOLFSSH* ssh, byte* handle, word32 handleSz)
81748170
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
81758171
wolfSSH_SFTP_buffer_size(&state->buffer));
81768172
if (ret < 0) {
8177-
if (ssh->error != WS_WANT_WRITE &&
8178-
ssh->error != WS_WANT_READ) {
8173+
if (!NoticeError(ssh)) {
81798174
wolfSSH_SFTP_buffer_free(ssh, &state->buffer);
81808175
}
81818176
return WS_FATAL_ERROR;
@@ -8521,8 +8516,7 @@ int wolfSSH_SFTP_Remove(WOLFSSH* ssh, char* f)
85218516
case STATE_RM_LSTAT:
85228517
/* check file is there to be removed */
85238518
if ((ret = wolfSSH_SFTP_LSTAT(ssh, f, &atrb)) != WS_SUCCESS) {
8524-
if (ssh->error != WS_WANT_WRITE
8525-
&& ssh->error != WS_WANT_READ) {
8519+
if (!NoticeError(ssh)) {
85268520
WLOG(WS_LOG_SFTP, "Error verifying file");
85278521
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RM);
85288522
}
@@ -8535,8 +8529,7 @@ int wolfSSH_SFTP_Remove(WOLFSSH* ssh, char* f)
85358529
ret = SendPacketType(ssh, WOLFSSH_FTP_REMOVE, (byte*)f,
85368530
(word32)WSTRLEN(f));
85378531
if (ret != WS_SUCCESS) {
8538-
if (ssh->error != WS_WANT_WRITE
8539-
&& ssh->error != WS_WANT_READ) {
8532+
if (!NoticeError(ssh)) {
85408533
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RM);
85418534
}
85428535
return ret;
@@ -8547,8 +8540,7 @@ int wolfSSH_SFTP_Remove(WOLFSSH* ssh, char* f)
85478540
case STATE_RM_GET:
85488541
ret = SFTP_GetHeader(ssh, &state->reqId, &type, &state->buffer);
85498542
if (ret <= 0 || type != WOLFSSH_FTP_STATUS) {
8550-
if (ssh->error != WS_WANT_WRITE
8551-
&& ssh->error != WS_WANT_READ) {
8543+
if (!NoticeError(ssh)) {
85528544
WLOG(WS_LOG_SFTP, "Unexpected packet type");
85538545
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RM);
85548546
}
@@ -8566,8 +8558,7 @@ int wolfSSH_SFTP_Remove(WOLFSSH* ssh, char* f)
85668558
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
85678559
wolfSSH_SFTP_buffer_size(&state->buffer));
85688560
if (ret < 0) {
8569-
if (ssh->error != WS_WANT_WRITE
8570-
&& ssh->error != WS_WANT_READ) {
8561+
if (!NoticeError(ssh)) {
85718562
WLOG(WS_LOG_SFTP, "Unexpected packet type");
85728563
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RM);
85738564
}
@@ -8628,8 +8619,7 @@ int wolfSSH_SFTP_RMDIR(WOLFSSH* ssh, char* dir)
86288619
ret = SendPacketType(ssh, WOLFSSH_FTP_RMDIR, (byte*)dir,
86298620
(word32)WSTRLEN(dir));
86308621
if (ret != WS_SUCCESS) {
8631-
if (ssh->error != WS_WANT_READ
8632-
&& ssh->error != WS_WANT_WRITE) {
8622+
if (!NoticeError(ssh)) {
86338623
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RMDIR);
86348624
}
86358625
return ret;
@@ -8640,7 +8630,7 @@ int wolfSSH_SFTP_RMDIR(WOLFSSH* ssh, char* dir)
86408630
case STATE_RMDIR_GET:
86418631
ret = SFTP_GetHeader(ssh, &state->reqId, &type, &state->buffer);
86428632
if (ret <= 0 || type != WOLFSSH_FTP_STATUS) {
8643-
if (ssh->error != WS_WANT_READ) {
8633+
if (!NoticeError(ssh)) {
86448634
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RMDIR);
86458635
WLOG(WS_LOG_SFTP, "Unexpected packet type");
86468636
}
@@ -8657,7 +8647,7 @@ int wolfSSH_SFTP_RMDIR(WOLFSSH* ssh, char* dir)
86578647
ret = wolfSSH_SFTP_buffer_read(ssh, &state->buffer,
86588648
wolfSSH_SFTP_buffer_size(&state->buffer));
86598649
if (ret < 0) {
8660-
if (ssh->error != WS_WANT_READ)
8650+
if (!NoticeError(ssh))
86618651
wolfSSH_SFTP_ClearState(ssh, STATE_ID_RMDIR);
86628652
return WS_FATAL_ERROR;
86638653
}

0 commit comments

Comments
 (0)