The current tftp printing in tcpdump is rather minimalistic.
It prints out whether the packet is a read or write request,
and what the file being operated on is.  It currently does not
print out the mode or any of the tftp options.

Attached is a basic patch that will print out a few more fields
from the read and write request packets.

Rob
Index: print-tftp.c
===================================================================
RCS file: /cvs/Darwin/src/live/tcpdump/tcpdump/print-tftp.c,v
retrieving revision 1.1.1.1
diff -u -d -b -w -u -d -r1.1.1.1 print-tftp.c
--- print-tftp.c        2001/07/07 00:50:54     1.1.1.1
+++ print-tftp.c        2003/02/18 01:58:25
@@ -112,6 +112,18 @@
                fputs(" \"", stdout);
                i = fn_print(p, snapend);
                putchar('"');
+               putchar(' ');
+
+               /* Print the mode and any options */
+               while(p = strchr(p, '\0')) {
+                       if( length <= ((unsigned)p - (unsigned)&tp->th_block) )  {
+                               break;
+                       }
+                       p++;
+                       fn_print(p, snapend);
+                       putchar(' ');
+               }
+               
                if (i)
                        goto trunc;
                break;

Reply via email to