From 5422862c9954a064c10576805b1c0f979ccaf70f Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 17 Sep 2013 11:24:05 -0700 Subject: [PATCH 1/2] s3: libsmb : Bug 10150 - Not all OEM servers support the ALTNAME info level. Just ignore and print error message and an altname of "" if the server returns NT_STATUS_NOT_SUPPORTED. Signed-off-by: Jeremy Allison Reviewed-by: Volker Lendecke Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Tue Sep 17 23:40:08 CEST 2013 on sn-devel-104 (cherry picked from commit 17a9a0f37bbb730d09b3a57b00665d44aac18ea6) --- source3/client/client.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/source3/client/client.c b/source3/client/client.c index 0d1f5b4..0e05c89 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -1709,7 +1709,15 @@ static int do_allinfo(const char *name) if (!NT_STATUS_IS_OK(status)) { d_printf("%s getting alt name for %s\n", nt_errstr(status), name); - return false; + /* + * Ignore not supported, it does not hurt if we can't list + * alternate names. + */ + if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_SUPPORTED)) { + altname[0] = '\0'; + } else { + return false; + } } d_printf("altname: %s\n", altname); -- 1.8.1.2 From d280b73d5206653e9c5e7522ab5e5e8c9c50329a Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 17 Sep 2013 18:10:16 -0700 Subject: [PATCH 2/2] s3: libsmb - 10150 - Not all OEM servers support the ALTNAME info level. Sigh. Some OEM servers return NT_STATUS_NOT_IMPLEMENTED not NT_STATUS_NOT_SUPPORTED. Signed-off-by: Jeremy Allison Reviewed-by: Volker Lendecke (cherry picked from commit 75f353b857d50291672adefc6eefd210c9e8a0f7) --- source3/client/client.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/source3/client/client.c b/source3/client/client.c index 0e05c89..afa5847 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -1710,10 +1710,11 @@ static int do_allinfo(const char *name) d_printf("%s getting alt name for %s\n", nt_errstr(status), name); /* - * Ignore not supported, it does not hurt if we can't list - * alternate names. + * Ignore not supported or not implemented, it does not + * hurt if we can't list alternate names. */ - if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_SUPPORTED)) { + if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_SUPPORTED) || + NT_STATUS_EQUAL(status, NT_STATUS_NOT_IMPLEMENTED)) { altname[0] = '\0'; } else { return false; -- 1.8.1.2