samba-tool: use get_config_basedn() to get configuration NC DN
authorAndrew Tridgell <tridge@samba.org>
Fri, 16 Sep 2011 01:18:05 +0000 (11:18 +1000)
committerAndrew Tridgell <tridge@samba.org>
Mon, 19 Sep 2011 00:57:03 +0000 (10:57 +1000)
this allows these commands to work for subdomains

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

source4/scripting/python/samba/netcmd/domain.py
source4/scripting/python/samba/netcmd/fsmo.py

index 6f7001a9c74157b48952186ea96485441e0764f9..f7e060f730edbd6562706fa917c403050e41b4d8 100644 (file)
@@ -164,7 +164,7 @@ class cmd_domain_level(Command):
 
         domain_dn = samdb.domain_dn()
 
-        res_forest = samdb.search("CN=Partitions,CN=Configuration," + domain_dn,
+        res_forest = samdb.search("CN=Partitions," + samdb.get_config_basedn(),
           scope=ldb.SCOPE_BASE, attrs=["msDS-Behavior-Version"])
         assert len(res_forest) == 1
 
@@ -172,7 +172,7 @@ class cmd_domain_level(Command):
           attrs=["msDS-Behavior-Version", "nTMixedDomain"])
         assert len(res_domain) == 1
 
-        res_dc_s = samdb.search("CN=Sites,CN=Configuration," + domain_dn,
+        res_dc_s = samdb.search("CN=Sites," + samdb.get_config_basedn(),
           scope=ldb.SCOPE_SUBTREE, expression="(objectClass=nTDSDSA)",
           attrs=["msDS-Behavior-Version"])
         assert len(res_dc_s) >= 1
@@ -279,8 +279,7 @@ class cmd_domain_level(Command):
                     samdb.modify(m)
                     # Under partitions
                     m = ldb.Message()
-                    m.dn = ldb.Dn(samdb, "CN=" + lp.get("workgroup")
-                      + ",CN=Partitions,CN=Configuration," + domain_dn)
+                    m.dn = ldb.Dn(samdb, "CN=" + lp.get("workgroup") + ",CN=Partitions," + ldb.get_config_basedn())
                     m["nTMixedDomain"] = ldb.MessageElement("0",
                       ldb.FLAG_MOD_REPLACE, "nTMixedDomain")
                     try:
@@ -299,7 +298,7 @@ class cmd_domain_level(Command):
                 # Under partitions
                 m = ldb.Message()
                 m.dn = ldb.Dn(samdb, "CN=" + lp.get("workgroup")
-                  + ",CN=Partitions,CN=Configuration," + domain_dn)
+                  + ",CN=Partitions," + ldb.get_config_basedn())
                 m["msDS-Behavior-Version"]= ldb.MessageElement(
                   str(new_level_domain), ldb.FLAG_MOD_REPLACE,
                           "msDS-Behavior-Version")
@@ -324,8 +323,7 @@ class cmd_domain_level(Command):
                 if new_level_forest > level_domain:
                     raise CommandError("Forest function level can't be higher than the domain function level(s). Please raise it/them first!")
                 m = ldb.Message()
-                m.dn = ldb.Dn(samdb, "CN=Partitions,CN=Configuration,"
-                  + domain_dn)
+                m.dn = ldb.Dn(samdb, "CN=Partitions," + ldb.get_config_basedn())
                 m["msDS-Behavior-Version"]= ldb.MessageElement(
                   str(new_level_forest), ldb.FLAG_MOD_REPLACE,
                           "msDS-Behavior-Version")
index 3e296dd83d5cfac9235e164466917e264748c0a3..78a2014825fdb61dca448d1ed4a8ab0ebd71c0f2 100644 (file)
@@ -139,8 +139,8 @@ class cmd_fsmo_show(Command):
 
         domain_dn = samdb.domain_dn()
         self.infrastructure_dn = "CN=Infrastructure," + domain_dn
-        self.naming_dn = "CN=Partitions,CN=Configuration," + domain_dn
-        self.schema_dn = "CN=Schema,CN=Configuration," + domain_dn
+        self.naming_dn = "CN=Partitions," + samdb.get_config_basedn()
+        self.schema_dn = samdb.get_schema_basedn()
         self.rid_dn = "CN=RID Manager$,CN=System," + domain_dn
 
         res = samdb.search(self.infrastructure_dn,