no modules have registered paircmp() functions
*/
if (mi->dl_inst && mi->dl_inst->data) {
xlat_func_unregister(mi->name);
- /*
- * Remove any registered paircmps.
- */
- paircmp_unregister_instance(mi->dl_inst->data);
xlat_func_unregister_module(mi->dl_inst);
}
talloc_free(c);
}
-/** Unregister comparison function for a module
- *
- * All paircmp() functions for this module will be unregistered.
- *
- * @param instance the module instance
- */
-void paircmp_unregister_instance(void *instance)
-{
- paircmp_t *c, **tail;
-
- tail = &cmp;
- while ((c = *tail) != NULL) {
- if (c->instance == instance) {
- *tail = c->next;
- talloc_free(c);
- continue;
- }
-
- tail = &(c->next);
- }
-}
-
/** Add built in pair comparisons
*
*/
void paircmp_unregister(fr_dict_attr_t const *attr, fr_paircmp_func_t func);
-void paircmp_unregister_instance(void *instance);
-
int paircmp_init(void);
void paircmp_free(void);