1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00

Start generating a configuration for the refint overlay. This

OpenLDAP module should ensure that after a subtree rename, attributes
are still consistant.

Andrew Bartlett
This commit is contained in:
Andrew Bartlett 2008-01-16 09:26:14 +11:00
parent 84dc6bc19c
commit f7f765c29b
2 changed files with 13 additions and 0 deletions

View File

@ -244,6 +244,7 @@ sub mk_openldap($$$)
modulepath $olroot/libexec/openldap
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}
@ -255,6 +256,7 @@ modulepath $olroot/libexec/openldap
moduleload back_hdb
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}
@ -266,6 +268,7 @@ moduleload memberof
moduleload back_hdb
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}
@ -278,6 +281,7 @@ modulepath /usr/lib/ldap
moduleload back_hdb
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}
@ -289,6 +293,7 @@ moduleload memberof
modulepath /usr/lib/openldap
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}
@ -300,6 +305,7 @@ moduleload memberof
modulepath /usr/lib64/openldap
moduleload syncprov
moduleload memberof
moduleload refint
";
close(CONF);
}

View File

@ -151,10 +151,12 @@ if (options["ldap-backend-type"] == "fedora-ds") {
var res = ldb.search("(&(&(linkID=*)(!(linkID:1.2.840.113556.1.4.803:=1)))(objectclass=attributeSchema))", subobj.SCHEMADN, ldb.SCOPE_SUBTREE, attrs);
assert(res.error == 0);
var memberof_config = "";
var refint_attributes = "";
for (i=0; i < res.msgs.length; i++) {
searchone(ldb, subobj.DOMAINDN, "(&(objectClass=computer)(cn=" + subobj.NETBIOSNAME + "))", "objectGUID");
var target = searchone(ldb, subobj.SCHEMADN, "(&(objectclass=attributeSchema)(linkID=" + (res.msgs[i].linkID + 1) + "))", "lDAPDisplayName");
if (target != undefined) {
refint_attributes = refint_attributes + " " + target + " " + res.msgs[i].lDAPDisplayName;
memberof_config = memberof_config + "overlay memberof
memberof-dangling error
memberof-refint TRUE
@ -166,6 +168,11 @@ memberof-dangling-error 32
";
}
}
memberof_config = "overlay refint
refint_attributes" + refint_attributes + "
" + memberof_config;
ok = sys.file_save(subobj.LDAPDIR + "/memberof.conf", memberof_config);
if (!ok) {
message("failed to create file: " + f + "\n");