From 568de7a5acb4b86884284458dab410f33c8006a6 Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount <quanah@openldap.org> Date: Mon, 8 Jun 2009 21:27:05 +0000 Subject: [PATCH] ITS#6156 --- CHANGES | 1 + servers/slapd/overlays/translucent.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/CHANGES b/CHANGES index da6646d322..c613cddfde 100644 --- a/CHANGES +++ b/CHANGES @@ -38,6 +38,7 @@ OpenLDAP 2.4.17 Engineering Fixed slapo-rwm dn passing (ITS#6070) Fixed slapo-rwm entry free (ITS#6058) Fixed slapo-rwm entry release (ITS#6081) + Fixed slapo-translucent entry gathering (ITS#6156) Build Environment Added test056-monitor (ITS#5540) Added test057-memberof-refint (ITS#5395) diff --git a/servers/slapd/overlays/translucent.c b/servers/slapd/overlays/translucent.c index 92d9a21151..f5d3cf8e38 100644 --- a/servers/slapd/overlays/translucent.c +++ b/servers/slapd/overlays/translucent.c @@ -1110,6 +1110,8 @@ static int translucent_search(Operation *op, SlapReply *rs) { op->o_callback = &cb; if ( fr || !fl ) { + AttributeName *attrs = op->ors_attrs; + op->ors_attrs = NULL; op->o_bd = &ov->db; tc.step |= RMT_SIDE; if ( fl ) { @@ -1118,6 +1120,7 @@ static int translucent_search(Operation *op, SlapReply *rs) { filter2bv_x( op, fr, &op->ors_filterstr ); } rc = ov->db.bd_info->bi_op_search(op, rs); + op->ors_attrs = attrs; op->o_bd = tc.db; if ( fl ) { op->o_tmpfree( op->ors_filterstr.bv_val, op->o_tmpmemctx ); @@ -1133,6 +1136,8 @@ static int translucent_search(Operation *op, SlapReply *rs) { op->ors_filterstr = fbv; op->ors_filter = tc.orig; op->o_callback = cb.sc_next; + rs->sr_attrs = op->ors_attrs; + /* Send out anything remaining on the list and finish */ if ( tc.step & USE_LIST ) { if ( tc.list ) { -- GitLab