for ( i = 0; a->a_vals[i] != NULL; i++ ) {
int rc;
-#ifndef SLAPD_SCHEMA_NOT_COMPAT
+#ifdef SLAPD_SCHEMA_NOT_COMPAT
+ rc = 0;
+#else
rc = value_cmp( a->a_vals[i], &ava->ava_value, a->a_syntax,
3 );
#endif
return LDAP_INAPPROPRIATE_MATCHING;
}
- rc = (mr->smr_normalize)( usage,
- ad->ad_type->sat_syntax,
- mr, in, out );
+ if( mr->smr_normalize ) {
+ rc = (mr->smr_normalize)( usage,
+ ad->ad_type->sat_syntax,
+ mr, in, out );
+
+ if( rc != LDAP_SUCCESS ) {
+ *text = "unable to normalize value";
+ return LDAP_INVALID_SYNTAX;
+ }
- if( rc != LDAP_SUCCESS ) {
- *text = "unable to normalize value";
- return LDAP_INVALID_SYNTAX;
+ } else {
+ *out = ber_bvdup( in );
}
return LDAP_SUCCESS;