/* filterentry.c - apply a filter to an entry */
/* $OpenLDAP$ */
/*
- * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file
*/
Attribute *a;
if( !access_allowed( be, conn, op, e,
- mra->ma_desc, &mra->ma_value, ACL_SEARCH ) )
+ mra->ma_desc, &mra->ma_value, ACL_SEARCH, NULL ) )
{
return LDAP_INSUFFICIENT_ACCESS;
}
- if( strcmp(mra->ma_rule->smr_syntax->ssyn_oid,
- mra->ma_desc->ad_type->sat_syntax->ssyn_oid) != 0)
- {
- return LDAP_INVALID_SYNTAX;
- }
-
- if( mra->ma_rule == NULL )
- {
- return LDAP_INAPPROPRIATE_MATCHING;
- }
-
for(a = attrs_find( e->e_attrs, mra->ma_desc );
a != NULL;
a = attrs_find( a->a_next, mra->ma_desc ) )
return rc;
}
- if ( ret ) {
+ if ( ret == 0 ) {
return LDAP_COMPARE_TRUE;
}
}
Attribute *a;
if ( !access_allowed( be, conn, op, e,
- ava->aa_desc, &ava->aa_value, ACL_SEARCH ) )
+ ava->aa_desc, &ava->aa_value, ACL_SEARCH, NULL ) )
{
return LDAP_INSUFFICIENT_ACCESS;
}
AttributeDescription *desc
)
{
- if ( !access_allowed( be, conn, op, e, desc, NULL, ACL_SEARCH ) )
+ if ( !access_allowed( be, conn, op, e, desc, NULL, ACL_SEARCH, NULL ) )
{
return LDAP_INSUFFICIENT_ACCESS;
}
if ( !access_allowed( be, conn, op, e,
- f->f_sub_desc, NULL, ACL_SEARCH ) )
+ f->f_sub_desc, NULL, ACL_SEARCH, NULL ) )
{
return LDAP_INSUFFICIENT_ACCESS;
}