]> The Tcpdump Group git mirrors - tcpdump/blob - CHANGES
908082d23f868b85264152930c693bc9367d1ba6
[tcpdump] / CHANGES
1 Monthday, Month DD, YYYY by gharris and denis
2 Summary for 5.0.0 tcpdump release (so far!)
3 Refine protocol decoding for:
4 OpenFlow 1.0: Fix indentation of PORT_MOD, improve handling of
5 some lengths, and fix handling of snapend.
6 RIP: Make a couple trivial protocol updates.
7 NetFlow: Use tcp_flag_values[] for TCP flags.
8 ZMTP: Replace custom code with bittok2str().
9 BFD: Add support for S-BFD and spell LAG in uppercase.
10 IEEE 802.11: include the Mesh ID field while printing management
11 frames.
12 DNS: sync resource types with IANA.
13 MPTCP: parse MPC data_len field, print flags from MP_CAPABLE option.
14 ICMP: add dissector for ICMP Interface Identification Object
15 BGP: Parse BGP extended message support capability
16 BGP: Deprecate DPA, ADVERTISER and RCID_PATH path attributes
17 BGP: Print Enhanced route refresh capability
18 BGP: Print enhanced route refresh message subtype
19 BGP: Parse rfc9072 (Extended Optional Parameters Length for BGP OPEN Message)
20 BGP: Add support for BFD cease subcode
21 BGP: Add support for Hard Reset notification and GR N flag
22 BGP: Handle ORF in Route-Refresh messages
23 BGP: add dissector for BGPsec capability and path
24 BGP: Add Origin Validation State extended community
25 BGP: Add support for BGP Role capability and OTC attribute
26 User interface:
27 Add optional unit suffix on -C file size.
28 Add --print-sampling to print every Nth packet instead of all.
29 Print the supported time stamp types (-J) to stdout instead of stderr.
30 Print the list of data link types (-L) to stdout instead of stderr.
31 Source code:
32 Use %zu when printing a sizeof to squelch compiler warnings
33 (FIXME: somebody please wrap the line below just before the release)
34 AODV, AppleTalk, BOOTP, CHDLC, DCCP, EGP, EIGRP, ForCES, Geneve, GRE, Juniper, L2TP, NetFlow, NTP, OLSR, PGM, RIP, RSVP, SCTP, SNMP, TCP, UDP, vsock: Modernize packet parsing style
35 DCCP, EGP: Replace custom code with tok2str()
36 UDP: Clean up address and port printing.
37 AppleTalk: Declutter appletalk.h.
38 Introduce new ND_ICHECK*() macros to deduplicate more code.
39 IEEE 802.11: Simplify handle_action().
40 RPKI-Router: Refine length and bounds checks.
41 Building and testing:
42 Add a configure option to help debugging (--enable-instrument-functions)
43
44 TBD
45 Summary for 4.99.3 tcpdump release (so far!)
46 Building and testing:
47 cmake: Update the minimum required version to 2.8.12 (except Windows).
48 CI: Introduce and use TCPDUMP_CMAKE_TAINTED.
49 Makefile.in: Add the releasecheck target.
50 Makefile.in: Add "make -s install" in the releasecheck target.
51 Cirrus CI: Run the "make releasecheck" command in the Linux task.
52 Makefile.in: Add the whitespacecheck target.
53 Cirrus CI: Run the "make whitespacecheck" command in the Linux task.
54 Source code:
55 smbutil.c: Replace obsolete function call (asctime)
56
57 Saturday, December 31, 2022 / The Tcpdump Group
58 Summary for 4.99.2 tcpdump release
59 Updated printers:
60 BGP: Update cease notification decoding to RFC 9003.
61 BGP: decode BGP link-bandwidth extended community properly.
62 BGP: Fix parsing the AIGP attribute
63 BGP: make sure the path attributes don't go past the end of the packet.
64 BGP: Shutdown message can be up to 255 bytes length according to rfc9003
65 DSA: correctly determine VID.
66 EAP: fix some length checks and output issues.
67 802.11: Fix the misleading comment regarding "From DS", "To DS" Frame
68 Control Flags.
69 802.11: Fetch the CF and TIM IEs a field at a time.
70 802.15.4, BGP, LISP: fix some length checks, compiler warnings,
71 and undefined behavior warnings.
72 PFLOG: handle LINKTYPE_PFLOG/DLT_PFLOG files from all OSes on all
73 OSes.
74 RRCP: support more Realtek protocols than just RRCP.
75 MPLS: show the EXP field as TC, as per RFC 5462.
76 ICMP: redo MPLS Extension code as general ICMP Extension code.
77 VQP: Do not print unknown error codes twice.
78 Juniper: Add some bounds checks.
79 Juniper: Don't treat known DLT_ types as "Unknown".
80 lwres: Fix a length check, update a variable type.
81 EAP: Fix some undefined behaviors at runtime.
82 Ethernet: Rework the length checks, add a length check.
83 IPX: Add two length checks.
84 Zephyr: Avoid printing non-ASCII characters.
85 VRRP: Print the protocol name before any GET_().
86 DCCP: Get rid of trailing commas in lists.
87 Juniper: Report invalid packets as invalid, not truncated.
88 IPv6: Remove an obsolete code in an always-false #if wrapper.
89 ISAKMP: Use GET_U_1() to replace a direct dereference.
90 RADIUS: Use GET_U_1() to replace a direct dereference.
91 TCP: Fix an invalid check.
92 RESP: Fix an invalid check.
93 RESP: Remove an unnecessary test.
94 Arista: Refine the output format and print HwInfo.
95 sFlow: add support for IPv6 agent, add a length check.
96 VRRP: add support for IPv6.
97 OSPF: Update to match the Router Properties registry.
98 OSPF: Remove two unnecessary dereferences.
99 OSPF: Add support bit Nt RFC3101.
100 OSPFv3: Remove two unnecessary dereferences.
101 ICMPv6: Fix output for Router Renumbering messages.
102 ICMPv6: Fix the Node Information flags.
103 ICMPv6: Remove an unused macro and extra blank lines.
104 ICMPv6: Add a length check in the rpl_dio_print() function.
105 ICMPv6: Use GET_IP6ADDR_STRING() in the rpl_dio_print() function.
106 IPv6: Add some checks for the Hop-by-Hop Options header
107 IPv6: Add a check for the Jumbo Payload Hop-by-Hop option.
108 NFS: Fix the format for printing an unsigned int
109 PTP: fix printing of the correction fields
110 PTP: Use ND_LCHECK_U for checking invalid length.
111 WHOIS: Add its own printer source file and printer function
112 MPTCP: print length before subtype inside MPTCP options
113 ESP: Add a workaround to a "use-of-uninitialized-value".
114 PPP: Add tests to avoid incorrectly re-entering ppp_hdlc().
115 PPP: Don't process further if protocol is unknown (-e option).
116 PPP: Change the pointer to packet data.
117 ZEP: Add three length checks.
118 Add some const qualifiers.
119 Building and testing:
120 Update config.guess and config.sub.
121 Use AS_HELP_STRING macro instead of AC_HELP_STRING.
122 Handle some Autoconf/make errors better.
123 Fix an error when cross-compiling.
124 Use "git archive" for the "make releasetar" process.
125 Remove the release candidate rcX targets.
126 Mend "make check" on Solaris 9 with Autoconf.
127 Address assorted compiler warnings.
128 Fix auto-enabling of Capsicum on FreeBSD with Autoconf.
129 Treat "msys" as Windows for test exit statuses.
130 Clean up some help messages in configure.
131 Use unified diff by default.
132 Remove awk code from mkdep.
133 Fix configure test errors with Clang 15
134 CMake: Prevent stripping of the RPATH on installation.
135 AppVeyor CI: update Npcap site, update to 1.12 SDK.
136 Cirrus CI: Use the same configuration as for the main branch.
137 CI: Add back running tcpdump -J/-L and capture, now with Cirrus VMs.
138 Remove four test files (They are now in the libpcap tests directory).
139 On Solaris, for 64-bit builds, use the 64-bit pcap-config.
140 Tell CMake not to check for a C++ compiler.
141 CMake: Add a way to request -Werror and equivalents.
142 configure: Special-case macOS /usr/bin/pcap-config as we do in CMake.
143 configure: Use pcap-config --static-pcap-only if available.
144 configure: Use ac_c_werror_flag to force unknown compiler flags to fail.
145 configure: Use AC_COMPILE_IFELSE() and AC_LANG_SOURCE() for testing
146 flags.
147 Run the test that fails on OpenBSD only if we're not on OpenBSD.
148 Source code:
149 Fix some snapend-changing routines to protect against pointer
150 underflow.
151 Use __func__ from C99 in some function calls.
152 Memory allocator: Update nd_add_alloc_list() to a static function.
153 addrtoname.c: Fix two invalid tests.
154 Use more S_SUCCESS and S_ERR_HOST_PROGRAM in main().
155 Add some comments about "don't use GET_IP6ADDR_STRING()".
156 Assign ndo->ndo_packetp in pretty_print_packet().
157 Add ND_LCHECKMSG_U, ND_LCHECK_U, ND_LCHECKMSG_ZU and ND_LCHECK_ZU macros.
158 Update tok2strbuf() to a static function.
159 netdissect.h: Keep the link-layer dissectors names sorted.
160 setsignal(): Set SA_RESTART on non-lethal signals (REQ_INFO, FLUSH_PCAP)
161 to avoid corrupting binary pcap output.
162 Use __builtin_unreachable().
163 Fail if nd_push_buffer() or nd_push_snaplen() fails.
164 Improve code style and fix many typos.
165 Documentation:
166 Some man page cleanups.
167 Update the print interface for the packet count to stdout.
168 Note that we require compilers to support at least some of C99.
169 Update AIX and Solaris-related specifics.
170 INSTALL.txt: Add doc/README.*, delete the deleted win32 directory.
171 Update README.md and README.Win32.md.
172 Update some comments with new RFC numbers.
173
174 Wednesday, June 9, 2021 by gharris
175 Summary for 4.99.1 tcpdump release
176 Source code:
177 Squelch some compiler warnings
178 ICMP: Update the snapend for some nested IP packets.
179 MACsec: Update the snapend thus the ICV field is not payload
180 for the caller.
181 EIGRP: Fix packet header fields
182 SMB: Disable printer by default in CMake builds
183 OLSR: Print the protocol name even if the packet is invalid
184 MSDP: Print ": " before the protocol name
185 ESP: Remove padding, padding length and next header from the buffer
186 DHCPv6: Update the snapend for nested DHCPv6 packets
187 OpenFlow 1.0: Get snapend right for nested frames.
188 TCP: Update the snapend before decoding a MPTCP option
189 Ethernet, IEEE 802.15.4, IP, L2TP, TCP, ZEP: Add bounds checks
190 ForCES: Refine SPARSEDATA-TLV length check.
191 ASCII/hex: Use nd_trunc_longjmp() in truncation cases
192 GeoNet: Add a ND_TCHECK_LEN() call
193 Replace ND_TCHECK_/memcpy() pairs with GET_CPY_BYTES().
194 BGP: Fix overwrites of global 'astostr' temporary buffer
195 ARP: fix overwrites of static buffer in q922_string().
196 Frame Relay: have q922_string() handle errors better.
197 Building and testing:
198 Rebuild configure script when building release
199 Fix "make clean" for out-of-tree autotools builds
200 CMake: add stuff from CMAKE_PREFIX_PATH to PKG_CONFIG_PATH.
201 Documentation:
202 man: Update a reference as www.cifs.org is gone. [skip ci]
203 man: Update DNS sections
204 Solaris:
205 Fix a compile error with Sun C
206
207 Wednesday, December 30, 2020, by mcr@sandelman.ca, denis and fxl.
208 Summary for 4.99.0 tcpdump release
209 CVE-2018-16301: For the -F option handle large input files safely.
210 Improve the contents, wording and formatting of the man page.
211 Print unsupported link-layer protocol packets in hex.
212 Add support for new network protocols and DLTs: Arista, Autosar SOME/IP,
213 Broadcom LI and Ethernet switches tag, IEEE 802.15.9, IP-over-InfiniBand
214 (IPoIB), Linux SLL2, Linux vsockmon, MACsec, Marvell Distributed Switch
215 Architecture, OpenFlow 1.3, Precision Time Protocol (PTP), SSH, WHOIS,
216 ZigBee Encapsulation Protocol (ZEP).
217 Make protocol-specific updates for: AH, DHCP, DNS, ESP, FRF.16, HNCP,
218 ICMP6, IEEE 802.15.4, IPv6, IS-IS, Linux SLL, LLDP, LSP ping, MPTCP, NFS,
219 NSH, NTP, OSPF, OSPF6, PGM, PIM, PPTP, RADIUS, RSVP, Rx, SMB, UDLD,
220 VXLAN-GPE.
221 User interface:
222 Make SLL2 the default for Linux "any" pseudo-device.
223 Add --micro and --nano shorthands.
224 Add --count to print a counter only instead of decoding.
225 Add --print, to cause packet printing even with -w.
226 Add support for remote capture if libpcap supports it.
227 Display the "wireless" flag and connection status.
228 Flush the output packet buffer on a SIGUSR2.
229 Add the snapshot length to the "reading from file ..." message.
230 Fix local time printing (DST offset in timestamps).
231 Allow -C arguments > 2^31-1 GB if they can fit into a long.
232 Handle very large -f files by rejecting them.
233 Report periodic stats only when safe to do so.
234 Print the number of packets captured only as often as necessary.
235 With no -s, or with -s 0, don't specify the snapshot length with newer
236 versions of libpcap.
237 Improve version and usage message printing.
238 Building and testing:
239 Install into bindir, not sbindir.
240 autoconf: replace --with-system-libpcap with --disable-local-libpcap.
241 Require the compiler to support C99.
242 Better detect and use various C compilers and their features.
243 Add CMake as the second build system.
244 Make out-of-tree builds more reliable.
245 Use pkg-config to detect libpcap if available.
246 Improve Windows support.
247 Add more tests and improve the scripts that run them.
248 Test both with "normal" and "x87" floating-point.
249 Eliminate dependency on libdnet.
250 FreeBSD:
251 Print a proper error message about monitor mode VAP.
252 Use libcasper if available.
253 Fix failure to capture on RDMA device.
254 Include the correct capsicum header.
255 Source code:
256 Start the transition to longjmp() for packet truncation handling.
257 Introduce new helper functions, including GET_*(), nd_print_protocol(),
258 nd_print_invalid(), nd_print_trunc(), nd_trunc_longjmp() and others.
259 Put integer signedness right in many cases.
260 Introduce nd_uint*, nd_mac_addr, nd_ipv4 and nd_ipv6 types to fix
261 alignment issues, especially on SPARC.
262 Fix many C compiler, Coverity, UBSan and cppcheck warnings.
263 Fix issues detected with AddressSanitizer.
264 Remove many workarounds for older compilers and OSes.
265 Add a sanity check on packet header length.
266 Add and remove plenty of bounds checks.
267 Clean up pcap_findalldevs() call to find the first interface.
268 Use a short timeout, rather than immediate mode, for text output.
269 Handle DLT_ENC files *not* written on the same OS and byte-order host.
270 Add, and use, macros to do locale-independent case mapping.
271 Use a table instead of getprotobynumber().
272 Get rid of ND_UNALIGNED and ND_TCHECK().
273 Make roundup2() generally available.
274 Resync SMI list against Wireshark.
275 Fix many typos.
276
277 Friday, September 20, 2019, by mcr@sandelman.ca
278 A huge thank you to Denis, Francois-Xavier and Guy who did much of the heavy lifting.
279 Summary for 4.9.3 tcpdump release
280 Fix buffer overflow/overread vulnerabilities:
281 CVE-2017-16808 (AoE)
282 CVE-2018-14468 (FrameRelay)
283 CVE-2018-14469 (IKEv1)
284 CVE-2018-14470 (BABEL)
285 CVE-2018-14466 (AFS/RX)
286 CVE-2018-14461 (LDP)
287 CVE-2018-14462 (ICMP)
288 CVE-2018-14465 (RSVP)
289 CVE-2018-14881 (BGP)
290 CVE-2018-14464 (LMP)
291 CVE-2018-14463 (VRRP)
292 CVE-2018-14467 (BGP)
293 CVE-2018-10103 (SMB - partially fixed, but SMB printing disabled)
294 CVE-2018-10105 (SMB - too unreliably reproduced, SMB printing disabled)
295 CVE-2018-14880 (OSPF6)
296 CVE-2018-16451 (SMB)
297 CVE-2018-14882 (RPL)
298 CVE-2018-16227 (802.11)
299 CVE-2018-16229 (DCCP)
300 CVE-2018-16230 (BGP)
301 CVE-2018-16452 (SMB)
302 CVE-2018-16300 (BGP)
303 CVE-2018-16228 (HNCP)
304 CVE-2019-15166 (LMP)
305 CVE-2019-15167 (VRRP)
306 Fix for cmdline argument/local issues:
307 CVE-2018-14879 (tcpdump -V)
308
309 Sunday September 3, 2017 denis@ovsienko.info
310 Summary for 4.9.2 tcpdump release
311 Do not use getprotobynumber() for protocol name resolution. Do not do
312 any protocol name resolution if -n is specified.
313 Improve errors detection in the test scripts.
314 Fix a segfault with OpenSSL 1.1 and improve OpenSSL usage.
315 Clean up IS-IS printing.
316 Fix buffer overflow vulnerabilities:
317 CVE-2017-11543 (SLIP)
318 CVE-2017-13011 (bittok2str_internal)
319 Fix infinite loop vulnerabilities:
320 CVE-2017-12989 (RESP)
321 CVE-2017-12990 (ISAKMP)
322 CVE-2017-12995 (DNS)
323 CVE-2017-12997 (LLDP)
324 Fix buffer over-read vulnerabilities:
325 CVE-2017-11541 (safeputs)
326 CVE-2017-11542 (PIMv1)
327 CVE-2017-12893 (SMB/CIFS)
328 CVE-2017-12894 (lookup_bytestring)
329 CVE-2017-12895 (ICMP)
330 CVE-2017-12896 (ISAKMP)
331 CVE-2017-12897 (ISO CLNS)
332 CVE-2017-12898 (NFS)
333 CVE-2017-12899 (DECnet)
334 CVE-2017-12900 (tok2strbuf)
335 CVE-2017-12901 (EIGRP)
336 CVE-2017-12902 (Zephyr)
337 CVE-2017-12985 (IPv6)
338 CVE-2017-12986 (IPv6 routing headers)
339 CVE-2017-12987 (IEEE 802.11)
340 CVE-2017-12988 (telnet)
341 CVE-2017-12991 (BGP)
342 CVE-2017-12992 (RIPng)
343 CVE-2017-12993 (Juniper)
344 CVE-2017-12994 (BGP)
345 CVE-2017-12996 (PIMv2)
346 CVE-2017-12998 (ISO IS-IS)
347 CVE-2017-12999 (ISO IS-IS)
348 CVE-2017-13000 (IEEE 802.15.4)
349 CVE-2017-13001 (NFS)
350 CVE-2017-13002 (AODV)
351 CVE-2017-13003 (LMP)
352 CVE-2017-13004 (Juniper)
353 CVE-2017-13005 (NFS)
354 CVE-2017-13006 (L2TP)
355 CVE-2017-13007 (Apple PKTAP)
356 CVE-2017-13008 (IEEE 802.11)
357 CVE-2017-13009 (IPv6 mobility)
358 CVE-2017-13010 (BEEP)
359 CVE-2017-13012 (ICMP)
360 CVE-2017-13013 (ARP)
361 CVE-2017-13014 (White Board)
362 CVE-2017-13015 (EAP)
363 CVE-2017-11543 (SLIP)
364 CVE-2017-13016 (ISO ES-IS)
365 CVE-2017-13017 (DHCPv6)
366 CVE-2017-13018 (PGM)
367 CVE-2017-13019 (PGM)
368 CVE-2017-13020 (VTP)
369 CVE-2017-13021 (ICMPv6)
370 CVE-2017-13022 (IP)
371 CVE-2017-13023 (IPv6 mobility)
372 CVE-2017-13024 (IPv6 mobility)
373 CVE-2017-13025 (IPv6 mobility)
374 CVE-2017-13026 (ISO IS-IS)
375 CVE-2017-13027 (LLDP)
376 CVE-2017-13028 (BOOTP)
377 CVE-2017-13029 (PPP)
378 CVE-2017-13030 (PIM)
379 CVE-2017-13031 (IPv6 fragmentation header)
380 CVE-2017-13032 (RADIUS)
381 CVE-2017-13033 (VTP)
382 CVE-2017-13034 (PGM)
383 CVE-2017-13035 (ISO IS-IS)
384 CVE-2017-13036 (OSPFv3)
385 CVE-2017-13037 (IP)
386 CVE-2017-13038 (PPP)
387 CVE-2017-13039 (ISAKMP)
388 CVE-2017-13040 (MPTCP)
389 CVE-2017-13041 (ICMPv6)
390 CVE-2017-13042 (HNCP)
391 CVE-2017-13043 (BGP)
392 CVE-2017-13044 (HNCP)
393 CVE-2017-13045 (VQP)
394 CVE-2017-13046 (BGP)
395 CVE-2017-13047 (ISO ES-IS)
396 CVE-2017-13048 (RSVP)
397 CVE-2017-13049 (Rx)
398 CVE-2017-13050 (RPKI-Router)
399 CVE-2017-13051 (RSVP)
400 CVE-2017-13052 (CFM)
401 CVE-2017-13053 (BGP)
402 CVE-2017-13054 (LLDP)
403 CVE-2017-13055 (ISO IS-IS)
404 CVE-2017-13687 (Cisco HDLC)
405 CVE-2017-13688 (OLSR)
406 CVE-2017-13689 (IKEv1)
407 CVE-2017-13690 (IKEv2)
408 CVE-2017-13725 (IPv6 routing headers)
409
410 Sunday July 23, 2017 denis@ovsienko.info
411 Summary for 4.9.1 tcpdump release
412 CVE-2017-11108/Fix bounds checking for STP.
413 Make assorted documentation updates and fix a few typos in tcpdump output.
414 Fixup -C for file size >2GB (GH #488).
415 Show AddressSanitizer presence in version output.
416 Fix a bug in test scripts (exposed in GH #613).
417 On FreeBSD adjust Capsicum capabilities for netmap.
418 On Linux fix a use-after-free when the requested interface does not exist.
419
420 Wednesday January 18, 2017 devel.fx.lebail@orange.fr
421 Summary for 4.9.0 tcpdump release
422 General updates:
423 Fix some heap overflows found with American Fuzzy Lop by Hanno Boeck and others
424 (More information in the log with CVE-2016-* and CVE-2017-*)
425 Change the way protocols print link-layer addresses (Fix heap overflows
426 in CALM-FAST and GeoNetworking printers)
427 Pass correct caplen value to ether_print() and some other functions
428 Fix lookup_nsap() to match what isonsap_string() expects
429 Clean up relative time stamp printing (Fix an array overflow)
430 Fix some alignment issues with GCC on Solaris 10 SPARC
431 Add some ND_TTEST_/ND_TCHECK_ macros to simplify writing bounds checks
432 Add a fn_printztn() which returns the number of bytes processed
433 Add nd_init() and nd_cleanup() functions. Improve libsmi support
434 Add CONTRIBUTING file
435 Add a summary comment in all printers
436 Compile with more warning options in devel mode if supported (-Wcast-qual, ...)
437 Fix some leaks found by Valgrind/Memcheck
438 Fix a bunch of de-constifications
439 Squelch some Coverity warnings and some compiler warnings
440 Update Coverity and Travis-CI setup
441 Update Visual Studio files
442
443 Frontend:
444 Fix capsicum support to work with zerocopy buffers in bpf
445 Try opening interfaces by name first, then by name-as-index
446 Work around pcap_create() failures fetching time stamp type lists
447 Fix a segmentation fault with 'tcpdump -J'
448 Improve addrtostr6() bounds checking
449 Add exit_tcpdump() function
450 Don't drop CAP_SYS_CHROOT before chrooting
451 Fixes issue where statistics not reported when -G and -W options used
452
453 Updated printers:
454 802.11: Beginnings of 11ac radiotap support
455 802.11: Check the Protected bit for management frames
456 802.11: Do bounds checking on last_presentp before dereferencing it (Fix a heap overflow)
457 802.11: Fix the radiotap printer to handle the special bits correctly
458 802.11: If we have the MCS field, it's 11n
459 802.11: Only print unknown frame type or subtype messages once
460 802.11: Radiotap dBm values get printed as dB; Update a test output accordingly
461 802.11: Source and destination addresses were backwards
462 AH: Add a bounds check
463 AH: Report to our caller that dissection failed if a bounds check fails
464 AP1394: Print src > dst, not dst > src
465 ARP: Don't assume the target hardware address is <= 6 octets long (Fix a heap overflow)
466 ATALK: Add bounds and length checks (Fix heap overflows)
467 ATM: Add some bounds checks (Fix a heap overflow)
468 ATM: Fix an incorrect bounds check
469 BFD: Update specification from draft to RFC 5880
470 BFD: Update to print optional authentication field
471 BGP: Add support for the AIGP attribute (RFC7311)
472 BGP: Print LARGE_COMMUNITY Path Attribute
473 BGP: Update BGP numbers from IANA; Print minor values for FSM notification
474 BOOTP: Add a bounds check
475 Babel: Add decoder for source-specific extension
476 CDP: Filter out non-printable characters
477 CFM: Fixes to match the IEEE standard, additional bounds and length checks
478 CSLIP: Add more bounds checks (Fix a heap overflow)
479 ClassicalIPoATM: Add a bounds check on LLC+SNAP header (Fix a heap overflow)
480 DHCP: Fix MUDURL and TZ options
481 DHCPv6: Process MUDURL and TZ options
482 DHCPv6: Update Status Codes with RFCs/IANA names
483 DNS: Represent the "DNSSEC OK" bit as "DO" instead of "OK". Add a test case
484 DTP: Improve packet integrity checks
485 EGP: Fix bounds checks
486 ESP: Don't use OpenSSL_add_all_algorithms() in OpenSSL 1.1.0 or later
487 Ethernet: Add some bounds checking before calling isoclns_print (Fix a heap overflow)
488 Ethernet: Print the Length/Type field as length when needed
489 FDDI: Fix -e output for FDDI
490 FR: Add some packet-length checks and improve Q.933 printing (Fix heap overflows)
491 GRE: Add some bounds checks (Fix heap overflows)
492 Geneve: Fix error message with invalid option length; Update list option classes
493 HNCP: Fix incorrect time interval format. Fix handling of IPv4 prefixes
494 ICMP6: Fetch a 32-bit big-endian quantity with EXTRACT_32BITS()
495 IGMP: Add a length check
496 IP: Add a bounds check (Fix a heap overflow)
497 IP: Check before fetching the protocol version (Fix a heap overflow)
498 IP: Don't try to dissect if IP version != 4 (Fix a heap overflow)
499 IP: Stop processing IPPROTO_ values once we hit IPPROTO_IPCOMP
500 IPComp: Check whether we have the CPI before we fetch it (Fix a heap overflow)
501 IPoFC: Fix -e output (IP-over-Fibre Channel)
502 IPv6: Don't overwrite the destination IPv6 address for routing headers
503 IPv6: Fix header printing
504 IPv6: Stop processing IPPROTO_ values once we hit IPPROTO_IPCOMP
505 ISAKMP: Clean up parsing of IKEv2 Security Associations
506 ISOCLNS/IS-IS: Add support for Purge Originator Identifier (RFC6232) and test cases
507 ISOCLNS/IS-IS: Don't overwrite packet data when checking the signature
508 ISOCLNS/IS-IS: Filter out non-printable characters
509 ISOCLNS/IS-IS: Fix segmentation faults
510 ISOCLNS/IS-IS: Have signature_verify() do the copying and clearing
511 ISOCLNS: Add some bounds checks
512 Juniper: Make sure a Juniper header TLV isn't bigger than what's left in the packet (Fix a heap overflow)
513 LLC/SNAP: With -e, print the LLC header before the SNAP header; without it, cut the SNAP header
514 LLC: Add a bounds check (Fix a heap overflow)
515 LLC: Clean up printing of LLC packets
516 LLC: Fix the printing of RFC 948-style IP packets
517 LLC: Skip the LLC and SNAP headers with -x for 802.11 and some other protocols
518 LLDP: Implement IANA OUI and LLDP MUD option
519 MPLS LSP ping: Update printing for RFC 4379, bug fixes, more bounds checks
520 MPLS: "length" is now the *remaining* packet length
521 MPLS: Add bounds and length checks (Fix a heap overflow)
522 NFS: Don't assume the ONC RPC header is nicely aligned
523 NFS: Don't overflow the Opaque_Handle buffer (Fix a segmentation fault)
524 NFS: Don't run past the end of an NFSv3 file handle
525 OLSR: Add a test to cover a HNA sgw case
526 OLSR: Fix 'Advertised networks' count
527 OLSR: Fix printing of smart-gateway HNAs in IPv4
528 OSPF: Add a bounds check for the Hello packet options
529 OSPF: Do more bounds checking
530 OSPF: Fix a segmentation fault
531 OSPF: Fix printing 'ospf_topology_values' default
532 OTV: Add missing bounds checks
533 PGM: Print the formatted IP address, not the raw binary address, as a string
534 PIM: Add some bounds checking (Fix a heap overflow)
535 PIMv2: Fix checksumming of Register messages
536 PPP: Add some bounds checks (Fix a heap overflow)
537 PPP: Report invalid PAP AACK/ANAK packets
538 Q.933: Add a missing bounds check
539 RADIUS: Add Value 13 "VLAN" to Tunnel-Type attribute
540 RADIUS: Filter out non-printable characters
541 RADIUS: Translate UDP/1700 as RADIUS
542 RESP: Do better checking of RESP packets
543 RPKI-RTR: Add a return value check for "fn_printn" call
544 RPKI-RTR: Remove printing when truncated condition already detected
545 RPL: Fix 'Consistency Check' control code
546 RPL: Fix suboption print
547 RSVP: An INTEGRITY object in a submessage covers only the submessage
548 RSVP: Fix an infinite loop; Add bounds and length checks
549 RSVP: Fix some if statements missing brackets
550 RSVP: Have signature_verify() do the copying and clearing
551 RTCP: Add some bounds checks
552 RTP: Add some bounds checks, fix two segmentation faults
553 SCTP: Do more bounds checking
554 SFLOW: Fix bounds checking
555 SLOW: Fix bugs, add checks
556 SMB: Before fetching the flags2 field, make sure we have it
557 SMB: Do bounds checks on NBNS resource types and resource data lengths
558 SNMP: Clean up the "have libsmi but no modules loaded" case
559 SNMP: Clean up the object abbreviation list and fix the code to match them
560 SNMP: Do bounds checks when printing character and octet strings
561 SNMP: Improve ASN.1 bounds checks
562 SNMP: More bounds and length checks
563 STP: Add a bunch of bounds checks, and fix some printing (Fix heap overflows)
564 STP: Filter out non-printable characters
565 TCP: Add bounds and length checks for packets with TCP option 20
566 TCP: Correct TCP option Kind value for TCP Auth and add SCPS-TP
567 TCP: Fix two bounds checks (Fix heap overflows)
568 TCP: Make sure we have the data offset field before fetching it (Fix a heap overflow)
569 TCP: Put TCP-AO option decoding right
570 TFTP: Don't use strchr() to scan packet data (Fix a heap overflow)
571 Telnet: Add some bounds checks
572 TokenRing: Fix -e output
573 UDLD: Fix an infinite loop
574 UDP: Add a bounds check (Fix a heap overflow)
575 UDP: Check against the packet length first
576 VAT: Add some bounds checks
577 VTP: Add a test on Mgmt Domain Name length
578 VTP: Add bounds checks and filter out non-printable characters
579 VXLAN: Add a bound check and a test case
580 ZeroMQ: Fix an infinite loop
581
582 Tuesday October 25, 2016 mcr@sandelman.ca
583 Summary for 4.8.1 tcpdump release
584 Fix "-x" for Apple PKTAP and PPI packets
585 Improve separation frontend/backend (tcpdump/libnetdissect)
586 Fix display of timestamps with -tt, -ttt and -ttttt options
587 Add support for the Marvell Extended Distributed Switch Architecture header
588 Use PRIx64 to print a 64-bit number in hex.
589 Printer for HNCP (RFCs 7787 and 7788).
590 dagid is always an IPv6 address, not an opaque 128-bit string, and other fixes to RPL printer.
591 RSVP: Add bounds and length checks
592 OSPF: Do more bounds checking
593 Handle OpenSSL 1.1.x.
594 Initial support for the REdis Serialization Protocol known as RESP.
595 Add printing function for Generic Protocol Extension for VXLAN
596 draft-ietf-nvo3-vxlan-gpe-01
597 Network Service Header: draft-ietf-sfc-nsh-01
598 Don't recompile the filter if the new file has the same DLT.
599 Pass an adjusted struct pcap_pkthdr to the sub-printer.
600 Add three test cases for already fixed CVEs
601 CVE-2014-8767: OLSR
602 CVE-2014-8768: Geonet
603 CVE-2014-8769: AODV
604 Don't do the DDP-over-UDP heuristic first: GitHub issue #499.
605 Use the new debugging routines in libpcap.
606 Harmonize TCP source or destination ports tests with UDP ones
607 Introduce data types to use for integral values in packet structures.
608 RSVP: Fix an infinite loop
609 Support of Type 3 and Type 4 LISP packets.
610 Don't require IPv6 library support in order to support IPv6 addresses.
611 Many many changes to support libnetdissect usage.
612 Add a test that makes unaligned accesses: GitHub issue #478.
613 add a DNSSEC test case: GH #445 and GH #467.
614 BGP: add decoding of ADD-PATH capability
615 fixes to LLC header printing, and RFC948-style IP packets
616
617 Friday April 10, 2015 guy@alum.mit.edu
618 Summary for 4.7.4 tcpdump release
619 RPKI to Router Protocol: Fix Segmentation Faults and other problems
620 RPKI to Router Protocol: print strings with fn_printn()
621 wb: fix some bounds checks
622
623 Wednesday March 11, 2015 mcr@sandelman.ca
624 Summary for 4.7.3 tcpdump release
625 Capsicum fixes for FreeBSD 10
626
627 Tuesday March 10, 2015 mcr@sandelman.ca
628 Summary for 4.7.2 tcpdump release
629 DCCP: update Packet Types with RFC4340/IANA names
630 fixes for CVE-2015-0261: IPv6 mobility header check issue
631 fixes for CVE-2015-2153, 2154, 2155: kday packets
632
633 Friday Nov. 12, 2014 guy@alum.mit.edu
634 Summary for 4.7.0 tcpdump release
635 changes to hex printing of CDP packets
636 Fix PPI printing
637 Radius: update Packet Type Codes and Attribute Types with RFC/IANA names
638 Add a routine to print "text protocols", and add FTP/HTTP/SMTP/RTSP support.
639 improvements to telnet printer, even if not -v
640 omit length for bcp, print-tcp uses it
641 formatting fixes for a bunch of protocols
642 new bounds checks for a number of protocols
643 split netflow 1,6, and 6 dissector up.
644 added geneve dissector
645 CVE-2014-9140 PPP dissector fixed.
646
647 Tuesday Sep. 2, 2014 mcr@sandelman.ca
648 Summary for 4.6.2 tcpdump release
649 fix out-of-source-tree builds: find libpcap that is out of source
650 better configure check for libsmi
651
652 Saturday Jul. 19, 2014 mcr@sandelman.ca
653 Summary for 4.6.1 tcpdump release
654 added FreeBSD capsicum
655 add a short option '#', same as long option '--number'
656
657 Wednesday Jul. 2, 2014 mcr@sandelman.ca
658 Summary for 4.6.0 tcpdump release
659 all of tcpdump is now using the new "NDO" code base (Thanks Denis!)
660 nflog, mobile, forces, pptp, AODV, AHCP, IPv6, OSPFv4, RPL, DHCPv6 enhancements/fixes
661 M3UA decode added.
662 many new test cases: 82 in 4.5.1 to 133 in 4.6.0
663 many improvements to travis continuous integration system: OSX, and Coverity options
664 cleaned up some unnecessary header files
665 Added bittok2str().
666 a number of unaligned access faults fixed
667 -A flag does not consider CR to be printable anymore
668 fx.lebail took over coverity baby sitting
669 default snapshot size increased to 256K for accommodate USB captures
670 WARNING: this release contains a lot of very worthwhile code churn.
671
672 Wednesday Jan. 15, 2014 guy@alum.mit.edu
673 Summary for 4.5.2 tcpdump release
674 Man page fix
675 Fix crashes on SPARC
676
677 Monday Nov. 11, 2013 mcr@sandelman.ca
678 Summary for 4.5.1 tcpdump release
679 CREDITS file fixes
680
681 Thursday Nov. 7, 2013 mcr@sandelman.ca and guy@alum.mit.edu.
682 Summary for 4.5.0 tcpdump release
683 some NFSv4 fixes for printing
684 fix printing of unknown TCP options, and tcp fast-open
685 fixes for syslog parser
686 some gcc-version-specific flag tuning
687 adopt MacOS deprecation workarounds for openssl
688 improvements to babel printing
689 add OpenFlow 1.0 (no SSL) and test cases
690 GeoNet printer.
691 added STBC Rx support
692 improvements to DHCPv6 decoder
693 clarify which autoconf is needed
694 Point users to the the-tcpdump-group repository on GitHub rather
695 than the mcr repository
696 Add MSDP printer.
697 Fixed IPv6 check on Solaris and other OSes requiring extra
698 networking libraries.
699 Add support for VXLAN (draft-mahalingam-dutt-dcops-vxlan-03),
700 and add "vxlan" as an option for -T.
701 Add support for OTV (draft-hasmit-otv-04).
702 fixes for DLT_IEEE802_11_RADIO datalink types
703 added MPTCP decoder
704
705 Saturday April 6, 2013 guy@alum.mit.edu.
706 Summary for 4.4.0 tcpdump release
707 RPKI-RTR (RFC6810) is now official (TCP Port 323)
708 Fix detection of OpenSSL libcrypto.
709 Add DNSSL (RFC6106) support.
710 Add "radius" as an option for -T.
711 Update Action codes for handle_action function according to
712 802.11s amendment.
713 Decode DHCPv6 AFTR-Name option (RFC6334).
714 Updates for Babel.
715 Fix printing of infinite lifetime in ICMPv6.
716 Added support for SPB, SPBM Service Identifier, and Unicast
717 Address sub-TLV in ISIS.
718 Decode RIPv2 authentication up to RFC4822.
719 Fix RIP Request/full table decoding issues.
720 On Linux systems with cap-ng.h, drop root privileges
721 using Linux Capabilities.
722 Add support for reading multiple files.
723 Add MS NLB heartbeat printer.
724 Separate multiple nexthops in BGP.
725
726 Wednesday November 28, 2012 guy@alum.mit.edu.
727 Summary for 4.3.1 tcpdump release
728 Print "LLDP, length N" for LLDP packets even when not in verbose
729 mode, so something is printed even if only the timestamp is
730 present
731 Document "-T carp"
732 Print NTP poll interval correctly (it's an exponent, so print
733 both its raw value and 2^value)
734 Document that "-e" is used to get MAC addresses
735 More clearly document that you need to escape or quote
736 backslashes in filter expressions on the command line
737 Fix some "the the" in the man page
738 Use the right maximum path length
739 Don't treat 192_1_2, when passed to -i, as an interface number
740
741 Friday April 3, 2012. mcr@sandelman.ca.
742 Summary for 4.3.0 tcpdump release
743 fixes for forces: SPARSE data (per RFC 5810)
744 some more test cases added
745 updates to documentation on -l, -U and -w flags.
746 Fix printing of BGP optional headers.
747 Tried to include DLT_PFSYNC support, failed due to headers required.
748 added TIPC support.
749 Fix LLDP Network Policy bit definitions.
750 fixes for IGMPv3's Max Response Time: it is in units of 0.1 second.
751 SIGUSR1 can be used rather than SIGINFO for stats
752 permit -n flag to affect print-ip for protocol numbers
753 ND_OPT_ADVINTERVAL is in milliseconds, not seconds
754 Teach PPPoE parser about RFC 4638
755
756
757 Friday December 9, 2011. guy@alum.mit.edu.
758 Summary for 4.2.1 tcpdump release
759 Only build the Babel printer if IPv6 is enabled.
760 Support Babel on port 6696 as well as 6697.
761 Include ppi.h in release tarball.
762 Include all the test files in the release tarball, and don't
763 "include" test files that no longer exist.
764 Don't assume we have <rpc/rpc.h> - check for it.
765 Support "-T carp" as a way of dissecting IP protocol 112 as CARP
766 rather than VRRP.
767 Support Hilscher NetAnalyzer link-layer header format.
768 Constify some pointers and fix compiler warnings.
769 Get rid of never-true test.
770 Fix an unintended fall-through in a case statement in the ARP
771 printer.
772 Fix several cases where sizeof(sizeof(XXX)) was used when just
773 sizeof(XXX) was intended.
774 Make stricter sanity checks in the ES-IS printer.
775 Get rid of some GCCisms that caused builds to fai with compilers
776 that don't support them.
777 Fix typo in man page.
778 Added length checks to Babel printer.
779
780 Sunday July 24, 2011. mcr@sandelman.ca.
781 Summary for 4.2.+
782 merged 802.15.4 decoder from Dmitry Eremin-Solenikov <dbaryshkov
783 at gmail dot com>
784 updates to forces for new port numbers
785 Use "-H", not "-h", for the 802.11s option. (-h always help)
786 Better ICMPv6 checksum handling.
787 add support for the RPKI/Router Protocol, per -ietf-sidr-rpki-rtr-12
788 get rid of uuencoded pcap test files, git can do binary.
789 sFlow changes for 64-bit counters.
790 fixes for PPI packet header handling and printing.
791 Add DCB Exchange protocol (DCBX) version 1.01.
792 Babel dissector, from Juliusz Chroboczek and Grégoire Henry.
793 improvements to radiotap for rate values > 127.
794 Many improvements to ForCES decode, including fix SCTP TML port
795 updated RPL type code to RPL-17 draft
796 Improve printout of DHCPv6 options.
797 added support and test case for QinQ (802.1q VLAN) packets
798 Handle DLT_IEEE802_15_4_NOFCS like DLT_IEEE802_15_4.
799 Build fixes for Sparc and other machines with alignment restrictions.
800 Merged changes from Debian package.
801 PGM: Add ACK decoding and add PGMCC DATA and FEEDBACK options.
802 Build fixes for OSX (Snow Leopard and others)
803 Add support for IEEE 802.15.4 packets
804
805 Tue. July 20, 2010. guy@alum.mit.edu.
806 Summary for 4.1.2 tcpdump release
807 If -U is specified, flush the file after creating it, so it's
808 not zero-length
809 Fix TCP flags output description, and some typos, in the man
810 page
811 Add a -h flag, and only attempt to recognize 802.11s mesh
812 headers if it's set
813 When printing the link-layer type list, send *all* output to
814 stderr
815 Include the CFLAGS setting when configure was run in the
816 compiler flags
817
818 Thu. April 1, 2010. guy@alum.mit.edu.
819 Summary for 4.1.1 tcpdump release
820 Fix build on systems with PF, such as FreeBSD and OpenBSD.
821 Don't blow up if a zero-length link-layer address is passed to
822 linkaddr_string().
823
824 Thu. March 11, 2010. ken@netfunctional.ca/guy@alum.mit.edu.
825 Summary for 4.1.0 tcpdump release
826 Fix printing of MAC addresses for VLAN frames with a length
827 field
828 Add some additional bounds checks and use the EXTRACT_ macros
829 more
830 Add a -b flag to print the AS number in BGP packets in ASDOT
831 notation rather than ASPLAIN notation
832 Add ICMPv6 RFC 5006 support
833 Decode the access flags in NFS access requests
834 Handle the new DLT_ for memory-mapped USB captures on Linux
835 Make the default snapshot (-s) the maximum
836 Print name of device (when -L is used)
837 Support for OpenSolaris (and SXCE build 125 and later)
838 Print new TCP flags
839 Add support for RPL DIO
840 Add support for TCP User Timeout (UTO)
841 Add support for non-standard Ethertypes used by 3com PPPoE gear
842 Add support for 802.11n and 802.11s
843 Add support for Transparent Ethernet Bridge ethertype in GRE
844 Add 4 byte AS support for BGP printer
845 Add support for the MDT SAFI 66 BG printer
846 Add basic IPv6 support to print-olsr
847 Add USB printer
848 Add printer for ForCES
849 Handle frames with an FCS
850 Handle 802.11n Control Wrapper, Block Acq Req and Block Ack frames
851 Fix TCP sequence number printing
852 Report 802.2 packets as 802.2 instead of 802.3
853 Don't include -L/usr/lib in LDFLAGS
854 On x86_64 Linux, look in lib64 directory too
855 Lots of code clean ups
856 Autoconf clean ups
857 Update testcases to make output changes
858 Fix compiling with/out smi (--with{,out}-smi)
859 Fix compiling without IPv6 support (--disable-ipv6)
860
861 Mon. October 27, 2008. ken@netfunctional.ca. Summary for 4.0.0 tcpdump release
862 Add support for Bluetooth Sniffing
863 Add support for Realtek Remote Control Protocol (openrrcp.org.ru)
864 Add support for 802.11 AVS
865 Add support for SMB over TCP
866 Add support for 4 byte BGP AS printing
867 Add support for compiling on case-insensitive file systems
868 Add support for ikev2 printing
869 Update support for decoding AFS
870 Update DHCPv6 printer
871 Use newer libpcap API's (allows -B option on all platforms)
872 Add -I to turn on monitor mode
873 Bugfixes in lldp, lspping, dccp, ESP, NFS printers
874 Cleanup unused files and various cruft
875
876 Mon. September 10, 2007. ken@xelerance.com. Summary for 3.9.8 tcpdump release
877 Rework ARP printer
878 Rework OSPFv3 printer
879 Add support for Frame-Relay ARP
880 Decode DHCP Option 121 (RFC 3442 Classless Static Route)
881 Decode DHCP Option 249 (MS Classless Static Route) the same as Option 121
882 TLV: Add support for Juniper .pcap extensions
883 Print EGP header in new-world-order style
884 Converted print-isakmp.c to NETDISSECT
885 Moved AF specific stuff into af.h
886 Test subsystem now table driven, and saves outputs and diffs to one place
887 Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted
888 libpcap files on an OS other than where the file was generated
889
890
891 Wed. July 23, 2007. mcr@xelerance.com. Summary for 3.9.7 libpcap release
892
893 NFS: Print unsigned values as such.
894 RX: parse safely.
895 BGP: fixes for IPv6-less builds.
896 801.1ag: use standard codepoint.
897 use /dev/bpf on systems with such a device.
898 802.11: print QoS data, avoid dissect of no-data frame, ignore padding.
899 smb: make sure that we haven't gone past the end of the captured data.
900 smb: squelch an uninitialized complaint from coverity.
901 NFS: from NetBSD; don't interpret the reply as a possible NFS reply
902 if it got MSG_DENIED.
903 BGP: don't print TLV values that didn't fit, from www.digit-labs.org.
904 revised INSTALL.txt about libpcap dependency.
905
906 Wed. April 25, 2007. ken@xelerance.com. Summary for 3.9.6 tcpdump release
907 Update man page to reflect changes to libpcap
908 Changes to both TCP and IP Printer Output
909 Fix a potential buffer overflow in the 802.11 printer
910 Print basic info about a few more Cisco LAN protocols.
911 mDNS cleanup
912 ICMP MPLS rework of the extension code
913 bugfix: use the correct codepoint for the OSPF simple text auth token
914 entry, and use safeputs to print the password.
915 Add support in pflog for additional values
916 Add support for OIF RSVP Extensions UNI 1.0 Rev. 2 and additional RSVP objects
917 Add support for the Message-id NACK c-type.
918 Add support for 802.3ah loopback ctrl msg
919 Add support for Multiple-STP as per 802.1s
920 Add support for rapid-SPT as per 802.1w
921 Add support for CFM Link-trace msg, Link-trace-Reply msg,
922 Sender-ID tlv, private tlv, port, interface status
923 Add support for unidirectional link detection as per
924 https://tools.ietf.org/id/draft-foschiano-udld-02.txt
925 Add support for the olsr protocol as per RFC 3626 plus the LQ
926 extensions from olsr.org
927 Add support for variable-length checksum in DCCP, as per section 9 of
928 RFC 4340.
929 Add support for per-VLAN spanning tree and per-VLAN rapid spanning tree
930 Add support for Multiple-STP as per 802.1s
931 Add support for the cisco propriatry 'dynamic trunking protocol'
932 Add support for the cisco proprietary VTP protocol
933 Update dhcp6 options table as per IETF standardization activities
934
935
936 Tue. September 19, 2006. ken@xelerance.com. Summary for 3.9.5 tcpdump release
937
938 Fix compiling on AIX (, at end of ENUM)
939 Updated list of DNS RR typecodes
940 Use local Ethernet defs on WIN32
941 Add support for Frame-Relay ARP
942 Fixes for compiling under MSVC++
943 Add support for parsing Juniper .pcap files
944 Add support for FRF.16 Multilink Frame-Relay (DLT_MFR)
945 Rework the OSPFv3 printer
946 Fix printing for 4.4BSD/NetBSD NFS Filehandles
947 Add support for Cisco style NLPID encapsulation
948 Add cisco prop. eigrp related, extended communities
949 Add support for BGP signaled VPLS
950 Cleanup the bootp printer
951 Add support for PPP over Frame-Relay
952 Add some bounds checking to the IP options code, and clean up
953 the options output a bit.
954 Add additional modp groups to ISAKMP printer
955 Add support for Address-Withdraw and Label-Withdraw Msgs
956 Add support for the BFD Discriminator TLV
957 Fixes for 64bit compiling
958 Add support for PIMv2 checksum verification
959 Add support for further dissection of the IPCP Compression Option
960 Add support for Cisco's proposed VQP protocol
961 Add basic support for keyed authentication TCP option
962 Lots of minor cosmetic changes to output printers
963
964
965 Mon. September 19, 2005. ken@xelerance.com. Summary for 3.9.4 tcpdump release
966 Decoder support for more Juniper link-layer types
967 Fix a potential buffer overflow (although it can't occur in
968 practice).
969 Fix the handling of unknown management frame types in the 802.11
970 printer.
971 Add FRF.16 support, fix various Frame Relay bugs.
972 Add support for RSVP integrity objects, update fast-reroute
973 object printer to latest spec.
974 Clean up documentation of vlan filter expression, document mpls
975 filter expression.
976 Document new pppoed and pppoes filter expressions.
977 Update diffserver-TE codepoints as per RFC 4124.
978 Spelling fixes in ICMPv6.
979 Don't require any fields other than flags to be present in IS-IS
980 restart signaling TLVs, and only print the system ID in
981 those TLVs as system IDs, not as node IDs.
982 Support for DCCP.
983
984 Tue. July 5, 2005. ken@xelerance.com. Summary for 3.9.3 tcpdump release
985
986 Option to chroot() when dropping privs
987 Fixes for compiling on nearly every platform,
988 including improved 64bit support
989 Many new testcases
990 Support for sending packets
991 Many compilation fixes on most platforms
992 Fixes for recent version of GCC to eliminate warnings
993 Improved Unicode support
994
995 Decoders & DLT Changes, Updates and New:
996 AES ESP support
997 Juniper ATM, FRF.15, FRF.16, PPPoE,
998 ML-FR, ML-PIC, ML-PPP, PL-PPP, LS-PIC
999 GGSN,ES,MONITOR,SERVICES
1000 L2VPN
1001 Axent Raptor/Symantec Firewall
1002 TCP-MD5 (RFC 2385)
1003 ESP-in-UDP (RFC 3948)
1004 ATM OAM
1005 LMP, LMP Service Discovery
1006 IP over FC
1007 IP over IEEE 1394
1008 BACnet MS/TP
1009 SS7
1010 LDP over TCP
1011 LACP, MARKER as per 802.3ad
1012 PGM (RFC 3208)
1013 LSP-PING
1014 G.7041/Y.1303 Generic Framing Procedure
1015 EIGRP-IP, EIGRP-IPX
1016 ICMP6
1017 Radio - via radiotap
1018 DHCPv6
1019 HDLC over PPP
1020
1021 Tue. March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release
1022
1023 No changes from 3.8.2. Version bumped only to maintain consistency
1024 with libpcap 0.8.3.
1025
1026 Mon. March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release
1027
1028 Fixes for print-isakmp.c CVE: CAN-2004-0183, CAN-2004-0184
1029 https://web.archive.org/web/20160328035955/https://www.rapid7.com/resources/advisories/R7-0017.jsp
1030 IP-over-IEEE1394 printing.
1031 some MINGW32 changes.
1032 updates for autoconf 2.5
1033 fixes for print-aodv.c - check for too short packets
1034 formatting changes to print-ascii for hex output.
1035 check for too short packets: print-bgp.c, print-bootp.c, print-cdp.c,
1036 print-chdlc.c, print-domain.c, print-icmp.c, print-icmp6.c,
1037 print-ip.c, print-lwres.c, print-ospf.c, print-pim.c,
1038 print-ppp.c,print-pppoe.c, print-rsvp.c, print-wb.c
1039 print-ether.c - better handling of unknown types.
1040 print-isoclns.c - additional decoding of types.
1041 print-llc.c - strings for LLC names added.
1042 print-pfloc.c - various enhancements
1043 print-radius.c - better decoding to strings.
1044
1045 Wed. November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 3.8 release
1046
1047 changed syntax of -E argument so that multiple SAs can be decrypted
1048 fixes for Digital Unix headers and Documentation
1049 __attribute__ fixes
1050 CDP changes from Terry Kennedy <terry@tmk.com>.
1051 IPv6 mobility updates from Kazushi Sugyo <sugyo@pb.jp.nec.com>
1052 Fixes for ASN.1 decoder for 2.100.3 forms.
1053 Added a count of packets received and processed to clarify numbers.
1054 Incorporated WinDUMP patches for Win32 builds.
1055 PPPoE payload length headers.
1056 Fixes for HP C compiler builds.
1057 Use new pcap_breakloop() and pcap_findalldevs() if we can.
1058 BGP output split into multiple lines.
1059 Fixes to 802.11 decoding.
1060 Fixes to PIM decoder.
1061 SuperH is a CPU that can't handle unaligned access. Many fixes for
1062 unaligned access work.
1063 Fixes to Frame-Relay decoder for Q.933/922 frames.
1064 Clarified when Solaris can do captures as non-root.
1065 Added tests/ subdir for examples/regression tests.
1066 New -U flag. -flush stdout after every packet
1067 New -A flag -print ascii only
1068 support for decoding IS-IS inside Cisco HDLC Frames
1069 more verbosity for tftp decoder
1070 mDNS decoder
1071 new BFD decoder
1072 cross compilation patches
1073 RFC 3561 AODV support.
1074 UDP/TCP pseudo-checksum properly for source-route options.
1075 sanitized all files to modified BSD license
1076 Add support for RFC 2625 IP-over-Fibre Channel.
1077 fixes for DECnet support.
1078 Support RFC 2684 bridging of Ethernet, 802.5 Token Ring, and FDDI.
1079 RFC 2684 encapsulation of BPDUs.
1080
1081 Tuesday, February 25, 2003. fenner@research.att.com. 3.7.2 release
1082
1083 Fixed infinite loop when parsing invalid isakmp packets.
1084 (reported by iDefense; already fixed in CVS)
1085 Fixed infinite loop when parsing invalid BGP packets.
1086 Fixed buffer overflow with certain invalid NFS packets.
1087 Pretty-print unprintable network names in 802.11 printer.
1088 Handle truncated nbp (appletalk) packets.
1089 Updated DHCPv6 printer to match draft-ietf-dhc-dhcpv6-22.txt
1090 Print IP protocol name even if we don't have a printer for it.
1091 Print IP protocol name or number for fragments.
1092 Print the whole MPLS label stack, not just the top label.
1093 Print request header and file handle for NFS v3 FSINFO and PATHCONF
1094 requests.
1095 Fix NFS packet truncation checks.
1096 Handle "old" DR-Priority and Bidir-Capable PIM HELLO options.
1097 Handle unknown RADIUS attributes properly.
1098 Fix an ASN.1 parsing error that would cause e.g. the OID
1099 2.100.3 to be misrepresented as 4.20.3 .
1100
1101 Monday, January 21, 2002. mcr@sandelman.ottawa.on.ca. Summary for 3.7 release
1102 keyword "ipx" added.
1103 Better OSI/802.2 support on Linux.
1104 IEEE 802.11 support, from clenahan@fortresstech.com, achirica@ttd.net.
1105 LLC SAP support for FDDI/token ring/RFC-1483 style ATM
1106 BXXP protocol was replaced by the BEEP protocol;
1107 improvements to SNAP demux.
1108 Changes to "any" interface documentation.
1109 Documentation on pcap_stats() counters.
1110 Fix a memory leak found by Miklos Szeredi - pcap_ether_aton().
1111 Added MPLS encapsulation decoding per RFC3032.
1112 DNS dissector handles TKEY, TSIG and IXFR.
1113 adaptive SLIP interface patch from Igor Khristophorov <igor@atdot.org>
1114 SMB printing has much improved bounds checks
1115 OUI 0x0000f8 decoded as encapsulated ethernet for Cisco-custom bridging
1116 Zephyr support, from Nickolai Zeldovich <kolya@MIT.EDU>.
1117 Solaris - devices with digits in them. Stefan Hudson <hudson@mbay.net>
1118 IPX socket 0x85be is for Cisco EIGRP over IPX.
1119 Improvements to fragmented ESP handling.
1120 SCTP support from Armando L. Caro Jr. <acaro@mail.eecis.udel.edu>
1121 Linux ARPHDR_ATM support fixed.
1122 Added a "netbeui" keyword, which selects NetBEUI packets.
1123 IPv6 ND improvements, MobileIP dissector, 2292bis-02 for RA option.
1124 Handle ARPHDR_HDLC from Marcus Felipe Pereira <marcus@task.com.br>.
1125 Handle IPX socket 0x553 -> NetBIOS-over-IPX socket, "nwlink-dgm"
1126 Better Linux libc5 compat.
1127 BIND9 lwres dissector added.
1128 MIPS and SPARC get strict alignment macros (affects print-bgp.c)
1129 Apple LocalTalk LINKTYPE_ reserved.
1130 New time stamp formats documented.
1131 DHCP6 updated to draft-22.txt spec.
1132 ICMP types/codes now accept symbolic names.
1133 Add SIGINFO handler from LBL
1134 encrypted CIPE tunnels in IRIX, from Franz Schaefer <schaefer@mond.at>.
1135 now we are -Wstrict-prototype clean.
1136 NetBSD DLT_PPP_ETHER; adapted from Martin Husemann <martin@netbsd.org>.
1137 PPPoE dissector cleaned up.
1138 Support for LocalTalk hardware, from Uns Lider <unslider@miranda.org>.
1139 In dissector, now the caller prints the IP addresses rather than proto.
1140 cjclark@alum.mit.edu: print the IP proto for non-initial fragments.
1141 LLC frames with a DSAP and LSAP of 0xe0 are IPX frames.
1142 Linux cooked frames with a type value of LINUX_SLL_P_802_3 are IPX.
1143 captures on the "any" device won't be done in promiscuous mode
1144 Token Ring support on DLPI - Onno van der Linden <onno@simplex.nl>
1145 ARCNet support, from NetBSD.
1146 HSRP dissector, from Julian Cowley <julian@lava.net>.
1147 Handle (GRE-encapsulated) PPTP
1148 added -C option to rotate save file every optarg * 1,000,000 bytes.
1149 support for "vrrp" name - NetBSD, by Klaus Klein <kleink@netbsd.org>.
1150 PPTP support, from Motonori Shindo <mshindo@mshindo.net>.
1151 IS-IS over PPP support, from Hannes Gredler <hannes@juniper.net>.
1152 CNFP support for IPv6,format. Harry Raaymakers <harryr@connect.com.au>.
1153 ESP printing updated to RFC2406.
1154 HP-UX can now handle large number of PPAs.
1155 MSDP printer added.
1156 L2TP dissector improvements from Motonori Shindo.
1157
1158 Tuesday January 9, 2001. mcr@sandelman.ottawa.on.ca. Summary for 3.6 release
1159 Cleaned up documentation.
1160 Promisc mode fixes for Linux
1161 IPsec changes/cleanups.
1162 Alignment fixes for picky architectures
1163
1164 Removed dependency on native headers for packet dissectors.
1165 Removed Linux specific headers that were shipped
1166
1167 libpcap changes provide for exchanging capture files between
1168 systems. Save files now have well known PACKET_ values instead of
1169 depending upon system dependent mappings of DLT_* types.
1170
1171 Support for computing/checking IP and UDP/TCP checksums.
1172
1173 Updated autoconf stock files.
1174
1175 IPv6 improvements: dhcp (draft-15), mobile-ip6, ppp, ospf6,
1176
1177 Added dissector support for: ISOCLNS, Token Ring, IGMPv3, bxxp,
1178 timed, vrrp, radius, chdlc, cnfp, cdp, IEEE802.1d, raw-AppleTalk
1179
1180 Added filtering support for: VLANs, ESIS, ISIS
1181
1182 Improvements to: print-telnet, IPTalk, bootp/dhcp, ECN, PPP,
1183 L2TP, PPPoE
1184
1185 HP-UX 11.0 -- find the right dlpi device.
1186 Solaris 8 - IPv6 works
1187 Linux - Added support for an "any" device to capture on all interfaces
1188
1189 Security fixes: buffer overrun audit done. Strcpy replaced with
1190 strlcpy, sprintf replaced with snprintf.
1191 Look for lex problems, and warn about them.
1192
1193
1194 v3.5 Fri Jan 28 18:00:00 PST 2000
1195
1196 Bill Fenner <fenner@research.att.com>
1197 - switch to config.h for autoconf
1198 - unify RCSID strings
1199 - Updated PIMv1, PIMv2, DVMRP, IGMP parsers, add Cisco Auto-RP parser
1200 - Really fix the RIP printer
1201 - Fix MAC address -> name translation.
1202 - some -Wall -Wformat fixes
1203 - update makemib to parse much of SMIv2
1204 - Print TCP sequence # with -vv even if you normally wouldn't
1205 - Print as much of IP/TCP/UDP headers as possible even if truncated.
1206
1207 itojun@iijlab.net
1208 - -X will make a ascii dump. from netbsd.
1209 - telnet command sequence decoder (ff xx xx). from netbsd.
1210 - print-bgp.c: improve options printing. ugly code exists for
1211 unaligned option parsing (need some fix).
1212 - const poisoning in SMB decoder.
1213 - -Wall -Werror clean checks.
1214 - bring in KAME IPv6/IPsec decoding code.
1215
1216 Assar Westerlund <assar@sics.se>
1217 - SNMPv2 and SNMPv3 printer
1218 - If compiled with libsmi, tcpdump can load MIBs on the fly to decode
1219 SNMP packets.
1220 - Incorporate NFS parsing code from NetBSD. Adds support for nfsv3.
1221 - portability fixes
1222 - permit building in different directories.
1223
1224 Ken Hornstein <kenh@cmf.nrl.navy.mil>
1225 - bring in code at
1226 /afs/transarc.com/public/afs-contrib/tools/tcpdump for parsing
1227 AFS3 packets
1228
1229 Andrew Tridgell <tridge@linuxcare.com>
1230 - SMB printing code
1231
1232 Love <lha@stacken.kth.se>
1233 - print-rx.c: add code for printing MakeDir and StoreStatus. Also
1234 change date format to the right one.
1235
1236 Michael C. Richardson <mcr@sandelman.ottawa.on.ca>
1237 - Created tcpdump.org repository
1238
1239 v3.4 Sat Jul 25 12:40:55 PDT 1998
1240
1241 - Hardwire Linux slip support since it's too hard to detect.
1242
1243 - Redo configuration of "network" libraries (-lsocket and -lnsl) to
1244 deal with IRIX. Thanks to John Hawkinson (jhawk@mit.edu)
1245
1246 - Added -a which tries to translate network and broadcast addresses to
1247 names. Suggested by Rob van Nieuwkerk (robn@verdi.et.tudelft.nl)
1248
1249 - Added a configure option to disable gcc.
1250
1251 - Added a "raw" packet printer.
1252
1253 - Not having an interface address is no longer fatal. Requested by John
1254 Hawkinson.
1255
1256 - Rework signal setup to accommodate Linux.
1257
1258 - OSPF truncation check fix. Also display the type of OSPF packets
1259 using MD5 authentication. Thanks to Brian Wellington
1260 (bwelling@tis.com)
1261
1262 - Fix truncation check bugs in the Kerberos printer. Reported by Ezra
1263 Peisach (epeisach@mit.edu)
1264
1265 - Don't catch SIGHUP when invoked with nohup(1). Thanks to Dave Plonka
1266 (plonka@mfa.com)
1267
1268 - Specify full install target as a way of detecting if install
1269 directory does not exist. Thanks to Dave Plonka.
1270
1271 - Bit-swap FDDI addresses for BSD/OS too. Thanks to Paul Vixie
1272 (paul@vix.com)
1273
1274 - Fix off-by-one bug when testing size of ethernet packets. Thanks to
1275 Marty Leisner (leisner@sdsp.mc.xerox.com)
1276
1277 - Add a local autoconf macro to check for routines in libraries; the
1278 autoconf version is broken (it only puts the library name in the
1279 cache variable name). Thanks to John Hawkinson.
1280
1281 - Add a local autoconf macro to check for types; the autoconf version
1282 is broken (it uses grep instead of actually compiling a code fragment).
1283
1284 - Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header
1285 formats.
1286
1287 - Extend OSF ip header workaround to versions 1 and 2.
1288
1289 - Fix some signed problems in the nfs printer. As reported by David
1290 Sacerdote (davids@silence.secnet.com)
1291
1292 - Detect group wheel and use it as the default since BSD/OS' install
1293 can't hack numeric groups. Reported by David Sacerdote.
1294
1295 - AIX needs special loader options. Thanks to Jonathan I. Kamens
1296 (jik@cam.ov.com)
1297
1298 - Fixed the nfs printer to print port numbers in decimal. Thanks to
1299 Kent Vander Velden (graphix@iastate.edu)
1300
1301 - Find installed libpcap in /usr/local/lib when not using gcc.
1302
1303 - Disallow network masks with non-network bits set.
1304
1305 - Attempt to detect "egcs" versions of gcc.
1306
1307 - Add missing closing double quotes when displaying bootp strings.
1308 Reported by Viet-Trung Luu (vluu@picard.math.uwaterloo.ca)
1309
1310 v3.3 Sat Nov 30 20:56:27 PST 1996
1311
1312 - Added Linux support.
1313
1314 - GRE encapsulated packet printer thanks to John Hawkinson
1315 (jhawk@mit.edu)
1316
1317 - Rewrite gmt2local() to avoid problematic os dependencies.
1318
1319 - Suppress nfs truncation message on errors.
1320
1321 - Add missing m4 quoting in AC_LBL_UNALIGNED_ACCESS autoconf macro.
1322 Reported by Joachim Ott (ott@ardala.han.de)
1323
1324 - Enable "ip_hl vs. ip_vhl" workaround for OSF4 too.
1325
1326 - Print arp hardware type in host order. Thanks to Onno van der Linden
1327 (onno@simplex.nl)
1328
1329 - Avoid solaris compiler warnings. Thanks to Bruce Barnett
1330 (barnett@grymoire.crd.ge.com)
1331
1332 - Fix rip printer to not print one more route than is actually in the
1333 packet. Thanks to Jean-Luc Richier (Jean-Luc.Richier@imag.fr) and
1334 Bill Fenner (fenner@parc.xerox.com)
1335
1336 - Use autoconf endian detection since BYTE_ORDER isn't defined on all systems.
1337
1338 - Fix dvmrp printer truncation checks and add a dvmrp probe printer.
1339 Thanks to Danny J. Mitzel (mitzel@ipsilon.com)
1340
1341 - Rewrite ospf printer to improve truncation checks.
1342
1343 - Don't parse tcp options past the EOL. As noted by David Sacerdote
1344 (davids@secnet.com). Also, check tcp options to make sure they ar
1345 actually in the tcp header (in addition to the normal truncation
1346 checks). Fix the SACK code to print the N blocks (instead of the
1347 first block N times).
1348
1349 - Don't say really small UDP packets are truncated just because they
1350 aren't big enough to be a RPC. As noted by David Sacerdote.
1351
1352 v3.2.1 Sun Jul 14 03:02:26 PDT 1996
1353
1354 - Added rfc1716 icmp codes as suggested by Martin Fredriksson
1355 (martin@msp.se)
1356
1357 - Print mtu for icmp unreach need frag packets. Thanks to John
1358 Hawkinson (jhawk@mit.edu)
1359
1360 - Decode icmp router discovery messages. Thanks to Jeffrey Honig
1361 (jch@bsdi.com)
1362
1363 - Added a printer entry for DLT_IEEE802 as suggested by Tak Kushida
1364 (kushida@trl.ibm.co.jp)
1365
1366 - Check igmp checksum if possible. Thanks to John Hawkinson.
1367
1368 - Made changes for SINIX. Thanks to Andrej Borsenkow
1369 (borsenkow.msk@sni.de)
1370
1371 - Use autoconf's idea of the top level directory in install targets.
1372 Thanks to John Hawkinson.
1373
1374 - Avoid infinite loop in tcp options printing code. Thanks to Jeffrey
1375 Mogul (mogul@pa.dec.com)
1376
1377 - Avoid using -lsocket in IRIX 5.2 and earlier since it breaks snoop.
1378 Thanks to John Hawkinson.
1379
1380 - Added some more packet truncation checks.
1381
1382 - On systems that have it, use sigset() instead of signal() since
1383 signal() has different semantics on these systems.
1384
1385 - Fixed some more alignment problems on the alpha.
1386
1387 - Add code to massage unprintable characters in the domain and ipx
1388 printers. Thanks to John Hawkinson.
1389
1390 - Added explicit netmask support. Thanks to Steve Nuchia
1391 (steve@research.oknet.com)
1392
1393 - Add "sca" keyword (for DEC cluster services) as suggested by Terry
1394 Kennedy (terry@spcvxa.spc.edu)
1395
1396 - Add "atalk" keyword as suggested by John Hawkinson.
1397
1398 - Added an igrp printer. Thanks to Francis Dupont
1399 (francis.dupont@inria.fr)
1400
1401 - Print IPX net numbers in hex a la Novell Netware. Thanks to Terry
1402 Kennedy (terry@spcvxa.spc.edu)
1403
1404 - Fixed snmp extended tag field parsing bug. Thanks to Pascal Hennequin
1405 (pascal.hennequin@hugo.int-evry.fr)
1406
1407 - Added some ETHERTYPEs missing on some systems.
1408
1409 - Added truncated packet macros and various checks.
1410
1411 - Fixed endian problems with the DECnet printer.
1412
1413 - Use $CC when checking gcc version. Thanks to Carl Lindberg
1414 (carl_lindberg@blacksmith.com)
1415
1416 - Fixes for AIX (although this system is not yet supported). Thanks to
1417 John Hawkinson.
1418
1419 - Fix bugs in the autoconf misaligned accesses code fragment.
1420
1421 - Include sys/param.h to get BYTE_ORDER in a few places. Thanks to
1422 Pavlin Ivanov Radoslavov (pavlin@cs.titech.ac.jp)
1423
1424 v3.2 Sun Jun 23 02:28:10 PDT 1996
1425
1426 - Print new icmp unreachable codes as suggested by Martin Fredriksson
1427 (martin@msp.se). Also print code value when unknown for icmp redirect
1428 and time exceeded.
1429
1430 - Fix an alignment endian bug in getname(). Thanks to John Hawkinson.
1431
1432 - Define "new" domain record types if not found in arpa/nameserv.h.
1433 Resulted from a suggestion from John Hawkinson (jhawk@mit.edu). Also
1434 fixed an endian bug when printing mx record and added some new record
1435 types.
1436
1437 - Added RIP V2 support. Thanks to Jeffrey Honig (jch@bsdi.com)
1438
1439 - Added T/TCP options printing. As suggested by Richard Stevens
1440 (rstevens@noao.edu)
1441
1442 - Use autoconf to detect architectures that can't handle misaligned
1443 accesses.
1444
1445 v3.1 Thu Jun 13 20:59:32 PDT 1996
1446
1447 - Changed u_int32/int32 to u_int32_t/int32_t to be consistent with bsd
1448 and bind (as suggested by Charles Hannum).
1449
1450 - Port to GNU autoconf.
1451
1452 - Add support for printing DVMRP and PIM traffic thanks to
1453 Havard Eidnes (Havard.Eidnes@runit.sintef.no).
1454
1455 - Fix AppleTalk, IPX and DECnet byte order problems due to wrong endian
1456 define being referenced. Reported by Terry Kennedy.
1457
1458 - Minor fixes to the man page thanks to Mark Andrews.
1459
1460 - Endian fixes to RTP and vat packet dumpers, thanks to Bruce Mah
1461 (bmah@cs.berkeley.edu).
1462
1463 - Added support for new dns types, thanks to Rainer Orth.
1464
1465 - Fixed tftp_print() to print the block number for ACKs.
1466
1467 - Document -dd and -ddd. Resulted from a bug report from Charlie Slater
1468 (cslater@imatek.com).
1469
1470 - Check return status from malloc/calloc/etc.
1471
1472 - Check return status from pcap_loop() so we can print an error and
1473 exit with a bad status if there were problems.
1474
1475 - Bail if ip option length is <= 0. Resulted from a bug report from
1476 Darren Reed (darrenr@vitruvius.arbld.unimelb.edu.au).
1477
1478 - Print out a little more information for sun rpc packets.
1479
1480 - Add support for Kerberos 4 thanks to John Hawkinson (jhawk@mit.edu).
1481
1482 - Fixed the Fix EXTRACT_SHORT() and EXTRACT_LONG() macros (which were
1483 wrong on little endian machines).
1484
1485 - Fixed alignment bug in ipx_decode(). Thanks to Matt Crawford
1486 (crawdad@fnal.gov).
1487
1488 - Fix ntp_print() to not print garbage when the stratum is
1489 "unspecified." Thanks to Deus Ex Machina (root@belle.bork.com).
1490
1491 - Rewrote tcp options printer code to check for truncation. Added
1492 selective acknowledgment case.
1493
1494 - Fixed an endian bug in the ospf printer. Thanks to Jeffrey C Honig
1495 (jch@bsdi.com)
1496
1497 - Fix rip printer to handle 4.4 BSD sockaddr struct which only uses one
1498 octet for the sa_family member. Thanks to Yoshitaka Tokugawa
1499 (toku@dit.co.jp)
1500
1501 - Don't checksum ip header if we don't have all of it. Thanks to John
1502 Hawkinson (jhawk@mit.edu).
1503
1504 - Print out hostnames if possible in egp printer. Thanks to Jeffrey
1505 Honig (jhc@bsdi.com)
1506
1507
1508 v3.1a1 Wed May 3 19:21:11 PDT 1995
1509
1510 - Include time.h when SVR4 is defined to avoid problems under Solaris
1511 2.3.
1512
1513 - Fix etheraddr_string() in the ETHER_SERVICE to return the saved
1514 strings, not the local buffer. Thanks to Stefan Petri
1515 (petri@ibr.cs.tu-bs.de).
1516
1517 - Detect when pcap raises the snaplen (e.g. with snit). Print a warning
1518 that the selected value was not used. Thanks to Pascal Hennequin
1519 (Pascal.Hennequin@hugo.int-evry.fr).
1520
1521 - Add a truncated packet test to print-nfs.c. Thanks to Pascal Hennequin.
1522
1523 - BYTEORDER -> BYTE_ORDER Thanks to Terry Kennedy (terry@spcvxa.spc.edu).
1524
1525 v3.0.3 Sun Oct 1 18:35:00 GMT 1995
1526
1527 - Although there never was a 3.0.3 release, the linux boys cleverly
1528 "released" one in late 1995.
1529
1530 v3.0.2 Thu Apr 20 21:28:16 PDT 1995
1531
1532 - Change configuration to not use gcc v2 flags with gcc v1.
1533
1534 - Redo gmt2local() so that it works under BSDI (which seems to return
1535 an empty timezone struct from gettimeofday()). Based on report from
1536 Terry Kennedy (terry@spcvxa.spc.edu).
1537
1538 - Change configure to recognize IP[0-9]* as "mips" SGI hardware. Based
1539 on report from Mark Andrews (mandrews@alias.com).
1540
1541 - Don't pass cc flags to gcc. Resulted from a bug report from Rainer
1542 Orth (ro@techfak.uni-bielefeld.de).
1543
1544 - Fixed printout of connection id for uncompressed tcp slip packets.
1545 Resulted from a bug report from Richard Stevens (rstevens@noao.edu).
1546
1547 - Hack around deficiency in Ultrix's make.
1548
1549 - Add ETHERTYPE_TRAIL define which is missing from irix5.
1550
1551 v3.0.1 Wed Aug 31 22:42:26 PDT 1994
1552
1553 - Fix problems with gcc2 vs. malloc() and read() prototypes under SunOS 4.
1554
1555 v3.0 Mon Jun 20 19:23:27 PDT 1994
1556
1557 - Added support for printing tcp option timestamps thanks to
1558 Mark Andrews (mandrews@alias.com).
1559
1560 - Reorganize protocol dumpers to take const pointers to packets so they
1561 never change the contents (i.e., they used to do endian conversions
1562 in place). Previously, whenever more than one pass was taken over
1563 the packet, the packet contents would be dumped incorrectly (i.e.,
1564 the output form -x would be wrong on little endian machines because
1565 the protocol dumpers would modify the data). Thanks to Charles Hannum
1566 (mycroft@gnu.ai.mit.edu) for reporting this problem.
1567
1568 - Added support for decnet protocol dumping thanks to Jeff Mogul
1569 (mogul@pa.dec.com).
1570
1571 - Fix bug that caused length of packet to be incorrectly printed
1572 (off by ether header size) for unknown ethernet types thanks
1573 to Greg Miller (gmiller@kayak.mitre.org).
1574
1575 - Added support for IPX protocol dumping thanks to Brad Parker
1576 (brad@fcr.com).
1577
1578 - Added check to verify IP header checksum under -v thanks to
1579 Brad Parker (brad@fcr.com).
1580
1581 - Move packet capture code to new libpcap library (which is
1582 packaged separately).
1583
1584 - Prototype everything and assume an ansi compiler.
1585
1586 - print-arp.c: Print hardware ethernet addresses if they're not
1587 what we expect.
1588
1589 - print-bootp.c: Decode the cmu vendor field. Add RFC1497 tags.
1590 Many helpful suggestions from Gordon Ross (gwr@jericho.mc.com).
1591
1592 - print-fddi.c: Improvements. Thanks to Jeffrey Mogul
1593 (mogul@pa.dec.com).
1594
1595 - print-icmp.c: Byte swap netmask before printing. Thanks to
1596 Richard Stevens (rstevens@noao.edu). Print icmp type when unknown.
1597
1598 - print-ip.c: Print the inner ip datagram of ip-in-ip encapsulated packets.
1599 By default, only the inner packet is dumped, appended with the token
1600 "(encap)". Under -v, both the inner and output packets are dumped
1601 (on the same line). Note that the filter applies to the original packet,
1602 not the encapsulated packet. So if you run tcpdump on a net with an
1603 IP Multicast tunnel, you cannot filter out the datagrams using the
1604 conventional syntax. (You can filter away all the ip-in-ip traffic
1605 with "not ip proto 4".)
1606
1607 - print-nfs.c: Keep pending rpc's in circular table. Add generic
1608 nfs header and remove os dependences. Thanks to Jeffrey Mogul.
1609
1610 - print-ospf.c: Improvements. Thanks to Jeffrey Mogul.
1611
1612 - tcpdump.c: Add -T flag allows interpretation of "vat", "wb", "rpc"
1613 (sunrpc) and rtp packets. Added "inbound" and "outbound" keywords
1614 Add && and || operators
1615
1616 v2.2.1 Tue Jun 6 17:57:22 PDT 1992
1617
1618 - Fix bug with -c flag.
1619
1620 v2.2 Fri May 22 17:19:41 PDT 1992
1621
1622 - savefile.c: Remove hack that shouldn't have been exported. Add
1623 truncate checks.
1624
1625 - Added the 'icmp' keyword. For example, 'icmp[0] != 8 and icmp[0] != 0'
1626 matches non-echo/reply ICMP packets.
1627
1628 - Many improvements to filter code optimizer.
1629
1630 - Added 'multicast' keyword and extended the 'broadcast' keyword can now be
1631 so that protocol qualifications are allowed. For example, "ip broadcast"
1632 and "ether multicast" are valid filters.
1633
1634 - Added support for monitoring the loopback interface (i.e. 'tcpdump -i lo').
1635 Jeffrey Honig (jch@MITCHELL.CIT.CORNELL.EDU) contributed the kernel
1636 patches to netinet/if_loop.c.
1637
1638 - Added support for the Ungermann-Bass Ethernet on IBM/PC-RTs running AOS.
1639 Contact Jeffrey Honig (jch@MITCHELL.CIT.CORNELL.EDU) for the diffs.
1640
1641 - Added EGP and OSPF printers, thanks to Jeffrey Honig.
1642
1643 v2.1 Tue Jan 28 11:00:14 PST 1992
1644
1645 - Internal release (never publicly exported).
1646
1647 v2.0.1 Sun Jan 26 21:10:10 PDT
1648
1649 - Various byte ordering fixes.
1650
1651 - Add truncation checks.
1652
1653 - inet.c: Support BSD style SIOCGIFCONF.
1654
1655 - nametoaddr.c: Handle multi addresses for single host.
1656
1657 - optimize.c: Rewritten.
1658
1659 - pcap-bpf.c: don't choke when we get ptraced. only set promiscuous
1660 for broadcast nets.
1661
1662 - print-atal.c: Fix an alignment bug (thanks to
1663 stanonik@nprdc.navy.mil) Add missing printf() argument.
1664
1665 - print-bootp.c: First attempt at decoding the vendor buffer.
1666
1667 - print-domain.c: Fix truncation checks.
1668
1669 - print-icmp.c: Calculate length of packets from the ip header.
1670
1671 - print-ip.c: Print frag id in decimal (so it's easier to match up
1672 with non-frags). Add support for ospf, egp and igmp.
1673
1674 - print-nfs.c: Lots of changes.
1675
1676 - print-ntp.c: Make some verbose output depend on -v.
1677
1678 - print-snmp.c: New version from John LoVerso.
1679
1680 - print-tcp.c: Print rfc1072 tcp options.
1681
1682 - tcpdump.c: Print "0x" prefix for %x formats. Always print 6 digits
1683 (microseconds) worth of precision. Fix uid bugs.
1684
1685 - A packet dumper has been added (thanks to Jeff Mogul of DECWRL).
1686 With this option, you can create an architecture independent binary
1687 trace file in real time, without the overhead of the packet printer.
1688 At a later time, the packets can be filtered (again) and printed.
1689
1690 - BSD is supported. You must have BPF in your kernel.
1691 Since the filtering is now done in the kernel, fewer packets are
1692 dropped. In fact, with BPF and the packet dumper option, a measly
1693 Sun 3/50 can keep up with a busy network.
1694
1695 - Compressed SLIP packets can now be dumped, provided you use our
1696 SLIP software and BPF. These packets are dumped as any other IP
1697 packet; the compressed headers are dumped with the '-e' option.
1698
1699 - Machines with little-endian byte ordering are supported (thanks to
1700 Jeff Mogul).
1701
1702 - Ultrix 4.0 is supported (also thanks to Jeff Mogul).
1703
1704 - IBM RT and Stanford Enetfilter support has been added by
1705 Rayan Zachariassen <rayan@canet.ca>. Tcpdump has been tested under
1706 both the vanilla Enetfilter interface, and the extended interface
1707 (#ifdef'd by IBMRTPC) present in the MERIT version of the Enetfilter.
1708
1709 - TFTP packets are now printed (requests only).
1710
1711 - BOOTP packets are now printed.
1712
1713 - SNMP packets are now printed. (thanks to John LoVerso of Xylogics).
1714
1715 - Sparc architectures, including the Sparcstation-1, are now
1716 supported thanks to Steve McCanne and Craig Leres.
1717
1718 - SunOS 4 is now supported thanks to Micky Liu of Columbia
1719 University (micky@cunixc.cc.columbia.edu).
1720
1721 - IP options are now printed.
1722
1723 - RIP packets are now printed.
1724
1725 - There's a -v flag that prints out more information than the
1726 default (e.g., it will enable printing of IP ttl, tos and id)
1727 and -q flag that prints out less (e.g., it will disable
1728 interpretation of AppleTalk-in-UDP).
1729
1730 - The grammar has undergone substantial changes (if you have an
1731 earlier version of tcpdump, you should re-read the manual
1732 entry).
1733
1734 The most useful change is the addition of an expression
1735 syntax that lets you filter on arbitrary fields or values in the
1736 packet. E.g., "ip[0] > 0x45" would print only packets with IP
1737 options, "tcp[13] & 3 != 0" would print only TCP SYN and FIN
1738 packets.
1739
1740 The most painful change is that concatenation no longer means
1741 "and" -- e.g., you have to say "host foo and port bar" instead
1742 of "host foo port bar". The up side to this down is that
1743 repeated qualifiers can be omitted, making most filter
1744 expressions shorter. E.g., you can now say "ip host foo and
1745 (bar or baz)" to look at ip traffic between hosts foo and bar or
1746 between hosts foo and baz. [The old way of saying this was "ip
1747 host foo and (ip host bar or ip host baz)".]
1748
1749 v2.0 Sun Jan 13 12:20:40 PST 1991
1750
1751 - Initial public release.