Free plugin identifier on cleanup.

This commit is contained in:
Roger A. Light
2020-09-23 15:38:25 +01:00
parent 5d6bdc5de4
commit d8d24e76eb
3 changed files with 4 additions and 0 deletions
+1
View File
@@ -178,6 +178,7 @@ struct mosquitto__auth_plugin{
void *lib;
void *user_data;
int (*plugin_version)(void);
struct mosquitto_plugin_id_t *identifier;
FUNC_plugin_init_v5 plugin_init_v5;
FUNC_plugin_cleanup_v5 plugin_cleanup_v5;
+1
View File
@@ -86,6 +86,7 @@ int plugin__load_v5(struct mosquitto__listener *listener, struct mosquitto__auth
plugin->lib = lib;
plugin->user_data = NULL;
plugin->identifier = pid;
if(plugin->plugin_init_v5){
rc = plugin->plugin_init_v5(pid, &plugin->user_data, options, option_count);
+2
View File
@@ -406,6 +406,8 @@ static void security__module_cleanup_single(struct mosquitto__security_options *
opts->auth_plugin_configs[i].plugin.user_data,
opts->auth_plugin_configs[i].options,
opts->auth_plugin_configs[i].option_count);
mosquitto__free(opts->auth_plugin_configs[i].plugin.identifier);
opts->auth_plugin_configs[i].plugin.identifier = NULL;
}else if(opts->auth_plugin_configs[i].plugin.version == 4){
opts->auth_plugin_configs[i].plugin.plugin_cleanup_v4(