]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network/address: drop IPv6 settings when the kernel does not support IPv6
authorYu Watanabe <watanabe.yu+github@gmail.com>
Mon, 10 Jul 2023 03:32:40 +0000 (12:32 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 30 Jul 2023 13:53:15 +0000 (22:53 +0900)
src/network/networkd-address.c

index c33ffa95766c1297a76c642bbcfac3ff0acb4b97..fbc066aa5ce2fd2a8d4eb55c0499bc368b99565d 100644 (file)
@@ -2131,11 +2131,17 @@ static int address_section_verify(Address *address) {
                 assert(address->section);
 
                 return log_warning_errno(SYNTHETIC_ERRNO(EINVAL),
-                                         "%s: Address section without Address= field configured. "
+                                         "%s: Address section without Address= field was configured. "
                                          "Ignoring [Address] section from line %u.",
                                          address->section->filename, address->section->line);
         }
 
+        if (address->family == AF_INET6 && !socket_ipv6_is_supported())
+                return log_warning_errno(SYNTHETIC_ERRNO(EINVAL),
+                                         "%s: an IPv6 address was configured, but the kernel does not support IPv6. "
+                                         "Ignoring [Address] section from line %u.",
+                                         address->section->filename, address->section->line);
+
         assert(IN_SET(address->family, AF_INET, AF_INET6));
 
         address_section_adjust_broadcast(address);