Nick Milas wrote:
> However, when I try to load this config to a new (empty) slapd.d directory, I
> get:
>
> ==========================================================================================
>
> # rm -rf slapd.d
> # mkdir slapd.d
> # chown ldap:ldap slapd.d
>
> # slapadd -n0 -F ./slapd.d -l /root/work/ldapconf-01.ldif
> 60a2e22a olcAttributeTypes: value #2 olcAttributeTypes: Unexpected token
> before SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
> 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 ")"
> slapadd: could not add entry dn="cn={10}dnsdomain2,cn=schema,cn=config"
> (line=2256):
> _############### 76.98% eta none elapsed none spd 1001.2
> k/s
> Closing DB...
>
> ==========================================================================================
>
> What am I doing wrong in updating the schemas in cn=config?
>
> I find the above message difficult to interpret. Note that there are numerous
> "SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )" statements in the schema definition.
Yes, but there is only one attribute value #2 in the attribute. Pay attention
to what the error message tells you.
>
> I include the new dnsdomain2 section for your reference:
>
> ==========================================================================================
>
> dn: cn={10}dnsdomain2,cn=schema,cn=config
> objectClass: olcSchemaConfig
> cn: {10}dnsdomain2
> olcAttributeTypes: {0}( 1.3.6.1.4.1.2428.20.0.0 NAME 'dNSTTL' DESC 'An integ
> er denoting time to live' EQUALITY integerMatch ORDERING integerOrderingMat
> ch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
> olcAttributeTypes: {1}( 1.3.6.1.4.1.2428.20.0.1 NAME 'dNSClass' DESC 'The cl
> ass of a resource record' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.14
> 66.115.121.1.26 )
> olcAttributeTypes: {2}( 1.3.6.1.4.1.2428.20.1.11 NAME 'wKSRecord' DESC 'a we
> ll known service description, RFC 1035' EQUALITY caseIgnoreIA5Match SUBSTR
> caseIgnoreIA5SubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
This is value #2 ^^
Read the ldif(5) manpage more carefully. You're missing a trailing space after
SUBSTR.
> olcAttributeTypes: {3}( 1.3.6.1.4.1.2428.20.1.12 NAME 'pTRRecord' DESC 'doma
> in name pointer, RFC 1035' EQUALITY caseIgnoreIA5Match SUBSTR caseIgnoreIA5
> SubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
> olcAttributeTypes: {4}( 1.3.6.1.4.1.2428.20.1.13 NAME 'hInfoRecord' DESC 'ho
> st information, RFC 1035' EQUALITY caseIgnoreIA5Match SUBSTR caseIgnoreIA5S
> ubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/