svn commit: samba r9643 - in branches/SAMBA_4_0/source/libnet: .
tridge at samba.org
tridge at samba.org
Fri Aug 26 11:36:29 GMT 2005
Author: tridge
Date: 2005-08-26 11:36:28 +0000 (Fri, 26 Aug 2005)
New Revision: 9643
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9643
Log:
fixed samsync code for the new dn explode semantics
Modified:
branches/SAMBA_4_0/source/libnet/libnet_samsync_ldb.c
Changeset:
Modified: branches/SAMBA_4_0/source/libnet/libnet_samsync_ldb.c
===================================================================
--- branches/SAMBA_4_0/source/libnet/libnet_samsync_ldb.c 2005-08-26 11:20:53 UTC (rev 9642)
+++ branches/SAMBA_4_0/source/libnet/libnet_samsync_ldb.c 2005-08-26 11:36:28 UTC (rev 9643)
@@ -119,6 +119,8 @@
const char *domain_attrs[] = {"nETBIOSName", "nCName", NULL};
struct ldb_message **msgs_domain;
int ret_domain;
+ char *base_dn;
+
ret_domain = gendb_search(state->sam_ldb, mem_ctx, NULL, &msgs_domain, domain_attrs,
"(&(&(nETBIOSName=%s)(objectclass=crossRef))(ncName=*))",
domain_name);
@@ -130,24 +132,20 @@
return NT_STATUS_NO_SUCH_DOMAIN;
}
- state->base_dn[database]
- = talloc_steal(state, samdb_result_string(msgs_domain[0],
- "nCName", NULL));
-
- state->dom_sid[database]
- = talloc_steal(state,
- samdb_search_dom_sid(state->sam_ldb, state,
- state->base_dn[database], "objectSid", "dn=%s",
- ldb_dn_linearize(mem_ctx, state->base_dn[database])));
+ state->base_dn[database] = samdb_result_dn(state, msgs_domain[0], "nCName", NULL);
+
+ base_dn = ldb_dn_linearize(mem_ctx, state->base_dn[database]);
+
+ state->dom_sid[database] = samdb_search_dom_sid(state->sam_ldb, state,
+ state->base_dn[database],
+ "objectSid", "dn=%s", base_dn);
} else if (database == SAM_DATABASE_BUILTIN) {
- /* work out the builtin_dn - useful for so many calls its worth
- fetching here */
- state->base_dn[database]
- = talloc_steal(state,
- samdb_search_string(state->sam_ldb, mem_ctx, NULL,
- "dn", "objectClass=builtinDomain"));
- state->dom_sid[database]
- = dom_sid_parse_talloc(state, SID_BUILTIN);
+ /* work out the builtin_dn - useful for so many calls its worth
+ fetching here */
+ const char *dnstring = samdb_search_string(state->sam_ldb, mem_ctx, NULL,
+ "dn", "objectClass=builtinDomain");
+ state->base_dn[database] = ldb_dn_explode(state, dnstring);
+ state->dom_sid[database] = dom_sid_parse_talloc(state, SID_BUILTIN);
} else {
/* PRIVs DB */
return NT_STATUS_INVALID_PARAMETER;
More information about the samba-cvs
mailing list