diff options
author | Matthieu Patou <mat@matws.net> | 2010-07-10 14:48:40 +0400 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2010-07-15 22:08:21 +1000 |
commit | a748402f61b4b3ea0df6666f4ec90f42fb45eaf8 (patch) | |
tree | be145ed3dee796cec963f83b661ecc4dcc33e86c | |
parent | 7478224189598f192065b91d57080f1dd1719a99 (diff) | |
download | samba-a748402f61b4b3ea0df6666f4ec90f42fb45eaf8.tar.gz samba-a748402f61b4b3ea0df6666f4ec90f42fb45eaf8.tar.bz2 samba-a748402f61b4b3ea0df6666f4ec90f42fb45eaf8.zip |
s4 ldb modules: relax some tests about attributes that should not be here
For attributes that we know that are harmless and that used to be stored
in the ldb we relax the tests on the existance in a given objectclass.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/objectclass_attrs.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/objectclass_attrs.c b/source4/dsdb/samdb/ldb_modules/objectclass_attrs.c index 6cfecc0d72..b9436e3a04 100644 --- a/source4/dsdb/samdb/ldb_modules/objectclass_attrs.c +++ b/source4/dsdb/samdb/ldb_modules/objectclass_attrs.c @@ -153,6 +153,12 @@ static int attr_handler(struct oc_context *ac) return ldb_next_request(ac->module, child_req); } +/* + these are attributes which are left over from old ways of doing + things in ldb, and are harmless + */ +static const char *harmless_attrs[] = { "parentGUID", NULL }; + static int attr_handler2(struct oc_context *ac) { struct ldb_context *ldb; @@ -219,6 +225,9 @@ static int attr_handler2(struct oc_context *ac) found = str_list_check(may_contain, attr->lDAPDisplayName); } if (!found) { + found = str_list_check(harmless_attrs, attr->lDAPDisplayName); + } + if (!found) { ldb_asprintf_errstring(ldb, "objectclass_attrs: attribute '%s' on entry '%s' does not exist in the specified objectclasses!", msg->elements[i].name, ldb_dn_get_linearized(msg->dn)); |