From c067125f9150e452fdfe9885d757224bd5ec5795 Mon Sep 17 00:00:00 2001 From: Nalin Dahyabhai Date: Mon, 22 Nov 2010 11:07:45 -0500 Subject: Check that the search base is serviced by a real backend before we'll attempt to participate in a search request. --- src/back-sch.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src') diff --git a/src/back-sch.c b/src/back-sch.c index eba778a..6fc9c30 100644 --- a/src/back-sch.c +++ b/src/back-sch.c @@ -893,6 +893,15 @@ backend_search_cb(Slapi_PBlock *pb) "searching from \"%s\" for \"%s\" with scope %d\n", cbdata.target, cbdata.strfilter, cbdata.scope); cbdata.target_dn = slapi_sdn_new_dn_byval(cbdata.target); + /* Check if there's a backend handling this search. */ + if (!slapi_be_exist(cbdata.target_dn)) { + slapi_log_error(SLAPI_LOG_PLUGIN, + cbdata.state->plugin_desc->spd_id, + "slapi_be_exists(\"%s\") = 0, ignoring search\n", + cbdata.target); + slapi_sdn_free(&cbdata.target_dn); + return 0; + } /* Walk the list of groups. */ wrap_inc_call_level(); map_rdlock(); -- cgit