Details

      Description

      If you export a schema to OpenLDAP schema format, you cannot import it to slapd because slaptest fails with:

      1. slaptest -f test.conf -F tmp/
        55898c8a drksuewo.schema: line 5 attributetype: Missing closing parenthesis before end of input
        AttributeTypeDescription = "(" whsp
        numericoid whsp ; AttributeType identifier
        [ "NAME" qdescrs ] ; name used in AttributeType
        [ "DESC" qdstring ] ; description
        [ "OBSOLETE" whsp ]
        [ "SUP" woid ] ; derived from this other
        ; AttributeType
        [ "EQUALITY" woid ] ; Matching Rule name
        [ "ORDERING" woid ] ; Matching Rule name
        [ "SUBSTR" woid ] ; Matching Rule name
        [ "SYNTAX" whsp noidlen whsp ] ; see section 4.3
        [ "SINGLE-VALUE" whsp ] ; default multi-valued
        [ "COLLECTIVE" whsp ] ; default not collective
        [ "NO-USER-MODIFICATION" whsp ]; default user modifiable
        [ "USAGE" whsp AttributeUsage ]; default userApplications
        ; userApplications
        ; directoryOperation
        ; distributedOperation
        ; dSAOperation
        whsp ")"
        slaptest: bad configuration directory!

      The problem is that the exported schema misses the required whitespace character in front of the closing parenthesis of each attributetype and objectclass element. The fix is easy, just the renderer must be corrected.

        Activity

        Hide
        seelmann Stefan Seelmann added a comment -

        Great, thanks for the super fast feedback

        Show
        seelmann Stefan Seelmann added a comment - Great, thanks for the super fast feedback
        Hide
        ckling Christoph Kling added a comment -

        An empty line between the schema records is not required. I used slaptest to verify that.

        Show
        ckling Christoph Kling added a comment - An empty line between the schema records is not required. I used slaptest to verify that.
        Hide
        seelmann Stefan Seelmann added a comment -

        API 1.0.0-31 is released and included in next Studio version.

        A final question: Currently there is no empy line between the schema records, is that ok or is it mandatory to add one?

        attributetype ( ... NAME ...
            DESC ...
            ...
            USAGE userApplications )
        attributetype ( ... NAME ...
            DESC ...
            ...
            USAGE userApplications )
        
        Show
        seelmann Stefan Seelmann added a comment - API 1.0.0-31 is released and included in next Studio version. A final question: Currently there is no empy line between the schema records, is that ok or is it mandatory to add one? attributetype ( ... NAME ... DESC ... ... USAGE userApplications ) attributetype ( ... NAME ... DESC ... ... USAGE userApplications )
        Hide
        seelmann Stefan Seelmann added a comment -

        It's fixed in DIRAPI-240, requires API release 1.0.0-M31.

        Show
        seelmann Stefan Seelmann added a comment - It's fixed in DIRAPI-240 , requires API release 1.0.0-M31.
        Hide
        seelmann Stefan Seelmann added a comment - - edited

        In RFC 2251 the 'whsp' before closing parenthesis was mandatory. In RFC 4512 this is now called 'WSP' and is optional. But OpenLDAP/slaptest requires it.

        The schema renderer is located in the API project, I created DIRAPI-240 for it.

        Show
        seelmann Stefan Seelmann added a comment - - edited In RFC 2251 the 'whsp' before closing parenthesis was mandatory. In RFC 4512 this is now called 'WSP' and is optional. But OpenLDAP/slaptest requires it. The schema renderer is located in the API project, I created DIRAPI-240 for it.

          People

          • Assignee:
            seelmann Stefan Seelmann
            Reporter:
            ckling Christoph Kling
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development