svn commit: samba r24281 - in branches: SAMBA_3_0_25/source/libsmb SAMBA_3_2/source/libsmb SAMBA_3_2_0/source/libsmb

jra at samba.org jra at samba.org
Wed Aug 8 23:56:57 GMT 2007


Author: jra
Date: 2007-08-08 23:56:55 +0000 (Wed, 08 Aug 2007)
New Revision: 24281

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=24281

Log:
Fix bug found by Herb. The vuid entry in the cli_state structure gets
left as nonzero as returned by the failed cli_session_setup_spnego. When we then try
to authenticate as the user in cli_session_setup this returns an
error "Bad userid" (as seen in wireshark).
"We should only leave cli->vuid != 0 on success. Looks like it's
getting set in the cli_session_setup_blob_receive() call and not
cleared again on error."
Jeremy.

Modified:
   branches/SAMBA_3_0_25/source/libsmb/cliconnect.c
   branches/SAMBA_3_2/source/libsmb/cliconnect.c
   branches/SAMBA_3_2_0/source/libsmb/cliconnect.c


Changeset:
Modified: branches/SAMBA_3_0_25/source/libsmb/cliconnect.c
===================================================================
--- branches/SAMBA_3_0_25/source/libsmb/cliconnect.c	2007-08-08 20:06:17 UTC (rev 24280)
+++ branches/SAMBA_3_0_25/source/libsmb/cliconnect.c	2007-08-08 23:56:55 UTC (rev 24281)
@@ -584,6 +584,7 @@
 					NT_STATUS_MORE_PROCESSING_REQUIRED)) {
 			DEBUG(0, ("cli_session_setup_blob: recieve failed (%s)\n",
 				nt_errstr(cli_get_nt_error(cli)) ));
+			cli->vuid = 0;
 			return False;
 		}
 	}
@@ -770,6 +771,9 @@
 
 	ntlmssp_end(&ntlmssp_state);
 
+	if (!NT_STATUS_IS_OK(nt_status)) {
+		cli->vuid = 0;
+	}
 	return nt_status;
 }
 

Modified: branches/SAMBA_3_2/source/libsmb/cliconnect.c
===================================================================
--- branches/SAMBA_3_2/source/libsmb/cliconnect.c	2007-08-08 20:06:17 UTC (rev 24280)
+++ branches/SAMBA_3_2/source/libsmb/cliconnect.c	2007-08-08 23:56:55 UTC (rev 24281)
@@ -583,6 +583,7 @@
 					NT_STATUS_MORE_PROCESSING_REQUIRED)) {
 			DEBUG(0, ("cli_session_setup_blob: recieve failed (%s)\n",
 				nt_errstr(cli_get_nt_error(cli)) ));
+			cli->vuid = 0;
 			return False;
 		}
 	}
@@ -769,6 +770,9 @@
 
 	ntlmssp_end(&ntlmssp_state);
 
+	if (!NT_STATUS_IS_OK(nt_status)) {
+		cli->vuid = 0;
+	}
 	return nt_status;
 }
 

Modified: branches/SAMBA_3_2_0/source/libsmb/cliconnect.c
===================================================================
--- branches/SAMBA_3_2_0/source/libsmb/cliconnect.c	2007-08-08 20:06:17 UTC (rev 24280)
+++ branches/SAMBA_3_2_0/source/libsmb/cliconnect.c	2007-08-08 23:56:55 UTC (rev 24281)
@@ -583,6 +583,7 @@
 					NT_STATUS_MORE_PROCESSING_REQUIRED)) {
 			DEBUG(0, ("cli_session_setup_blob: recieve failed (%s)\n",
 				nt_errstr(cli_get_nt_error(cli)) ));
+			cli->vuid = 0;
 			return False;
 		}
 	}
@@ -769,6 +770,9 @@
 
 	ntlmssp_end(&ntlmssp_state);
 
+	if (!NT_STATUS_IS_OK(nt_status)) {
+		cli->vuid = 0;
+	}
 	return nt_status;
 }
 



More information about the samba-cvs mailing list