[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Fri Jan 27 07:28:04 MST 2012


The branch, master has been updated
       via  c543ce1 libcli/smb: fix smbXcli_negprot(..., PROTOCOL_NT1, PROTOCOL_SMB2_02)
      from  2dd696a s3-waf: Create a subsystem for SERVER_MUTEX.

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


- Log -----------------------------------------------------------------
commit c543ce102890532c45ec9b293b705336f0e2c5bf
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 27 13:39:54 2012 +0100

    libcli/smb: fix smbXcli_negprot(..., PROTOCOL_NT1, PROTOCOL_SMB2_02)
    
    The SMB1 negprot request already consumed the SMB2 sequence '0'.
    This also happens for the SMB 2.02 case.
    
    metze
    
    Autobuild-User: Stefan Metzmacher <metze at samba.org>
    Autobuild-Date: Fri Jan 27 15:27:41 CET 2012 on sn-devel-104

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

Summary of changes:
 libcli/smb/smbXcli_base.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/libcli/smb/smbXcli_base.c b/libcli/smb/smbXcli_base.c
index ba40ef7..06fcb34 100644
--- a/libcli/smb/smbXcli_base.c
+++ b/libcli/smb/smbXcli_base.c
@@ -3838,10 +3838,8 @@ static void smbXcli_negprot_smb2_done(struct tevent_req *subreq)
 
 		/*
 		 * send a SMB2 negprot, in order to negotiate
-		 * the SMB2 dialect. This needs to use the
-		 * message id 1.
+		 * the SMB2 dialect.
 		 */
-		state->conn->smb2.mid = 1;
 		subreq = smbXcli_negprot_smb2_subreq(state);
 		if (tevent_req_nomem(subreq, req)) {
 			return;
@@ -3921,6 +3919,11 @@ static NTSTATUS smbXcli_negprot_dispatch_incoming(struct smbXcli_conn *conn,
 			substate->smb1.recv_iov = NULL;
 		}
 
+		/*
+		 * we got an SMB2 answer, which consumed sequence number 0
+		 * so we need to use 1 as the next one
+		 */
+		conn->smb2.mid = 1;
 		tevent_req_set_callback(subreq, smbXcli_negprot_smb2_done, req);
 		conn->dispatch_incoming = smb2cli_conn_dispatch_incoming;
 		return smb2cli_conn_dispatch_incoming(conn, tmp_mem, inbuf);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list