X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;ds=sidebyside;f=servers%2Fslapd%2Fsearch.c;h=a162b20068be6af2607b28996036f4123a27a173;hb=a4d2c63a61fca123d7f54aa84c79ba4b496242a9;hp=dd91c87a1aaf17c8ebb2b0d79d020c82fd4bc6b6;hpb=5f99f7c991e57cb305c4d2871fbe84dbb6eebb0e;p=openldap diff --git a/servers/slapd/search.c b/servers/slapd/search.c index dd91c87a1a..a162b20068 100644 --- a/servers/slapd/search.c +++ b/servers/slapd/search.c @@ -1,7 +1,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2004 The OpenLDAP Foundation. + * Copyright 1998-2005 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -164,7 +164,8 @@ do_search( op->ors_attrs[i].an_desc = NULL; op->ors_attrs[i].an_oc = NULL; op->ors_attrs[i].an_oc_exclude = 0; - slap_bv2ad(&op->ors_attrs[i].an_name, &op->ors_attrs[i].an_desc, &dummy); + slap_bv2ad(&op->ors_attrs[i].an_name, + &op->ors_attrs[i].an_desc, &dummy); } if( get_ctrls( op, rs, 1 ) != LDAP_SUCCESS ) { @@ -222,14 +223,6 @@ do_search( rs->sr_err = frontendDB->be_search( op, rs ); return_results:; -#if 0 /* DELETE ME */ - if ( ( op->o_sync_mode & SLAP_SYNC_PERSIST ) ) { - return rs->sr_err; - } - if ( ( op->o_sync_slog_size != -1 ) ) { - return rs->sr_err; - } -#endif if ( !BER_BVISNULL( &op->o_req_dn ) ) { slap_sl_free( op->o_req_dn.bv_val, op->o_tmpmemctx ); } @@ -351,21 +344,7 @@ fe_op_search( Operation *op, SlapReply *rs ) * if we don't hold it. */ -#if 0 /* DELETE ME */ - /* Sync control overrides manageDSAit */ - - if ( manageDSAit != SLAP_CONTROL_NONE ) { - if ( op->o_sync_mode & SLAP_SYNC_REFRESH ) { - be_manageDSAit = SLAP_CONTROL_NONE; - } else { - be_manageDSAit = manageDSAit; - } - } else { - be_manageDSAit = manageDSAit; - } -#else - be_manageDSAit = manageDSAit; -#endif + be_manageDSAit = manageDSAit; op->o_bd = select_backend( &op->o_req_ndn, be_manageDSAit, 1 ); if ( op->o_bd == NULL ) { @@ -374,7 +353,9 @@ fe_op_search( Operation *op, SlapReply *rs ) if (!rs->sr_ref) rs->sr_ref = default_referral; rs->sr_err = LDAP_REFERRAL; + op->o_bd = frontendDB; send_ldap_result( op, rs ); + op->o_bd = NULL; if (rs->sr_ref != default_referral) ber_bvarray_free( rs->sr_ref );