Ensure we map our own Samba return of ERRSRV, ERRunknownsmb
authorJeremy Allison <jra@samba.org>
Fri, 2 Dec 2011 18:28:23 +0000 (10:28 -0800)
committerJeremy Allison <jra@samba.org>
Fri, 2 Dec 2011 19:41:02 +0000 (20:41 +0100)
on an unknown SMB request to NT_STATUS_NOT_IMPLEMENTED.

source3/client/client.c
source3/libsmb/errormap.c

index ed95fdf16083559cfdb6db78304de9e85e992ab3..b3559170136a7a3b293d72973830c309961c2c62 100644 (file)
@@ -399,8 +399,11 @@ NTSTATUS smbclient_cli_open(struct cli_state *cli, const char *fname, int flags,
        if (NT_STATUS_EQUAL(status,NT_STATUS_NOT_IMPLEMENTED) ||
                        NT_STATUS_EQUAL(status,NT_STATUS_INVALID_INFO_CLASS) ||
                        NT_STATUS_EQUAL(status,NT_STATUS_PROCEDURE_NOT_FOUND) ||
+                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_LEVEL) ||
                        NT_STATUS_EQUAL(status,NT_STATUS_INVALID_PARAMETER) ||
                        NT_STATUS_EQUAL(status,NT_STATUS_INVALID_DEVICE_REQUEST) ||
+                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_DEVICE_STATE) ||
+                       NT_STATUS_EQUAL(status,NT_STATUS_CTL_FILE_NOT_SUPPORTED) ||
                        NT_STATUS_EQUAL(status,NT_STATUS_UNSUCCESSFUL)) {
                goto try_openx;
        }
index 975de4f3c6b37cbb7a9b087826a0a1656712df1d..b80065dde0fd8da6c6bcbbcab9f4ff4de9ffa3cc 100644 (file)
@@ -166,6 +166,7 @@ static const struct {
        {ERRSRV,        ERRnoroom,      NT_STATUS_DISK_FULL},
        {ERRSRV,        ERRnoresource,  NT_STATUS_REQUEST_NOT_ACCEPTED},
        {ERRSRV,        ERRtoomanyuids, NT_STATUS_TOO_MANY_SESSIONS},
+       {ERRSRV,        ERRunknownsmb,  NT_STATUS_NOT_IMPLEMENTED},
        {ERRSRV,        123,    NT_STATUS_OBJECT_NAME_INVALID},
        {ERRSRV,        206,    NT_STATUS_OBJECT_NAME_INVALID},
        {ERRHRD,        1,      NT_STATUS_NOT_IMPLEMENTED},