[SCM] Samba Shared Repository - branch master updated

Andreas Schneider asn at samba.org
Tue Apr 11 13:48:01 UTC 2023


The branch, master has been updated
       via  d788d3d974a s3-client: Provide more information on protocol negotiation failures
      from  ad7418d23f8 lib:replace: Fix snprintf of rep_inet_ntop()

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit d788d3d974ac4393f0286ab20f4e7b561d6761ec
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Tue Mar 14 13:01:07 2023 +1300

    s3-client: Provide more information on protocol negotiation failures
    
    In particular, this may help track down REASON: Exception: Exception: protocol negotiation failed: NT_STATUS_IO_TIMEOUT
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Ralph Boehme <slow at samba.org>
    
    Autobuild-User(master): Andreas Schneider <asn at cryptomilk.org>
    Autobuild-Date(master): Tue Apr 11 13:47:01 UTC 2023 on atb-devel-224

-----------------------------------------------------------------------

Summary of changes:
 source3/libsmb/clidfs.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/libsmb/clidfs.c b/source3/libsmb/clidfs.c
index 9982f97d43a..d111fce033a 100644
--- a/source3/libsmb/clidfs.c
+++ b/source3/libsmb/clidfs.c
@@ -27,6 +27,7 @@
 #include "libsmb/nmblib.h"
 #include "../libcli/smb/smbXcli_base.h"
 #include "auth/credentials/credentials.h"
+#include "lib/param/param.h"
 
 /********************************************************************
  Important point.
@@ -196,8 +197,16 @@ static NTSTATUS do_connect(TALLOC_CTX *ctx,
 				 lp_client_min_protocol(),
 				 lp_client_max_protocol());
 
-	if (!NT_STATUS_IS_OK(status)) {
-		d_printf("protocol negotiation failed: %s\n",
+	if (NT_STATUS_EQUAL(status, NT_STATUS_IO_TIMEOUT)) {
+		d_printf("Protocol negotiation (with timeout %d ms) timed out against server %s\n",
+			 c->timeout,
+			 smbXcli_conn_remote_name(c->conn));
+		cli_shutdown(c);
+	} else if (!NT_STATUS_IS_OK(status)) {
+		d_printf("Protocol negotiation to server %s (for a protocol between %s and %s) failed: %s\n",
+			 smbXcli_conn_remote_name(c->conn),
+			 lpcfg_get_smb_protocol(lp_client_min_protocol()),
+			 lpcfg_get_smb_protocol(lp_client_max_protocol()),
 			 nt_errstr(status));
 		cli_shutdown(c);
 		return status;


-- 
Samba Shared Repository



More information about the samba-cvs mailing list