From 9b1ce5f2677a79e987cc9db7d743610eff835d4f Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount Date: Thu, 13 Aug 2009 02:28:18 +0000 Subject: [PATCH] ITS#6163 --- CHANGES | 1 + servers/slapd/back-sql/search.c | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/CHANGES b/CHANGES index e873978415..5d3f951d04 100644 --- a/CHANGES +++ b/CHANGES @@ -15,6 +15,7 @@ OpenLDAP 2.4.18 Engineering Fixed slapd-ndb startup (ITS#6203) Fixed slapd-relay various issues (ITS#6133) Fixed slapd-relay response/cleanup callback mismatch (ITS#6154) + Fixed slapd-sql with empty attribute (ITS#6163) Added slapo-pcache olcProxyCacheOffline (ITS#6152) Fixed slapo-unique filter matching (ITS#6077) Fixed tools off by one error (ITS#6233) diff --git a/servers/slapd/back-sql/search.c b/servers/slapd/back-sql/search.c index 0e54ac995d..7b7f78487d 100644 --- a/servers/slapd/back-sql/search.c +++ b/servers/slapd/back-sql/search.c @@ -721,6 +721,16 @@ backsql_process_filter( backsql_srch_info *bsi, Filter *f ) goto done; } + if ( f->f_choice & SLAPD_FILTER_UNDEFINED ) { + backsql_strfcat_x( &bsi->bsi_flt_where, + bsi->bsi_op->o_tmpmemctx, + "l", + (ber_len_t)STRLENOF( "1=0" ), "1=0" ); + done = 1; + rc = 1; + goto done; + } + switch( f->f_choice ) { case LDAP_FILTER_OR: rc = backsql_process_filter_list( bsi, f->f_or, @@ -1196,6 +1206,14 @@ backsql_process_filter_attr( backsql_srch_info *bsi, Filter *f, backsql_at_map_r &at->bam_join_where ); } + if ( f->f_choice & SLAPD_FILTER_UNDEFINED ) { + backsql_strfcat_x( &bsi->bsi_flt_where, + bsi->bsi_op->o_tmpmemctx, + "l", + (ber_len_t)STRLENOF( "1=0" ), "1=0" ); + return 1; + } + switch ( f->f_choice ) { case LDAP_FILTER_EQUALITY: filter_value = &f->f_av_value; -- 2.39.5