Package: tcpdump
Version: 3.9.0.cvs.20050614-1

this problem has been submitted upstream (tracking info at 
http://sourceforge.net/tracker/index.php?func=detail&aid=1232347&group_id=53066&atid=469575)

the -A flag no longer prints the ascii minus the hex like it did in 
3.8.x... while i'm a bit confused by why the code sets xflag, Xflag and 
Aflag when -A is specified, the attached patch does appear to fix the 
priority of -A vs. -X/-x ...

-dean

--- tcpdump.c.orig      2005-06-03 15:08:53.000000000 -0700
+++ tcpdump.c   2005-06-29 00:16:05.547673227 -0700
@@ -1224,15 +1224,15 @@
        snapend = sp + h->caplen;
 
        hdrlen = (*print_info->printer)(h, sp);
-       if (xflag) {
+       if (Xflag) {
                /*
                 * Print the raw packet data.
                 */
-               if (xflag > 1) {
+               if (Xflag > 1) {
                        /*
                         * Include the link-layer header.
                         */
-                       hex_print("\n\t", sp, h->caplen);
+                       ascii_print("\n\t", sp, h->caplen);
                } else {
                        /*
                         * Don't include the link-layer header - and if
@@ -1240,18 +1240,18 @@
                         * print nothing.
                         */
                        if (h->caplen > hdrlen)
-                               hex_print("\n\t", sp + hdrlen,
+                               ascii_print("\n\t", sp + hdrlen,
                                    h->caplen - hdrlen);
                }
-       } else if (Xflag) {
+       } else if (xflag) {
                /*
                 * Print the raw packet data.
                 */
-               if (Xflag > 1) {
+               if (xflag > 1) {
                        /*
                         * Include the link-layer header.
                         */
-                       ascii_print("\n\t", sp, h->caplen);
+                       hex_print("\n\t", sp, h->caplen);
                } else {
                        /*
                         * Don't include the link-layer header - and if
@@ -1259,10 +1259,10 @@
                         * print nothing.
                         */
                        if (h->caplen > hdrlen)
-                               ascii_print("\n\t", sp + hdrlen,
+                               hex_print("\n\t", sp + hdrlen,
                                    h->caplen - hdrlen);
                }
-       }
+        }
 
        putchar('\n');
 



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to