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

problems between chair and microphone



"Gary D. Williams" wrote:

> I used ldif2ldbm to build my directory.  The error means you're trying
> to add an entry that doesn't conform to the schema as defined in the
> configuration files.

remember what I said about brain fade...I made a mistake of assuming that the
attribute "mail" was a member of the person object.  It isn't....  Anyway,
I've moved on and now have another potential problem which, I'm willing to
bet, is probably more lack of information/knowledge than a real bug.  Here are
the important bits:

sh test.add
add objectclass:
        person
add cn:
        Eric99
add sn:
        esj99
adding new entry cn=Eric99, o=customers, o=whichgroup, o=category,
o=inguide.com
ldap_add: No such object
ldap_add: matched: o=inguide.com

the data file used for the LDAPadd command is:

dn: cn=Eric99, o=customers, o=whichgroup, o=category, o=inguide.com
objectclass: person
cn: Eric99
sn: esj99

the add command itself is:

/usr/local/bin/ldapadd -v -h localhost -D 'cn=root, o=inguide.com'  -w
'secret' -f ./test.ldap

and debugging output from slapd is:

select activity on 1 descriptors
activity on: 5r
read activity on 5
ber_get_next
ber_get_next: tag 0x30 len 128 contents:
ber_dump: buf 0x8273378, ptr 0x8273378, end 0x82733f8
          current len 128, contents:
        02 01 02  h  { 04  ?  c  n  =  E  r  i  c  9  9
         , 20  o  =  c  u  s  t  o  m  e  r  s  , 20  o
         =  w  h  i  c  h  g  r  o  u  p  , 20  o  =  c
         a  t  e  g  o  r  y  , 20  o  =  i  n  g  u  i
         d  e  .  c  o  m  0  8  0 17 04 0b  o  b  j  e
         c  t  c  l  a  s  s  1 08 04 06  p  e  r  s  o
         n  0 0e 04 02  c  n  1 08 04 06  E  r  i  c  9
         9  0 0d 04 02  s  n  1 07 04 05  e  s  j  9  9
        (end)
do_add
    do_add: dn (cn=Eric99,o=customers,o=whichgroup,o=category,o=inguide.com)
=> dn2id( "CN=ERIC99,O=CUSTOMERS,O=WHICHGROUP,O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=CUSTOMERS,O=WHICHGROUP,O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=WHICHGROUP,O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=INGUIDE.COM" )
<= dn2id 1 (in cache)
=> id2entry( 1 )
<= id2entry 0x8273050 (cache)
=> dn2id( "O=CUSTOMERS,O=WHICHGROUP,O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=WHICHGROUP,O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=CATEGORY,O=INGUIDE.COM" )
=> ldbm_cache_open( "/usr/tmp/ldap/dn2id.gdbm", 2, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
=> dn2id( "O=INGUIDE.COM" )
<= dn2id 1 (in cache)
=> id2entry( 1 )
<= id2entry 0x8273050 (cache)
send_ldap_result 32:o=inguide.com:
ber_flush: 27 bytes to sd 5
         0 19 02 01 02  i 14 0a 01 20 04 0d  o  =  i  n
         g  u  i  d  e  .  c  o  m 04 00
parent does not exist
listening for connections on 3, activity on: 5r
before select active_threads 0
select activity on 1 descriptors
activity on: 5r
read activity on 5
ber_get_next
ber_get_next: tag 0x30 len 5 contents:
ber_dump: buf 0x8273168, ptr 0x8273168, end 0x827316d
          current len 5, contents:
        02 01 03  B 00
do_unbind
listening for connections on 3, activity on:
before select active_threads 0

the ldif file used to generate the database looks something like this:

dn: o=inguide.com
o: inguide
objectclass: organization

dn: cn=Eric0, o=customers, o=whichgroup, o=category, o=inguide.com
objectclass: person
cn: Eric0
sn: esj0

dn: cn=Eric1, o=customers, o=whichgroup, o=category, o=inguide.com
objectclass: person
cn: Eric1
sn: esj1

dn: cn=Eric2, o=customers, o=whichgroup, o=category, o=inguide.com
objectclass: person
cn: Eric2
sn: esj2

and so on..

ideas?
--- eric