summaryrefslogtreecommitdiff
path: root/source4/dsdb/repl
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2009-09-11 15:15:39 +1000
committerAndrew Tridgell <tridge@samba.org>2009-09-11 15:15:39 +1000
commit88e2fbaf95da3783e1ba41d55dd2fbd8b792126f (patch)
treef07a9b02af97abf3c36e239c3df124799c57a795 /source4/dsdb/repl
parentd26c42f5bfd212c18d53f439030fd830ecab2cf3 (diff)
downloadsamba-88e2fbaf95da3783e1ba41d55dd2fbd8b792126f.tar.gz
samba-88e2fbaf95da3783e1ba41d55dd2fbd8b792126f.tar.bz2
samba-88e2fbaf95da3783e1ba41d55dd2fbd8b792126f.zip
s4-drs: add the magic DRS SPNs on AddEntry
When a DsAddEntry is used to create a nTDSDSA object we need to also create the SPNs for the NTDS GUID in the servers machine account.
Diffstat (limited to 'source4/dsdb/repl')
-rw-r--r--source4/dsdb/repl/replicated_objects.c25
1 files changed, 2 insertions, 23 deletions
diff --git a/source4/dsdb/repl/replicated_objects.c b/source4/dsdb/repl/replicated_objects.c
index 459c7b5455..ecf2856eb5 100644
--- a/source4/dsdb/repl/replicated_objects.c
+++ b/source4/dsdb/repl/replicated_objects.c
@@ -319,19 +319,6 @@ static WERROR dsdb_convert_object(struct ldb_context *ldb,
msg->num_elements);
W_ERROR_HAVE_NO_MEMORY(msg->elements);
- /*
- * TODO:
- *
- * The DsAddEntry() call which creates a nTDSDSA object,
- * also adds a servicePrincipalName in the following form
- * to the computer account of the new domain controller
- * referenced by the "serverReferenece" attribute.
- *
- * E3514235-4B06-11D1-AB04-00C04FC2DCD2/<new-ntdsdsa-object-guid-as-string>/<domain-dns-name>
- *
- * also note that the "serverReference" isn't added to the new object!
- */
-
for (i=0; i < msg->num_elements; i++) {
struct drsuapi_DsReplicaAttribute *a;
struct ldb_message_element *e;
@@ -343,7 +330,9 @@ static WERROR dsdb_convert_object(struct ldb_context *ldb,
W_ERROR_NOT_OK_RETURN(status);
}
+
*_msg = msg;
+
return WERR_OK;
}
@@ -396,11 +385,6 @@ WERROR dsdb_origin_objects_commit(struct ldb_context *ldb,
num_objects);
W_ERROR_HAVE_NO_MEMORY(objects);
- ret = ldb_transaction_start(ldb);
- if (ret != 0) {
- goto cancel;
- }
-
for (i=0; i < num_objects; i++) {
struct dom_sid *sid = NULL;
ret = ldb_add(ldb, objects[i]);
@@ -422,11 +406,6 @@ WERROR dsdb_origin_objects_commit(struct ldb_context *ldb,
}
}
- ret = ldb_transaction_commit(ldb);
- if (ret != 0) {
- goto cancel;
- }
-
talloc_free(objects);
*_num = num_objects;