From 3afbe0603d8a8d39d0bb20eec7bf3e5a62c36942 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 20 Oct 2023 00:04:28 +0200 Subject: [PATCH] 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 --- lib/openldap.c | 5 +++++ 1 file changed, 5 insertions(+) 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); -- 2.47.3