static const char *slap_propnames[] = {
"*slapConn", "*authcDN", "*authzDN", NULL };
-static Filter *generic_filter;
+static Filter generic_filter = { LDAP_FILTER_PRESENT };
#define PROP_CONN 0
#define PROP_AUTHC 1
op.ors_scope = LDAP_SCOPE_BASE;
op.ors_deref = LDAP_DEREF_NEVER;
op.ors_slimit = 1;
- op.ors_filter = generic_filter;
+ op.ors_filter = &generic_filter;
op.o_bd->be_search( &op, &rs );
}
op.ors_scope = LDAP_SCOPE_BASE;
op.ors_deref = LDAP_DEREF_NEVER;
op.ors_slimit = 1;
- op.ors_filter = generic_filter;
+ op.ors_filter = &generic_filter;
op.o_bd->be_search( &op, &rs );
}
ldap_pvt_sasl_mutex_dispose );
#if SASL_VERSION_MAJOR >= 2
+ generic_filter.f_desc = slap_schema.si_ad_objectClass;
+
sasl_auxprop_add_plugin( "slapd", slap_auxprop_init );
#endif
/* should provide callbacks for logging */
{
#ifdef HAVE_CYRUS_SASL
sasl_done();
-#endif
-#if SASL_VERSION_MAJOR >= 2
- filter_free( generic_filter );
#endif
free( global_host );
global_host = NULL;
/* create new SASL context */
#if SASL_VERSION_MAJOR >= 2
- if ( generic_filter == NULL ) {
- generic_filter = str2filter( "(objectclass=*)" );
- }
if ( conn->c_sock_name.bv_len != 0 &&
strncmp( conn->c_sock_name.bv_val, "IP=", 3 ) == 0) {
char *p;