svn commit: samba r9249 - in branches/SOC/SAMBA_4_0: . source/libnet
brad at samba.org
brad at samba.org
Thu Aug 11 23:31:48 GMT 2005
Author: brad
Date: 2005-08-11 23:31:48 +0000 (Thu, 11 Aug 2005)
New Revision: 9249
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9249
Log:
r5375 at buttercup: j0j0 | 2005-08-11 17:38:44 -0600
Split libnet_JoinDomain() into libnet_JoinDomain() and libnet_JoinADSDomain().
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
Changeset:
Property changes on: branches/SOC/SAMBA_4_0
___________________________________________________________________
Name: svk:merge
- 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9179
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5373
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5370
+ 0c0555d6-39d7-0310-84fc-f1cc0bd64818:/branches/SAMBA_4_0:9179
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/SAMBA_4_0:5375
d349723c-e9fc-0310-b8a8-fdedf1c27407:/local/samba-SAMBA_4_0:5370
Modified: branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c
===================================================================
--- branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c 2005-08-11 22:59:02 UTC (rev 9248)
+++ branches/SOC/SAMBA_4_0/source/libnet/libnet_join.c 2005-08-11 23:31:48 UTC (rev 9249)
@@ -74,6 +74,7 @@
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;
@@ -81,8 +82,9 @@
struct drsuapi_DsNameString names[1];
struct policy_handle drsuapi_bind_handle;
struct GUID drsuapi_bind_guid;
+ */
- struct ldb_context *remote_ldb;
+ /*struct ldb_context *remote_ldb;*/
uint32_t acct_flags;
uint32_t rid, access_granted;
@@ -91,19 +93,15 @@
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;
+ */
- const char *attrs[] = {
- "msDS-KeyVersionNumber",
- "servicePrincipalName",
- "dNSHostName",
- NULL,
- };
-
+
tmp_ctx = talloc_named(mem_ctx, 0, "libnet_Join temp context");
if (!tmp_ctx) {
r->out.error_string = NULL;
@@ -444,13 +442,83 @@
/* Now, if it was AD, then we want to start looking changing a
* few more things. Otherwise, we are done. */
- if (!realm) {
- r->out.realm = NULL;
- r->out.kvno = 0;
- talloc_free(tmp_ctx);
- return NT_STATUS_OK;
+ if (realm) {
+ return libnet_JoinADSDomain(ctx, mem_ctx, tmp_ctx, samr_binding, realm, domain_name, r);
}
+ r->out.realm = NULL;
+ r->out.kvno = 0;
+ talloc_free(tmp_ctx);
+ 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)
+{
+ /*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;
+ */
+
+ 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;
+ 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;
+
+ const char *attrs[] = {
+ "msDS-KeyVersionNumber",
+ "servicePrincipalName",
+ "dNSHostName",
+ 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 */
Modified: branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h
===================================================================
--- branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h 2005-08-11 22:59:02 UTC (rev 9248)
+++ branches/SOC/SAMBA_4_0/source/libnet/libnet_join.h 2005-08-11 23:31:48 UTC (rev 9249)
@@ -40,7 +40,7 @@
struct dom_sid *domain_sid;
const char *domain_name;
const char *realm;
- unsigned int kvno;
+ unsigned int kvno; /* msDS-KeyVersionNumber */
} out;
};
More information about the samba-cvs
mailing list