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