summaryrefslogtreecommitdiff
path: root/src/network/netdev
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2022-02-25 13:20:59 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2022-02-26 14:59:56 +0900
commit490c00a36902c583c2201f47f0a628fb39618ab3 (patch)
treed4394e6713b662e2d9b32167aded639c810a1ce4 /src/network/netdev
parenta23e4f60d5fe7a759e617452fa1454d600da4d85 (diff)
downloadsystemd-490c00a36902c583c2201f47f0a628fb39618ab3.tar.gz
network: netdev: make link_get_local_address() refuse non-ready links and addresses
Diffstat (limited to 'src/network/netdev')
-rw-r--r--src/network/netdev/netdev-util.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/network/netdev/netdev-util.c b/src/network/netdev/netdev-util.c
index 00d9e174de..06028855a8 100644
--- a/src/network/netdev/netdev-util.c
+++ b/src/network/netdev/netdev-util.c
@@ -51,8 +51,11 @@ int link_get_local_address(
assert_not_reached();
}
+ if (!IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED))
+ return -EBUSY;
+
SET_FOREACH(a, link->addresses) {
- if (!address_exists(a))
+ if (!address_is_ready(a))
continue;
if (a->family != family)