diff options
author | Jeremy Allison <jra@samba.org> | 2001-12-10 19:18:56 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-12-10 19:18:56 +0000 |
commit | 3c68b94199ff08b205d1eb14da56804936b900a8 (patch) | |
tree | a23395d2a93ce915da00508a2cc561ec19563009 | |
parent | 55d55e311e67ea75e13c4a81fe3033b43bed38ca (diff) | |
download | samba-3c68b94199ff08b205d1eb14da56804936b900a8.tar.gz samba-3c68b94199ff08b205d1eb14da56804936b900a8.tar.xz samba-3c68b94199ff08b205d1eb14da56804936b900a8.zip |
RAP error strings take precedence as they are not encoded in the SMB header
(ie. the call can succeed, but still be an encoded error).
Jeremy.
-rw-r--r-- | source/libsmb/clierror.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/source/libsmb/clierror.c b/source/libsmb/clierror.c index e4d931b965e..cd1f86a4767 100644 --- a/source/libsmb/clierror.c +++ b/source/libsmb/clierror.c @@ -72,7 +72,14 @@ char *cli_errstr(struct cli_state *cli) uint8 errclass; int i; - /* Case #1: 32-bit NT errors */ + /* Case #1: RAP error */ + for (i = 0; rap_errmap[i].message != NULL; i++) { + if (rap_errmap[i].err == cli->rap_error) { + return rap_errmap[i].message; + } + } + + /* Case #2: 32-bit NT errors */ if (flgs2 & FLAGS2_32_BIT_ERROR_CODES) { NTSTATUS status = NT_STATUS(IVAL(cli->inbuf,smb_rcls)); @@ -81,18 +88,11 @@ char *cli_errstr(struct cli_state *cli) cli_dos_error(cli, &errclass, &errnum); - /* Case #2: SMB error */ + /* Case #3: SMB error */ if (errclass != 0) return cli_smb_errstr(cli); - /* Case #3: RAP error */ - for (i = 0; rap_errmap[i].message != NULL; i++) { - if (rap_errmap[i].err == cli->rap_error) { - return rap_errmap[i].message; - } - } - slprintf(cli_error_message, sizeof(cli_error_message) - 1, "code %d", cli->rap_error); |