From 6069e9f00b5bb8f7783bb293c2b82920cc55f120 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Mon, 12 Jun 2023 20:09:12 +0200 Subject: [PATCH] Fix 'CVE-2018-1000121' Merge: curl/curl@9889db043393092e9d4b5a42720 --- r5dev/thirdparty/curl/openldap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/r5dev/thirdparty/curl/openldap.c b/r5dev/thirdparty/curl/openldap.c index 4b8cfb9c..eff5ae90 100644 --- a/r5dev/thirdparty/curl/openldap.c +++ b/r5dev/thirdparty/curl/openldap.c @@ -443,7 +443,7 @@ static ssize_t ldap_recv(struct connectdata *conn, int sockindex, char *buf, for(ent = ldap_first_message(li->ld, msg); ent; ent = ldap_next_message(li->ld, ent)) { - struct berval bv, *bvals, **bvp = &bvals; + struct berval bv, *bvals; int binary = 0, msgtype; CURLcode writeerr; @@ -505,9 +505,9 @@ static ssize_t ldap_recv(struct connectdata *conn, int sockindex, char *buf, } data->req.bytecount += bv.bv_len + 5; - for(rc = ldap_get_attribute_ber(li->ld, ent, ber, &bv, bvp); - rc == LDAP_SUCCESS; - rc = ldap_get_attribute_ber(li->ld, ent, ber, &bv, bvp)) { + for(rc = ldap_get_attribute_ber(li->ld, ent, ber, &bv, &bvals); + (rc == LDAP_SUCCESS) && bvals; + rc = ldap_get_attribute_ber(li->ld, ent, ber, &bv, &bvals)) { int i; if(bv.bv_val == NULL) break;