]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/filterentry.c
Fix for ITS#1842 (applied blindly)
[openldap] / servers / slapd / filterentry.c
index cbd9c1438be6d7e8db0465cf96a4302c892e40df..af513e29c565ca7035d0529a0ca3db57d1ab9c12 100644 (file)
@@ -227,37 +227,12 @@ static int test_mra_filter(
 {
        Attribute       *a;
 
-       if( mra->ma_desc == NULL || mra->ma_dnattrs ) {
-               return LDAP_INAPPROPRIATE_MATCHING;
-       }
-
        if( !access_allowed( be, conn, op, e,
                mra->ma_desc, &mra->ma_value, ACL_SEARCH, NULL ) )
        {
                return LDAP_INSUFFICIENT_ACCESS;
        }
 
-       if( mra->ma_rule == NULL && 
-               mra->ma_desc->ad_type->sat_equality &&
-               mra->ma_desc->ad_type->sat_equality->smr_usage & SLAP_MR_EXT )
-       {
-               mra->ma_rule = mra->ma_desc->ad_type->sat_equality;
-       }
-
-       if( mra->ma_rule == NULL ) {
-               return LDAP_INAPPROPRIATE_MATCHING;
-       }
-
-       /* check to see if the matching rule is appropriate for
-          the syntax of the attribute.  This check will need
-          to be extended to support other kinds of extensible
-          matching rules */
-       if( strcmp(mra->ma_rule->smr_syntax->ssyn_oid,
-               mra->ma_desc->ad_type->sat_syntax->ssyn_oid) != 0)
-       {
-               return LDAP_INVALID_SYNTAX;
-       }
-
        for(a = attrs_find( e->e_attrs, mra->ma_desc );
                a != NULL;
                a = attrs_find( a->a_next, mra->ma_desc ) )