directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <>
Subject [jira] [Commented] (DIRAPI-154) Implement "online" OpenLDAP schema parsing in DefaultSchemaLoader
Date Fri, 23 Aug 2013 03:47:52 GMT


Emmanuel Lecharny commented on DIRAPI-154:

I think that offering a way to load the OpenLDAP schema even if we are not connected to a
server is useful. 

There is more than just loading the schema from a server : we have some missing meta-data
that we use in the loadSchema, like the fact that the schema is disabled or enabled, etc.

I'm also expecting to have to implement some specific operations for SyntaxCheckers, Comparators,

At some point, I suspect we have to provide some packages having all those elements gathered
(a OpenLDAP schema package, another one for AD, etc...)
> Implement "online" OpenLDAP schema parsing in DefaultSchemaLoader
> -----------------------------------------------------------------
>                 Key: DIRAPI-154
>                 URL:
>             Project: Directory Client API
>          Issue Type: Improvement
>    Affects Versions: 1.0.0-M20
>            Reporter: Gerald Turner
>         Attachments: loadSchema.log, openldap-schema.ldif
> The constructor in DefaultSchemaLoader has the following comment:
>   // TODO Handle schema loading on other LDAP servers
> For OpenLDAP this would require searching subtree under cn=schema,cn=config and handling
attributes like:
>   olcAttributeTypes: {1}( NAME ( 'sn' 'surname' ) DESC 'RFC2256: last (family)
name(s) for which the entity is known by' SUP name )
>   olcObjectClasses: {4}( NAME 'person' DESC 'RFC2256: a person' SUP top STRUCTURAL
MUST ( sn $ cn ) MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
> Note that there is also an 'olcObjectIdentifier' attribute type that seems to be used
to create macros for interpolation in OID's used in other attributes:
>   olcObjectIdentifier: OLcfg
>   olcObjectIdentifier: OLcfgAt OLcfg:3
>   olcObjectIdentifier: OLcfgOvAt OLcfgAt:3
>   olcObjectIdentifier: OMsyn
>   olcObjectIdentifier: OMsBoolean OMsyn:7
>   olcAttributeTypes: ( OLcfgOvAt:10.4 NAME 'olcUniqueStrict' DESC 'Enforce uniqueness
of null values' EQUALITY booleanMatch SYNTAX OMsBoolean SINGLE-VALUE )
> However this additional complexity seems to only be used for the internal/vendor-specific
schema itself (not 'core', 'nis', etc.).
> Attached is LDIF output of from searching cn=schema,cn=config.
> Mailing List reference:

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message