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

brad at samba.org brad at samba.org
Fri Aug 12 02:55:12 GMT 2005


Author: brad
Date: 2005-08-12 02:55:11 +0000 (Fri, 12 Aug 2005)
New Revision: 9256

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

Log:
 r5413 at buttercup:  j0j0 | 2005-08-11 21:02:27 -0600
 Clean up libnet_JoinADSDomain() a little, added a comment to the test_join struct.

Modified:
   branches/SOC/SAMBA_4_0/
   branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c
   branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h
   branches/SOC/SAMBA_4_0/source/torture/rpc/testjoin.c


Changeset:

Property changes on: branches/SOC/SAMBA_4_0
___________________________________________________________________
Name: svk:merge
   - 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9240
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5411
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5410
   + 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9240
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5413
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5410

Modified: branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c
===================================================================
--- branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c	2005-08-12 02:27:38 UTC (rev 9255)
+++ branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c	2005-08-12 02:55:11 UTC (rev 9256)
@@ -74,18 +74,6 @@
 	struct samr_GetUserPwInfo pwp;
 	struct lsa_String samr_account_name;
 
-	/*
-	struct dcerpc_pipe *drsuapi_pipe;
-	struct dcerpc_binding *drsuapi_binding;
-	struct drsuapi_DsBind r_drsuapi_bind;
-	struct drsuapi_DsCrackNames r_crack_names;
-	struct drsuapi_DsNameString names[1];
-	struct policy_handle drsuapi_bind_handle;
-	struct GUID drsuapi_bind_guid;
-	*/
-
-	/*struct ldb_context *remote_ldb;*/
-
 	uint32_t acct_flags;
 	uint32_t rid, access_granted;
 	int policy_min_pw_len = 0;
@@ -93,14 +81,7 @@
 	struct dom_sid *domain_sid;
 	const char *domain_name;
 	const char *realm = NULL; /* Also flag for remote being AD */
-	/*
-	const char *account_dn;
 
-	char *remote_ldb_url;
-	struct ldb_message **msgs, *msg;
-	int ldb_ret;
-	*/
-
 	
 	tmp_ctx = talloc_named(mem_ctx, 0, "libnet_Join temp context");
 	if (!tmp_ctx) {
@@ -442,8 +423,11 @@
 
 	/* Now, if it was AD, then we want to start looking changing a
 	 * few more things.  Otherwise, we are done. */
+
 	if (realm) {
-		return libnet_JoinADSDomain(ctx, mem_ctx, tmp_ctx, samr_binding, realm, domain_name, r);
+		r->out.samr_pipe = samr_pipe;
+		r->out.samr_binding = samr_binding;
+		return libnet_JoinADSDomain(ctx, mem_ctx, tmp_ctx, r);
 	}
 	r->out.realm = NULL;
 	r->out.kvno = 0;
@@ -451,41 +435,16 @@
 	return NT_STATUS_OK;
 }
 
-NTSTATUS libnet_JoinADSDomain(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, TALLOC_CTX *tmp_ctx, struct dcerpc_binding *samr_binding, const char *realm, const char *domain_name, struct libnet_JoinDomain *r)
+NTSTATUS libnet_JoinADSDomain(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, TALLOC_CTX *tmp_ctx, struct libnet_JoinDomain *r)
 {
-	/*TALLOC_CTX *tmp_ctx;*/
 
-	NTSTATUS status;
-	/*
-	struct libnet_RpcConnect c;
-	struct lsa_ObjectAttribute attr;
-	struct lsa_QosInfo qos;
-	struct lsa_OpenPolicy2 lsa_open_policy;
-	struct policy_handle lsa_p_handle;
-	struct lsa_QueryInfoPolicy2 lsa_query_info2;
-	struct lsa_QueryInfoPolicy lsa_query_info;
-	*/
 
-
-	/*
-	struct dcerpc_binding *samr_binding;
-	struct dcerpc_pipe *samr_pipe;
-	struct samr_Connect sc;
-	struct policy_handle p_handle;
-	struct samr_OpenDomain od;
-	struct policy_handle d_handle;
-	struct samr_LookupNames ln;
-	struct samr_OpenUser ou;
-	struct samr_CreateUser2 cu;
-	struct policy_handle u_handle;
-	struct samr_QueryUserInfo qui;
-	struct samr_SetUserInfo sui;
-	union samr_UserInfo u_info;
-	union libnet_SetPassword r2;
-	struct samr_GetUserPwInfo pwp;
-	struct lsa_String samr_account_name;
-	*/
-
+	NTSTATUS status;
+	
+	const char *realm = r->out.realm;
+	
+	struct dcerpc_binding *samr_binding = r->out.samr_binding;
+	
 	struct dcerpc_pipe *drsuapi_pipe;
 	struct dcerpc_binding *drsuapi_binding;
 	struct drsuapi_DsBind r_drsuapi_bind;
@@ -496,15 +455,6 @@
 
 	struct ldb_context *remote_ldb;
 
-	/*
-	uint32_t acct_flags;
-	uint32_t rid, access_granted;
-	int policy_min_pw_len = 0;
-	struct dom_sid *domain_sid;
-	*/
-	
-	/*const char *domain_name;*/
-	/*const char *realm = NULL;*/ /* Also flag for remote being AD */
 	const char *account_dn;
 
 	char *remote_ldb_url;
@@ -518,12 +468,10 @@
 		NULL,
 	};
 
