s4:provision Only create references to our server DN after the self join
authorAndrew Bartlett <abartlet@samba.org>
Wed, 26 Aug 2009 02:39:44 +0000 (12:39 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 26 Aug 2009 03:48:35 +0000 (13:48 +1000)
This will ensure that the GUID can be filled in correctly, and assist
us to validate DN targets in the future.

Andrew Bartlett

source4/scripting/python/samba/provision.py
source4/setup/provision.ldif
source4/setup/provision_basedn_modify.ldif
source4/setup/provision_configuration.ldif
source4/setup/provision_schema_basedn_modify.ldif
source4/setup/provision_self_join_modify.ldif [new file with mode: 0644]

index 39ae33bbe6c2f53683bd9425c54bab5f0e40e9f1..aa6b6789ddef4a3ac099db5f2f56f359ddf0002b 100644 (file)
@@ -787,12 +787,22 @@ def setup_self_join(samdb, names,
               "DNSDOMAIN": names.dnsdomain,
               "SAMBA_VERSION_STRING": version,
               "DOMAIN_CONTROLLER_FUNCTIONALITY": str(domainControllerFunctionality)})
+
     setup_add_ldif(samdb, setup_path("provision_group_policy.ldif"), { 
               "POLICYGUID": policyguid,
               "DNSDOMAIN": names.dnsdomain,
               "DOMAINSID": str(domainsid),
               "DOMAINDN": names.domaindn})
 
+    # Setup fSMORoleOwner entries to point at the newly created DC entry
+    setup_modify_ldif(samdb, setup_path("provision_self_join_modify.ldif"), {
+              "DOMAINDN": names.domaindn,
+              "CONFIGDN": names.configdn,
+              "SCHEMADN": names.schemadn, 
+              "DEFAULTSITE": names.sitename,
+              "SERVERDN": names.serverdn
+              })
+
 
 def setup_samdb(path, setup_path, session_info, credentials, lp, 
                 names, message, 
index 07f02f9f7c3b3fce4035c8090977568631198d2f..462211233689d0205f73df0125cef86702fd793b 100644 (file)
@@ -49,7 +49,6 @@ dn: CN=Infrastructure,${DOMAINDN}
 objectClass: top
 objectClass: infrastructureUpdate
 systemFlags: -1946157056
-fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
 isCriticalSystemObject: TRUE
 
 dn: CN=LostAndFound,${DOMAINDN}
@@ -192,7 +191,6 @@ dn: CN=RID Manager$,CN=System,${DOMAINDN}
 objectClass: top
 objectClass: rIDManager
 systemFlags: -1946157056
-fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
 rIDAvailablePool: 4611686014132423217
 isCriticalSystemObject: TRUE
 
index 29ba75be98a95542b37689a8c07a362dc98e8151..4dd75bb1e236e3f6f02f834780634039f8ca128f 100644 (file)
@@ -61,9 +61,6 @@ uASCompat: 1
 replace: modifiedCount
 modifiedCount: 1
 -
-replace: fSMORoleOwner
-fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
--
 replace: systemFlags
 systemFlags: -1946157056
 -
index b3e0d83772b74bf07d42d750ff6eec6c08930c6f..2b900a7d4e5e17fdeee6d8b01836d953910a15a3 100644 (file)
@@ -656,7 +656,6 @@ objectClass: top
 objectClass: crossRefContainer
 systemFlags: -2147483648
 msDS-Behavior-Version: ${FOREST_FUNCTIONALALITY}
-fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
 showInAdvancedViewOnly: TRUE
 
 dn: CN=Enterprise Configuration,CN=Partitions,${CONFIGDN}
@@ -749,7 +748,6 @@ dn: CN=NTDS Site Settings,CN=${DEFAULTSITE},CN=Sites,${CONFIGDN}
 objectClass: top
 objectClass: applicationSiteSettings
 objectClass: nTDSSiteSettings
-interSiteTopologyGenerator: CN=NTDS Settings,${SERVERDN}
 
 dn: CN=Servers,CN=${DEFAULTSITE},CN=Sites,${CONFIGDN}
 objectClass: top
index d6c458904ebe10d1ee33795adda90918311a6fab..ef883fcf224c940192fb8c6755d44cf2a50cc146 100644 (file)
@@ -3,8 +3,6 @@
 ###############################
 dn: ${SCHEMADN}
 changetype: modify
-replace: fSMORoleOwner
-fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
 -
 replace: objectVersion
 objectVersion: 30
diff --git a/source4/setup/provision_self_join_modify.ldif b/source4/setup/provision_self_join_modify.ldif
new file mode 100644 (file)
index 0000000..4ba291f
--- /dev/null
@@ -0,0 +1,29 @@
+dn: ${DOMAINDN}
+changetype: modify
+replace: fSMORoleOwner
+fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
+
+dn: ${SCHEMADN}
+changetype: modify
+replace: fSMORoleOwner
+fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
+
+dn: CN=Infrastructure,${DOMAINDN}
+changetype: modify
+replace: fSMORoleOwner
+fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
+
+dn: CN=RID Manager$,CN=System,${DOMAINDN}
+changetype: modify
+replace: fSMORoleOwner
+fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
+
+dn: CN=Partitions,${CONFIGDN}
+changetype: modify
+replace: fSMORoleOwner
+fSMORoleOwner: CN=NTDS Settings,${SERVERDN}
+
+dn: CN=NTDS Site Settings,CN=${DEFAULTSITE},CN=Sites,${CONFIGDN}
+changetype: modify
+replace: interSiteTopologyGenerator
+interSiteTopologyGenerator: CN=NTDS Settings,${SERVERDN}