svn commit: samba r11080 - in branches/SAMBA_4_0/source/auth/ntlmssp: .

jra at samba.org jra at samba.org
Sat Oct 15 00:48:48 GMT 2005


Author: jra
Date: 2005-10-15 00:48:47 +0000 (Sat, 15 Oct 2005)
New Revision: 11080

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

Log:
Narrowing down on the #1828 PPC bug. The PPC client sends an
initial NTLMSSP negotiate blob of only 16 bytes - no strings
added ! (So don't try parsing them).
Jeremy.

Modified:
   branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_server.c


Changeset:
Modified: branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_server.c
===================================================================
--- branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_server.c	2005-10-15 00:46:38 UTC (rev 11079)
+++ branches/SAMBA_4_0/source/auth/ntlmssp/ntlmssp_server.c	2005-10-15 00:48:47 UTC (rev 11080)
@@ -186,28 +186,16 @@
 #endif
 
 	if (in.length) {
-		BOOL parse_ok = msrpc_parse(out_mem_ctx,
-				 &in, "CddAA",
-				 "NTLMSSP",
-				 &ntlmssp_command,
-				 &neg_flags,
-				 &cliname,
-				 &domname);
-		if (!parse_ok) {
-			parse_ok = msrpc_parse(out_mem_ctx,
-					 &in, "CddUU",
-					 "NTLMSSP",
-					 &ntlmssp_command,
-					 &neg_flags,
-					 &cliname,
-					 &domname);
-		}
-		if (!parse_ok) {
-			DEBUG(1, ("ntlmssp_server_negotiate: failed to parse NTLMSSP:\n"));
+		if ((in.length < 16) || !msrpc_parse(out_mem_ctx, &in, "Cdd",
+							 "NTLMSSP",
+							 &ntlmssp_command,
+							 &neg_flags)) {
+			DEBUG(1, ("ntlmssp_server_negotiate: failed to parse "
+				"NTLMSSP Negotiate of length %u:\n",
+				(unsigned int)in.length ));
 			dump_data(2, in.data, in.length);
 			return NT_STATUS_INVALID_PARAMETER;
 		}
-		
 		debug_ntlmssp_flags(neg_flags);
 	}
 	



More information about the samba-cvs mailing list