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


Hi all

Could anybody help me with a question regarding the uidPool object class described in Gerald Carter's LDAP System Administration book? The idea is to provide a means of storing the next avaliable uidNumber in the directory for atomic updates. I have pulled the schema from the author's site, the schema file contents are as follows:

## Used for storing the next gid and next uid in the the directory
objectclass ( NAME 'uidPool' SUP top AUXILIARY
       DESC 'Pool for allocating UNIX uids'
       MUST ( uidNumber $ cn ) )

objectclass ( NAME 'gidPool' SUP top AUXILIARY
       DESC 'Pool for allocating UNIX gids'
       MUST ( gidNumber $ cn ) )

This has been included in my slapd.conf file and the deamon restarted. I now want to add the following ldif:

dn: cn=ID Pool,ou=people,dc=nqe,dc=com
objectClass: uidPool
cn: ID Pool
uidNumber: 1800

When I try to run ldapadd with this I am told that I get an Object Class Violation error:

mta:/tmp# ldapadd -x -D "cn=Manager,dc=nqe,dc=com" -W -f /tmp/uidpool.ldif
Enter LDAP Password:
adding new entry "cn=NQE ID Pool,ou=people,dc=nqe,dc=com"
ldapadd: update failed: cn=NQE ID Pool,ou=people,dc=nqe,dc=com
ldap_add: Object class violation (65)
      additional info: no structural object class provided

Can anyone tell me what I need to put in the "structuralObjectClass: " parameter in the LDIF to get this to work? I have had a look at the RFC but it's been a while since I took my rocket science degree so any pointers would be really appreciated!

Thanks in advance

Jamie Davey