network-util: introduce network_link_get_operational_state()

This commit is contained in:
Yu Watanabe
2022-01-21 05:45:09 +09:00
parent e9662a28a4
commit 61dc4b9ea9
2 changed files with 21 additions and 0 deletions

View File

@@ -135,3 +135,23 @@ int parse_operational_state_range(const char *str, LinkOperationalStateRange *ou
return 0;
}
int network_link_get_operational_state(int ifindex, LinkOperationalState *ret) {
_cleanup_free_ char *str = NULL;
LinkOperationalState s;
int r;
assert(ifindex > 0);
assert(ret);
r = sd_network_link_get_operational_state(ifindex, &str);
if (r < 0)
return r;
s = link_operstate_from_string(str);
if (s < 0)
return s;
*ret = s;
return 0;
}

View File

@@ -83,3 +83,4 @@ typedef struct LinkOperationalStateRange {
LINK_OPERSTATE_ROUTABLE }
int parse_operational_state_range(const char *str, LinkOperationalStateRange *out);
int network_link_get_operational_state(int ifindex, LinkOperationalState *ret);