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

Re: (ITS#4168) autofs with ldap triggers segfault in kernel

Pierangelo Masarati wrote:
> Some debugging symbols, at least the line number would have been of
> help; anyway, this is more and more convincing of my suspicion about
> some 64 bit issue (I haven't noticed yet on my amd64, though) because
> ldap_{sg}et_option() do a lot of pointer-to-anytype conversion with
> explicit casts, and this is a typical good chance for type mismatch
> because the cast inhibits compiler warnings.
> Can you try your best to get line numbers out of there?
I've rebuild openldap, ensuring -g option is used (which was not the
case previously), here it is:

(gdb) bt full
#0  ldap_set_option (ld=0x55667200, option=17, invalue=0x7fffffb13d44)
    at options.c:358
        lo = Variable "lo" is not available.
(gdb) bt
#0  ldap_set_option (ld=0x55667200, option=17, invalue=0x7fffffb13d44)
    at options.c:358
#1  0x00002aaaaaf00ba8 in do_connect (ctxt=0x555555665740,
    result_ldap=0x7fffffb13d94) at lookup_ldap.c:66
#2  0x00002aaaaaf00e70 in lookup_init (mapfmt=0x2aaaaaf03920 "sun", argc=1,
    argv=0x7fffffb13f98, context=Variable "context" is not available.
) at lookup_ldap.c:180
#3  0x000055555555aac9 in open_lookup (name=0x7fffffb14a20 "ldap",
    err_prefix=0x55555555c4dd "", mapfmt=0x0, argc=1, argv=0x7fffffb13f98)
    at module.c:83
#4  0x0000555555559da3 in main (argc=Variable "argc" is not available.
) at automount.c:1762

>  I've downloaded
> autofs 4.1.3 sources (is it the version you're using?) and the only
> calls to ldap_set_option() is to set the protocol version; in my copy of
> the file it occurs at line 58 rather than 66.  The datum is an int, so
> that call should be fine.  A LDAP * resulting from a call to ldap_init()
> is passed after checking it's not NULL.
We using 4.1.4, with some patches applied, see
http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/SPECS/autofs/ for details.

The sewing machine light usually burns out on Sunday
		-- Murphy's Laws of Sewing n°16