diff options
| author | Stefan Metzmacher <metze@samba.org> | 2023-06-21 11:57:12 +0200 |
|---|---|---|
| committer | Andrew Bartlett <abartlet@samba.org> | 2023-06-21 19:08:37 +0000 |
| commit | ea2712336b28ffda938b4d0b1b17d8eaafb7714d (patch) | |
| tree | 3853a4f266e61521f1229f07b5b4710b4969ed77 /python/samba | |
| parent | f9f9771a55ffa5cd99b8c3d9228bae6f73938b5d (diff) | |
| download | samba-ea2712336b28ffda938b4d0b1b17d8eaafb7714d.tar.gz samba-ea2712336b28ffda938b4d0b1b17d8eaafb7714d.tar.bz2 samba-ea2712336b28ffda938b4d0b1b17d8eaafb7714d.zip | |
samba-tool: let 'domain level raise --domain-level' use the correct crossRef dn
We should not rely on lp.get('workgroup')...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'python/samba')
| -rw-r--r-- | python/samba/netcmd/domain/level.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/python/samba/netcmd/domain/level.py b/python/samba/netcmd/domain/level.py index 8b0e8014dba..48701376f51 100644 --- a/python/samba/netcmd/domain/level.py +++ b/python/samba/netcmd/domain/level.py @@ -76,6 +76,12 @@ class cmd_domain_level(Command): attrs=["msDS-Behavior-Version", "nTMixedDomain"]) assert len(res_domain) == 1 + res_domain_cross = samdb.search("CN=Partitions,%s" % samdb.get_config_basedn(), + scope=ldb.SCOPE_SUBTREE, + expression="(&(objectClass=crossRef)(nCName=%s))" % domain_dn, + attrs=["msDS-Behavior-Version"]) + assert len(res_domain_cross) == 1 + res_dc_s = samdb.search("CN=Sites,%s" % samdb.get_config_basedn(), scope=ldb.SCOPE_SUBTREE, expression="(objectClass=nTDSDSA)", attrs=["msDS-Behavior-Version"]) @@ -157,7 +163,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,%s" % samdb.get_config_basedn()) + m.dn = res_domain_cross[0].dn m["nTMixedDomain"] = ldb.MessageElement("0", ldb.FLAG_MOD_REPLACE, "nTMixedDomain") try: @@ -176,8 +182,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,%s" % samdb.get_config_basedn()) + m.dn = res_domain_cross[0].dn m["msDS-Behavior-Version"] = ldb.MessageElement( str(new_level_domain), ldb.FLAG_MOD_REPLACE, "msDS-Behavior-Version") |
