]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-juniper.c
from Andy Heffernan <[email protected]>:
[tcpdump] / print-juniper.c
index 65ccef28d18fd9f85fee65ff3533ca39c677bf3f..5eb3e39ed41808883de0e369c26a47c3729062ac 100644 (file)
@@ -15,7 +15,7 @@
 
 #ifndef lint
 static const char rcsid[] _U_ =
-    "@(#) $Header: /tcpdump/master/tcpdump/print-juniper.c,v 1.8.2.7 2005-05-12 08:42:46 hannes Exp $ (LBL)";
+    "@(#) $Header: /tcpdump/master/tcpdump/print-juniper.c,v 1.8.2.8 2005-05-17 09:38:49 hannes Exp $ (LBL)";
 #endif
 
 #ifdef HAVE_CONFIG_H
@@ -552,9 +552,15 @@ juniper_parse_header (const u_char *p, const struct pcap_pkthdr *h, struct junip
         l2info->caplen -= 2;
         break;
     case DLT_JUNIPER_ATM2:
+        /* ATM cell relay control word present ? */
+        if (l2info->cookie[7] & ATM2_PKT_TYPE_MASK && *p & 0x08) {
+            l2info->header_len += 4;
+            if (eflag)
+                printf("control-word 0x%08x ",EXTRACT_32BITS(p));
+        }
+        break;
     case DLT_JUNIPER_ATM1:
     default:
-
         break;
     }