If your service or module needs LDAP schemas that are not
included in the default installation, you'll have to implement
_includeLDAPSchemas
. In this method,
you have to return a reference to an array that contains
the paths to the schemas you need. They will be added to
slapd.conf
.
Let's see how the samba module does this. It needs the
samba.schema
schema.
Example 6.2. Implementing _includeLDAPSchemas
sub _includeLDAPSchemas { my $self = shift; return ['/etc/ldap/schema/samba.schema']; }
The resulting slapd.conf
file is as
follows:
# Schema and objectClass definitions include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/samba.schema