]> The Tcpdump Group git mirrors - tcpdump/blobdiff - addrtoname.c
Add CAP_FCNTL and use cap_fcntls_limit().
[tcpdump] / addrtoname.c
index 97fd04c40234a21d4dd78381d36a5b11d567c42d..d0437fe490a37e11f3fb399264cfd8347dec44ca 100644 (file)
@@ -555,7 +555,7 @@ linkaddr_string(netdissect_options *ndo, const u_char *ep, const unsigned int ty
                return (etheraddr_string(ndo, ep));
 
        if (type == LINKADDR_FRELAY)
-               return (q922_string(ep));
+               return (q922_string(ndo, ep, len));
 
        tp = lookup_bytestring(ep, len);
        if (tp->e_name)
@@ -756,7 +756,7 @@ init_servarray(netdissect_options *ndo)
 
 /* in libpcap.a (nametoaddr.c) */
 #if defined(WIN32) && !defined(USE_STATIC_LIBPCAP)
-__declspec(dllimport)
+extern __declspec(dllimport)
 #else
 extern
 #endif
@@ -1215,3 +1215,15 @@ newh6namemem(void)
        return (p);
 }
 #endif /* INET6 */
+
+/* Represent TCI part of the 802.1Q 4-octet tag as text. */
+const char *
+ieee8021q_tci_string(const uint16_t tci)
+{
+       static char buf[128];
+       snprintf(buf, sizeof(buf), "vlan %u, p %u%s",
+                tci & 0xfff,
+                tci >> 13,
+                (tci & 0x1000) ? ", DEI" : "");
+       return buf;
+}