]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: refuse to configure anything on pending or initialized state
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 10 May 2022 16:54:48 +0000 (01:54 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 5 Aug 2022 12:49:27 +0000 (21:49 +0900)
src/network/networkd-link.c

index 76e0690aefc01c3355080b18e8384c1b30e6949c..7a5bc62415550254d284c687e27402b1fa1b105e 100644 (file)
@@ -95,6 +95,9 @@ bool link_ipv6_enabled(Link *link) {
 bool link_is_ready_to_configure(Link *link, bool allow_unmanaged) {
         assert(link);
 
+        if (!IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED, LINK_STATE_UNMANAGED))
+                return false;
+
         if (!link->network) {
                 if (!allow_unmanaged)
                         return false;
@@ -102,9 +105,6 @@ bool link_is_ready_to_configure(Link *link, bool allow_unmanaged) {
                 return link_has_carrier(link);
         }
 
-        if (!IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED))
-                return false;
-
         if (!link->network->configure_without_carrier) {
                 if (link->set_flags_messages > 0)
                         return false;