chiark / gitweb /
networkctl: fix strappend() error checking
[elogind.git] / src / network / networkctl.c
index 74735effcc69f17901388305506ee755fd355ee5..15dfb81e2a260cde3af8344fc4cb7544c6825dba 100644 (file)
@@ -880,7 +880,7 @@ static char *lldp_system_caps(uint16_t cap) {
         }
 
         t = strappend(s, "]");
-        if (!s)
+        if (!t)
                 return NULL;
 
         free(s);
@@ -927,11 +927,8 @@ static int link_lldp_status(int argc, char *argv[], void *userdata) {
         if (c < 0)
                 return rtnl_log_parse_error(c);
 
-        printf("Capability Codes: (O) - Other, (P) - Repeater,  (B) - Bridge , (W) - WLAN Access Point, (R) = Router, (T) - Telephone,\n"
-               "(D) - Data Over Cable Service Interface Specifications, (A) - Station, (C) - Customer VLAN, (S) - Service VLAN,\n"
-               "(M) - Two-port MAC Relay (TPMR)\n\n");
-
-        printf("%s %16s %24s %16s %16s\n", "Local Intf", "Device ID", "Port ID", "TTL", "Capability");
+        if (arg_legend)
+                printf("%s %16s %24s %16s %16s\n", "Local Intf", "Device ID", "Port ID", "TTL", "Capability");
 
         for (i = j = 0; i < c; i++) {
                 _cleanup_free_ char *chassis = NULL, *port = NULL, *cap = NULL, *lldp = NULL;
@@ -995,7 +992,14 @@ static int link_lldp_status(int argc, char *argv[], void *userdata) {
                 }
         }
 
-        printf("\nTotal entries displayed: %d\n", j);
+        if (arg_legend) {
+                printf("\nCapability Codes:\n"
+                       "(O) - Other, (P) - Repeater,  (B) - Bridge , (W) - WLAN Access Point, (R) = Router,\n"
+                       "(T) - Telephone, (D) - Data Over Cable Service Interface Specifications, (A) - Station,\n"
+                       "(C) - Customer VLAN, (S) - Service VLAN, (M) - Two-port MAC Relay (TPMR)\n\n");
+
+                printf("Total entries displayed: %d\n", j);
+        }
 
         return 0;
 }