From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Benjamin Marzinski Date: Mon, 16 Nov 2020 16:38:21 -0600 Subject: [PATCH] libmultipath: ignore multipaths sections without wwid option "multipathd show config local" was crashing in find_mp_by_wwid() if the multipath configuration included a multipaths section that did not set a wwid option. There is no reason to keep a mpentry that didn't set its wwid. Remove it in merge_mptable(). Signed-off-by: Benjamin Marzinski --- libmultipath/config.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libmultipath/config.c b/libmultipath/config.c index a71db2d0..dc81c994 100644 --- a/libmultipath/config.c +++ b/libmultipath/config.c @@ -444,6 +444,13 @@ void merge_mptable(vector mptable) int i, j; vector_foreach_slot(mptable, mp1, i) { + /* drop invalid multipath configs */ + if (!mp1->wwid) { + condlog(0, "multipaths config section missing wwid"); + vector_del_slot(mptable, i--); + free_mpe(mp1); + continue; + } j = i + 1; vector_foreach_slot_after(mptable, mp2, j) { if (strcmp(mp1->wwid, mp2->wwid)) -- 2.17.2