]> The Tcpdump Group git mirrors - tcpdump/commitdiff
Don't blow up if a zero-length link-layer address is passed to linkaddr_string().
authorGuy Harris <[email protected]>
Thu, 25 Mar 2010 18:21:49 +0000 (11:21 -0700)
committerGuy Harris <[email protected]>
Thu, 25 Mar 2010 18:21:49 +0000 (11:21 -0700)
Clean up style a bit while we're at it.

addrtoname.c

index 895f149245b74080fc781afbe17a987ce12c68f5..29826dfbc7e2848a0ddd87d153e7a6075c86779b 100644 (file)
@@ -514,13 +514,14 @@ linkaddr_string(const u_char *ep, const unsigned int type, const unsigned int le
        register char *cp;
        register struct enamemem *tp;
 
-       if (type == LINKADDR_ETHER && len == ETHER_ADDR_LEN) {
-            return etheraddr_string(ep);
-        }
+       if (len == 0)
+               return ("<empty>");
 
-        if (type == LINKADDR_FRELAY) {
-            return q922_string(ep);
-        }
+       if (type == LINKADDR_ETHER && len == ETHER_ADDR_LEN)
+               return (etheraddr_string(ep));
+
+       if (type == LINKADDR_FRELAY)
+               return (q922_string(ep));
 
        tp = lookup_bytestring(ep, len);
        if (tp->e_name)