[Date Prev][Date Next] [Chronological] [Thread] [Top]

Adding a schema to OpenLdap



I have a schema that I have used on a z/OS Ldap server for over six years.  I received a NOID from IANA and have had no issues running ldapmodify commands on the z/OS ldap server to allow the objectclass's use.
 
Now, I'm working to port he application that uses this ldap server to Linux and can't seem to get OpenLdap to allow the use of my objectclass.  I have created my own schema file and have included it in the slapd.conf, which start with no errors; however, the ldapadd to process the ldif file fails with the famous "ldap_add:  Invalid syntax (21)  additional info:  objectclass: value #1 invalid per syntax" .  I know this to be my objectclass, since the following is my ldif file.
 
dn: cn=10.172.50.0, o=SAH
objectclass: top         
objectclass: saHolidex   
cn: 10.172.50.0          
sn: AADAL                
ou: HOTEL                
mtrStatus: N             
ipAddr: 10.172.50.0      
pqsStatus: MQSOFF        
subNetMask: 255.255.255.0
 
The z/OS ldap server had gotten away from including schema files and so I simply issued the ldapmodify command to update "cn=schema,o=sah" as my suffix was o=sah.
The  schema file I created looks like the following, as my IANA number is 15132:
 
attributetype ( 1.3.6.1.4.1.15132.0.1.2.4
        NAME 'mtrStatus'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
        EQUALITY caseIgnoreMatch )
attributetype ( 1.3.6.1.4.1.15132.0.1.2.3
        NAME 'ipAddr'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
        EQUALITY caseExactIA5Match )
attributetype ( 1.3.6.1.4.1.15132.0.1.2.5
        NAME 'pqsStatus'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
        EQUALITY caseIgnoreMatch )
attributetype ( 1.3.6.1.4.1.15132.0.1.2.6
        NAME 'subNetMask'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
        EQUALITY caseExactIA5Match )
objectClass    ( 1.3.6.1.4.1.15123.0.1.2.1
   NAME 'saHolidex'
       DESC 'IHG Sah'
   SUP top STRUCTURAL
       MUST ( cn $ sn )
       MAY ( ou $ mtrStatus $ ipAddr $ pqsStatus $ subNetMask ) )
 
The old ldif file for the z/OS systems looks like the following:
dn: cn=schema,o=SAH
changetype:modify
add:x
attributetypes: ( 15132.0.1.2.4 NAME 'mtrStatus' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 EQUALITY caseIgnoreMatch )
ibmattributetypes: ( 15132.0.1.2.4 ACCESS-CLASS normal)
attributetypes: ( 15132.0.1.2.3 NAME 'ipAddr' SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 EQUALITY caseExactIA5Match )
ibmattributetypes: ( 15132.0.1.2.3 ACCESS-CLASS normal)
attributetypes: ( 15132.0.1.2.5 NAME 'pqsStatus' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 EQUALITY caseIgnoreMatch )
ibmattributetypes: ( 15132.0.1.2.5 ACCESS-CLASS normal)
attributetypes: ( 15132.0.1.2.6 NAME 'subNetMask' SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 EQUALITY caseExactIA5Match )
ibmattributetypes: ( 15132.0.1.2.6 ACCESS-CLASS normal)
objectclasses: ( 15123.0.1.2.1 NAME 'saHolidex' SUP top MUST ( cn $ sn ) MAY ( ou $ mtrStatus $ ipAddr $ pqsStatus $ subNetMask ) )
Can anyone help me figure out why I can't get this objectclass to work.  It works fine with the z/OS Ldap Server, and has for many years, all the way back to the OS390 days, prior to z/OS.
 
Thanks, i advance,

Steve Francis
Technical Advisor - zSeries, zLinux, z/OS
IHG
Alpharetta Data Center
Ph:  770-442-7157
Cell:  770-906-3122
IM: francisihg