summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2021-03-15 20:36:06 +0100
committerThomas Haller <thaller@redhat.com>2021-03-16 09:55:48 +0100
commit74a4ee16f5c1097dfd6efef52e2d12c99c88c8f7 (patch)
tree09b7addcfb6e8556149db1749b5c40c9ef32813e
parente25c458b6f37c4207d27f13bd73e7582a5d0834f (diff)
downloadNetworkManager-74a4ee16f5c1097dfd6efef52e2d12c99c88c8f7.tar.gz
initrd: silently ignore invalid "ethernet.s390-options"
-rw-r--r--src/nm-initrd-generator/nmi-cmdline-reader.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/nm-initrd-generator/nmi-cmdline-reader.c b/src/nm-initrd-generator/nmi-cmdline-reader.c
index c39745e518..a461890cda 100644
--- a/src/nm-initrd-generator/nmi-cmdline-reader.c
+++ b/src/nm-initrd-generator/nmi-cmdline-reader.c
@@ -978,7 +978,13 @@ reader_parse_rd_znet(Reader *reader, char *argument, gboolean net_ifnames)
key = g_strndup(tmp, val - tmp);
val[0] = '\0';
val++;
- nm_setting_wired_add_s390_option(s_wired, key, val);
+ if (!_nm_setting_wired_is_valid_s390_option(key)
+ || !_nm_setting_wired_is_valid_s390_option_value(val)) {
+ /* Invalid setting. Silently ignore, but also ensure we
+ * didn't already set it. */
+ nm_setting_wired_remove_s390_option(s_wired, key);
+ } else
+ nm_setting_wired_add_s390_option(s_wired, key, val);
}
}
}