From: Martin Wilck <mwilck@xxxxxxxx> enable_foreign wasn't freed in free_config(). Do it, and make sure it's always a malloc'd string. Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> --- libmultipath/config.c | 2 ++ multipath/main.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/libmultipath/config.c b/libmultipath/config.c index 86b6733..b9bdbdb 100644 --- a/libmultipath/config.c +++ b/libmultipath/config.c @@ -631,6 +631,8 @@ free_config (struct config * conf) if (conf->config_dir) FREE(conf->config_dir); + if (conf->enable_foreign) + FREE(conf->enable_foreign); free_blacklist(conf->blist_devnode); free_blacklist(conf->blist_wwid); diff --git a/multipath/main.c b/multipath/main.c index 80bc4b5..004bce5 100644 --- a/multipath/main.c +++ b/multipath/main.c @@ -997,7 +997,7 @@ main (int argc, char *argv[]) } if ((cmd == CMD_LIST_SHORT || cmd == CMD_LIST_LONG) && enable_foreign) - conf->enable_foreign = ""; + conf->enable_foreign = strdup(""); /* Failing here is non-fatal */ init_foreign(conf->multipath_dir, conf->enable_foreign); -- 2.28.0 -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel