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

Re: Modify with NULLs causes an assertion to fail, slapd to (ITS#1368)



> I note that net::ldap provides facilities to generate a
> hex dump of LDAP requests it generates.  This can be provided
> in lieu of the LDIF or ber_dump of the message.

In the Net::LDAP man page, it states that you can use the 'debug' method of
the 'new' object, but it doesn't appear to work correctly - nothing is
printed to STDERR.

> I think in this case, I'm going to need more complete BER dump
> to determine exactly what the client request was.  Please provide
> if at all possible.

You mentioned that -d 816 wouldn't be sufficient, so here's the complete
transaction using -d 1 (I believe that's supposed to show the most
debugging?  Let me know if you'd like the dump at a different debug level.)

connection_get(7): got connid=0
connection_read(7): checking for input on id=0
ber_get_next
ber_get_next: tag 0x30 len 56 contents:
ber_get_next
ber_get_next on fd 7 failed errno=11 (Resource temporarily unavailable)
do_bind
ber_scanf fmt ({iat) ber:
ber_scanf fmt (o}) ber:
do_bind: version=2 dn="cn=admin,dc=ivy,dc=tec,dc=in,dc=us" method=128
dn2entry_r: dn: "CN=ADMIN,DC=IVY,DC=TEC,DC=IN,DC=US"
=> dn2id( "CN=ADMIN,DC=IVY,DC=TEC,DC=IN,DC=US" )
=> ldbm_cache_open( "dn2id.dbb", 7, 600 )
<= ldbm_cache_open (opened 0)
<= dn2id NOID
dn2entry_r: dn: "DC=IVY,DC=TEC,DC=IN,DC=US"
=> dn2id( "DC=IVY,DC=TEC,DC=IN,DC=US" )
=> ldbm_cache_open( "dn2id.dbb", 7, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
=> ldbm_cache_open( "id2entry.dbb", 7, 600 )
<= ldbm_cache_open (opened 1)
=> str2entry
<= str2entry(dc=ivy,dc=tec,dc=in,dc=us) -> -1 (0x101be8)
<= id2entry_r( 1 ) 0x101be8 (disk)
====> cache_return_entry_r( 1 ): created (0)
do_bind: v2 bind: "cn=admin,dc=ivy,dc=tec,dc=in,dc=us" to
"cn=admin,dc=ivy,dc=tec,dc=in,dc=us"
send_ldap_result: conn=0 op=0 p=2
send_ldap_response: msgid=1 tag=97 err=0
ber_flush: 14 bytes to sd 7
connection_get(7): got connid=0
connection_read(7): checking for input on id=0
ber_get_next
ber_get_next: tag 0x30 len 238 contents:
ber_get_next
ber_get_next on fd 7 failed errno=11 (Resource temporarily unavailable)
do_modify
ber_scanf fmt ({a) ber:
ber_scanf fmt ({i{a[V]}}) ber:
ber_scanf fmt ({i{a[V]}}) ber:
ber_scanf fmt ({i{a[V]}}) ber:
ber_scanf fmt ({i{a[V]}}) ber:
ber_scanf fmt ({i{a[V]}}) ber:
dn2entry_r: dn: "UID=JMADDEN,OU=PEOPLE,DC=IVY,DC=TEC,DC=IN,DC=US"
=> dn2id( "UID=JMADDEN,OU=PEOPLE,DC=IVY,DC=TEC,DC=IN,DC=US" )
=> ldbm_cache_open( "dn2id.dbb", 7, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 99
=> id2entry_r( 99 )
=> ldbm_cache_open( "id2entry.dbb", 7, 600 )
<= ldbm_cache_open (cache 1)
=> str2entry
<= str2entry(uid=jmadden,ou=People,dc=ivy,dc=tec,dc=in,dc=us) -> -1
(0x101c68)
<= id2entry_r( 99 ) 0x101c68 (disk)
====> cache_return_entry_r( 99 ): created (0)
dn2entry_w: dn: "UID=JMADDEN,OU=PEOPLE,DC=IVY,DC=TEC,DC=IN,DC=US"
=> dn2id( "UID=JMADDEN,OU=PEOPLE,DC=IVY,DC=TEC,DC=IN,DC=US" )
====>
cache_find_entry_dn2id("UID=JMADDEN,OU=PEOPLE,DC=IVY,DC=TEC,DC=IN,DC=US"):
99 (1 tries)
<= dn2id 99 (in cache)
=> id2entry_w( 99 )
====> cache_find_entry_id( 99 )
"uid=jmadden,ou=People,dc=ivy,dc=tec,dc=in,dc=us" (found) (1 tries)
<= id2entry_w( 99 ) 0x101c68 (cache)
ldbm_modify_internal:
schema_check.c:45: failed assertion `a->a_vals[0] != NULL'
Abort





-- 
John Madden
UNIX Systems Engineer
Ivy Tech State College
jmadden@ivy.tec.in.us