Re: xemacs error with LDAP and Linux 2.4.2
>>>>> "James" == James LewisMoss <jimdres@mindspring.com> writes:
James> I agree. "options.c" doesn't exist in the xemacs source,
James> so it's coming from somewhere else (ldap source maybe.
James> don't have it handy).
James> My first thought was that xemacs is linked with
James> libldap.so.2 and maybe the libnss_ldap.so module is
James> expecting ldap functions in a different form?
umph... errr..... better change that to libopenldap.so.1, the xemacs
mule version from stable... That might explain why you can't find
options.c
(I am a bit reluctant to upgrade considering the size of this
package...)
However, other programs seem to work fine with the older version of
the library, so I am reluctant to accept that is the problem.
James> So it looks like something in getpwuid is messing up.
I might be mistaken... NO! hang on, if the crash is in getpwuid like
we suspect, then the problem lies in NSS, and I have the latest
libnss_ldap from unstable compiled for stable.
Now why didn't I think of using gdb before?
There seems to be two different crashes. When starting xemacs:
(gdb) bt
#0 0x4031a921 in kill () from /lib/libc.so.6
#1 0x4031a608 in raise () from /lib/libc.so.6
#2 0x4031bc61 in abort () from /lib/libc.so.6
#3 0x40314cc4 in __assert_fail () from /lib/libc.so.6
#4 0x4040b0df in ldap_set_option () from /usr/lib/libldap.so.2
#5 0x403e5fba in _init () from /lib/libnss_ldap.so.2
#6 0x403e6c94 in _nss_ldap_search () from /lib/libnss_ldap.so.2
#7 0x403e6f1f in _nss_ldap_getbyname () from /lib/libnss_ldap.so.2
#8 0x403e7724 in _nss_ldap_getpwnam_r () from /lib/libnss_ldap.so.2
#9 0x4037871d in getpwnam_r () from /lib/libc.so.6
#10 0x4037803d in getpwnam () from /lib/libc.so.6
#11 0x809c7b3 in Fuser_full_name () from /usr/lib/libcom_err.so.1
#12 0x809babe in init_editfns () from /usr/lib/libcom_err.so.1
#13 0x80a1121 in Finvocation_directory () from /usr/lib/libcom_err.so.1
#14 0x80a19f4 in main () from /usr/lib/libcom_err.so.1
#15 0x40314a42 in __libc_start_main () from /lib/libc.so.6
(gdb)
seems to imply that the problem is in libldap.so.2.
While running xemacs:
#0 0x4000a43c in _dl_debug_state () from /lib/ld-linux.so.2
#1 0x4000a145 in _dl_catch_error () from /lib/ld-linux.so.2
#2 0x403c27a0 in _dl_open () from /lib/libc.so.6
#3 0x4024835e in _IcePaAuthDataEntries () from /lib/libdl.so.2
#4 0x4000a145 in _dl_catch_error () from /lib/ld-linux.so.2
#5 0x4024894e in dlerror () from /lib/libdl.so.2
#6 0x4024839b in dlopen () from /lib/libdl.so.2
#7 0x4044bff4 in _sasl_get_mech_list () from /usr/lib/libsasl.so.7
#8 0x4044a96c in sasl_client_init () from /usr/lib/libsasl.so.7
#9 0x403fb118 in ldap_int_sasl_init () from /usr/lib/libldap.so.2
#10 0x4040abfe in ldap_int_initialize () from /usr/lib/libldap.so.2
#11 0x4040b0ad in ldap_set_option () from /usr/lib/libldap.so.2
#12 0x403e5fba in _init () from /lib/libnss_ldap.so.2
#13 0x403e6c94 in _nss_ldap_search () from /lib/libnss_ldap.so.2
#14 0x403e6f1f in _nss_ldap_getbyname () from /lib/libnss_ldap.so.2
#15 0x403e7778 in _nss_ldap_getpwuid_r () from /lib/libnss_ldap.so.2
#16 0x403788ad in getpwuid_r () from /lib/libc.so.6
#17 0x4037819d in getpwuid () from /lib/libc.so.6
#18 0x809c6c8 in Fuser_real_login_name ()
#19 0x80a6004 in Feval ()
#20 0x80a6528 in funcall_recording_as ()
#21 0x80a667f in Ffuncall ()
#22 0x8087679 in Fbyte_code ()
#23 0x80a6fc4 in Ffetch_bytecode ()
#24 0x80a6635 in funcall_recording_as ()
#25 0x80a667f in Ffuncall ()
#26 0x80a6bbe in Fapply ()
#27 0x80a7405 in apply1 ()
#28 0x8088de0 in Fcall_interactively ()
#29 0x80a548d in Fcommand_execute ()
#30 0x80d3637 in extract_vector_nth_mouse_event ()
#31 0x80d3aeb in Fdispatch_event ()
#32 0x808f430 in Fcommand_loop_1 ()
#33 0x808f295 in Frecursive_edit ()
#34 0x80a4366 in condition_case_1 ()
#35 0x808eed3 in Freally_early_error_handler ()
#36 0x808eef7 in Freally_early_error_handler ()
#37 0x80a4050 in internal_catch ()
#38 0x808f03e in initial_command_loop ()
#39 0x80a12cd in Finvocation_directory ()
#40 0x80a19f4 in main ()
#41 0x40314a42 in __libc_start_main () from /lib/libc.so.6
seems to imply that the problem is in libsasl. bug #82574 or #81847
might be relevant here (I doubt it), will check more later.
(BTW neither bug is not reproducible if NSCD is running...)
--
Brian May <bam@debian.org>
Reply to: