]> git.sur5r.net Git - openldap/commitdiff
Don't test filter before saving, need the copy for local lookup
authorHoward Chu <hyc@openldap.org>
Fri, 14 Dec 2007 20:04:40 +0000 (20:04 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 14 Dec 2007 20:04:40 +0000 (20:04 +0000)
servers/slapd/overlays/translucent.c

index 081b97753af3bc48ad3644156d0343825d660e48..edd24bb7b75c7750aadfe391ff450f08b065e1eb 100644 (file)
@@ -783,16 +783,13 @@ static int translucent_search_cb(Operation *op, SlapReply *rs) {
                                re->e_attrs = as;
                        }
                }
+               /* If both filters, save entry for later */
                if ( tc->step == (USE_LIST|RMT_SIDE) ) {
-                       rc = test_filter( op, re, tc->orig );
-                       if ( rc == LDAP_COMPARE_TRUE ) {
-                               tavl_insert( &tc->list, re, entry_dn_cmp, avl_dup_error );
-                       } else {
-                               entry_free( re );
-                       }
+                       tavl_insert( &tc->list, re, entry_dn_cmp, avl_dup_error );
                        rs->sr_entry = NULL;
                        rc = 0;
                } else {
+               /* send it now */
                        rs->sr_entry = re;
                        rs->sr_flags |= REP_ENTRY_MUSTBEFREED;
                        rc = SLAP_CB_CONTINUE;