]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10329 slapo-pcache: don't clobber original request DN master 770/head
authorHoward Chu <hyc@openldap.org>
Tue, 4 Nov 2025 16:14:55 +0000 (16:14 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Tue, 4 Nov 2025 18:36:40 +0000 (18:36 +0000)
in merge_entry()

servers/slapd/overlays/pcache.c

index 1f9b17eb9ef0171b33ddfe7fdf6aeedc335aaaf6..43b06ed4abf9b1fd150c4b7170126bfb7954b448 100644 (file)
@@ -847,6 +847,7 @@ merge_entry(
        Attribute               *attr;
        char                    textbuf[SLAP_TEXT_BUFLEN];
        size_t                  textlen = sizeof(textbuf);
+       struct berval   odn, ondn;
 
        SlapReply sreply = {REP_RESULT};
 
@@ -869,6 +870,9 @@ merge_entry(
        op->o_time = slap_get_time();
        op->o_do_not_cache = 1;
 
+       odn = op->o_req_dn;
+       ondn = op->o_req_ndn;
+
        op->ora_e = e;
        op->o_req_dn = e->e_name;
        op->o_req_ndn = e->e_nname;
@@ -900,8 +904,8 @@ merge_entry(
                rc = 1;
        }
 
-       BER_BVZERO(&op->o_req_dn);
-       BER_BVZERO(&op->o_req_ndn);
+       op->o_req_dn = odn;
+       op->o_req_ndn = ondn;
        return rc;
 }