svn commit: lorikeet r654 - in trunk/heimdal/lib/gssapi/krb5: .

abartlet at samba.org abartlet at samba.org
Tue Nov 7 06:23:58 GMT 2006


Author: abartlet
Date: 2006-11-07 06:23:57 +0000 (Tue, 07 Nov 2006)
New Revision: 654

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

Log:
With this patch, WinXP as a client accepts our replies from the
DCE/RPC server.

Andrew Bartlett

Modified:
   trunk/heimdal/lib/gssapi/krb5/arcfour.c


Changeset:
Modified: trunk/heimdal/lib/gssapi/krb5/arcfour.c
===================================================================
--- trunk/heimdal/lib/gssapi/krb5/arcfour.c	2006-11-07 03:19:22 UTC (rev 653)
+++ trunk/heimdal/lib/gssapi/krb5/arcfour.c	2006-11-07 06:23:57 UTC (rev 654)
@@ -355,12 +355,14 @@
     if (conf_state)
 	*conf_state = 0;
 
-    datalen = input_message_buffer->length + 1 /* padding */;
+    if ((context_handle->flags & GSS_C_DCE_STYLE) == 0) {
+	datalen = input_message_buffer->length + 1 /* padding */;
 
-    if ((context_handle->flags & GSS_C_DCE_STYLE) == 0) {
 	len = datalen + GSS_ARCFOUR_WRAP_TOKEN_SIZE;
 	_gssapi_encap_length(len, &len, &total_len, GSS_KRB5_MECHANISM);
     } else {
+	datalen = input_message_buffer->length;
+
 	len = GSS_ARCFOUR_WRAP_TOKEN_SIZE;
 	_gssapi_encap_length(len, &len, &total_len, GSS_KRB5_MECHANISM);
 	total_len += datalen;
@@ -416,7 +418,9 @@
     p = p0 + GSS_ARCFOUR_WRAP_TOKEN_SIZE;
     memcpy(p, input_message_buffer->value, input_message_buffer->length);
 
-    p[input_message_buffer->length] = 1; /* PADDING */
+    if ((context_handle->flags & GSS_C_DCE_STYLE) == 0) {
+	p[input_message_buffer->length] = 1; /* PADDING */
+    }
 
     ret = arcfour_mic_cksum(key, KRB5_KU_USAGE_SEAL,
 			    p0 + 16, 8, /* SGN_CKSUM */ 



More information about the samba-cvs mailing list