diff options
Diffstat (limited to 'ldap/servers/slapd/attrsyntax.c')
-rw-r--r-- | ldap/servers/slapd/attrsyntax.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/ldap/servers/slapd/attrsyntax.c b/ldap/servers/slapd/attrsyntax.c index e88f4ba1..11b272a0 100644 --- a/ldap/servers/slapd/attrsyntax.c +++ b/ldap/servers/slapd/attrsyntax.c @@ -674,6 +674,9 @@ attr_syntax_create( a.asi_origin = (char **)attr_origins; a.asi_plugin = plugin_syntax_find( attr_syntax ); a.asi_syntaxlength = syntaxlength; + a.asi_mr_eq_plugin = plugin_mr_find( mr_equality ); + a.asi_mr_ord_plugin = plugin_mr_find( mr_ordering ); + a.asi_mr_sub_plugin = plugin_mr_find( mr_substring ); a.asi_flags = flags; /* @@ -760,10 +763,9 @@ slapi_attr_get_oid_copy( const Slapi_Attr *a, char **oidp ) int slapi_attr_get_syntax_oid_copy( const Slapi_Attr *a, char **oidp ) { - void *pi = NULL; - - if (a && (slapi_attr_type2plugin(a->a_type, &pi) == 0)) { - *oidp = slapi_ch_strdup(plugin_syntax2oid(pi)); + const char *oid; + if (a && ((oid = attr_get_syntax_oid(a)))) { + *oidp = slapi_ch_strdup(oid); return( 0 ); } else { *oidp = NULL; |