]> granicus.if.org Git - strace/commitdiff
Print arp_hardware_types as a sorted xlat
authorEugene Syromyatnikov <evgsyr@gmail.com>
Wed, 30 May 2018 13:26:09 +0000 (15:26 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 4 Jun 2018 16:18:14 +0000 (16:18 +0000)
* rtnl_link.c (DECL_NETLINK_ROUTE_DECODER(decode_ifinfomsg)): Use
PRINT_FIELD_XVAL_SORTED_SIZED instead of PRINT_FIELD_XVAL for
arp_hardware_types.
* sock.c (print_ifreq): Likewise.

rtnl_link.c
sock.c

index 2ef2d63a4cddf05342493d76ff3f3b4fc8235bf2..5f967cf3fdb1ea505c53a8219118c82395c2245a 100644 (file)
@@ -456,8 +456,10 @@ DECL_NETLINK_ROUTE_DECODER(decode_ifinfomsg)
                if (!umoven_or_printaddr(tcp, addr + offset,
                                         sizeof(ifinfo) - offset,
                                         (char *) &ifinfo + offset)) {
-                       PRINT_FIELD_XVAL("", ifinfo, ifi_type,
-                                        arp_hardware_types, "ARPHRD_???");
+                       PRINT_FIELD_XVAL_SORTED_SIZED("", ifinfo, ifi_type,
+                                                     arp_hardware_types,
+                                                     arp_hardware_types_size,
+                                                     "ARPHRD_???");
                        PRINT_FIELD_IFINDEX(", ", ifinfo, ifi_index);
                        PRINT_FIELD_FLAGS(", ", ifinfo, ifi_flags,
                                          iffflags, "IFF_???");
diff --git a/sock.c b/sock.c
index 0ab0240513db5d26c1d5837085ae03fb60a67702..a520852e7673797337ac6a280f013403d8fe0d58 100644 (file)
--- a/sock.c
+++ b/sock.c
@@ -156,8 +156,10 @@ print_ifreq(struct tcb *const tcp, const unsigned int code,
                uint8_t sz = (proto < ARRAY_SIZE(hwaddr_sizes))
                                ? hwaddr_sizes[proto] : 255;
 
-               PRINT_FIELD_XVAL("ifr_hwaddr={", ifr->ifr_hwaddr, sa_family,
-                                arp_hardware_types, "ARPHRD_???");
+               PRINT_FIELD_XVAL_SORTED_SIZED("ifr_hwaddr={", ifr->ifr_hwaddr,
+                                             sa_family, arp_hardware_types,
+                                             arp_hardware_types_size,
+                                             "ARPHRD_???");
                PRINT_FIELD_MAC_SZ(", ", ifr->ifr_hwaddr, sa_data,
                                   MIN(sizeof(ifr->ifr_hwaddr.sa_data), sz));
                tprints("}");