Browse Source

Ticket 47858 - Internal searches using OP_FLAG_REVERSE_CANDIDATE_ORDER can crash the server

Bug Description:  If an internal search uses OP_FLAG_REVERSE_CANDIDATE_ORDER, and
                  the search fails tro find any candidates the server will crash.

Fix Description:  Make sure we do not dereference a NULL sr_candidates pointer in
                  ldbm_search().

https://fedorahosted.org/389/ticket/47858

Reviewed by: rmeggins(Thanks!)
Mark Reynolds 11 years ago
parent
commit
e6cee31aa2
1 changed files with 1 additions and 1 deletions
  1. 1 1
      ldap/servers/slapd/back-ldbm/ldbm_search.c

+ 1 - 1
ldap/servers/slapd/back-ldbm/ldbm_search.c

@@ -1450,7 +1450,7 @@ ldbm_back_next_search_entry_ext( Slapi_PBlock *pb, int use_extension )
          * search can enter this function multiple times, we need to keep track
          * of our state, and only initialize sr_current once.
          */
-        if(!op->o_reverse_search_state){
+        if(!op->o_reverse_search_state && sr->sr_candidates){
             sr->sr_current = sr->sr_candidates->b_nids;
             op->o_reverse_search_state = REV_STARTED;
         }