diff options
author | Matthew Chapman <matty@samba.org> | 1999-03-23 14:58:26 +0000 |
---|---|---|
committer | Matthew Chapman <matty@samba.org> | 1999-03-23 14:58:26 +0000 |
commit | 99020c9b090449e3113acc2ceb667cb41a63a6b8 (patch) | |
tree | 25a3cc2c8fafeef461fa5cdc906c6e81be2cd9e2 /source3/libsmb | |
parent | f7f718911b28ab5d57221ea5b3d26b202ef218e4 (diff) | |
download | samba-99020c9b090449e3113acc2ceb667cb41a63a6b8.tar.gz samba-99020c9b090449e3113acc2ceb667cb41a63a6b8.tar.bz2 samba-99020c9b090449e3113acc2ceb667cb41a63a6b8.zip |
ERRmoredata is informational and should not be treated as a hard error
anywhere.
(This used to be commit 71b861f7468d7950bedb61dd18a4b9d830bf8628)
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/clientgen.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c index e188cb3b99..bd5d58e4de 100644 --- a/source3/libsmb/clientgen.c +++ b/source3/libsmb/clientgen.c @@ -341,8 +341,6 @@ static BOOL cli_receive_trans(struct cli_state *cli,int trans, int total_data=0; int total_param=0; int this_data,this_param; - uint8 eclass; - uint32 num; *data_len = *param_len = 0; @@ -357,8 +355,7 @@ static BOOL cli_receive_trans(struct cli_state *cli,int trans, return(False); } - /* DOS error "more data" is an acceptable error code */ - if (cli_error(cli, &eclass, &num) && !(eclass == ERRDOS && num == ERRmoredata)) + if (cli_error(cli, NULL, NULL)) { return(False); } @@ -409,8 +406,8 @@ static BOOL cli_receive_trans(struct cli_state *cli,int trans, CVAL(cli->inbuf,smb_com))); return(False); } - /* DOS error "more data" is an acceptable error code */ - if (cli_error(cli, &eclass, &num) && eclass != ERRDOS && num != ERRmoredata) + + if (cli_error(cli, NULL, NULL)) { return(False); } @@ -1381,7 +1378,8 @@ size_t cli_read(struct cli_state *cli, int fnum, char *buf, off_t offset, size_t mid = SVAL(cli->inbuf, smb_mid) - cli->mid; size2 = SVAL(cli->inbuf, smb_vwv5); - if (CVAL(cli->inbuf,smb_rcls) != 0) { + if (cli_error(cli, NULL, NULL)) + { blocks = MIN(blocks, mid-1); continue; } @@ -2535,6 +2533,7 @@ int cli_error(struct cli_state *cli, uint8 *eclass, uint32 *num) case ERRrename: return EEXIST; case ERRbadshare: return EBUSY; case ERRlock: return EBUSY; + case ERRmoredata: return 0; /* Informational only */ } } if (rcls == ERRSRV) { |