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)
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,
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