chiark / gitweb /
networkd: rename UseDomainName to UseDomains
[elogind.git] / src / network / networkctl.c
index dc0bb4da7c9c3bcd2d79fe4584fce0f8151ae866..25097bbdf1d156c6785229e4900bdd4eb43b9618 100644 (file)
@@ -288,7 +288,7 @@ static void dump_list(const char *prefix, char **l) {
 }
 
 static int link_status_one(sd_rtnl *rtnl, struct udev *udev, const char *name) {
-        _cleanup_strv_free_ char **dns = NULL, **ntp = NULL;
+        _cleanup_strv_free_ char **dns = NULL, **ntp = NULL, **domains = NULL;
         _cleanup_free_ char *setup_state = NULL, *operational_state = NULL;
         _cleanup_rtnl_message_unref_ sd_rtnl_message *req = NULL, *reply = NULL;
         _cleanup_udev_device_unref_ struct udev_device *d = NULL;
@@ -364,6 +364,7 @@ static int link_status_one(sd_rtnl *rtnl, struct udev *udev, const char *name) {
 
         sd_network_link_get_dns(ifindex, &dns);
         sd_network_link_get_ntp(ifindex, &ntp);
+        sd_network_link_get_domains(ifindex, &domains);
 
         sprintf(devid, "n%i", ifindex);
         d = udev_device_new_from_device_id(udev, devid);
@@ -411,6 +412,8 @@ static int link_status_one(sd_rtnl *rtnl, struct udev *udev, const char *name) {
 
         if (!strv_isempty(dns))
                 dump_list("         DNS: ", dns);
+        if (!strv_isempty(domains))
+                dump_list("     Domains: ", domains);
         if (!strv_isempty(ntp))
                 dump_list("         NTP: ", ntp);
 
@@ -439,19 +442,13 @@ 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 = "";
+                const char *on_color_operational, *off_color_operational;
                 int i, c;
 
                 sd_network_get_operational_state(&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();
-                }
+                operational_state_to_color(operational_state, &on_color_operational, &off_color_operational);
 
-                printf("       State: %s%s%s\n", on_color_oper, strna(operational_state), off_color_oper);
+                printf("       State: %s%s%s\n", on_color_operational, strna(operational_state), off_color_operational);
 
                 c = local_addresses(rtnl, 0, &addresses);
                 for (i = 0; i < c; i++) {