return SLAP_SCHERR_ATTR_BAD_MR;
}
-#if 0
- if( sat->sat_syntax != mr->smr_syntax ) {
- if( mr->smr_compat_syntaxes == NULL ) {
+ /* due to funky LDAP builtin substring rules, we
+ * we check against the equality rule assertion
+ * syntax and compat syntaxes instead of those
+ * associated with the substrings rule.
+ */
+ if( sat->sat_equality &&
+ sat->sat_syntax != sat->sat_equality->smr_syntax )
+ {
+ if( sat->sat_equality->smr_compat_syntaxes == NULL ) {
*err = sat->sat_substr_oid;
return SLAP_SCHERR_ATTR_BAD_MR;
}
- for(i=0; mr->smr_compat_syntaxes[i]; i++) {
- if( sat->sat_syntax == mr->smr_compat_syntaxes[i] ) {
+ for(i=0; sat->sat_equality->smr_compat_syntaxes[i]; i++) {
+ if( sat->sat_syntax ==
+ sat->sat_equality->smr_compat_syntaxes[i] )
+ {
i = -1;
break;
}
return SLAP_SCHERR_ATTR_BAD_MR;
}
}
-#endif
sat->sat_substr = mr;
}