Prevent NT_STATUS 0xF1000000 errors from appearing when
authorJim McDonough <jmcd@samba.org>
Wed, 13 Aug 2008 22:03:51 +0000 (18:03 -0400)
committerMichael Adam <obnox@samba.org>
Thu, 14 Aug 2008 09:22:46 +0000 (11:22 +0200)
dos errors are used and there is no error.  It should
be mapped directly to NT_STATUS_OK.  smbclient to older
servers didn't work.
(This used to be commit 78f009b7ef1f1d63b21df9ba6da7fcca01c12109)

source3/libsmb/async_smb.c

index 04c22a9d17c9a7730e4a42dd775c378cf6a940b6..58bba2bfc703d130686442bdaf1980ed5a0a794a 100644 (file)
@@ -31,6 +31,12 @@ NTSTATUS cli_pull_error(char *buf)
                return NT_STATUS(IVAL(buf, smb_rcls));
        }
 
+       /* if the client uses dos errors, but there is no error,
+          we should return no error here, otherwise it looks
+          like an unknown bad NT_STATUS. jmcd */
+       if (CVAL(buf, smb_rcls) == 0)
+               return NT_STATUS_OK;
+
        return NT_STATUS_DOS(CVAL(buf, smb_rcls), SVAL(buf,smb_err));
 }