diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 398e8baac90..908d834cd44 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -1657,9 +1657,9 @@ static void link_update_operstate(Link *link) { /* no useful addresses found */ link->operstate = LINK_OPERSTATE_CARRIER; } else if (link->flags & IFF_UP) - link->operstate = LINK_OPERSTATE_UP; + link->operstate = LINK_OPERSTATE_NO_CARRIER; else - link->operstate = LINK_OPERSTATE_DOWN; + link->operstate = LINK_OPERSTATE_OFF; } int link_save(Link *link) { @@ -1793,8 +1793,8 @@ static const char* const link_state_table[_LINK_STATE_MAX] = { DEFINE_STRING_TABLE_LOOKUP(link_state, LinkState); static const char* const link_operstate_table[_LINK_OPERSTATE_MAX] = { - [LINK_OPERSTATE_DOWN] = "down", - [LINK_OPERSTATE_UP] = "up", + [LINK_OPERSTATE_OFF] = "off", + [LINK_OPERSTATE_NO_CARRIER] = "no-carrier", [LINK_OPERSTATE_DORMANT] = "dormant", [LINK_OPERSTATE_CARRIER] = "carrier", [LINK_OPERSTATE_DEGRADED] = "degraded", diff --git a/src/network/networkd-link.h b/src/network/networkd-link.h index 6d58fa15849..0f73ec7f9bb 100644 --- a/src/network/networkd-link.h +++ b/src/network/networkd-link.h @@ -37,8 +37,8 @@ typedef enum LinkState { } LinkState; typedef enum LinkOperationalState { - LINK_OPERSTATE_DOWN, - LINK_OPERSTATE_UP, + LINK_OPERSTATE_OFF, + LINK_OPERSTATE_NO_CARRIER, LINK_OPERSTATE_DORMANT, LINK_OPERSTATE_CARRIER, LINK_OPERSTATE_DEGRADED, diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index ff6c71db35e..e3d72edecea 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -456,7 +456,7 @@ int manager_save(Manager *m) { Iterator i; _cleanup_free_ char *temp_path = NULL; _cleanup_fclose_ FILE *f = NULL; - LinkOperationalState operstate = LINK_OPERSTATE_DOWN; + LinkOperationalState operstate = LINK_OPERSTATE_OFF; const char *operstate_str; int r; diff --git a/src/systemd/sd-network.h b/src/systemd/sd-network.h index 49034e84d02..dede7aea3de 100644 --- a/src/systemd/sd-network.h +++ b/src/systemd/sd-network.h @@ -78,7 +78,13 @@ int sd_network_get_ntp(char ***addr); int sd_network_link_get_state(int ifindex, char **state); /* Get operatinal state from ifindex. - * Possible states: down, up, dormant, carrier, degraded, routable + * Possible states: + * off: the device is powered down + * no-carrier: the device is powered up, but it does not yet have a carrier + * dormant: the device has a carrier, but is not yet ready for normal traffic + * carrier: the link has a carrier + * degraded: the link has carrier and addresses valid on the local link configured + * routable: the link has carrier and routable address configured * Possible return codes: * -ENODATA: networkd is not aware of the link */