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