svn commit: samba r4003 - in branches/SAMBA_4_0/source: librpc/idl torture/rpc

metze at samba.org metze at samba.org
Mon Nov 29 17:51:13 GMT 2004


Author: metze
Date: 2004-11-29 17:51:13 +0000 (Mon, 29 Nov 2004)
New Revision: 4003

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

Log:
run successful against a nt4 sp6 pdc with one nt4 sp6 trust and a w2k3 trust

metze

Modified:
   branches/SAMBA_4_0/source/librpc/idl/lsa.idl
   branches/SAMBA_4_0/source/torture/rpc/samsync.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/lsa.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/lsa.idl	2004-11-29 14:59:33 UTC (rev 4002)
+++ branches/SAMBA_4_0/source/librpc/idl/lsa.idl	2004-11-29 17:51:13 UTC (rev 4003)
@@ -429,7 +429,7 @@
 	} lsa_TrustDomInfoEnum;
 
 	typedef struct {
-		lsa_String     domain_name;
+		lsa_String     netbios_name;
 	} lsa_TrustDomainInfoName;
 
 	typedef struct {
@@ -442,13 +442,13 @@
 	} lsa_TrustDomainInfoPassword;
 
 	typedef struct {
-		lsa_String     domain_name;
+		lsa_String     netbios_name;
 		dom_sid2    *sid;
 	} lsa_TrustDomainInfo5;
 
 	typedef struct {
-		lsa_String     name;
-		lsa_String     name2;
+		lsa_String     domain_name;
+		lsa_String     netbios_name;
 		dom_sid2    *sid;
 		uint32       unknown1;
 		uint32       unknown2;

Modified: branches/SAMBA_4_0/source/torture/rpc/samsync.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/samsync.c	2004-11-29 14:59:33 UTC (rev 4002)
+++ branches/SAMBA_4_0/source/torture/rpc/samsync.c	2004-11-29 17:51:13 UTC (rev 4003)
@@ -555,8 +555,14 @@
 	} else if (NT_STATUS_IS_OK(nt_status)) {
 		TEST_INT_EQUAL(user->rid, info3->base.rid);
 		TEST_INT_EQUAL(user->primary_gid, info3->base.primary_gid);
-		TEST_INT_EQUAL(user->acct_flags, info3->base.acct_flags);
-		TEST_STRING_EQUAL(user->account_name, info3->base.account_name);
+		/* this is 0x0 from NT4 sp6 */
+		if (info3->base.acct_flags) {
+			TEST_INT_EQUAL(user->acct_flags, info3->base.acct_flags);
+		}
+		/* this is NULL from NT4 sp6 */
+		if (info3->base.account_name.string) {
+			TEST_STRING_EQUAL(user->account_name, info3->base.account_name);
+		}
 		TEST_STRING_EQUAL(user->full_name, info3->base.full_name);
 		TEST_STRING_EQUAL(user->logon_script, info3->base.logon_script);
 		TEST_STRING_EQUAL(user->profile_path, info3->base.profile_path);
@@ -574,8 +580,9 @@
 		 * doco I read -- abartlet) */
 
 		/* This copes with the two different versions of 0 I see */
+		/* with NT4 sp6 we have the || case */
 		if (!((user->last_logoff == 0) 
-		      && (info3->base.last_logoff == 0x7fffffffffffffffLL))) {
+		      || (info3->base.last_logoff == 0x7fffffffffffffffLL))) {
 			TEST_TIME_EQUAL(user->last_logoff, info3->base.last_logoff);
 		}
 		return ret;
@@ -813,6 +820,10 @@
 		q.in.level = levels[i];
 		status = dcerpc_lsa_QueryTrustedDomainInfo(samsync_state->p_lsa, mem_ctx, &q);
 		if (!NT_STATUS_IS_OK(status)) {
+			if (q.in.level == 8 && NT_STATUS_EQUAL(status,NT_STATUS_INVALID_PARAMETER)) {
+				info[levels[i]] = NULL;
+				continue;
+			}
 			printf("QueryInfoTrustedDomain level %d failed - %s\n", 
 			       levels[i], nt_errstr(status));
 			return False;
@@ -820,9 +831,11 @@
 		info[levels[i]]  = q.out.info;
 	}
 
-	TEST_SID_EQUAL(info[8]->full_info.info_ex.sid, dom_sid);
-	TEST_STRING_EQUAL(info[8]->full_info.info_ex.name, trusted_domain->domain_name);
-	TEST_STRING_EQUAL(info[1]->name.domain_name, trusted_domain->domain_name);
+	if (info[8]) {
+		TEST_SID_EQUAL(info[8]->full_info.info_ex.sid, dom_sid);
+		TEST_STRING_EQUAL(info[8]->full_info.info_ex.netbios_name, trusted_domain->domain_name);
+	}
+	TEST_STRING_EQUAL(info[1]->name.netbios_name, trusted_domain->domain_name);
 	TEST_INT_EQUAL(info[3]->flags.flags, trusted_domain->flags);
 	TEST_SEC_DESC_EQUAL(trusted_domain->sdbuf, lsa, &trustdom_handle);
 



More information about the samba-cvs mailing list