-
 	/* We need to convert between a samAccountName and domain to a
 	 * DN in the directory.  The correct way to do this is with
 	 * DRSUAPI CrackNames */
 
-
 	/* Fiddle with the bindings, so get to DRSUAPI on
 	 * NCACN_IP_TCP, sealed */
 	drsuapi_binding = talloc(tmp_ctx, struct dcerpc_binding);
@@ -561,7 +509,7 @@
 			r->out.error_string
 				= talloc_asprintf(mem_ctx,
 						  "dcerpc_drsuapi_DsBind for [%s\\%s] failed - %s\n", 
-						  domain_name, r->in.account_name, 
+						  r->in.domain_name, r->in.account_name, 
 						  dcerpc_errstr(tmp_ctx, drsuapi_pipe->last_fault_code));
 			talloc_free(tmp_ctx);
 			return status;
@@ -569,7 +517,7 @@
 			r->out.error_string
 				= talloc_asprintf(mem_ctx,
 						  "dcerpc_drsuapi_DsBind for [%s\\%s] failed - %s\n", 
-						  domain_name, r->in.account_name, 
+						  r->in.domain_name, r->in.account_name, 
 						  nt_errstr(status));
 			talloc_free(tmp_ctx);
 			return status;
@@ -593,7 +541,7 @@
 	r_crack_names.in.req.req1.format_flags	= DRSUAPI_DS_NAME_FLAG_NO_FLAGS;
 	r_crack_names.in.req.req1.format_offered	= DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT;
 	r_crack_names.in.req.req1.format_desired	= DRSUAPI_DS_NAME_FORMAT_FQDN_1779;
-	names[0].str = talloc_asprintf(tmp_ctx, "%s\\%s", domain_name, r->in.account_name);
+	names[0].str = talloc_asprintf(tmp_ctx, "%s\\%s", r->in.domain_name, r->in.account_name);
 
 	status = dcerpc_drsuapi_DsCrackNames(drsuapi_pipe, tmp_ctx, &r_crack_names);
 	if (!NT_STATUS_IS_OK(status)) {
@@ -601,7 +549,7 @@
 			r->out.error_string
 				= talloc_asprintf(mem_ctx,
 						  "dcerpc_drsuapi_DsCrackNames for [%s\\%s] failed - %s\n", 
-						  domain_name, r->in.account_name, 
+						  r->in.domain_name, r->in.account_name, 
 						  dcerpc_errstr(tmp_ctx, drsuapi_pipe->last_fault_code));
 			talloc_free(tmp_ctx);
 			return status;
@@ -609,7 +557,7 @@
 			r->out.error_string
 				= talloc_asprintf(mem_ctx,
 						  "dcerpc_drsuapi_DsCrackNames for [%s\\%s] failed - %s\n", 
-						  domain_name, r->in.account_name, 
+						  r->in.domain_name, r->in.account_name, 
 						  nt_errstr(status));
 			talloc_free(tmp_ctx);
 			return status;

Modified: branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h
===================================================================
--- branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h	2005-08-12 02:27:38 UTC (rev 9255)
+++ branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h	2005-08-12 02:55:11 UTC (rev 9256)
@@ -41,6 +41,8 @@
 		const char *domain_name;
 		const char *realm;
 		unsigned int kvno; /* msDS-KeyVersionNumber */
+		struct dcerpc_pipe *samr_pipe;
+		struct dcerpc_binding *samr_binding;
 	} out;
 };
 

Modified: branches/SOC/SAMBA_4_0/source/torture/rpc/testjoin.c
===================================================================
--- branches/SOC/SAMBA_4_0/source/torture/rpc/testjoin.c	2005-08-12 02:27:38 UTC (rev 9255)
+++ branches/SOC/SAMBA_4_0/source/torture/rpc/testjoin.c	2005-08-12 02:55:11 UTC (rev 9256)
@@ -30,7 +30,7 @@
 #include "system/time.h"
 
 struct test_join {
-	struct dcerpc_pipe *p;
+	struct dcerpc_pipe *p; /*SAMR pipe*/
 	struct policy_handle user_handle;
 	const char *dom_sid;
 };



More information about the samba-cvs mailing list