Parameters for registering matchingrule plug-in functions and arguments follow.
Table 18–22 Matching Rule Function and Argument Registration Parameters| Parameter ID | Data Type | Description | 
|---|---|---|
| - | Used to signify registration of the matching rule description with slapi_matchingrule_set(). | |
| - | Used to signify registration of the matching rule name with slapi_matchingrule_set(). | |
| - | Used to signify the matching rule is obsolete when registering with slapi_matchingrule_set(). | |
| - | Used to signify registration of the matching rule object identifier with slapi_matchingrule_set(). | |
| - | Used to signify registration of the matching rule syntax with slapi_matchingrule_set(). | |
| void * | Function called to free memory allocated to filter object. | |
| void * | Filter factory function. | |
| void * | Function called to set the indexer function. | |
| void * | Function called to check for a match. | |
| void * | Function called to reset the match filter. | |
| unsigned int | Whether the filter is reusable. 
 | |
| void * | Index factory function. | |
| void * | Function called to index a single entry. | |
| struct berval ** | Array of index keys corresponding to the attribute values. | |
| char * | Object identifier (OID) corresponding to the extensible match rule. | |
| int | Type of operator used to check for matches. SLAPI_OP_EQUAL SLAPI_OP_GREATER SLAPI_OP_GREATER_OR_EQUAL SLAPI_OP_LESS SLAPI_OP_LESS_OR_EQUAL SLAPI_OP_SUBSTRING | |
| char * | Matching rule filter type. | |
| unsigned int | Whether to use the rule to index or to sort. SLAPI_PLUGIN_MR_USAGE_INDEX SLAPI_PLUGIN_MR_USAGE_SORT | |
| struct berval * | Attribute value to match. | |
| struct berval ** | Array of attribute values to match. | |
| void * | Filter object for extensible match. You define this data structure to use in a matching rule plug-in. |