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