Commit cdd84c34 authored by Kurt Zeilenga's avatar Kurt Zeilenga
Browse files

Apply filter index bug fix to ldbm (from HEAD)

parent 8e7a19f3
......@@ -8,7 +8,7 @@ OpenLDAP 2.1.18 Engineering
Fixed slapd ACL group DN crash (ITS#2467)
Fixed slapd substring normalization bug (ITS#2468)
Fixed back-bdb search filter empty value bug (ITS#2453)
Fixed back-bdb filter index computed/undefined bugs (ITS#2449)
Fixed back-bdb/ldbm filter index computed/undefined bugs (ITS#2449)
Fixed SASL interactive free bug (ITS#2423)
Fixed libldap ldap_host_connected_to portability bug (ITS#2459)
Fixed liblber multi-value decode bug (ITS#2458)
......
......@@ -47,6 +47,23 @@ filter_candidates(
result = NULL;
switch ( f->f_choice ) {
case SLAPD_FILTER_COMPUTED:
switch( f->f_result ) {
case SLAPD_COMPARE_UNDEFINED:
/* This technically is not the same as FALSE, but it
* certainly will produce no matches. list_candidates
* will take care of ignoring this filter.
*/
/* FALLTHRU */
case LDAP_COMPARE_FALSE:
result = NULL;
break;
case LDAP_COMPARE_TRUE:
result = idl_allids( be );
break;
}
break;
case SLAPD_FILTER_DN_ONE:
#ifdef NEW_LOGGING
LDAP_LOG( FILTER, DETAIL1,
......@@ -692,6 +709,10 @@ list_candidates(
idl = NULL;
for ( f = flist; f != NULL; f = f->f_next ) {
if ( f->f_choice == SLAPD_FILTER_COMPUTED &&
f->f_result == SLAPD_COMPARE_UNDEFINED ) {
continue;
}
if ( (tmp = filter_candidates( be, f )) == NULL &&
ftype == LDAP_FILTER_AND ) {
#ifdef NEW_LOGGING
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment