diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c index b413abacff..2d42f0d742 100644 --- a/src/network/networkd-network.c +++ b/src/network/networkd-network.c @@ -728,13 +728,14 @@ int config_parse_stacked_netdev(const char *unit, return log_oom(); r = hashmap_put(*h, name, INT_TO_PTR(kind)); - if (r < 0) { + if (r < 0) log_syntax(unit, LOG_ERR, filename, line, r, - "Cannot add NetDev '%s' to network, ignoring assignment: %m", rvalue); - return 0; - } - - name = NULL; + "Cannot add NetDev '%s' to network, ignoring assignment: %m", name); + else if (r == 0) + log_syntax(unit, LOG_DEBUG, filename, line, r, + "NetDev '%s' specified twice, ignoring.", name); + else + name = NULL; return 0; } diff --git a/test/fuzz/fuzz-network-parser/oss-fuzz-13433 b/test/fuzz/fuzz-network-parser/oss-fuzz-13433 new file mode 100644 index 0000000000..1aef8b7d83 Binary files /dev/null and b/test/fuzz/fuzz-network-parser/oss-fuzz-13433 differ