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

openldap-2.0.25: assertion failed in ber_sockbuf_ctrl



Update (for some reason my previous email didn't reach the list): 
ldap_start_tls_s was being called after a failed call to
ldap_set_option trying to set LDAP_OPT_X_TLS_REQUIRE_CERT. Even though,
should ldap_start_tls_s bail out like it did, with an assert error?

I also opened a ticket with nss_ldap:
http://bugzilla.padl.com/show_bug.cgi?id=104

Previous email below:

netscape-communicator: sockbuf.c:76: ber_sockbuf_ctrl: Assertion `( ( sb )->sb_opts.lbo_valid == 0x3 )' failed.

I get this error whenever I run netscape-communicator 4.79 as an user who
only exists in the directory and the following conditions:
- nss_ldap-194
- using start_tls in nss_ldap's /etc/ldap.conf (if I use just ssl (ldaps, 636) it works)

I also quickly tried openldap-2.1.2, same assertion error.

A backtrace (openldap-2.0.25):
Program received signal SIGABRT, Aborted.
0x40228161 in kill () from /lib/libc.so.6
(gdb) bt
#0  0x40228161 in kill () from /lib/libc.so.6
#1  0x40227d84 in raise () from /lib/libc.so.6
#2  0x40229771 in abort () from /lib/libc.so.6
#3  0x40221822 in __assert_fail () from /lib/libc.so.6
#4  0x403d6572 in ber_sockbuf_ctrl (sb=0x8ff0f00, opt=3, arg=0x403cef88) at sockbuf.c:76
#5  0x403c7532 in ldap_pvt_tls_inplace (sb=0x8ff0f00) at tls.c:699
#6  0x403c83a4 in ldap_start_tls_s (ld=0x8f9d000, serverctrls=0x0, clientctrls=0x0) at tls.c:1323
#7  0x40393cc7 in do_open () from /lib/libnss_ldap.so.2
#8  0x40394c9a in _nss_ldap_search_s () from /lib/libnss_ldap.so.2
#9  0x40395051 in _nss_ldap_getbyname () from /lib/libnss_ldap.so.2
#10 0x40395e65 in _nss_ldap_getpwuid_r () from /lib/libnss_ldap.so.2
#11 0x402a560f in getpwuid_r () from /lib/libc.so.6
#12 0x402a503d in getpwuid () from /lib/libc.so.6
#13 0x082a639c in fe_DefaultUserInfo ()
#14 0x082c43d5 in XFE_DefaultPrefs ()
#15 0x082c430a in XFE_ReadPrefs ()
#16 0x082bf241 in main ()
#17 0x40215d7f in __libc_start_main () from /lib/libc.so.6

ld in frame #6:
$1 = {ld_sb = 0x8ff0f00, ld_options = {ldo_valid = 0, ldo_debug = 3, ldo_tm_api = 0x4, ldo_tm_net = 0x0, ldo_version = 0, ldo_deref = 0, 
    ldo_timelimit = 0, ldo_sizelimit = 0, ldo_tls_mode = 0, ldo_defludp = 0x0, ldo_defport = 0, ldo_defbase = 0x0, ldo_defbinddn = 0x0, 
    ldo_def_sasl_mech = 0x0, ldo_def_sasl_realm = 0x0, ldo_def_sasl_authcid = 0x0, ldo_def_sasl_authzid = 0x0, ldo_sasl_secprops = {
      min_ssf = 0, max_ssf = 5, maxbufsize = 2415919104, security_flags = 150575968, property_names = 0x185, property_values = 0x0}, 
    ldo_refhoplimit = 0, ldo_sctrls = 0x0, ldo_cctrls = 0x0, ldo_rebindproc = 0x8f9d200, ldo_booleans = 0}, ld_lberoptions = 0, 
  ld_filtd = 0x40393504, ld_ufnprefix = 0xfd0 <Address 0xfd0 out of bounds>, ld_errno = 0, ld_error = 0x0, ld_matched = 0x0, ld_msgid = 0, 
  ld_requests = 0x0, ld_responses = 0x0, ld_abandoned = 0x0, ld_cache = 0x0, ld_defconn = 0x0, ld_conns = 0x0, ld_selectinfo = 0x0}

sb in frame #5:
$2 = {sb_opts = {lbo_valid = 0, lbo_options = 0, lbo_debug = 0, lbo_meminuse = 0}, sb_iod = 0x0, sb_fd = 0, sb_trans_needs_read = 0, 
  sb_trans_needs_write = 0, sb_max_incoming = 0}

sb in frame #4:
$3 = {sb_opts = {lbo_valid = 0, lbo_options = 0, lbo_debug = 0, lbo_meminuse = 0}, sb_iod = 0x0, sb_fd = 0, sb_trans_needs_read = 0, 
  sb_trans_needs_write = 0, sb_max_incoming = 0}