From a748402f61b4b3ea0df6666f4ec90f42fb45eaf8 Mon Sep 17 00:00:00 2001 From: Matthieu Patou Date: Sat, 10 Jul 2010 14:48:40 +0400 Subject: 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 --- source4/dsdb/samdb/ldb_modules/objectclass_attrs.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'source4/dsdb') 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; @@ -218,6 +224,9 @@ static int attr_handler2(struct oc_context *ac) } else { 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, -- cgit