svn commit: samba r21438 - in branches/SAMBA_4_0/source/heimdal/lib/krb5: .

metze at samba.org metze at samba.org
Sun Feb 18 23:49:30 GMT 2007


Author: metze
Date: 2007-02-18 23:49:29 +0000 (Sun, 18 Feb 2007)
New Revision: 21438

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

Log:
create the PAC element in the same order as w2k3,
maybe there's some broken code in windows which relies
on this...

love: can you merge this to heimdal?

metze
Modified:
   branches/SAMBA_4_0/source/heimdal/lib/krb5/pac.c


Changeset:
Modified: branches/SAMBA_4_0/source/heimdal/lib/krb5/pac.c
===================================================================
--- branches/SAMBA_4_0/source/heimdal/lib/krb5/pac.c	2007-02-18 23:48:16 UTC (rev 21437)
+++ branches/SAMBA_4_0/source/heimdal/lib/krb5/pac.c	2007-02-18 23:49:29 UTC (rev 21438)
@@ -850,12 +850,12 @@
 
     krb5_data_zero(&logon);
 
+    if (p->logon_name == NULL)
+	num++;
     if (p->server_checksum == NULL)
 	num++;
     if (p->privsvr_checksum == NULL)
 	num++;
-    if (p->logon_name == NULL)
-	num++;
 
     if (num) {
 	void *ptr;
@@ -867,6 +867,11 @@
 	}
 	p->pac = ptr;
 
+	if (p->logon_name == NULL) {
+	    p->logon_name = &p->pac->buffers[p->pac->numbuffers++];
+	    memset(p->logon_name, 0, sizeof(*p->logon_name));
+	    p->logon_name->type = PAC_LOGON_NAME;
+	}
 	if (p->server_checksum == NULL) {
 	    p->server_checksum = &p->pac->buffers[p->pac->numbuffers++];
 	    memset(p->server_checksum, 0, sizeof(*p->server_checksum));
@@ -877,11 +882,6 @@
 	    memset(p->privsvr_checksum, 0, sizeof(*p->privsvr_checksum));
 	    p->privsvr_checksum->type = PAC_PRIVSVR_CHECKSUM;
 	}
-	if (p->logon_name == NULL) {
-	    p->logon_name = &p->pac->buffers[p->pac->numbuffers++];
-	    memset(p->logon_name, 0, sizeof(*p->logon_name));
-	    p->logon_name->type = PAC_LOGON_NAME;
-	}
     }
 
     /* Calculate LOGON NAME */



More information about the samba-cvs mailing list