]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: disable fallback IPv4ll address assignment when DHCPv4 is disabled
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 4 May 2019 09:16:12 +0000 (11:16 +0200)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 4 May 2019 14:46:02 +0000 (16:46 +0200)
src/network/networkd-network.c

index 1828d1126c05aea9d79e4637df225dca9c17787a..66cce13e31e8b812d15a3d3ec08f3358a9ddde02 100644 (file)
@@ -236,6 +236,13 @@ int network_verify(Network *network) {
         if (network->link_local < 0)
                 network->link_local = network->bridge ? ADDRESS_FAMILY_NO : ADDRESS_FAMILY_IPV6;
 
+        if (FLAGS_SET(network->link_local, ADDRESS_FAMILY_FALLBACK_IPV4) &&
+            !FLAGS_SET(network->dhcp, ADDRESS_FAMILY_IPV4)) {
+                log_warning("%s: fallback assignment of IPv4 link local address is enabled but DHCPv4 is disabled. "
+                            "Disabling the fallback assignment.", network->filename);
+                SET_FLAG(network->link_local, ADDRESS_FAMILY_FALLBACK_IPV4, false);
+        }
+
         if (network->ipv6_accept_ra < 0 && network->bridge)
                 network->ipv6_accept_ra = false;