]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10248 Always generate a result on the original op
authorOndřej Kuzník <ondra@mistotebe.net>
Fri, 23 Aug 2024 11:57:34 +0000 (12:57 +0100)
committerQuanah Gibson-Mount <quanah@openldap.org>
Fri, 4 Oct 2024 22:04:53 +0000 (22:04 +0000)
servers/slapd/overlays/translucent.c

index 0b2fa4c37e77d82b96ea8a5c9b8d9b8c671704c8..18fea165c82d0755bd69ca7bd614c935d8f52f18 100644 (file)
@@ -801,8 +801,8 @@ static int translucent_search_cb(Operation *op, SlapReply *rs) {
 
        tc = op->o_callback->sc_private;
 
-       /* Don't let the op complete while we're gathering data */
-       if ( rs->sr_type == REP_RESULT && ( tc->step & USE_LIST ))
+       /* We took over the op, don't let it complete yet */
+       if ( rs->sr_type == REP_RESULT )
                return 0;
 
        if(rs->sr_type != REP_SEARCH || !rs->sr_entry)
@@ -1229,9 +1229,9 @@ static int translucent_search(Operation *op, SlapReply *rs) {
                        rs->sr_flags = 0;
                        rs->sr_entry = NULL;
                }
-               send_ldap_result( op, rs );
        }
 
+       send_ldap_result( op, rs );
        op->ors_slimit = tc.slimit;
 
        /* Free in reverse order */