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

Mysterious Seg Fault



Hello friends,

I'm running OpenLDAP 2.2.17 on RHEL AS 3.0 with from-source compiled
versions of openssl 0.9.7d, heimdal-0.6, cyrus-sasl 2.1.19 and berkeley
db 4.2.52.  When I compiled 2.2.11 against these, it runs great.  But
2.2.17 dies with a seg fault, usually when trying to do a sasl bind, I
believe:

connection_read(14): input error=-2 id=13, closing.
connection_closing: readying conn=13 sd=14 for close
connection_close: deferring conn=13 sd=14
do_unbind
connection_resched: attempting closing conn=13 sd=14
connection_close: conn=13 sd=14
connection_get(14): got connid=14
connection_read(14): checking for input on id=14
TLS trace: SSL_accept:before/accept initialization
TLS trace: SSL_accept:SSLv3 read client hello A
TLS trace: SSL_accept:SSLv3 write server hello A
TLS trace: SSL_accept:SSLv3 write certificate A
TLS trace: SSL_accept:SSLv3 write server done A
TLS trace: SSL_accept:SSLv3 flush data
TLS trace: SSL_accept:error in SSLv3 read client certificate A
TLS trace: SSL_accept:error in SSLv3 read client certificate A
connection_get(14): got connid=14
connection_read(14): checking for input on id=14
TLS trace: SSL_accept:SSLv3 read client key exchange A
TLS trace: SSL_accept:SSLv3 read finished A
TLS trace: SSL_accept:SSLv3 write change cipher spec A
TLS trace: SSL_accept:SSLv3 write finished A
TLS trace: SSL_accept:SSLv3 flush data
connection_read(14): unable to get TLS client DN, error=49 id=14
connection_get(14): got connid=14
connection_read(14): checking for input on id=14
ber_get_next
ber_get_next: tag 0x30 len 534 contents:
ber_get_next
ber_get_next on fd 14 failed errno=11 (Resource temporarily unavailable)
do_bind
ber_scanf fmt ({imt) ber:
ber_scanf fmt ({m) ber:
ber_scanf fmt (m) ber:
ber_scanf fmt (}}) ber:
>>> dnPrettyNormal: <>
<<< dnPrettyNormal: <>, <>
do_sasl_bind: dn () mech GSSAPI
send_ldap_sasl: err=14 len=98
send_ldap_response: msgid=1 tag=97 err=14
ber_flush: 114 bytes to sd 14
<== slap_sasl_bind: rc=14
connection_get(14): got connid=14
connection_read(14): checking for input on id=14
ber_get_next
ber_get_next: tag 0x30 len 20 contents:
ber_get_next
ber_get_next on fd 14 failed errno=11 (Resource temporarily unavailable)
do_bind
ber_scanf fmt ({imt) ber:
ber_scanf fmt ({m) ber:
ber_scanf fmt (}}) ber:
>>> dnPrettyNormal: <>
<<< dnPrettyNormal: <>, <>
do_sasl_bind: dn () mech GSSAPI
send_ldap_sasl: err=14 len=53
send_ldap_response: msgid=2 tag=97 err=14
ber_flush: 69 bytes to sd 14
<== slap_sasl_bind: rc=14
connection_get(14): got connid=14
connection_read(14): checking for input on id=14
ber_get_next
ber_get_next: tag 0x30 len 75 contents:
ber_get_next
ber_get_next on fd 14 failed errno=11 (Resource temporarily unavailable)
do_bind
ber_scanf fmt ({imt) ber:
ber_scanf fmt ({m) ber:
ber_scanf fmt (m) ber:
ber_scanf fmt (}}) ber:
>>> dnPrettyNormal: <>
<<< dnPrettyNormal: <>, <>
do_sasl_bind: dn () mech GSSAPI
slap_sasl_getdn: u:id converted to
uid=service/nss/omega.uta.edu,cn=CEDAR.UTA.EDU,cn=GSSAPI,cn=auth
>>> dnNormalize:
<uid=service/nss/omega.uta.edu,cn=CEDAR.UTA.EDU,cn=GSSAPI,cn=auth>
=>
ldap_bv2dn(uid=service/nss/omega.uta.edu,cn=CEDAR.UTA.EDU,cn=GSSAPI,cn=auth,0)
ldap_err2string
<=
ldap_bv2dn(uid=service/nss/omega.uta.edu,cn=CEDAR.UTA.EDU,cn=GSSAPI,cn=auth)=0 Success
=> ldap_dn2bv(272)
ldap_err2string
<=
ldap_dn2bv(uid=service/nss/omega.uta.edu,cn=cedar.uta.edu,cn=gssapi,cn=auth)=0 Success
<<< dnNormalize:
<uid=service/nss/omega.uta.edu,cn=cedar.uta.edu,cn=gssapi,cn=auth>
==>slap_sasl2dn: converting SASL name
uid=service/nss/omega.uta.edu,cn=cedar.uta.edu,cn=gssapi,cn=auth to a DN
slap_sasl_regexp: converting SASL name
uid=service/nss/omega.uta.edu,cn=cedar.uta.edu,cn=gssapi,cn=auth
slap_sasl_regexp: converted SASL name to
ldaps:///cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu
slap_parseURI: parsing
ldaps:///cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu
ldap_url_parse_ext(ldaps:///cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu)
>>> dnNormalize: <cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu>
=> ldap_bv2dn(cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu,0)
ldap_err2string
<= ldap_bv2dn(cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu)=0
Success
=> ldap_dn2bv(272)
ldap_err2string
<= ldap_dn2bv(cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu)=0
Success
<<< dnNormalize: <cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu>
slap_sasl2dn: performing internal search
(base=cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu, scope=0)
=> bdb_search
bdb_dn2entry("cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu")
=> bdb_dn2id( "cn=services,dc=uta,dc=edu" )
<= bdb_dn2id: got id=0x00000007
=> bdb_dn2id( "cn=nss,cn=services,dc=uta,dc=edu" )
<= bdb_dn2id: got id=0x00020d66
=> bdb_dn2id( "cn=omega.uta.edu,cn=nss,cn=services,dc=uta,dc=edu" )
<= bdb_dn2id: got id=0x00020df3
entry_decode: "cn=omega.uta.edu,cn=nss,cn=Services,dc=uta,dc=edu"
<= entry_decode(cn=omega.uta.edu,cn=nss,cn=Services,dc=uta,dc=edu)
Segmentation fault