xref: /dragonfly/contrib/tcpdump/CHANGES (revision 92fc8b5c)
1$Header: /tcpdump/master/tcpdump/CHANGES,v 1.98.2.2 2008-10-15 23:26:30 ken Exp $
2
3Mon.    October 27, 2008.  ken@netfunctional.ca.  Summary for 4.0.0 tcpdump release
4        Add support for Bluetooth Sniffing
5        Add support for Realtek Remote Control Protocol (openrrcp.org.ru)
6        Add support for 802.11 AVS
7        Add support for SMB over TCP
8        Add support for 4 byte BGP AS printing
9        Add support for compiling on case-insensitive file systems
10        Add support for ikev2 printing
11        Update support for decoding AFS
12        Update DHCPv6 printer
13        Use newer libpcap API's (allows -B option on all platforms)
14        Add -I to turn on monitor mode
15        Bugfixes in lldp, lspping, dccp, ESP, NFS printers
16        Cleanup unused files and various cruft
17
18Mon.    September 10, 2007.  ken@xelerance.com.  Summary for 3.9.8 tcpdump release
19        Rework ARP printer
20        Rework OSPFv3 printer
21        Add support for Frame-Relay ARP
22        Decode DHCP Option 121 (RFC 3442 Classless Static Route)
23        Decode DHCP Option 249 (MS Classless Static Route) the same as Option 121
24        TLV: Add support for Juniper .pcap extensions
25        Print EGP header in new-world-order style
26        Converted print-isakmp.c to NETDISSECT
27        Moved AF specific stuff into af.h
28        Test subsystem now table driven, and saves outputs and diffs to one place
29        Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted
30         libpcap files on an OS other than where the file was generated
31
32
33Wed.	July 23, 2007.  mcr@xelerance.com.  Summary for 3.9.7 libpcap release
34
35    	NFS: Print unsigned values as such.
36	RX: parse safely.
37	BGP: fixes for IPv6-less builds.
38	801.1ag: use standard codepoint.
39	use /dev/bpf on systems with such a device.
40	802.11: print QoS data, avoid dissect of no-data frame, ignore padding.
41	smb: make sure that we haven't gone past the end of the captured data.
42	smb: squelch an uninitialized complaint from coverity.
43	NFS: from NetBSD; don't interpret the reply as a possible NFS reply
44		if it got MSG_DENIED.
45	BGP: don't print TLV values that didn't fit, from www.digit-labs.org.
46	revised INSTALL.txt about libpcap dependancy.
47
48Wed.	April 25, 2007. ken@xelerance.com.  Summary for 3.9.6 tcpdump release
49	Update man page to reflect changes to libpcap
50	Changes to both TCP and IP Printer Output
51	Fix a potential buffer overflow in the 802.11 printer
52	Print basic info about a few more Cisco LAN protocols.
53	mDNS cleanup
54	ICMP MPLS rework of the extension code
55	bugfix: use the correct codepoint for the OSPF simple text auth token
56	 entry, and use safeputs to print the password.
57	Add support in pflog for additional values
58	Add support for OIF RSVP Extensions UNI 1.0 Rev. 2 and additional RSVP objects
59	Add support for the Message-id NACK c-type.
60	Add support for 802.3ah loopback ctrl msg
61	Add support for Multiple-STP as per 802.1s
62	Add support for rapid-SPT as per 802.1w
63	Add support for CFM Link-trace msg, Link-trace-Reply msg,
64	 Sender-ID tlv, private tlv, port, interface status
65	Add support for unidirectional link detection as per
66	 http://www.ietf.org/internet-drafts/draft-foschiano-udld-02.txt
67	Add support for the olsr protocol as per RFC 3626 plus the LQ
68	 extensions from olsr.org
69	Add support for variable-length checksum in DCCP, as per section 9 of
70	 RFC 4340.
71	Add support for per-VLAN spanning tree and per-VLAN rapid spanning tree
72	Add support for Multiple-STP as per 802.1s
73	Add support for the cisco propriatry 'dynamic trunking protocol'
74	Add support for the cisco proprietary VTP protocol
75	Update dhcp6 options table as per IETF standardization activities
76
77
78Tue.	September 19, 2006. ken@xelerance.com. Summary for 3.9.5 tcpdump release
79
80	Fix compiling on AIX (, at end of ENUM)
81	Updated list of DNS RR typecodes
82	Use local Ethernet defs on WIN32
83	Add support for Frame-Relay ARP
84	Fixes for compiling under MSVC++
85	Add support for parsing Juniper .pcap files
86	Add support for FRF.16 Multilink Frame-Relay (DLT_MFR)
87	Rework the OSPFv3 printer
88	Fix printing for 4.4BSD/NetBSD NFS Filehandles
89	Add support for Cisco style NLPID encapsulation
90	Add cisco prop. eigrp related, extended communities
91	Add support for BGP signaled VPLS
92	Cleanup the bootp printer
93	Add support for PPP over Frame-Relay
94	Add some bounds checking to the IP options code, and clean up
95	 the options output a bit.
96	Add additional modp groups to ISAKMP printer
97	Add support for Address-Withdraw and Label-Withdraw Msgs
98	Add support for the BFD Discriminator TLV
99	Fixes for 64bit compiling
100	Add support for PIMv2 checksum verification
101	Add support for further dissection of the IPCP Compression Option
102	Add support for Cisco's proposed VQP protocol
103	Add basic support for keyed authentication TCP option
104	Lots of minor cosmetic changes to output printers
105
106
107Mon. 	September 19, 2005.  ken@xelerance.com. Summary for 3.9.4 tcpdump release
108	Decoder support for more Juniper link-layer types
109	Fix a potential buffer overflow (although it can't occur in
110		practice).
111	Fix the handling of unknown management frame types in the 802.11
112		printer.
113	Add FRF.16 support, fix various Frame Relay bugs.
114	Add support for RSVP integrity objects, update fast-reroute
115		object printer to latest spec.
116	Clean up documentation of vlan filter expression, document mpls
117		filter expression.
118	Document new pppoed and pppoes filter expressions.
119	Update diffserver-TE codepoints as per RFC 4124.
120	Spelling fixes in ICMPv6.
121	Don't require any fields other than flags to be present in IS-IS
122		restart signaling TLVs, and only print the system ID in
123		those TLVs as system IDs, not as node IDs.
124	Support for DCCP.
125
126Tue. 	July 5, 2005.  ken@xelerance.com. Summary for 3.9.3 tcpdump release
127
128	Option to chroot() when dropping privs
129	Fixes for compiling on nearly every platform,
130		including improved 64bit support
131	Many new testcases
132	Support for sending packets
133	Many compliation fixes on most platforms
134	Fixes for recent version of GCC to eliminate warnings
135	Improved Unicode support
136
137	Decoders & DLT Changes, Updates and New:
138		AES ESP support
139		Juniper ATM, FRF.15, FRF.16, PPPoE,
140			ML-FR, ML-PIC, ML-PPP, PL-PPP, LS-PIC
141			GGSN,ES,MONITOR,SERVICES
142		L2VPN
143		Axent Raptor/Symantec Firewall
144		TCP-MD5 (RFC 2385)
145		ESP-in-UDP (RFC 3948)
146		ATM OAM
147		LMP, LMP Service Discovery
148		IP over FC
149		IP over IEEE 1394
150		BACnet MS/TP
151		SS7
152		LDP over TCP
153		LACP, MARKER as per 802.3ad
154		PGM (RFC 3208)
155		LSP-PING
156		G.7041/Y.1303 Generic Framing Procedure
157		EIGRP-IP, EIGRP-IPX
158		ICMP6
159		Radio - via radiotap
160		DHCPv6
161		HDLC over PPP
162
163Tue.   March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release
164
165	No changes from 3.8.2. Version bumped only to maintain consistency
166	with libpcap 0.8.3.
167
168Mon.   March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release
169
170	Fixes for print-isakmp.c      CVE:    CAN-2004-0183, CAN-2004-0184
171	  		     http://www.rapid7.com/advisories/R7-0017.html
172	IP-over-IEEE1394 printing.
173	some MINGW32 changes.
174	updates for autoconf 2.5
175	fixes for print-aodv.c - check for too short packets
176	formatting changes to print-ascii for hex output.
177	check for too short packets: print-bgp.c, print-bootp.c, print-cdp.c,
178		print-chdlc.c, print-domain.c, print-icmp.c, print-icmp6.c,
179		print-ip.c, print-lwres.c, print-ospf.c, print-pim.c,
180		print-ppp.c,print-pppoe.c, print-rsvp.c, print-wb.c
181	print-ether.c - better handling of unknown types.
182	print-isoclns.c - additional decoding of types.
183	print-llc.c - strings for LLC names added.
184	print-pfloc.c - various enhancements
185	print-radius.c - better decoding to strings.
186
187Wed.   November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 3.8 release
188
189	changed syntax of -E argument so that multiple SAs can be decrypted
190	fixes for Digital Unix headers and Documentation
191	__attribute__ fixes
192	CDP changes from Terry Kennedy <terry@tmk.com>.
193	IPv6 mobility updates from Kazushi Sugyo <sugyo@pb.jp.nec.com>
194	Fixes for ASN.1 decoder for 2.100.3 forms.
195	Added a count of packets received and processed to clarify numbers.
196	Incorporated WinDUMP patches for Win32 builds.
197	PPPoE payload length headers.
198	Fixes for HP C compiler builds.
199	Use new pcap_breakloop() and pcap_findalldevs() if we can.
200	BGP output split into multiple lines.
201	Fixes to 802.11 decoding.
202	Fixes to PIM decoder.
203	SuperH is a CPU that can't handle unaligned access. Many fixes for
204		unaligned access work.
205	Fixes to Frame-Relay decoder for Q.933/922 frames.
206	Clarified when Solaris can do captures as non-root.
207	Added tests/ subdir for examples/regression tests.
208	New -U flag.	-flush stdout after every packet
209	New -A flag	-print ascii only
210	support for decoding IS-IS inside Cisco HDLC Frames
211	more verbosity for tftp decoder
212	mDNS decoder
213	new BFD decoder
214	cross compilation patches
215	RFC 3561 AODV support.
216	UDP/TCP pseudo-checksum properly for source-route options.
217	sanitized all files to modified BSD license
218	Add support for RFC 2625 IP-over-Fibre Channel.
219	fixes for DECnet support.
220	Support RFC 2684 bridging of Ethernet, 802.5 Token Ring, and FDDI.
221	RFC 2684 encapsulation of BPDUs.
222
223Tuesday, February 25, 2003. fenner@research.att.com.  3.7.2 release
224
225	Fixed infinite loop when parsing malformed isakmp packets.
226	 (reported by iDefense; already fixed in CVS)
227	Fixed infinite loop when parsing malformed BGP packets.
228	Fixed buffer overflow with certain malformed NFS packets.
229	Pretty-print unprintable network names in 802.11 printer.
230	Handle truncated nbp (appletalk) packets.
231	Updated DHCPv6 printer to match draft-ietf-dhc-dhcpv6-22.txt
232	Print IP protocol name even if we don't have a printer for it.
233	Print IP protocol name or number for fragments.
234	Print the whole MPLS label stack, not just the top label.
235	Print request header and file handle for NFS v3 FSINFO and PATHCONF
236	 requests.
237	Fix NFS packet truncation checks.
238	Handle "old" DR-Priority and Bidir-Capable PIM HELLO options.
239	Handle unknown RADIUS attributes properly.
240	Fix an ASN.1 parsing error that would cause e.g. the OID
241	 2.100.3 to be misrepresented as 4.20.3 .
242
243Monday, January 21, 2002. mcr@sandelman.ottawa.on.ca. Summary for 3.7 release
244see http://www.tcpdump.org/cvs-log/2002-01-21.10:16:48.html for commit log.
245	keyword "ipx" added.
246	Better OSI/802.2 support on Linux.
247	IEEE 802.11 support, from clenahan@fortresstech.com, achirica@ttd.net.
248	LLC SAP support for FDDI/token ring/RFC-1483 style ATM
249	BXXP protocol was replaced by the BEEP protocol;
250	improvements to SNAP demux.
251	Changes to "any" interface documentation.
252	Documentation on pcap_stats() counters.
253	Fix a memory leak found by Miklos Szeredi - pcap_ether_aton().
254	Added MPLS encapsulation decoding per RFC3032.
255	DNS dissector handles TKEY, TSIG and IXFR.
256	adaptive SLIP interface patch from Igor Khristophorov <igor@atdot.org>
257	SMB printing has much improved bounds checks
258	OUI 0x0000f8 decoded as encapsulated ethernet for Cisco-custom bridging
259	Zephyr support, from Nickolai Zeldovich <kolya@MIT.EDU>.
260	Solaris - devices with digits in them. Stefan Hudson <hudson@mbay.net>
261	IPX socket 0x85be is for Cisco EIGRP over IPX.
262	Improvements to fragmented ESP handling.
263	SCTP support from Armando L. Caro Jr. <acaro@mail.eecis.udel.edu>
264	Linux ARPHDR_ATM support fixed.
265	Added a "netbeui" keyword, which selects NetBEUI packets.
266	IPv6 ND improvements, MobileIP dissector, 2292bis-02 for RA option.
267	Handle ARPHDR_HDLC from Marcus Felipe Pereira <marcus@task.com.br>.
268	Handle IPX socket 0x553 -> NetBIOS-over-IPX socket, "nwlink-dgm"
269	Better Linux libc5 compat.
270	BIND9 lwres dissector added.
271	MIPS and SPARC get strict alignment macros (affects print-bgp.c)
272	Apple LocalTalk LINKTYPE_ reserved.
273	New time stamp formats documented.
274	DHCP6 updated to draft-22.txt spec.
275	ICMP types/codes now accept symbolic names.
276	Add SIGINFO handler from LBL
277	encrypted CIPE tunnels in IRIX, from Franz Schaefer <schaefer@mond.at>.
278	now we are -Wstrict-prototype clean.
279	NetBSD DLT_PPP_ETHER; adapted from Martin Husemann <martin@netbsd.org>.
280	PPPoE dissector cleaned up.
281	Support for LocalTalk hardware, from Uns Lider <unslider@miranda.org>.
282	In dissector, now the caller prints the IP addresses rather than proto.
283	cjclark@alum.mit.edu: print the IP proto for non-initial fragments.
284	LLC frames with a DSAP and LSAP of 0xe0 are IPX frames.
285	Linux cooked frames with a type value of LINUX_SLL_P_802_3 are IPX.
286	captures on the "any" device won't be done in promiscuous mode
287	Token Ring support on DLPI - Onno van der Linden <onno@simplex.nl>
288	ARCNet support, from NetBSD.
289	HSRP dissector, from Julian Cowley <julian@lava.net>.
290	Handle (GRE-encapsulated) PPTP
291	added -C option to rotate save file every optarg * 1,000,000 bytes.
292	support for "vrrp" name - NetBSD, by Klaus Klein <kleink@netbsd.org>.
293	PPTP support, from Motonori Shindo <mshindo@mshindo.net>.
294	IS-IS over PPP support, from Hannes Gredler <hannes@juniper.net>.
295	CNFP support for IPv6,format. Harry Raaymakers <harryr@connect.com.au>.
296	ESP printing updated to RFC2406.
297	HP-UX can now handle large number of PPAs.
298	MSDP printer added.
299	L2TP dissector improvements from Motonori Shindo.
300
301Tuesday January 9, 2001. mcr@sandelman.ottawa.on.ca. Summary for 3.6 release
302	Cleaned up documentation.
303	Promisc mode fixes for Linux
304	IPsec changes/cleanups.
305	Alignment fixes for picky architectures
306
307	Removed dependency on native headers for packet dissectors.
308	Removed Linux specific headers that were shipped
309
310	libpcap changes provide for exchanging capture files between
311	  systems. Save files now have well known PACKET_ values instead of
312	  depending upon system dependant mappings of DLT_* types.
313
314	Support for computing/checking IP and UDP/TCP checksums.
315
316	Updated autoconf stock files.
317
318	IPv6 improvements: dhcp (draft-15), mobile-ip6, ppp, ospf6,
319
320	Added dissector support for: ISOCLNS, Token Ring, IGMPv3, bxxp,
321		timed, vrrp, radius, chdlc, cnfp, cdp, IEEE802.1d, raw-AppleTalk
322
323	Added filtering support for: VLANs, ESIS, ISIS
324
325	Improvements to: print-telnet, IPTalk, bootp/dhcp, ECN, PPP,
326		L2TP, PPPoE
327
328	HP-UX 11.0 -- find the right dlpi device.
329	Solaris 8 - IPv6 works
330	Linux - Added support for an "any" device to capture on all interfaces
331
332	Security fixes: buffer overrun audit done. Strcpy replaced with
333		strlcpy, sprintf replaced with snprintf.
334	Look for lex problems, and warn about them.
335
336
337v3.5 Fri Jan 28 18:00:00 PST 2000
338
339Bill Fenner <fenner@research.att.com>
340- switch to config.h for autoconf
341- unify RCSID strings
342- Updated PIMv1, PIMv2, DVMRP, IGMP parsers, add Cisco Auto-RP parser
343- Really fix the RIP printer
344- Fix MAC address -> name translation.
345- some -Wall -Wformat fixes
346- update makemib to parse much of SMIv2
347- Print TCP sequence # with -vv even if you normally wouldn't
348- Print as much of IP/TCP/UDP headers as possible even if truncated.
349
350itojun@iijlab.net
351- -X will make a ascii dump.  from netbsd.
352- telnet command sequence decoder (ff xx xx).  from netbsd.
353- print-bgp.c: improve options printing.  ugly code exists for
354  unaligned option parsing (need some fix).
355- const poisoning in SMB decoder.
356- -Wall -Werror clean checks.
357- bring in KAME IPv6/IPsec decoding code.
358
359Assar Westerlund  <assar@sics.se>
360- SNMPv2 and SNMPv3 printer
361- If compiled with libsmi, tcpdump can load MIBs on the fly to decode
362  SNMP packets.
363- Incorporate NFS parsing code from NetBSD.  Adds support for nfsv3.
364- portability fixes
365- permit building in different directories.
366
367Ken Hornstein <kenh@cmf.nrl.navy.mil>
368- bring in code at
369  /afs/transarc.com/public/afs-contrib/tools/tcpdump for parsing
370  AFS3 packets
371
372Andrew Tridgell <tridge@linuxcare.com>
373- SMB printing code
374
375Love <lha@stacken.kth.se>
376- print-rx.c: add code for printing MakeDir and StoreStatus.  Also
377  change date format to the right one.
378
379Michael C. Richardson  <mcr@sandelman.ottawa.on.ca>
380- Created tcpdump.org repository
381
382v3.4 Sat Jul 25 12:40:55 PDT 1998
383
384- Hardwire Linux slip support since it's too hard to detect.
385
386- Redo configuration of "network" libraries (-lsocket and -lnsl) to
387  deal with IRIX. Thanks to John Hawkinson (jhawk@mit.edu)
388
389- Added -a which tries to translate network and broadcast addresses to
390  names. Suggested by Rob van Nieuwkerk (robn@verdi.et.tudelft.nl)
391
392- Added a configure option to disable gcc.
393
394- Added a "raw" packet printer.
395
396- Not having an interface address is no longer fatal. Requested by John
397  Hawkinson.
398
399- Rework signal setup to accommodate Linux.
400
401- OSPF truncation check fix. Also display the type of OSPF packets
402  using MD5 authentication. Thanks to Brian Wellington
403  (bwelling@tis.com)
404
405- Fix truncation check bugs in the Kerberos printer. Reported by Ezra
406  Peisach (epeisach@mit.edu)
407
408- Don't catch SIGHUP when invoked with nohup(1). Thanks to Dave Plonka
409  (plonka@mfa.com)
410
411- Specify full install target as a way of detecting if install
412  directory does not exist. Thanks to Dave Plonka.
413
414- Bit-swap FDDI addresses for BSD/OS too. Thanks to Paul Vixie
415  (paul@vix.com)
416
417- Fix off-by-one bug when testing size of ethernet packets. Thanks to
418  Marty Leisner (leisner@sdsp.mc.xerox.com)
419
420- Add a local autoconf macro to check for routines in libraries; the
421  autoconf version is broken (it only puts the library name in the
422  cache variable name). Thanks to John Hawkinson.
423
424- Add a local autoconf macro to check for types; the autoconf version
425  is broken (it uses grep instead of actually compiling a code fragment).
426
427- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header
428  formats.
429
430- Extend OSF ip header workaround to versions 1 and 2.
431
432- Fix some signed problems in the nfs printer. As reported by David
433  Sacerdote (davids@silence.secnet.com)
434
435- Detect group wheel and use it as the default since BSD/OS' install
436  can't hack numeric groups. Reported by David Sacerdote.
437
438- AIX needs special loader options. Thanks to Jonathan I. Kamens
439  (jik@cam.ov.com)
440
441- Fixed the nfs printer to print port numbers in decimal. Thanks to
442  Kent Vander Velden (graphix@iastate.edu)
443
444- Find installed libpcap in /usr/local/lib when not using gcc.
445
446- Disallow network masks with non-network bits set.
447
448- Attempt to detect "egcs" versions of gcc.
449
450- Add missing closing double quotes when displaying bootp strings.
451  Reported by Viet-Trung Luu (vluu@picard.math.uwaterloo.ca)
452
453v3.3 Sat Nov 30 20:56:27 PST 1996
454
455- Added Linux support.
456
457- GRE encapsulated packet printer thanks to John Hawkinson
458  (jhawk@mit.edu)
459
460- Rewrite gmt2local() to avoid problematic os dependencies.
461
462- Suppress nfs truncation message on errors.
463
464- Add missing m4 quoting in AC_LBL_UNALIGNED_ACCESS autoconf macro.
465  Reported by Joachim Ott (ott@ardala.han.de)
466
467- Enable "ip_hl vs. ip_vhl" workaround for OSF4 too.
468
469- Print arp hardware type in host order. Thanks to Onno van der Linden
470  (onno@simplex.nl)
471
472- Avoid solaris compiler warnings. Thanks to Bruce Barnett
473  (barnett@grymoire.crd.ge.com)
474
475- Fix rip printer to not print one more route than is actually in the
476  packet. Thanks to Jean-Luc Richier (Jean-Luc.Richier@imag.fr) and
477  Bill Fenner (fenner@parc.xerox.com)
478
479- Use autoconf endian detection since BYTE_ORDER isn't defined on all systems.
480
481- Fix dvmrp printer truncation checks and add a dvmrp probe printer.
482  Thanks to Danny J. Mitzel (mitzel@ipsilon.com)
483
484- Rewrite ospf printer to improve truncation checks.
485
486- Don't parse tcp options past the EOL. As noted by David Sacerdote
487  (davids@secnet.com). Also, check tcp options to make sure they ar
488  actually in the tcp header (in addition to the normal truncation
489  checks). Fix the SACK code to print the N blocks (instead of the
490  first block N times).
491
492- Don't say really small UDP packets are truncated just because they
493  aren't big enough to be a RPC. As noted by David Sacerdote.
494
495v3.2.1 Sun Jul 14 03:02:26 PDT 1996
496
497- Added rfc1716 icmp codes as suggested by Martin Fredriksson
498  (martin@msp.se)
499
500- Print mtu for icmp unreach need frag packets. Thanks to John
501  Hawkinson (jhawk@mit.edu)
502
503- Decode icmp router discovery messages. Thanks to Jeffrey Honig
504  (jch@bsdi.com)
505
506- Added a printer entry for DLT_IEEE802 as suggested by Tak Kushida
507  (kushida@trl.ibm.co.jp)
508
509- Check igmp checksum if possible. Thanks to John Hawkinson.
510
511- Made changes for SINIX. Thanks to Andrej Borsenkow
512  (borsenkow.msk@sni.de)
513
514- Use autoconf's idea of the top level directory in install targets.
515  Thanks to John Hawkinson.
516
517- Avoid infinite loop in tcp options printing code. Thanks to Jeffrey
518  Mogul (mogul@pa.dec.com)
519
520- Avoid using -lsocket in IRIX 5.2 and earlier since it breaks snoop.
521  Thanks to John Hawkinson.
522
523- Added some more packet truncation checks.
524
525- On systems that have it, use sigset() instead of signal() since
526  signal() has different semantics on these systems.
527
528- Fixed some more alignment problems on the alpha.
529
530- Add code to massage unprintable characters in the domain and ipx
531  printers. Thanks to John Hawkinson.
532
533- Added explicit netmask support. Thanks to Steve Nuchia
534  (steve@research.oknet.com)
535
536- Add "sca" keyword (for DEC cluster services) as suggested by Terry
537  Kennedy (terry@spcvxa.spc.edu)
538
539- Add "atalk" keyword as suggested by John Hawkinson.
540
541- Added an igrp printer. Thanks to Francis Dupont
542  (francis.dupont@inria.fr)
543
544- Print IPX net numbers in hex a la Novell Netware. Thanks to Terry
545  Kennedy (terry@spcvxa.spc.edu)
546
547- Fixed snmp extended tag field parsing bug. Thanks to Pascal Hennequin
548  (pascal.hennequin@hugo.int-evry.fr)
549
550- Added some ETHERTYPEs missing on some systems.
551
552- Added truncated packet macros and various checks.
553
554- Fixed endian problems with the DECnet printer.
555
556- Use $CC when checking gcc version. Thanks to Carl Lindberg
557  (carl_lindberg@blacksmith.com)
558
559- Fixes for AIX (although this system is not yet supported). Thanks to
560  John Hawkinson.
561
562- Fix bugs in the autoconf misaligned accesses code fragment.
563
564- Include sys/param.h to get BYTE_ORDER in a few places. Thanks to
565  Pavlin Ivanov Radoslavov (pavlin@cs.titech.ac.jp)
566
567v3.2 Sun Jun 23 02:28:10 PDT 1996
568
569- Print new icmp unreachable codes as suggested by Martin Fredriksson
570  (martin@msp.se). Also print code value when unknown for icmp redirect
571  and time exceeded.
572
573- Fix an alignment endian bug in getname(). Thanks to John Hawkinson.
574
575- Define "new" domain record types if not found in arpa/nameserv.h.
576  Resulted from a suggestion from John Hawkinson (jhawk@mit.edu). Also
577  fixed an endian bug when printing mx record and added some new record
578  types.
579
580- Added RIP V2 support. Thanks to Jeffrey Honig (jch@bsdi.com)
581
582- Added T/TCP options printing. As suggested by Richard Stevens
583  (rstevens@noao.edu)
584
585- Use autoconf to detect architectures that can't handle misaligned
586  accesses.
587
588v3.1 Thu Jun 13 20:59:32 PDT 1996
589
590- Changed u_int32/int32 to u_int32_t/int32_t to be consistent with bsd
591  and bind (as suggested by Charles Hannum).
592
593- Port to GNU autoconf.
594
595- Add support for printing DVMRP and PIM traffic thanks to
596  Havard Eidnes (Havard.Eidnes@runit.sintef.no).
597
598- Fix AppleTalk, IPX and DECnet byte order problems due to wrong endian
599  define being referenced. Reported by Terry Kennedy.
600
601- Minor fixes to the man page thanks to Mark Andrews.
602
603- Endian fixes to RTP and vat packet dumpers, thanks to Bruce Mah
604  (bmah@cs.berkeley.edu).
605
606- Added support for new dns types, thanks to Rainer Orth.
607
608- Fixed tftp_print() to print the block number for ACKs.
609
610- Document -dd and -ddd. Resulted from a bug report from Charlie Slater
611  (cslater@imatek.com).
612
613- Check return status from malloc/calloc/etc.
614
615- Check return status from pcap_loop() so we can print an error and
616  exit with a bad status if there were problems.
617
618- Bail if ip option length is <= 0. Resulted from a bug report from
619  Darren Reed (darrenr@vitruvius.arbld.unimelb.edu.au).
620
621- Print out a little more information for sun rpc packets.
622
623- Add suport for Kerberos 4 thanks to John Hawkinson (jhawk@mit.edu).
624
625- Fixed the Fix EXTRACT_SHORT() and EXTRACT_LONG() macros (which were
626  wrong on little endian machines).
627
628- Fixed alignment bug in ipx_decode(). Thanks to Matt Crawford
629  (crawdad@fnal.gov).
630
631- Fix ntp_print() to not print garbage when the stratum is
632  "unspecified." Thanks to Deus Ex Machina (root@belle.bork.com).
633
634- Rewrote tcp options printer code to check for truncation. Added
635  selective acknowledgment case.
636
637- Fixed an endian bug in the ospf printer. Thanks to Jeffrey C Honig
638  (jch@bsdi.com)
639
640- Fix rip printer to handle 4.4 BSD sockaddr struct which only uses one
641  octet for the sa_family member. Thanks to Yoshitaka Tokugawa
642  (toku@dit.co.jp)
643
644- Don't checksum ip header if we don't have all of it. Thanks to John
645  Hawkinson (jhawk@mit.edu).
646
647- Print out hostnames if possible in egp printer. Thanks to Jeffrey
648  Honig (jhc@bsdi.com)
649
650
651v3.1a1 Wed May  3 19:21:11 PDT 1995
652
653- Include time.h when SVR4 is defined to avoid problems under Solaris
654  2.3.
655
656- Fix etheraddr_string() in the ETHER_SERVICE to return the saved
657  strings, not the local buffer. Thanks to Stefan Petri
658  (petri@ibr.cs.tu-bs.de).
659
660- Detect when pcap raises the snaplen (e.g. with snit). Print a warning
661  that the selected value was not used. Thanks to Pascal Hennequin
662  (Pascal.Hennequin@hugo.int-evry.fr).
663
664- Add a truncated packet test to print-nfs.c. Thanks to Pascal Hennequin.
665
666- BYTEORDER -> BYTE_ORDER Thanks to Terry Kennedy (terry@spcvxa.spc.edu).
667
668v3.0.3 Sun Oct  1 18:35:00 GMT 1995
669
670- Although there never was a 3.0.3 release, the linux boys cleverly
671  "released" one in late 1995.
672
673v3.0.2 Thu Apr 20 21:28:16 PDT 1995
674
675- Change configuration to not use gcc v2 flags with gcc v1.
676
677- Redo gmt2local() so that it works under BSDI (which seems to return
678  an empty timezone struct from gettimeofday()). Based on report from
679  Terry Kennedy (terry@spcvxa.spc.edu).
680
681- Change configure to recognize IP[0-9]* as "mips" SGI hardware. Based
682  on report from Mark Andrews (mandrews@alias.com).
683
684- Don't pass cc flags to gcc. Resulted from a bug report from Rainer
685  Orth (ro@techfak.uni-bielefeld.de).
686
687- Fixed printout of connection id for uncompressed tcp slip packets.
688  Resulted from a bug report from Richard Stevens (rstevens@noao.edu).
689
690- Hack around deficiency in Ultrix's make.
691
692- Add ETHERTYPE_TRAIL define which is missing from irix5.
693
694v3.0.1 Wed Aug 31 22:42:26 PDT 1994
695
696- Fix problems with gcc2 vs. malloc() and read() prototypes under SunOS 4.
697
698v3.0 Mon Jun 20 19:23:27 PDT 1994
699
700- Added support for printing tcp option timestamps thanks to
701  Mark Andrews (mandrews@alias.com).
702
703- Reorganize protocol dumpers to take const pointers to packets so they
704  never change the contents (i.e., they used to do endian conversions
705  in place).  Previously, whenever more than one pass was taken over
706  the packet, the packet contents would be dumped incorrectly (i.e.,
707  the output form -x would be wrong on little endian machines because
708  the protocol dumpers would modify the data).  Thanks to Charles Hannum
709  (mycroft@gnu.ai.mit.edu) for reporting this problem.
710
711- Added support for decnet protocol dumping thanks to Jeff Mogul
712  (mogul@pa.dec.com).
713
714- Fix bug that caused length of packet to be incorrectly printed
715  (off by ether header size) for unknown ethernet types thanks
716  to Greg Miller (gmiller@kayak.mitre.org).
717
718- Added support for IPX protocol dumping thanks to Brad Parker
719  (brad@fcr.com).
720
721- Added check to verify IP header checksum under -v thanks to
722  Brad Parker (brad@fcr.com).
723
724- Move packet capture code to new libpcap library (which is
725  packaged separately).
726
727- Prototype everything and assume an ansi compiler.
728
729- print-arp.c: Print hardware ethernet addresses if they're not
730  what we expect.
731
732- print-bootp.c: Decode the cmu vendor field. Add RFC1497 tags.
733  Many helpful suggestions from Gordon Ross (gwr@jericho.mc.com).
734
735- print-fddi.c: Improvements. Thanks to Jeffrey Mogul
736  (mogul@pa.dec.com).
737
738- print-icmp.c: Byte swap netmask before printing. Thanks to
739  Richard Stevens (rstevens@noao.edu). Print icmp type when unknown.
740
741- print-ip.c: Print the inner ip datagram of ip-in-ip encapsulated packets.
742  By default, only the inner packet is dumped, appended with the token
743  "(encap)".  Under -v, both the inner and output packets are dumped
744  (on the same line).  Note that the filter applies to the original packet,
745  not the encapsulated packet.  So if you run tcpdump on a net with an
746  IP Multicast tunnel, you cannot filter out the datagrams using the
747  conventional syntax.  (You can filter away all the ip-in-ip traffic
748  with "not ip proto 4".)
749
750- print-nfs.c: Keep pending rpc's in circular table. Add generic
751  nfs header and remove os dependences. Thanks to Jeffrey Mogul.
752
753- print-ospf.c: Improvements. Thanks to Jeffrey Mogul.
754
755- tcpdump.c: Add -T flag allows interpretation of "vat", "wb", "rpc"
756  (sunrpc) and rtp packets. Added "inbound" and "outbound" keywords
757  Add && and || operators
758
759v2.2.1 Tue Jun 6 17:57:22 PDT 1992
760
761- Fix bug with -c flag.
762
763v2.2 Fri May 22 17:19:41 PDT 1992
764
765- savefile.c: Remove hack that shouldn't have been exported. Add
766  truncate checks.
767
768- Added the 'icmp' keyword.  For example, 'icmp[0] != 8 and icmp[0] != 0'
769  matches non-echo/reply ICMP packets.
770
771- Many improvements to filter code optimizer.
772
773- Added 'multicast' keyword and extended the 'broadcast' keyword can now be
774  so that protocol qualifications are allowed. For example, "ip broadcast"
775  and "ether multicast" are valid filters.
776
777- Added support for monitoring the loopback interface (i.e. 'tcpdump -i lo').
778  Jeffrey Honig (jch@MITCHELL.CIT.CORNELL.EDU) contributed the kernel
779  patches to netinet/if_loop.c.
780
781- Added support for the Ungermann-Bass Ethernet on IBM/PC-RTs running AOS.
782  Contact Jeffrey Honig (jch@MITCHELL.CIT.CORNELL.EDU) for the diffs.
783
784- Added EGP and OSPF printers, thanks to Jeffrey Honig.
785
786v2.1 Tue Jan 28 11:00:14 PST 1992
787
788- Internal release (never publically exported).
789
790v2.0.1 Sun Jan 26 21:10:10 PDT
791
792- Various byte ordering fixes.
793
794- Add truncation checks.
795
796- inet.c: Support BSD style SIOCGIFCONF.
797
798- nametoaddr.c: Handle multi addresses for single host.
799
800- optimize.c: Rewritten.
801
802- pcap-bpf.c: don't choke when we get ptraced. only set promiscuous
803  for broadcast nets.
804
805- print-atal.c: Fix an alignment bug (thanks to
806  stanonik@nprdc.navy.mil) Add missing printf() argument.
807
808- print-bootp.c: First attempt at decoding the vendor buffer.
809
810- print-domain.c: Fix truncation checks.
811
812- print-icmp.c: Calculate length of packets from the ip header.
813
814- print-ip.c: Print frag id in decimal (so it's easier to match up
815  with non-frags). Add support for ospf, egp and igmp.
816
817- print-nfs.c: Lots of changes.
818
819- print-ntp.c: Make some verbose output depend on -v.
820
821- print-snmp.c: New version from John LoVerso.
822
823- print-tcp.c: Print rfc1072 tcp options.
824
825- tcpdump.c: Print "0x" prefix for %x formats. Always print 6 digits
826  (microseconds) worth of precision. Fix uid bugs.
827
828- A packet dumper has been added (thanks to Jeff Mogul of DECWRL).
829  With this option, you can create an architecture independent binary
830  trace file in real time, without the overhead of the packet printer.
831  At a later time, the packets can be filtered (again) and printed.
832
833- BSD is supported.  You must have BPF in your kernel.
834  Since the filtering is now done in the kernel, fewer packets are
835  dropped.  In fact, with BPF and the packet dumper option, a measly
836  Sun 3/50 can keep up with a busy network.
837
838- Compressed SLIP packets can now be dumped, provided you use our
839  SLIP software and BPF.  These packets are dumped as any other IP
840  packet; the compressed headers are dumped with the '-e' option.
841
842- Machines with little-endian byte ordering are supported (thanks to
843  Jeff Mogul).
844
845- Ultrix 4.0 is supported (also thanks to Jeff Mogul).
846
847- IBM RT and Stanford Enetfilter support has been added by
848  Rayan Zachariassen <rayan@canet.ca>.  Tcpdump has been tested under
849  both the vanilla Enetfilter interface, and the extended interface
850  (#ifdef'd by IBMRTPC) present in the MERIT version of the Enetfilter.
851
852- TFTP packets are now printed (requests only).
853
854- BOOTP packets are now printed.
855
856- SNMP packets are now printed. (thanks to John LoVerso of Xylogics).
857
858- Sparc architectures, including the Sparcstation-1, are now
859  supported thanks to Steve McCanne and Craig Leres.
860
861- SunOS 4 is now supported thanks to Micky Liu of Columbia
862  University (micky@cunixc.cc.columbia.edu).
863
864- IP options are now printed.
865
866- RIP packets are now printed.
867
868- There's a -v flag that prints out more information than the
869  default (e.g., it will enable printing of IP ttl, tos and id)
870  and -q flag that prints out less (e.g., it will disable
871  interpretation of AppleTalk-in-UDP).
872
873- The grammar has undergone substantial changes (if you have an
874  earlier version of tcpdump, you should re-read the manual
875  entry).
876
877  The most useful change is the addition of an expression
878  syntax that lets you filter on arbitrary fields or values in the
879  packet.  E.g., "ip[0] > 0x45" would print only packets with IP
880  options, "tcp[13] & 3 != 0" would print only TCP SYN and FIN
881  packets.
882
883  The most painful change is that concatenation no longer means
884  "and" -- e.g., you have to say "host foo and port bar" instead
885  of "host foo port bar".  The up side to this down is that
886  repeated qualifiers can be omitted, making most filter
887  expressions shorter.  E.g., you can now say "ip host foo and
888  (bar or baz)" to look at ip traffic between hosts foo and bar or
889  between hosts foo and baz.  [The old way of saying this was "ip
890  host foo and (ip host bar or ip host baz)".]
891
892v2.0 Sun Jan 13 12:20:40 PST 1991
893
894- Initial public release.
895