cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: PATCH: prevent a double free() with a malformed LDAP URL

From: Nick Zitzmann <nick_at_chronosnet.com>
Date: Sat, 7 Sep 2013 10:32:20 -0500

On Sep 6, 2013, at 7:18 PM, Guenter <lists_at_gknw.net> wrote:

> seems NetWare CLDAP SDK doesnt like it:
> http://curl.haxx.se/dev/log.cgi?id=20130906231203-16410#prob1
> though hadnt time to look into it - just only saw the failing autobuild ...

Yeah, it also broke the build for me (Mountain Lion, LLVM 4.2):

===
ldap.c:368:46: error: no member named 'lud_attrs_dup' in 'struct ldap_url_desc';
      did you mean 'lud_attrs'?
                     ludp->lud_filter, ludp->lud_attrs_dup, 0, &result);
                                             ^~~~~~~~~~~~~
                                             lud_attrs
/usr/include/ldap.h:786:9: note: 'lud_attrs' declared here
        char **lud_attrs;
                  ^
===

I'm pretty sure lines 90-91 of lib/ldap.c is the culprit:

===
#undef LDAPURLDesc
#define LDAPURLDesc CURL_LDAPURLDesc
===

#undef doesn't work on typedef'd data structures, and LDAPURLDesc is declared as a typedef struct on Mountain Lion's built-in libldap.

Nick Zitzmann
<http://www.chronosnet.com/>

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2013-09-07