From: Daniel Stenberg Date: Thu, 19 Oct 2023 22:04:28 +0000 (+0200) Subject: openldap: set the callback argument in oldap_do X-Git-Tag: curl-8_5_0~215 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3afbe0603d8a8d39d0bb20eec7bf3e5a62c36942;p=thirdparty%2Fcurl.git openldap: set the callback argument in oldap_do ... to make sure it has the current 'data' pointer and not a stale old one. Reported-by: Dan Fandrich Closes #12166 --- diff --git a/lib/openldap.c b/lib/openldap.c index 3aff3060a1..64de153b22 100644 --- a/lib/openldap.c +++ b/lib/openldap.c @@ -886,6 +886,11 @@ static CURLcode oldap_do(struct Curl_easy *data, bool *done) result = oldap_url_parse(data, &lud); if(!result) { + Sockbuf *sb; + /* re-install the libcurl SSL handlers into the sockbuf. */ + ldap_get_option(li->ld, LDAP_OPT_SOCKBUF, &sb); + ber_sockbuf_add_io(sb, &ldapsb_tls, LBER_SBIOD_LEVEL_TRANSPORT, data); + rc = ldap_search_ext(li->ld, lud->lud_dn, lud->lud_scope, lud->lud_filter, lud->lud_attrs, 0, NULL, NULL, NULL, 0, &msgid);