diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2019-12-05 19:54:29 +0900 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-12-06 12:27:47 +0100 |
commit | 2c7b826ddf52bd09956815dd8e52329e62ce985a (patch) | |
tree | 6b331bc5f2417feae8ca236594d5a5f01d68b703 | |
parent | 9929fe8c950cee84bf901ebf50920a078d45a27f (diff) | |
download | systemd-2c7b826ddf52bd09956815dd8e52329e62ce985a.tar.gz |
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.
-rw-r--r-- | src/network/networkd-link.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index e650ef7e0a..710de80fde 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) |