static int ipset_update(struct module_env *env, struct dns_msg *return_msg,
struct query_info qinfo, struct ipset_env *ie)
+{
size_t i;
const char *setname;
struct ub_packed_rrset_key *rrset;
int ipset_deinit(struct module_env* env, int id) {
struct ipset_env *ipset_env = env->modinfo[id];
+#ifdef HAVE_NET_PFVAR_H
close((filter_dev)ipset_env->dev);
+#endif
free(ipset_env);
env->modinfo[id] = NULL;
return 1;
*/
static struct module_func_block pythonmod_block = {
"python",
- &pythonmod_init, &pythonmod_deinit, &pythonmod_operate, &pythonmod_inform_super,
+ &module_dummy_init, &module_dummy_init, &pythonmod_init, &pythonmod_deinit, &pythonmod_operate, &pythonmod_inform_super,
&pythonmod_clear, &pythonmod_get_mem
};
else if(fptr == &dns64_setup) return 1;
else if(fptr == &respip_setup) return 1;
#ifdef WITH_PYTHONMODULE
- else if(fptr == &pythonmod_setup) return 1;
+ else if(fptr == &pythonmod_init) return 1;
#endif
#ifdef WITH_DYNLIBMODULE
else if(fptr == &dynlibmod_init) return 1;
else if(fptr == &dns64_desetup) return 1;
else if(fptr == &respip_desetup) return 1;
#ifdef WITH_PYTHONMODULE
- else if(fptr == &pythonmod_desetup) return 1;
+ else if(fptr == &pythonmod_deinit) return 1;
#endif
#ifdef WITH_DYNLIBMODULE
else if(fptr == &dynlibmod_deinit) return 1;
*/
int fptr_whitelist_mod_init(int (*fptr)(struct module_env* env, int id));
+/**
+ * Check function pointer whitelist for module deinit call values.
+ *
+ * @param fptr: function pointer to check.
+ * @return false if not in whitelist.
+ */
+int fptr_whitelist_mod_deinit(int (*fptr)(struct module_env* env, int id));
+
/**
* Check function pointer whitelist for module setup call values.
*