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

Re: ldap_set_option/ldap_bind_s segfaults



> On Dec 29, 2007, at 16:27 , Pierangelo Masarati wrote:
>
>> Johan Ström wrote:
>>> Hi list
>>>
>>> Im trying to run pure-ftpd 1.0.21 on a FreeBSD 7.0-amd64
>>
>> Since your arch is 64 bit, and that piece of code is using a lot of
>> function calls whose declaration in ldap.h is hidden behind
>> LDAP_DEPRECATED (ldap_init(), ldap_bind_s()), you should declare that
>> macro (e.g. manually add -DLDAP_DEPRECATED=1 in the Makefile where
>> LDAP-related code is built) when building the client, so the function
>> declarations become visible.
>
> Hi, thanks for your answer!
>
> That would only solve any compile time problems, right? And I got no
> problems with compiling.. Altough I tried to add

You definitely have a compile time problem if you use undefined functions,
since in C undefined types default to int (32 bits) while pointers usually
have word size (64 bits on 64 bit archs).

>
> #define LDAP_DEPRICATED 1

There's a typo in the above; the correct macro name is LDAP_DEPRECATED

>
> right before the ldap.h/lber.h includes just to test, but no
> difference.. Still segfaults.
> I could try to change the ldap_bind_s to ldap_sasl_bind, but that
> wouldnt help since it crashes on the ldap_set_version, and that call
> isn't depricated, right?

No, it's not.  But ldap_init() is, and your issue could start there.

> I have tried with 3, 2, and 1 as versions just to test, no difference
> at all.. Always crashes.

Please fix the above issues and retry.  And pump up the compile-time
warnings to get some useful information from the compiler itself (e.g.
-Wall with gcc).

p.



Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
---------------------------------------
Office:  +39 02 23998309
Mobile:  +39 333 4963172
Email:   pierangelo.masarati@sys-net.it
---------------------------------------