]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/value.c
Fix access_allowed() error checking bug
[openldap] / servers / slapd / value.c
index 9ed1ad969f384ca3e8441641c1bbeb0a6ba80348..a1e081664d1d40f043fc7f1d652bf7c1cc186b08 100644 (file)
@@ -324,10 +324,9 @@ value_match(
        struct berval nv1 = { 0, NULL };
        struct berval nv2 = { 0, NULL };
 
-       /*
-        * FIXME: mr should NOT be NULL ...
-        */
-       if( !mr || !mr->smr_match ) {
+       assert( mr != NULL );
+
+       if( !mr->smr_match ) {
                return LDAP_INAPPROPRIATE_MATCHING;
        }
 
@@ -392,7 +391,8 @@ int value_find_ex(
                flags |= SLAP_MR_VALUE_SYNTAX_CONVERTED_MATCH;
        }
 
-       if( mr->smr_syntax->ssyn_normalize ) {
+       if( !(flags & SLAP_MR_VALUE_NORMALIZED_MATCH) &&
+               mr->smr_syntax->ssyn_normalize ) {
                struct berval nval_tmp = { 0, NULL };
 
                rc = mr->smr_syntax->ssyn_normalize(