]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-decnet.c
CI: Add warning exemptions for Sun C (suncc-5.15) on Solaris 10
[tcpdump] / print-decnet.c
index 6a6dd25982f9376d2b1bcdf3f1c34b1a9aa2156f..989776b4df316af5fc91082fa39beac1dc56a6eb 100644 (file)
  */
 
 /* \summary: DECnet printer */
+/*
+ * specification: Section 10.0 MESSAGES
+ * DECnet Digital Network Architecture
+ * Phase IV
+ * Routing Layer Functional Specification
+ * Order No. AA-X435A-TK
+ * Version 2.0.0 December 1983
+ */
 
-#ifdef HAVE_CONFIG_H
 #include <config.h>
-#endif
 
 #include "netdissect-stdinc.h"
 
@@ -52,7 +58,7 @@ typedef nd_uint32_t longword;         /* 4 bytes field */
  * Definitions for DECNET Phase IV protocol headers
  */
 typedef union {
-       nd_mac_addr dne_addr;   /* full Ethernet address */
+       nd_mac48 dne_addr;      /* full Ethernet address */
        struct {
                nd_byte dne_hiord[4];   /* DECnet HIORD prefix */
                nd_byte dne_nodeaddr[2]; /* DECnet node address */
@@ -482,6 +488,11 @@ decnet_print(netdissect_options *ndo,
                goto invalid;
        }
 
+       /*
+        * This length does not seem to be in any specification, but it is present
+        * in the test case packet capture, which is consistent with the Wireshark
+        * protocol decoder.
+        */
        pktlen = GET_LE_U_2(ap);
        if (pktlen < sizeof(struct shorthdr)) {
                ND_PRINT(" (pktlen %u < %zu)", pktlen, sizeof(struct shorthdr));