X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fnetwork%2Fnetworkctl.c;h=9c4c1b7e775a7ac8ab666636080f10a828dc6a82;hb=5323ead145304785121b72dcbc1c244303de7575;hp=731ad27d530de703a4a4f03515ffb0f44ee61cde;hpb=636db02d54b64fb5bbad86c8015a9ef51299693b;p=elogind.git diff --git a/src/network/networkctl.c b/src/network/networkctl.c index 731ad27d5..9c4c1b7e7 100644 --- a/src/network/networkctl.c +++ b/src/network/networkctl.c @@ -427,11 +427,19 @@ static int link_status(char **args, unsigned n) { _cleanup_free_ char *operational_state = NULL; _cleanup_strv_free_ char **dns = NULL, **ntp = NULL; _cleanup_free_ struct local_address *addresses = NULL; + const char *on_color_oper = "", *off_color_oper = ""; int i, c; sd_network_get_operational_state(&operational_state); - if (operational_state) - printf(" State: %s\n", operational_state); + if (streq_ptr(operational_state, "routable")) { + on_color_oper = ansi_highlight_green(); + off_color_oper = ansi_highlight_off(); + } else if (streq_ptr(operational_state, "degraded")) { + on_color_oper = ansi_highlight_yellow(); + off_color_oper = ansi_highlight_off(); + } + + printf(" State: %s%s%s\n", on_color_oper, strna(operational_state), off_color_oper); c = local_addresses(rtnl, 0, &addresses); for (i = 0; i < c; i++) {