]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-ip.c
do not use gcc-ism for macro, instead abuse C-syntax
[tcpdump] / print-ip.c
index 9357abac74945594d2c50dad4be2186d069752d3..e0e9d2db490e8ac3973921a3dbb405b773a5270a 100644 (file)
@@ -21,7 +21,7 @@
 
 #ifndef lint
 static const char rcsid[] _U_ =
-    "@(#) $Header: /tcpdump/master/tcpdump/print-ip.c,v 1.134 2004-03-24 01:26:56 guy Exp $ (LBL)";
+    "@(#) $Header: /tcpdump/master/tcpdump/print-ip.c,v 1.136 2004-04-05 00:15:51 mcr Exp $ (LBL)";
 #endif
 
 #ifdef HAVE_CONFIG_H
@@ -200,12 +200,12 @@ ip_optprint(register const u_char *cp, u_int length)
                else {
                        TCHECK(cp[1]);
                        len = cp[1];
+                       if (len < 2) {
+                               printf("[|ip op len %d]", len);
+                               return;
+                       }
+                       TCHECK2(*cp, len);
                }
-               if (len < 2) {
-                       printf("[|ip op len %d]", len);
-                       return;
-               }
-               TCHECK2(*cp, len);
                switch (tt) {
 
                case IPOPT_EOL:
@@ -505,7 +505,7 @@ again:
                case IPPROTO_ESP:
                    {
                        int enh, padlen;
-                       advance = esp_print(cp, (const u_char *)ip, &enh, &padlen);
+                       advance = esp_print(gndo, cp, (const u_char *)ip, &enh, &padlen);
                        if (advance <= 0)
                                break;
                        cp += advance;