svn commit: samba r8739 - in branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture: . rpc

brad at samba.org brad at samba.org
Sun Jul 24 22:24:47 GMT 2005


Author: brad
Date: 2005-07-24 22:24:46 +0000 (Sun, 24 Jul 2005)
New Revision: 8739

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

Log:
added a test called RPC-DSSYNC to config.mk
hacking at dssync.c in an attempt to make it compile
Modified:
   branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/config.mk
   branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/rpc/dssync.c
   branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/torture.c


Changeset:
Modified: branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/config.mk
===================================================================
--- branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/config.mk	2005-07-24 22:18:01 UTC (rev 8738)
+++ branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/config.mk	2005-07-24 22:24:46 UTC (rev 8739)
@@ -71,6 +71,7 @@
 # Start SUBSYSTEM TORTURE_RPC
 [SUBSYSTEM::TORTURE_RPC]
 ADD_OBJ_FILES = \
+		torture/rpc/dssync.o \
 		torture/rpc/lsa.o \
 		torture/rpc/session_key.o \
 		torture/rpc/echo.o \

Modified: branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/rpc/dssync.c
===================================================================
--- branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/rpc/dssync.c	2005-07-24 22:18:01 UTC (rev 8738)
+++ branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/rpc/dssync.c	2005-07-24 22:24:46 UTC (rev 8739)
@@ -127,30 +127,42 @@
 {
 	{
 		const char *ldif;
-		struct ldap_message *req, *rep;
-
+		struct ldap_message *req; //, *rep;
+		NTSTATUS rtn;
+		BOOL rtn_status = False;
+		
 		ldif = talloc_asprintf(ctx,
 			"dn: %s\n"
 			"changetype: delete\n",
 			ctx->new_dc.dc_info2.ntds_dn);
-
-		req = ldap_ldif2msg(ctx, ldif);
-
-		rep = ldap_transaction(ctx->admin.ldap.conn, req);
+	
+		//req = ldap_ldif2msg(ctx, ldif);
+		//req.messageid = ;
+		req->type = LDAP_TAG_DelRequest;
+		req->r.DelRequest.dn = ctx->new_dc.dc_info2.ntds_dn;
+		//req.num_controls = ;
+		//req.controls = ;
+		
+		
+		
+		rtn = ldap_transaction(ctx->admin.ldap.conn, req);
 	}
 
 	{
 		const char *ldif;
-		struct ldap_message *req, *rep;
-
+		struct ldap_message *req; //, *rep;
+		NTSTATUS rtn;
+		
 		ldif = talloc_asprintf(ctx,
 			"dn: %s\n"
 			"changetype: delete\n",
 			ctx->new_dc.dc_info2.server_dn);
 
-		req = ldap_ldif2msg(ctx, ldif);
+		//req = ldap_ldif2msg(ctx, ldif);
+		req->type = LDAP_TAG_DelRequest;
+		req->r.DelRequest.dn = ctx->new_dc.dc_info2.ntds_dn;
 
-		rep = ldap_transaction(ctx->admin.ldap.conn, req);
+		rtn = ldap_transaction(ctx->admin.ldap.conn, req);
 	}
 
 	if (ctx->new_dc.join) {
@@ -164,12 +176,13 @@
 {
 	NTSTATUS status;
 	BOOL ret = True;
+	struct event_context *event;
 
 	status = dcerpc_pipe_connect_b(ctx,
 				       &b->pipe, ctx->drsuapi_binding, 
 				       DCERPC_DRSUAPI_UUID,
 				       DCERPC_DRSUAPI_VERSION,
-				       credentials);
+				       credentials, event);
 	
 	if (!NT_STATUS_IS_OK(status)) {
 		printf("Failed to connect to server as a BDC: %s\n", nt_errstr(status));
@@ -290,9 +303,10 @@
 {
 	NTSTATUS status;
 	const char *ldif;
-	struct ldap_message *req,*rep;
+	struct ldap_message *req; //,*rep;
 	BOOL ret = True;
-
+	NTSTATUS rtn;
+	
 	/* userAccountControl: 532480 0x82000 
 	 * UF_SERVER_TRUST_ACCOUNT|UF_TRUSTED_FOR_DELEGATION
 	 */
@@ -304,10 +318,21 @@
 		ctx->new_dc.dc_info2.computer_dn,
 		UF_SERVER_TRUST_ACCOUNT|UF_TRUSTED_FOR_DELEGATION);
 
-	req = ldap_ldif2msg(ctx, ldif);
+	//req = ldap_ldif2msg(ctx, ldif);
+	req->type = LDAP_TAG_ModifyRequest;
+	req->r.ModifyRequest.dn = ctx->new_dc.dc_info2.computer_dn;
+	req->r.ModifyRequest.num_mods = 1;
+	req->r.ModifyRequest.mods->type = LDAP_MODIFY_REPLACE;
+	req->r.ModifyRequest.mods->attrib.flags = LDB_FLAG_MOD_REPLACE;
+	req->r.ModifyRequest.mods->attrib.name = "userAccountControl";
+	req->r.ModifyRequest.mods->attrib.num_values = 1;
+	req->r.ModifyRequest.mods->attrib.values->data = UF_SERVER_TRUST_ACCOUNT|UF_TRUSTED_FOR_DELEGATION;
+	req->r.ModifyRequest.mods->attrib.values->length = sizeof(req->r.ModifyRequest.mods->attrib.values->data);
+	
+// = UF_SERVER_TRUST_ACCOUNT|UF_TRUSTED_FOR_DELEGATION;
+	
+	rtn = ldap_transaction(ctx->admin.ldap.conn, req);
 
-	rep = ldap_transaction(ctx->admin.ldap.conn, req);
-
 	/* add entry CN=<NETBIOSNAME>,CN=Servers
 	 * objectClass: server
 	 * systemFlags: 50000000 0x2FAF080
@@ -323,10 +348,28 @@
 		50000000,
 		ctx->new_dc.dc_info2.computer_dn);
 
-	req = ldap_ldif2msg(ctx, ldif);
+//	req = ldap_ldif2msg(ctx, ldif);
+	req->type = LDAP_TAG_AddRequest;
+	req.r.AddRequest.dn = ctx->new_dc.dc_info2.server_dn;
+	req.r.AddRequest.num_attributes = 3;
+	
+	req.r.AddRequest.attributes.flags = LDB_FLAG_MOD_ADD;
+	req.r.AddRequest.attributes.name = 'objectClass';
+	req.r.AddRequest.attributes.num_values = 1;
+	req.r.AddRequest.attributes.values = 'server';
+	
+	req.r.AddRequest.attributes.flags = LDB_FLAG_MOD_ADD;
+	req.r.AddRequest.attributes.name = 'systemFlags';
+	req.r.AddRequest.attributes.num_values = 1;
+	req.r.AddRequest.attributes.values = '50000000';
+	
+	req.r.AddRequest.attributes.flags = LDB_FLAG_MOD_ADD;
+	req.r.AddRequest.attributes.name = 'serverReference';
+	req.r.AddRequest.attributes.num_values = 1;
+	req.r.AddRequest.attributes.values = ctx->new_dc.dc_info2.computer_dn;
+	
+	rtn = ldap_transaction(ctx->admin.ldap.conn, req);
 
-	rep = ldap_transaction(ctx->admin.ldap.conn, req);
-
 	/* add entry CN=NTDS Settings
 	 * 
 	 */
@@ -676,7 +719,7 @@
 
 	req = ldap_ldif2msg(ctx, ldif);
 
-	rep = ldap_transaction(ctx->admin.ldap.conn, req);
+	rtn = ldap_transaction(ctx->admin.ldap.conn, req);
 
 	ctx->new_dc.dc_info2.computer_dn = talloc_asprintf(ctx,
 						"CN=%s,OU=Domain Controllers,%s",

Modified: branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/torture.c
===================================================================
--- branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/torture.c	2005-07-24 22:18:01 UTC (rev 8738)
+++ branches/SOC/SAMBA_4_0/SAMBA_4_0/source/torture/torture.c	2005-07-24 22:24:46 UTC (rev 8739)
@@ -2309,6 +2309,7 @@
 	{"RPC-ROT", torture_rpc_rot, 0},
 	{"RPC-DSSETUP", torture_rpc_dssetup, 0},
         {"RPC-ALTERCONTEXT", torture_rpc_alter_context, 0},
+        {"RPC-DSSYNC", torture_rpc_dssync, 0},
 
 	/* local (no server) testers */
 	{"LOCAL-NTLMSSP", torture_ntlmssp_self_check, 0},



More information about the samba-cvs mailing list