diff options
author | Matthieu Patou <mat@matws.net> | 2011-07-25 17:31:03 +0400 |
---|---|---|
committer | Matthieu Patou <mat@samba.org> | 2011-07-26 23:34:24 +0200 |
commit | 326e2dd681c7210375a9b6e3b3e512dbab94bf7e (patch) | |
tree | 765af151f0321e499ec75bc827ea45998eb6eac2 /source4/dsdb/samdb | |
parent | 5f1f15399843760d3c3cf98022c76017a3a415c8 (diff) | |
download | samba-326e2dd681c7210375a9b6e3b3e512dbab94bf7e.tar.gz samba-326e2dd681c7210375a9b6e3b3e512dbab94bf7e.tar.bz2 samba-326e2dd681c7210375a9b6e3b3e512dbab94bf7e.zip |
s4-dsdb: Improve the calculation of system flags according to 3.1.1.5.2.4
Diffstat (limited to 'source4/dsdb/samdb')
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/objectclass.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/objectclass.c b/source4/dsdb/samdb/ldb_modules/objectclass.c index 7ae90d353a..ab1766f856 100644 --- a/source4/dsdb/samdb/ldb_modules/objectclass.c +++ b/source4/dsdb/samdb/ldb_modules/objectclass.c @@ -734,14 +734,15 @@ static int objectclass_do_add(struct oc_context *ac) } else if (ldb_attr_cmp(objectclass->lDAPDisplayName, "site") == 0 || ldb_attr_cmp(objectclass->lDAPDisplayName, "serversContainer") == 0 || ldb_attr_cmp(objectclass->lDAPDisplayName, "nTDSDSA") == 0) { + if (ldb_attr_cmp(objectclass->lDAPDisplayName, "site") == 0) + systemFlags |= (int32_t)(SYSTEM_FLAG_CONFIG_ALLOW_RENAME); systemFlags |= (int32_t)(SYSTEM_FLAG_DISALLOW_MOVE_ON_DELETE); - } else if (ldb_attr_cmp(objectclass->lDAPDisplayName, "siteLink") == 0 + || ldb_attr_cmp(objectclass->lDAPDisplayName, "subnet") == 0 || ldb_attr_cmp(objectclass->lDAPDisplayName, "siteLinkBridge") == 0 || ldb_attr_cmp(objectclass->lDAPDisplayName, "nTDSConnection") == 0) { systemFlags |= (int32_t)(SYSTEM_FLAG_CONFIG_ALLOW_RENAME); } - /* TODO: If parent object is site or subnet, also add (SYSTEM_FLAG_CONFIG_ALLOW_RENAME) */ if (el || systemFlags != 0) { |