From: Yu Watanabe Date: Thu, 5 Dec 2019 10:54:29 +0000 (+0900) Subject: network: do not drop foreign config if interface is in initialized state X-Git-Tag: v245-rc1~301 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2c7b826ddf52bd09956815dd8e52329e62ce985a;p=thirdparty%2Fsystemd.git network: do not drop foreign config if interface is in initialized state If the interface is in initialized state, no network file is assigned to the interface. If an interface is not managed by networkd, previously, the foreign configs of the interface was dropped. Fixes #14250. --- diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index e650ef7e0a7..710de80fdef 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -2924,7 +2924,7 @@ int link_reconfigure(Link *link, bool force) { if (r < 0) return r; - if (!IN_SET(link->state, LINK_STATE_UNMANAGED, LINK_STATE_PENDING)) { + if (!IN_SET(link->state, LINK_STATE_UNMANAGED, LINK_STATE_PENDING, LINK_STATE_INITIALIZED)) { log_link_debug(link, "State is %s, dropping config", link_state_to_string(link->state)); r = link_drop_foreign_config(link); if (r < 0) @@ -3419,7 +3419,7 @@ static int link_carrier_lost(Link *link) { if (r < 0) return r; - if (!IN_SET(link->state, LINK_STATE_UNMANAGED, LINK_STATE_PENDING)) { + if (!IN_SET(link->state, LINK_STATE_UNMANAGED, LINK_STATE_PENDING, LINK_STATE_INITIALIZED)) { log_link_debug(link, "State is %s, dropping config", link_state_to_string(link->state)); r = link_drop_foreign_config(link); if (r < 0)