Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!ames!ucbcad!ucbvax!hplabs!hp-pcd!orstcs!netnews From: netnews@orstcs.UUCP Newsgroups: comp.protocols.tcp-ip Subject: Packet Tracing Message-ID: <780300004@orstcs> Date: Wed, 15-Apr-87 13:11:00 EST Article-I.D.: orstcs.780300004 Posted: Wed Apr 15 13:11:00 1987 Date-Received: Sat, 18-Apr-87 04:34:40 EST Lines: 29 Nf-ID: #N:orstcs:780300004:000:1406 Nf-From: orstcs.cs.ORST.EDU!netnews Apr 15 10:11:00 1987 /* Written 7:39 am Apr 14, 1987 by jas@MONK.PROTEON.COM in orstcs:comp.protocols.tcp-ip */ /* ---------- "Packet Tracing" ---------- */ In the 4.2BSD/4.3BSD world, the program is /etc/trpt, which stands for TRansliterate Protocol Trace. It's documented in section 8 of the UNIX manuals. By setting SO_DEBUG with a setsockopt() call, you can cause TCP protocol traces to be accumulated in the kernel. This is done by routine tcp_debug() in the file ~sys/netinet/tcp_debug.c. It keeps the data in a compacted format in a circular buffer, that /etc/trpt reads out and formats. Unfortunately, at least in SunOS Version 3.0, Sun has removed the actual code for tcp_debug() in the kernel. It only contains a return. Of course, they still provide /etc/trpt, but it cusses that it can't find the symbol for the buffer in the kernel. I can't understand WHY they did this, but they did. I have in the past been able to get Sun software support to send me a binary tcp_debug.o that has not been lobotomized. Alternatively you probably would have no problem dropping the 4.2BSD code into the hole, you might also have to fix the header file. Other 4.2BSD vendors are more reasonable. The code is all there in Ultrix-32 Version 1.2. The other frustrating problem is that some of the TCP applications have no way to request them to set the debug option. /* End of text from orstcs:comp.protocols.tcp-ip */