xref: /freebsd/contrib/libpcap/CHANGES (revision 6f9cba8f8b5efd16249633e52483ea351876b67b)
1*6f9cba8fSJoseph MingroneThursday, January 12, 2023 / The Tcpdump Group
2*6f9cba8fSJoseph Mingrone  Summary for 1.10.3 libpcap release
3*6f9cba8fSJoseph Mingrone    Source code:
4*6f9cba8fSJoseph Mingrone      Sort the PUBHDR variable in Makefile.in in "ls" order.
5*6f9cba8fSJoseph Mingrone      Fix typo in comment in pflog.h.
6*6f9cba8fSJoseph Mingrone      Remove two no-longer-present files from .gitignore.
7*6f9cba8fSJoseph Mingrone      Update code and comments for handling failure to set promiscuous
8*6f9cba8fSJoseph Mingrone        mode based on new information.
9*6f9cba8fSJoseph Mingrone    Building and testing:
10*6f9cba8fSJoseph Mingrone      install: Fixed not to install the non-public pcap-util.h header.
11*6f9cba8fSJoseph Mingrone      pcap-config: add a --version flag.
12*6f9cba8fSJoseph Mingrone      Makefile.in: Add some missing files in the distclean target.
13*6f9cba8fSJoseph Mingrone
14*6f9cba8fSJoseph MingroneSaturday, December 31, 2022 / The Tcpdump Group
15*6f9cba8fSJoseph Mingrone  Summary for 1.10.2 libpcap release
16*6f9cba8fSJoseph Mingrone    Source code:
17*6f9cba8fSJoseph Mingrone      Use __builtin_unreachable() in PCAP_UNREACHABLE.
18*6f9cba8fSJoseph Mingrone      Use AS_HELP_STRING macro instead of AC_HELP_STRING in the
19*6f9cba8fSJoseph Mingrone        configure scripts, to avoid deprecation warnings.
20*6f9cba8fSJoseph Mingrone      Change availability tags in pcap.h to make it easier to
21*6f9cba8fSJoseph Mingrone        arrange for it to be used in Darwin releases.
22*6f9cba8fSJoseph Mingrone      Use AS_HELP_STRING for --enable-remote.
23*6f9cba8fSJoseph Mingrone      Fix some formatting string issues found by cppcheck.
24*6f9cba8fSJoseph Mingrone      Various small code and comment cleanups.
25*6f9cba8fSJoseph Mingrone      Use PCAP_ERROR (defined as -1) rather than explicit -1 for
26*6f9cba8fSJoseph Mingrone        functions the documentation says return PCAP_ERROR.
27*6f9cba8fSJoseph Mingrone      Remove unused code from the filter compiler.
28*6f9cba8fSJoseph Mingrone      Use _declspec(deprecated(msg)) rather than __pragma(deprecated)
29*6f9cba8fSJoseph Mingrone        for Windows deprecation warnings, so the message that was
30*6f9cba8fSJoseph Mingrone        specified shows up.
31*6f9cba8fSJoseph Mingrone      diag-control.h: define PCAP_DO_PRAGMA() iff we're going to use it.
32*6f9cba8fSJoseph Mingrone      Use "%d" to print some signed ints.
33*6f9cba8fSJoseph Mingrone      Use the Wayback Machine for a removed document in a comment.
34*6f9cba8fSJoseph Mingrone      Add some const qualifiers.
35*6f9cba8fSJoseph Mingrone      RDMA: Use PRIu64 to print a uint64_t.
36*6f9cba8fSJoseph Mingrone    "Dead" pcap_ts from pcap_open_dead() and ..._with_tstamp_precision():
37*6f9cba8fSJoseph Mingrone        Don't crash if pcap_breakloop() is called.
38*6f9cba8fSJoseph Mingrone    Savefiles:
39*6f9cba8fSJoseph Mingrone      Fix pcap_dispatch() to return number of packets processed, rather
40*6f9cba8fSJoseph Mingrone        than 0, even at EOF.
41*6f9cba8fSJoseph Mingrone      If we get an error writing the packet header, don't write the
42*6f9cba8fSJoseph Mingrone        packet data.
43*6f9cba8fSJoseph Mingrone      Put PFLOG UID and PID values in the header into host byte order
44*6f9cba8fSJoseph Mingrone        when reading a LINKTYPE_PFLOG file.
45*6f9cba8fSJoseph Mingrone      Put CAN ID field in CAN pseudo-headers for LINUX_SLL2, as we do
46*6f9cba8fSJoseph Mingrone        for LINUX_SLL.
47*6f9cba8fSJoseph Mingrone      Fix inorrectly-computed "real" length for isochronous USB
48*6f9cba8fSJoseph Mingrone        transfers when reading savefiles.
49*6f9cba8fSJoseph Mingrone      Don't crash if pcap_can_set_rfmon() is called.
50*6f9cba8fSJoseph Mingrone      Fix pcap_offline_read() loop.
51*6f9cba8fSJoseph Mingrone    Capture:
52*6f9cba8fSJoseph Mingrone      Never process more than INT_MAX packets in a pcap_dispatch() call,
53*6f9cba8fSJoseph Mingrone        to avoid integer overflow (issue #1087).
54*6f9cba8fSJoseph Mingrone      Improve error messages for "no such device" and "permission
55*6f9cba8fSJoseph Mingrone        denied" errors.
56*6f9cba8fSJoseph Mingrone      SITA: Fix a typo in a variable name.
57*6f9cba8fSJoseph Mingrone    Packet filtering:
58*6f9cba8fSJoseph Mingrone      Get PFLOG header length from the length value in the header.
59*6f9cba8fSJoseph Mingrone      Support all the direction, reason, and action types supported by
60*6f9cba8fSJoseph Mingrone        all systems that support PFLOG.
61*6f9cba8fSJoseph Mingrone      Don't require PFLOG support on the target machine in order to
62*6f9cba8fSJoseph Mingrone        support PFLOG filtering (also fixes issue #1076).
63*6f9cba8fSJoseph Mingrone      Expand abbreviations into "proto X" properly.
64*6f9cba8fSJoseph Mingrone      gencode.c: Update a comment about the VLAN TPID test.
65*6f9cba8fSJoseph Mingrone      Add the minimum and maximum matching DLTs to an error message.
66*6f9cba8fSJoseph Mingrone    Linux:
67*6f9cba8fSJoseph Mingrone      Fix memory leak in capture device open (pull request #1038).
68*6f9cba8fSJoseph Mingrone      Fix detection of CAN/CAN FD packets in direction check (issue
69*6f9cba8fSJoseph Mingrone        #1051).
70*6f9cba8fSJoseph Mingrone      Fix double-free crashes on errors such as running on a kernel with
71*6f9cba8fSJoseph Mingrone        CONFIG_PACKET_MMAP not configured (issue #1054).
72*6f9cba8fSJoseph Mingrone      Use DLT_CAN_SOCKETCAN for CANbus interfaces (issue #1052; includes
73*6f9cba8fSJoseph Mingrone        changes from pull request #1035).
74*6f9cba8fSJoseph Mingrone      Make sure the CANFD_FDF can be relied on to indicate whether a
75*6f9cba8fSJoseph Mingrone        CANbus packet is a CAN frame or a CAN FD frame
76*6f9cba8fSJoseph Mingrone      Improve error message for "out of memory" errors for kernel
77*6f9cba8fSJoseph Mingrone        filters (see issue #1089).
78*6f9cba8fSJoseph Mingrone      Fix pcap_findalldevs() to find usbmon devices.
79*6f9cba8fSJoseph Mingrone      Fix handling of VLAN tagged packets if the link-layer type is
80*6f9cba8fSJoseph Mingrone        changed from DLT_LINUX_SLL to DLT_LINUX_SLL2 (see issue #1105).
81*6f9cba8fSJoseph Mingrone      Always turn on PACKET_AUXDATA (see issue #1105).
82*6f9cba8fSJoseph Mingrone      We require 2.6.27 or later, so PACKET_RESERVE is available.
83*6f9cba8fSJoseph Mingrone      Make sure there's reserved space for a DLT_LINUX_SLL2 header
84*6f9cba8fSJoseph Mingrone        when capturing.
85*6f9cba8fSJoseph Mingrone      Correctly compute the "real" length for isochronous USB transfers.
86*6f9cba8fSJoseph Mingrone      Don't have an eventfd descriptor open in non-blocking mode, so as
87*6f9cba8fSJoseph Mingrone        not to waste descriptors.
88*6f9cba8fSJoseph Mingrone      netfilter: Squelch a narrowing warning (To be look at before 2038).
89*6f9cba8fSJoseph Mingrone    BPF capture (*BSD, macOS, AIX, Solaris 11):
90*6f9cba8fSJoseph Mingrone      Fix case where a device open might fail, rather than falling back
91*6f9cba8fSJoseph Mingrone        to a smaller buffer size, when the initial buffer size is too
92*6f9cba8fSJoseph Mingrone        big.
93*6f9cba8fSJoseph Mingrone      Use an unsigned device number to iterate over BPF devices, to
94*6f9cba8fSJoseph Mingrone        squelch a compiler warning.
95*6f9cba8fSJoseph Mingrone    NetBSD:
96*6f9cba8fSJoseph Mingrone      Fix handling of LINKTYPE_HDLC/DLT_HDLC.
97*6f9cba8fSJoseph Mingrone    rpcap:
98*6f9cba8fSJoseph Mingrone      Fix unaligned accesses in rpcapd (pull request #1037).
99*6f9cba8fSJoseph Mingrone      Fix code to process port number.
100*6f9cba8fSJoseph Mingrone      Clean up findalldevs code in rpcapd.
101*6f9cba8fSJoseph Mingrone      Clean up bufferizing code.
102*6f9cba8fSJoseph Mingrone      Fix a file descriptor/handle leak in pcap_findalldevs_ex()
103*6f9cba8fSJoseph Mingrone        (Coverity CID 1507240).
104*6f9cba8fSJoseph Mingrone      Improve error messages for host and port resolution errors.
105*6f9cba8fSJoseph Mingrone      Fix connect code not to fail if both IPv4 and IPv6 addresses are
106*6f9cba8fSJoseph Mingrone        tried.
107*6f9cba8fSJoseph Mingrone      Improve connect failure error message.
108*6f9cba8fSJoseph Mingrone      Provide an error message for a bad authentication reply size.
109*6f9cba8fSJoseph Mingrone      For link-layer types with host-endian fields in the header, fix
110*6f9cba8fSJoseph Mingrone        those fields if capturing from a server with a different byte
111*6f9cba8fSJoseph Mingrone        order.
112*6f9cba8fSJoseph Mingrone      Suppress temporarily the warnings with "enable remote packet capture".
113*6f9cba8fSJoseph Mingrone    Windows:
114*6f9cba8fSJoseph Mingrone      Add support for NdisMediumIP (pull request #1027).
115*6f9cba8fSJoseph Mingrone      Don't require applications using pcap to be built with VS 2015 or
116*6f9cba8fSJoseph Mingrone        later.
117*6f9cba8fSJoseph Mingrone      Use the correct string for the DLL VersionInfo.
118*6f9cba8fSJoseph Mingrone      Remove unnecessary DllMain() function.
119*6f9cba8fSJoseph Mingrone      Correctly handle ERROR_INVALID_FUNCTION from
120*6f9cba8fSJoseph Mingrone        PacketGetTimestampModes() (indicate that WinPcap or an older
121*6f9cba8fSJoseph Mingrone        version of Npcap is probably installed).
122*6f9cba8fSJoseph Mingrone      Fix use-after-free in some cases when a pcap_t is closed.
123*6f9cba8fSJoseph Mingrone      Make sure an error is returned by pcap_create_interface() if
124*6f9cba8fSJoseph Mingrone        PacketOpenAdapter() fails.
125*6f9cba8fSJoseph Mingrone      Return an error if the driver reports 0 timestamp modes supported.
126*6f9cba8fSJoseph Mingrone      Close the ADAPTER handle for some errors in
127*6f9cba8fSJoseph Mingrone        pcap_create_interface().
128*6f9cba8fSJoseph Mingrone      Get rid of old umaintained VS project files.
129*6f9cba8fSJoseph Mingrone      Fix deprecation warning for pcap_handle().
130*6f9cba8fSJoseph Mingrone      Npcap is now at npcap.com, not npcap.org.
131*6f9cba8fSJoseph Mingrone      Make sure "no such device" and "no permission to open device"
132*6f9cba8fSJoseph Mingrone        errors show up in pcap_activate(), not pcap_create() (fixes,
133*6f9cba8fSJoseph Mingrone        among other things, tcpdump -i <interface-number>).
134*6f9cba8fSJoseph Mingrone      npcap: squelch deprecation warnings for kernel dump mode.
135*6f9cba8fSJoseph Mingrone    Haiku:
136*6f9cba8fSJoseph Mingrone      Implement pcap_lib_version(), as now required.
137*6f9cba8fSJoseph Mingrone      Handle negative or too-large snaplen values.
138*6f9cba8fSJoseph Mingrone      Fix various build issues and warnings.
139*6f9cba8fSJoseph Mingrone    Building and testing:
140*6f9cba8fSJoseph Mingrone      Update configure-time universal build checks for macOS.
141*6f9cba8fSJoseph Mingrone      Update config.guess and config.sub.
142*6f9cba8fSJoseph Mingrone      If we look for an SSL library with pkg-config in configure script,
143*6f9cba8fSJoseph Mingrone        try pkg-config first.
144*6f9cba8fSJoseph Mingrone      If we have pkg-config and Homebrew, try to set pkg-config up to
145*6f9cba8fSJoseph Mingrone        find Homebrew packages.
146*6f9cba8fSJoseph Mingrone      Handle some Autoconf/make errors better.
147*6f9cba8fSJoseph Mingrone      Use "git archive" for the "make releasetar" process.
148*6f9cba8fSJoseph Mingrone      Remove the release candidate rcX targets.
149*6f9cba8fSJoseph Mingrone      Fix compiling on Solaris 9/SPARC and 11/AMD64.
150*6f9cba8fSJoseph Mingrone      Address assorted compiler warnings.
151*6f9cba8fSJoseph Mingrone      Fix cross-building on Linux for Windows with mingw32 for Win64
152*6f9cba8fSJoseph Mingrone        (pull request #1031).
153*6f9cba8fSJoseph Mingrone      Properly set installation directory on Windows when not compiling
154*6f9cba8fSJoseph Mingrone        with MSVC.
155*6f9cba8fSJoseph Mingrone      Fix configure script checks for compiler flags.
156*6f9cba8fSJoseph Mingrone      Give more details if check for usable (F)Lex fails.
157*6f9cba8fSJoseph Mingrone      Fix compiling with GCC 4.6.4.
158*6f9cba8fSJoseph Mingrone      Don't use add_compile_options() with CMake, as we currently don't
159*6f9cba8fSJoseph Mingrone        require 2.8.12, where it first appeared.
160*6f9cba8fSJoseph Mingrone      Don't provide -L/usr/lib for pkg-config --libs in pkg-config.
161*6f9cba8fSJoseph Mingrone      Fix error message for inadequate Bison/Berkeley YACC.
162*6f9cba8fSJoseph Mingrone      configure: correctly do some DPDK checks.
163*6f9cba8fSJoseph Mingrone      Only use pkg-config when checking for DPDK.
164*6f9cba8fSJoseph Mingrone      Allow the path in which DPDK is installed to be specified.
165*6f9cba8fSJoseph Mingrone      Use pkg-config first when checking for libibverbs.
166*6f9cba8fSJoseph Mingrone      CMake: fix check for libibverbs with Sun's C compiler.
167*6f9cba8fSJoseph Mingrone      Have CMake warn if no capture mechanism can be found.
168*6f9cba8fSJoseph Mingrone      Don't do stuff requiring 3.19 or later on earlier CMakes.
169*6f9cba8fSJoseph Mingrone      Squelch some CMake warnings.
170*6f9cba8fSJoseph Mingrone      Fix diag-control.h to handle compiling with clang-cl (issues
171*6f9cba8fSJoseph Mingrone        #1101 and #1115).
172*6f9cba8fSJoseph Mingrone      Cleanup various leftover cruft in the configure script.
173*6f9cba8fSJoseph Mingrone      Fix building without protochain support. (GH #852)
174*6f9cba8fSJoseph Mingrone      Check for a usable YACC (or Bison) and {F}lex in CMake, as we do
175*6f9cba8fSJoseph Mingrone        in autotools.
176*6f9cba8fSJoseph Mingrone      Only check for a C++ compiler on Haiku, as that's the only
177*6f9cba8fSJoseph Mingrone        platform with C++ code, and make sure they generate code for
178*6f9cba8fSJoseph Mingrone        the same instruction set bit-width (both 32-bit or both 64-bit)
179*6f9cba8fSJoseph Mingrone        (issue #1112).
180*6f9cba8fSJoseph Mingrone      On Solaris, check the target bit-width and set PKG_CONFIG_PATH
181*6f9cba8fSJoseph Mingrone        appropriately, to handle the mess that is the D-Bus library
182*6f9cba8fSJoseph Mingrone        package (issue #1112).
183*6f9cba8fSJoseph Mingrone      Fix generation of pcap-config and libpcap.pc files (issue #1062).
184*6f9cba8fSJoseph Mingrone      pcap-config: don't assume the system library directory is /usr/lib.
185*6f9cba8fSJoseph Mingrone      pcap-config: add a --static-pcap-only flag.
186*6f9cba8fSJoseph Mingrone      Cirrus CI: Use the same configuration as for the main branch.
187*6f9cba8fSJoseph Mingrone      Add four libpcap test files.
188*6f9cba8fSJoseph Mingrone      Update Npcap SDK to 1.13.
189*6f9cba8fSJoseph Mingrone      Makefile.in: Use TEST_DIST, like for tcpdump.
190*6f9cba8fSJoseph Mingrone      Remove awk code from mkdep.
191*6f9cba8fSJoseph Mingrone      Cirrus CI: Add the libssl-dev package in the Linux task.
192*6f9cba8fSJoseph Mingrone      Cirrus CI: Add the openssl@3 brew package in the macOS task.
193*6f9cba8fSJoseph Mingrone      Get "make shellcheck" to pass again.
194*6f9cba8fSJoseph Mingrone      CMake: Build valgrindtest only if Autoconf would.
195*6f9cba8fSJoseph Mingrone      CMake: use ${CMAKE_INSTALL_SBINDIR} rather than just sbin.
196*6f9cba8fSJoseph Mingrone      CMake: use NUL: as the null device on Windows.
197*6f9cba8fSJoseph Mingrone      autoconf: fix typo in test of macOS version.
198*6f9cba8fSJoseph Mingrone      Makefile.in: Add two missing files in EXTRA_DIST.
199*6f9cba8fSJoseph Mingrone      autotools, cmake: provide an rpath option if necessary.
200*6f9cba8fSJoseph Mingrone      configure: get rid of the attempt to auto-run PKG_PROG_PKG_CONFIG.
201*6f9cba8fSJoseph Mingrone      configure: use PKG_CHECK_MODULES to run pkg-config.
202*6f9cba8fSJoseph Mingrone    Documentation:
203*6f9cba8fSJoseph Mingrone      Add README.solaris.md.
204*6f9cba8fSJoseph Mingrone      Add SCTP to pcap-filter(7).
205*6f9cba8fSJoseph Mingrone      Note that = and == are the same operator in filters (issue #1044).
206*6f9cba8fSJoseph Mingrone      Update INSTALL.md, README.md, and README.solaris.md.
207*6f9cba8fSJoseph Mingrone      Update and clean up CONTRIBUTING.md.
208*6f9cba8fSJoseph Mingrone      Trim documentation of support for now-dead UN*Xe and older
209*6f9cba8fSJoseph Mingrone        versions of other UN*Xes.
210*6f9cba8fSJoseph Mingrone      Move the "how to allocate a LINKTYPE_/DLT_ value" documentation to
211*6f9cba8fSJoseph Mingrone        the web site.
212*6f9cba8fSJoseph Mingrone      Clean up man pages.
213*6f9cba8fSJoseph Mingrone      Move README.capture-module to the web site.
214*6f9cba8fSJoseph Mingrone      Improve some protocol details in pcap-filter(7).
215*6f9cba8fSJoseph Mingrone      Refine "relop" notes in pcap-filter(7).
216*6f9cba8fSJoseph Mingrone      In pcap-filter(7) "domain" is an id.
217*6f9cba8fSJoseph Mingrone      Discuss backward compatibility in pcap-filter(7).
218*6f9cba8fSJoseph Mingrone      Other improvements to pcap-filter(7).
219*6f9cba8fSJoseph Mingrone      Document pcap_breakloop(3PCAP) interaction with threads better.
220*6f9cba8fSJoseph Mingrone      Document PCAP_ERROR_NOT_ACTIVATED for more routines.
221*6f9cba8fSJoseph Mingrone
222*6f9cba8fSJoseph MingroneWednesday, June 9, 2021:
223*6f9cba8fSJoseph Mingrone  Summary for 1.10.1 libpcap release:
224*6f9cba8fSJoseph Mingrone    Packet filtering:
225*6f9cba8fSJoseph Mingrone      Fix "type XXX subtype YYY" giving a parse error
226*6f9cba8fSJoseph Mingrone    Source code:
227*6f9cba8fSJoseph Mingrone      Add PCAP_AVAILABLE_1_11.
228*6f9cba8fSJoseph Mingrone    Building and testing:
229*6f9cba8fSJoseph Mingrone      Rename struct bpf_aux_data to avoid NetBSD compile errors
230*6f9cba8fSJoseph Mingrone      Squelch some compiler warnings
231*6f9cba8fSJoseph Mingrone      Squelch some Bison warnings
232*6f9cba8fSJoseph Mingrone      Fix cross-builds with older kernels lacking BPF_MOD and BPF_XOR
233*6f9cba8fSJoseph Mingrone      Fix Bison detection for minor version 0.
234*6f9cba8fSJoseph Mingrone      Fix parallel build with FreeBSD make.
235*6f9cba8fSJoseph Mingrone      Get DLT_MATCHING_MAX right in gencode.c on NetBSD.
236*6f9cba8fSJoseph Mingrone      Define timeradd() and timersub() if necessary.
237*6f9cba8fSJoseph Mingrone      Fix Cygwin/MSYS target directories.
238*6f9cba8fSJoseph Mingrone      Fix symlinking with DESTDIR.
239*6f9cba8fSJoseph Mingrone      Fix generation of libpcap.pc with CMake when not building a shared
240*6f9cba8fSJoseph Mingrone          library.
241*6f9cba8fSJoseph Mingrone      Check for Arm64 as well as x86-64 when looking for packet.lib on
242*6f9cba8fSJoseph Mingrone          Windows.
243*6f9cba8fSJoseph Mingrone    Documentation:
244*6f9cba8fSJoseph Mingrone      Refine Markdown in README.md.
245*6f9cba8fSJoseph Mingrone      Improve the description of portrange in filters.
246*6f9cba8fSJoseph Mingrone      README.linux.md isn't Markdown, rename it just README.linux.
247*6f9cba8fSJoseph Mingrone    pcapng:
248*6f9cba8fSJoseph Mingrone      Support reading version 1.2, which some writers produce, and which
249*6f9cba8fSJoseph Mingrone          is the same as 1.0 (some new block types were added, but
250*6f9cba8fSJoseph Mingrone          that's not sufficient reason to bump the minor version number,
251*6f9cba8fSJoseph Mingrone          as code that understands those new block types can handle them
252*6f9cba8fSJoseph Mingrone          in a 1.0 file)
253*6f9cba8fSJoseph Mingrone    Linux:
254*6f9cba8fSJoseph Mingrone      Drop support for text-mode USB captures, as we require a 2.6.27
255*6f9cba8fSJoseph Mingrone          or later kernel (credit to Chaoyuan Peng for noting the
256*6f9cba8fSJoseph Mingrone          sscanf vulnerabilities in the text-mode code that got me to
257*6f9cba8fSJoseph Mingrone          realize that we didn't need this code any more)
258*6f9cba8fSJoseph Mingrone      Bluetooth: fix non-blocking mode.
259*6f9cba8fSJoseph Mingrone      Don't assume that all compilers used to build for Linux support
260*6f9cba8fSJoseph Mingrone          the __atomic builtins
261*6f9cba8fSJoseph Mingrone    Windows:
262*6f9cba8fSJoseph Mingrone      Add more information in "interface disappeared" error messages, in
263*6f9cba8fSJoseph Mingrone        the hopes of trying to figure out the cause.
264*6f9cba8fSJoseph Mingrone      Treat ERROR_DEVICE_REMOVED as "device was removed".
265*6f9cba8fSJoseph Mingrone      Indicate in the error message which "device was removed" error
266*6f9cba8fSJoseph Mingrone          occurred.
267*6f9cba8fSJoseph Mingrone      Report the Windows error status if PacketSendPacket() fails.
268*6f9cba8fSJoseph Mingrone      Use %lu for ULONGs in error message formats.
269*6f9cba8fSJoseph Mingrone      Don't treat the inability to find airpcap.dll as an error.
270*6f9cba8fSJoseph Mingrone      Ignore spurious error reports by Microsoft Surface mobile
271*6f9cba8fSJoseph Mingrone          telephony modem driver
272*6f9cba8fSJoseph Mingrone    rpcap:
273*6f9cba8fSJoseph Mingrone      Clean up error checking and error messages for server address
274*6f9cba8fSJoseph Mingrone          lookup.
275*6f9cba8fSJoseph Mingrone
276*6f9cba8fSJoseph MingroneTuesday, December 29, 2020
277*6f9cba8fSJoseph Mingrone  Summary for 1.10.0 libpcap release
278*6f9cba8fSJoseph Mingrone    Add support for capturing on DPDK devices
279*6f9cba8fSJoseph Mingrone    Label most APIs by the first release in which they're available
280*6f9cba8fSJoseph Mingrone    Fix some memory leaks, including in pcap_compile()
281*6f9cba8fSJoseph Mingrone    Add pcap_datalink_val_to_description_or_dlt()
282*6f9cba8fSJoseph Mingrone    Handle the pcap private data in a fashion that makes fewer
283*6f9cba8fSJoseph Mingrone       assumptions about memory layouts (might fix GitHub issue #940
284*6f9cba8fSJoseph Mingrone       on ARM)
285*6f9cba8fSJoseph Mingrone    Fix some thread safety issues
286*6f9cba8fSJoseph Mingrone    pcap_findalldevs(): don't sort interfaces by unit number
287*6f9cba8fSJoseph Mingrone    Always return a list of supported time-stamp types, even if only
288*6f9cba8fSJoseph Mingrone        host time stamps are supported
289*6f9cba8fSJoseph Mingrone    Increase the maximum snaplen for LINKTYPE_USBPCAP/DLT_USBPCAP
290*6f9cba8fSJoseph Mingrone    Report the DLT description in error messages
291*6f9cba8fSJoseph Mingrone    Add pcap_init() for first-time initialization and global option
292*6f9cba8fSJoseph Mingrone        setting; it's not required, but may be used
293*6f9cba8fSJoseph Mingrone    Remove (unused) SITA support
294*6f9cba8fSJoseph Mingrone    Capture file reading:
295*6f9cba8fSJoseph Mingrone        Correctly handle pcapng captures with more than one IDB with a
296*6f9cba8fSJoseph Mingrone            snspshot length greater than the supported maximum
297*6f9cba8fSJoseph Mingrone    Capture file writing:
298*6f9cba8fSJoseph Mingrone        Create the file in pcap_dump_open_append() if it doesn't exist
299*6f9cba8fSJoseph Mingrone    Packet filtering:
300*6f9cba8fSJoseph Mingrone        Fix "unknown ether proto 'aarp'"
301*6f9cba8fSJoseph Mingrone        Add a new filter "ifindex" for DLT_LINUX_SLL2 files on all
302*6f9cba8fSJoseph Mingrone            platforms and live Linux captures
303*6f9cba8fSJoseph Mingrone        Add a hack to the optimizer to try to catch certain optimizer
304*6f9cba8fSJoseph Mingrone            loops (should prevent GitHub issue #112)
305*6f9cba8fSJoseph Mingrone        Show special Linux BPF offsets symbolically in bpf_image() and
306*6f9cba8fSJoseph Mingrone            bpf_dump()
307*6f9cba8fSJoseph Mingrone        Added support for ICMPv6 types 1-4 as tokens with names
308*6f9cba8fSJoseph Mingrone        Remove undocumented and rather old "ether proto" protocols
309*6f9cba8fSJoseph Mingrone        Catch invalid IPv4 addresses in filters
310*6f9cba8fSJoseph Mingrone        Don't assume ARM supports unaligned accesses
311*6f9cba8fSJoseph Mingrone    Security and other issues found by analysis:
312*6f9cba8fSJoseph Mingrone        Fix various security issues reported by Charles Smith at Tangible
313*6f9cba8fSJoseph Mingrone            Security
314*6f9cba8fSJoseph Mingrone        Fix various security issues reported by Include Security
315*6f9cba8fSJoseph Mingrone        Fix some issues found by cppcheck.
316*6f9cba8fSJoseph Mingrone        Add some overflow checks in the optimizer
317*6f9cba8fSJoseph Mingrone    rpcap:
318*6f9cba8fSJoseph Mingrone        Support rpcap-over-TLS
319*6f9cba8fSJoseph Mingrone        Redo protocol version negotiation to avoid problems with old
320*6f9cba8fSJoseph Mingrone            servers (it still works with servers using the old negotiation,
321*6f9cba8fSJoseph Mingrone            as well as servers not supporting negotiation)
322*6f9cba8fSJoseph Mingrone        Error handling cleanups
323*6f9cba8fSJoseph Mingrone        Add some new authentication libpcap error codes for specific
324*6f9cba8fSJoseph Mingrone            errors
325*6f9cba8fSJoseph Mingrone        Fix some inetd issues in rpcapd
326*6f9cba8fSJoseph Mingrone        Fix rpcapd core dumps with invalid configuration file
327*6f9cba8fSJoseph Mingrone        On UN*X, don't have rpcapd tell the client why authentication
328*6f9cba8fSJoseph Mingrone            failed, so a brute-force attacker can't distinguish between
329*6f9cba8fSJoseph Mingrone            "unknown user name" and "known user name, wrong password"
330*6f9cba8fSJoseph Mingrone        Allow rpcapd to rebind more rapidly (GitHub issue #765)
331*6f9cba8fSJoseph Mingrone    Documentation:
332*6f9cba8fSJoseph Mingrone        Improve man pages, including adding backward compatibility notes
333*6f9cba8fSJoseph Mingrone    Building and testing:
334*6f9cba8fSJoseph Mingrone        Require, and assume, some level of C99 support in the C compiler
335*6f9cba8fSJoseph Mingrone        Require Visual Studio 2015 or later if using Visual Studio
336*6f9cba8fSJoseph Mingrone        Fix configure script issues, including with libnl on Linux
337*6f9cba8fSJoseph Mingrone        Fix CMake issues
338*6f9cba8fSJoseph Mingrone        Squelch complaints from Bison about "%define api.pure" being
339*6f9cba8fSJoseph Mingrone            deprecated
340*6f9cba8fSJoseph Mingrone        Fix compilation of pcap-tc.c
341*6f9cba8fSJoseph Mingrone    Linux:
342*6f9cba8fSJoseph Mingrone        Require PF_PACKET support, and kernel 2.6.27 or later
343*6f9cba8fSJoseph Mingrone        Handle systems without AF_INET or AF_UNIX socket support
344*6f9cba8fSJoseph Mingrone        Get rid of Wireless Extensions for turning monitor mode on
345*6f9cba8fSJoseph Mingrone        Proper memory sync for PACKET_MMAP (may prevent GitHub issue
346*6f9cba8fSJoseph Mingrone            #898)
347*6f9cba8fSJoseph Mingrone        Drop support for libnl 1 and 2.
348*6f9cba8fSJoseph Mingrone        Return error on interface going away, but not if it just went
349*6f9cba8fSJoseph Mingrone            down but is still present
350*6f9cba8fSJoseph Mingrone        Set socket protocol only after packet ring configured,
351*6f9cba8fSJoseph Mingrone            reducing bogus packet drop reports
352*6f9cba8fSJoseph Mingrone        Get ifdrop stats from sysfs.
353*6f9cba8fSJoseph Mingrone        When adjusting BPF programs, do not subtract the
354*6f9cba8fSJoseph Mingrone            SLL[2]_HDR_LEN if the location is negative (special metadata
355*6f9cba8fSJoseph Mingrone            offset), to preserve references to metadata; see
356*6f9cba8fSJoseph Mingrone            https://github.com/the-tcpdump-group/tcpdump/issues/480#issuecomment-486827278
357*6f9cba8fSJoseph Mingrone        Report a warning for unknown ARPHRD types
358*6f9cba8fSJoseph Mingrone        Have pcap_breakloop() forcibly break out of a sleeping
359*6f9cba8fSJoseph Mingrone            capture loop
360*6f9cba8fSJoseph Mingrone        Add support for DSA data link types
361*6f9cba8fSJoseph Mingrone        For raw USB bus capture, use the snapshot length to set the
362*6f9cba8fSJoseph Mingrone            buffer size, and set the len field to reflect the length
363*6f9cba8fSJoseph Mingrone            in the URB (GitHub issue #808)
364*6f9cba8fSJoseph Mingrone        With a timeout of zero, wait indefinitely
365*6f9cba8fSJoseph Mingrone        Clean up support for some non-GNU libc C libraries
366*6f9cba8fSJoseph Mingrone        Add DLT_LINUX_SLL2 for cooked-mode captures
367*6f9cba8fSJoseph Mingrone        Probe CONFIGURATION descriptor of connected USB devices
368*6f9cba8fSJoseph Mingrone        Treat EPERM on ethtool ioctls as meaning "not supported", as
369*6f9cba8fSJoseph Mingrone            permissions checks are done before checking whether the
370*6f9cba8fSJoseph Mingrone            ioctl is supported at all
371*6f9cba8fSJoseph Mingrone    macOS:
372*6f9cba8fSJoseph Mingrone        Cope with getting EPWROFF from SIOCGIFMEDIA
373*6f9cba8fSJoseph Mingrone        Treat EPERM on SIOCGIFMEDIA as meaning "not supported", as
374*6f9cba8fSJoseph Mingrone            permissions checks are done before checking whether the
375*6f9cba8fSJoseph Mingrone            ioctl is supported at all
376*6f9cba8fSJoseph Mingrone        Treat ENXIO when reading packets as meaning "the interface
377*6f9cba8fSJoseph Mingrone            was removed"
378*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
379*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
380*6f9cba8fSJoseph Mingrone    FreeBSD:
381*6f9cba8fSJoseph Mingrone        Treat ENXIO as meaning "the interface was removed"
382*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
383*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
384*6f9cba8fSJoseph Mingrone    NetBSD:
385*6f9cba8fSJoseph Mingrone        Treat ENXIO as meaning "the interface was removed"
386*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
387*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
388*6f9cba8fSJoseph Mingrone    OpenBSD:
389*6f9cba8fSJoseph Mingrone        Treat EIO as meaning "the interface was removed"
390*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
391*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
392*6f9cba8fSJoseph Mingrone    DragonFly BSD:
393*6f9cba8fSJoseph Mingrone        Treat ENXIO as meaning "the interface was removed"
394*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
395*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
396*6f9cba8fSJoseph Mingrone    Solaris:
397*6f9cba8fSJoseph Mingrone        Treat ENXIO as meaning "the interface was removed"
398*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
399*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
400*6f9cba8fSJoseph Mingrone    AIX:
401*6f9cba8fSJoseph Mingrone        Fix loading of BPF kernel extension
402*6f9cba8fSJoseph Mingrone        Treat ENXIO as meaning "the interface was removed"
403*6f9cba8fSJoseph Mingrone        Report "the interface disappeared", not "the interface went
404*6f9cba8fSJoseph Mingrone            down", if the interface was removed during a capture
405*6f9cba8fSJoseph Mingrone    Windows:
406*6f9cba8fSJoseph Mingrone        Make the snapshot length work even if pcap_setfilter()
407*6f9cba8fSJoseph Mingrone            isn't called
408*6f9cba8fSJoseph Mingrone        Fix compilation on Cygwin/MSYS
409*6f9cba8fSJoseph Mingrone        Add pcap_handle(), and deprecate pcap_fileno()
410*6f9cba8fSJoseph Mingrone        Report PCAP_ERROR_NO_SUCH_DEVICE for a non-existent device
411*6f9cba8fSJoseph Mingrone        Return an appropriate error message for device removed or
412*6f9cba8fSJoseph Mingrone            device unusable due to a suspend/resume
413*6f9cba8fSJoseph Mingrone        Report a warning for unknown NdisMedium types
414*6f9cba8fSJoseph Mingrone        Have pcap_breakloop() forcibly break out of a sleeping
415*6f9cba8fSJoseph Mingrone            capture loop
416*6f9cba8fSJoseph Mingrone        Clean up building DLL
417*6f9cba8fSJoseph Mingrone        Handle CRT mismatch for pcap_dump_fopen()
418*6f9cba8fSJoseph Mingrone        Map NdisMediumWirelessWan to DLT_RAW
419*6f9cba8fSJoseph Mingrone        Add AirPcap support in a module, rather than using
420*6f9cba8fSJoseph Mingrone            WinPcap/Npcap's support for it
421*6f9cba8fSJoseph Mingrone        Report the system error for PacketSetHwFilter() failures
422*6f9cba8fSJoseph Mingrone        Add support for getting and setting packet time stamp types
423*6f9cba8fSJoseph Mingrone            with Npcap
424*6f9cba8fSJoseph Mingrone        Have pcap_init() allow selecting whether the API should use
425*6f9cba8fSJoseph Mingrone            local code page strings or UTF-8 strings (including error
426*6f9cba8fSJoseph Mingrone            messages)
427*6f9cba8fSJoseph Mingrone    Haiku:
428*6f9cba8fSJoseph Mingrone        Add capture support
429*6f9cba8fSJoseph Mingrone
43057e22627SCy SchubertSunday, July 22, 2018
43157e22627SCy Schubert  Summary for 1.9.1 libpcap release
43257e22627SCy Schubert    Mention pcap_get_required_select_timeout() in the main pcap man page
43357e22627SCy Schubert    Fix pcap-usb-linux.c build on systems with musl
43457e22627SCy Schubert    Fix assorted man page and other documentation issues
43557e22627SCy Schubert    Plug assorted memory leaks
43657e22627SCy Schubert    Documentation changes to use https:
43757e22627SCy Schubert    Changes to how time stamp calculations are done
43857e22627SCy Schubert    Lots of tweaks to make newer compilers happier and warning-free and
43957e22627SCy Schubert        to fix instances of C undefined behavior
44057e22627SCy Schubert    Warn if AC_PROG_CC_C99 can't enable C99 support
44157e22627SCy Schubert    Rename pcap_set_protocol() to  pcap_set_protocol_linux().
44257e22627SCy Schubert    Align pcap_t private data on an 8-byte boundary.
44357e22627SCy Schubert    Fix various error messages
44457e22627SCy Schubert    Use 64-bit clean API in dag_findalldevs()
44557e22627SCy Schubert    Fix cleaning up after some errors
44657e22627SCy Schubert    Work around some ethtool ioctl bugs in newer Linux kernels (GitHub
44757e22627SCy Schubert        issue #689)
44857e22627SCy Schubert    Add backwards compatibility sections to some man pages (GitHub issue
44957e22627SCy Schubert        #745)
45057e22627SCy Schubert    Fix autotool configuration on AIX and macOS
45157e22627SCy Schubert    Don't export bpf_filter_with_aux_data() or struct bpf_aux_data;
45257e22627SCy Schubert        they're internal-only and subject to change
45357e22627SCy Schubert    Fix pcapng block size checking
45457e22627SCy Schubert    On macOS, don't build rpcapd or test programs any fatter than they
45557e22627SCy Schubert        need to be
45657e22627SCy Schubert    Fix reading of capture statistics for Linux USB
45757e22627SCy Schubert    Fix packet size values for Linux USB packets (GitHub issue #808)
458*6f9cba8fSJoseph Mingrone    Check only VID in VLAN test in filters (GitHub issue #461)
45957e22627SCy Schubert    Fix pcap_list_datalinks on 802.11 devices on macOS
46057e22627SCy Schubert    Fix overflows with very large snapshot length in pcap file
46157e22627SCy Schubert    Improve parsing of rpcapd configuration file (GitHub issue #767)
46257e22627SCy Schubert    Handle systems without strlcpy() or strlcat() better
46357e22627SCy Schubert    Fix crashes and other errors with invalid filter expressions
46457e22627SCy Schubert    Fix use of uninitialized file descriptor in remote capture
46557e22627SCy Schubert    Fix some CMake issues
46657e22627SCy Schubert    Fix some divide-by-zero issues with the filter compiler
46757e22627SCy Schubert    Work around a GNU libc bug in pcap_nametonetaddr()
46857e22627SCy Schubert    Add support for DLT_LINUX_SLL2
46957e22627SCy Schubert    Fix handling of the packet-count argument for Myricom SNF devices
47057e22627SCy Schubert    Fix --disable-rdma in configure script (GitHub issue #782)
47157e22627SCy Schubert    Fix compilation of TurboCap support (GitHub issue #764)
47257e22627SCy Schubert    Constify first argument to pcap_findalldevs_ex()
47357e22627SCy Schubert    Fix a number of issues when running rpcapd as an inetd-style daemon
47457e22627SCy Schubert    Fix CMake issues with D-Bus libraries
47557e22627SCy Schubert    In rpcapd, clean up termination of a capture session
47657e22627SCy Schubert    Redo remote capture protocol negotiation
47757e22627SCy Schubert    In rpcapd, report the same error for "invalid user name" and
47857e22627SCy Schubert        "invalid password", to make brute-forcing harder
47957e22627SCy Schubert    For remote captures, add an error code for "the server requires TLS"
48057e22627SCy Schubert    Fix pcap_dump_fopen() on Windows to avoid clashes between
48157e22627SCy Schubert        {Win,N}Pcap and application C runtimes
48257e22627SCy Schubert    Fix exporting of functions from Windows DLLs (GitHub issue #810)
48357e22627SCy Schubert    Fix building as part of Npcap
48457e22627SCy Schubert    Allow rpcapd to rebind more rapidly
48557e22627SCy Schubert    Fix building shared libpcap library on midipix (midipix.org)
48657e22627SCy Schubert    Fix hack to detect UTF-16LE adapter names on Windows not to go past
48757e22627SCy Schubert        the end of the string
48857e22627SCy Schubert    Fix handling of "wireless WAN" (mobile phone network modems) on
48957e22627SCy Schubert        Windows with WinPcap/Npcap (GitHub issue #824)
49057e22627SCy Schubert    Have pcap_dump_open_append() create the dump file if it doesn't
49157e22627SCy Schubert        exists (GitHub issue #247)
49257e22627SCy Schubert    Fix the maxmum snapshot length for DLT_USBPCAP
49357e22627SCy Schubert    Use -fPIC when building for 64-bit SPARC on Linux (GitHub issue #837)
49457e22627SCy Schubert    Fix CMake 64-bit library installation directory on some Linux
49557e22627SCy Schubert        distributions
49657e22627SCy Schubert    Boost the TPACKET_V3 timeout to the maximum if a timeout of 0 was
49757e22627SCy Schubert        specified
49857e22627SCy Schubert    Five CVE-2019-15161, CVE-2019-15162, CVE-2019-15163, CVE-2019-15164, CVE-2019-15165
49957e22627SCy Schubert    PCAPNG reader applies some sanity checks before doing malloc().
50057e22627SCy Schubert
50157e22627SCy SchubertSunday, June 24, 2018, by mcr@sandelman.ca
502b00ab754SHans Petter Selasky  Summary for 1.9.0 libpcap release
50357e22627SCy Schubert    Added testing system to libpcap, independent of tcpdump
50457e22627SCy Schubert    Changes to how pcap_t is activated
50557e22627SCy Schubert    Adding support for Large stream buffers on Endace DAG cards
506*6f9cba8fSJoseph Mingrone    Changes to BSD 3-clause license to 2-clause license
50757e22627SCy Schubert    Additions to TCP header parsing, per RFC3168
50857e22627SCy Schubert    Add CMake build process (extensive number of changes)
50957e22627SCy Schubert    Assign a value for OpenBSD DLT_OPENFLOW.
51057e22627SCy Schubert    Support setting non-blocking mode before activating.
51157e22627SCy Schubert    Extensive build support for Windows VS2010 and MINGW (many many changes, over many months)
51257e22627SCy Schubert    Added RPCAPD support when --enable-remote (default no)
51357e22627SCy Schubert    Add the rpcap daemon source and build instructions.
51457e22627SCy Schubert    Put back the greasy "save the capture filter string so we can tweak it"
51557e22627SCy Schubert        hack, that keeps libpcap from capturing rpcap traffic.
51657e22627SCy Schubert    Fixes for captures on MacOS, utun0
51757e22627SCy Schubert    fixes so that non-AF_INET addresses, are not ==AF_INET6 addresses.
51857e22627SCy Schubert    Add a linktype for IBM SDLC frames containing SNA PDUs.
51957e22627SCy Schubert    pcap_compile() in 1.8.0 and later is newly thread-safe.
52057e22627SCy Schubert    bound snaplen for linux tpacket_v2 to ~64k
52157e22627SCy Schubert    Make VLAN filter handle both metadata and inline tags
52257e22627SCy Schubert    D-Bus captures can now be up to 128MB in size
52357e22627SCy Schubert    Added LORATAP DLT value
524*6f9cba8fSJoseph Mingrone    Added DLT_VSOCK for https://qemu-project.org/Features/VirtioVsock
52557e22627SCy Schubert    probe_devices() fixes not to overrun buffer for name of device
52657e22627SCy Schubert    Add linux-specific pcap_set_protocol_linux() to allow specifying a specific capture protocol.
52757e22627SCy Schubert    RDMA sniffing support for pcap
52857e22627SCy Schubert    Add Nordic Semiconductor Bluetooth LE sniffer link-layer header type.
52957e22627SCy Schubert    fixes for reading /etc/ethers
53057e22627SCy Schubert    Make it possible to build on Windows without packet.dll.
53157e22627SCy Schubert    Add tests for large file support on UN*X.
53257e22627SCy Schubert    Solaris fixes to work with 2.8.6
53357e22627SCy Schubert    configuration test now looks for header files, not capture devices present
53457e22627SCy Schubert    Fix to work with Berkeley YACC.
53557e22627SCy Schubert    fixes for DragonBSD compilation of pcap-netmap.c
53657e22627SCy Schubert    Clean up the ether_hostton() stuff.
53757e22627SCy Schubert    Add an option to disable Linux memory-mapped capture support.
53857e22627SCy Schubert    Add DAG API support checks.
53957e22627SCy Schubert    Add Septel, Myricom SNF, and Riverbed TurboCap checks.
54057e22627SCy Schubert    Add checks for Linux USB, Linux Bluetooth, D-Bus, and RDMA sniffing support.
54157e22627SCy Schubert    Add a check for hardware time stamping on Linux.
54257e22627SCy Schubert    Don't bother supporting pre-2005 Visual Studio.
54357e22627SCy Schubert    Increased minimum autoconf version requirement to 2.64
54457e22627SCy Schubert    Add DLT value 273 for XRA-31 sniffer
54557e22627SCy Schubert    Clean up handing of signal interrupts in pcap_read_nocb_remote().
54657e22627SCy Schubert    Use the XPG 4.2 versions of the networking APIs in Solaris.
54757e22627SCy Schubert    Fix, and better explain, the "IPv6 means IPv6, not IPv4" option setting.
54857e22627SCy Schubert    Explicitly warn that negative packet buffer timeouts should not be used.
54957e22627SCy Schubert    rpcapd: Add support inetd-likes, including xinetd.conf, and systemd units
55057e22627SCy Schubert    Rename DLT_IEEE802_15_4 to DLT_IEEE802_15_4_WITHFCS.
55157e22627SCy Schubert    Add DISPLAYPORT AUX link type
55257e22627SCy Schubert    Remove the sunos4 kernel modules and all references to them.
55357e22627SCy Schubert    Add more interface flags to pcap_findalldevs().
55457e22627SCy Schubert  Summary for 1.9.0 libpcap release (to 2017-01-25 by guy@alum.mit.edu)
555b00ab754SHans Petter Selasky    Man page improvements
556b00ab754SHans Petter Selasky    Fix Linux cooked mode userspace filtering (GitHub pull request #429)
557b00ab754SHans Petter Selasky    Fix compilation if IPv6 support not enabled
558b00ab754SHans Petter Selasky    Fix some Linux memory-mapped capture buffer size issues
559b00ab754SHans Petter Selasky    Don't fail if kernel filter can't be set on Linux (GitHub issue
560b00ab754SHans Petter Selasky      #549)
561b00ab754SHans Petter Selasky    Improve sorting of interfaces for pcap_findalldevs()
562b00ab754SHans Petter Selasky    Don't list Linux usbmon devices if usbmon module isn't loaded
563b00ab754SHans Petter Selasky    Report PCAP_ERROR_PERM_DENIED if no permission to open Linux usbmon
564b00ab754SHans Petter Selasky      devices
565b00ab754SHans Petter Selasky    Fix DLT_ type for Solaris IPNET devices
566b00ab754SHans Petter Selasky    Always return an error message for errors finding DAG or Myricom
567b00ab754SHans Petter Selasky      devices
568b00ab754SHans Petter Selasky    If possible, don't require that a device be openable when
569b00ab754SHans Petter Selasky      enumerating them for pcap_findalldevs()
570b00ab754SHans Petter Selasky    Don't put incompletely-initialized addresses in the address list for
571b00ab754SHans Petter Selasky    When finding Myricom devices, update description for regular
572b00ab754SHans Petter Selasky      interfaces that are Myricom devices and handle SNF_FLAGS=0x2(port
573b00ab754SHans Petter Selasky      aggregation enabled)
574b00ab754SHans Petter Selasky    Fix compilation error in DAG support
575b00ab754SHans Petter Selasky    Fix issues with CMake configuration
576b00ab754SHans Petter Selasky    Add support for stream buffers larger than 2GB on newer DAG cards
577b00ab754SHans Petter Selasky    Remove support for building against DAG versions without STREAMS
578b00ab754SHans Petter Selasky      support (before dag-3.0.0 2007)
579b00ab754SHans Petter Selasky
580ada6f083SXin LITuesday, Oct. 25, 2016 mcr@sandelman.ca
581ada6f083SXin LI  Summary for 1.8.1 libpcap release
582ada6f083SXin LI    Add a target in Makefile.in for Exuberant Ctags use: 'extags'.
583ada6f083SXin LI    Rename configure.in to configure.ac: autoconf 2.59
584ada6f083SXin LI    Clean up the name-to-DLT mapping table.
585ada6f083SXin LI    Add some newer DLT_ values: IPMI_HPM_2,ZWAVE_R1_R2,ZWAVE_R3,WATTSTOPPER_DLM,ISO_14443,RDS
586ada6f083SXin LI    Clarify what the return values are for both success and failure.
587ada6f083SXin LI    Many changes to build on windows
588ada6f083SXin LI    Check for the "break the loop" condition in the inner loop for TPACKET_V3.
589ada6f083SXin LI    Fix handling of packet count in the TPACKET_V3 inner loop: GitHub issue #493.
590ada6f083SXin LI    Filter out duplicate looped back CAN frames.
591ada6f083SXin LI    Fix the handling of loopback filters for IPv6 packets.
592ada6f083SXin LI    Add a link-layer header type for RDS (IEC 62106) groups.
593ada6f083SXin LI    Use different intermediate folders for x86 and x64 builds on Windows.
594ada6f083SXin LI    On Linux, handle all CAN captures with pcap-linux.c, in cooked mode.
595ada6f083SXin LI    Removes the need for the "host-endian" link-layer header type.
596ada6f083SXin LI    Compile with '-Wused-but-marked-unused' in devel mode if supported
597ada6f083SXin LI    Have separate DLTs for big-endian and host-endian SocketCAN headers.
598ada6f083SXin LI    Reflect version.h being renamed to pcap_version.h.
599ada6f083SXin LI    Require that version.h be generated: all build procedures we support generate version.h (autoconf, CMake, MSVC)!
600ada6f083SXin LI    Properly check for sock_recv() errors.
601ada6f083SXin LI    Re-impose some of Winsock's limitations on sock_recv().
602ada6f083SXin LI    Replace sprintf() with pcap_snprintf().
603ada6f083SXin LI    Fix signature of pcap_stats_ex_remote().
604ada6f083SXin LI    Initial cmake support for remote packet capture.
605ada6f083SXin LI    Have rpcap_remoteact_getsock() return a SOCKET and supply an "is active" flag.
606ada6f083SXin LI    Clean up {DAG, Septel, Myricom SNF}-only builds.
607ada6f083SXin LI    Do UTF-16-to-ASCII conversion into the right place.
608ada6f083SXin LI    pcap_create_interface() needs the interface name on Linux.
609ada6f083SXin LI    Clean up hardware time stamp support: the "any" device does not support any time stamp types.
610ada6f083SXin LI    Add support for capturing on FreeBSD usbusN interfaces.
611ada6f083SXin LI    Add a LINKTYPE/DLT_ value for FreeBSD USB.
612ada6f083SXin LI    Go back to using PCAP_API on Windows.
613ada6f083SXin LI    CMake support
614ada6f083SXin LI    Add TurboCap support from WinPcap.
615ada6f083SXin LI    Recognize 802.1ad nested VLAN tag in vlan filter.
616ada6f083SXin LI
617ada6f083SXin LIThursday Sep. 3, 2015 guy@alum.mit.edu
618ada6f083SXin LI  Summary for 1.7.5 libpcap release
619ada6f083SXin LI	Man page cleanups.
620ada6f083SXin LI	Add some allocation failure checks.
621ada6f083SXin LI	Fix a number of Linux/ucLinux configure/build issues.
622ada6f083SXin LI	Fix some memory leaks.
623ada6f083SXin LI	Recognize 802.1ad nested VLAN tag in vlan filter.
624ada6f083SXin LI	Fix building Bluetooth Linux Monitor support with BlueZ 5.1+
625ada6f083SXin LI
626ada6f083SXin LISaturday Jun. 27, 2015 mcr@sandelman.ca
627ada6f083SXin LI  Summary for 1.7.4 libpcap release
628ada6f083SXin LI	Include fix for GitHub issue #424 -- out of tree builds.
629ada6f083SXin LI
630ada6f083SXin LIFriday Apr. 10, 2015 guy@alum.mit.edu
631ada6f083SXin LI  Summary for 1.7.3 libpcap release
632ada6f083SXin LI	Work around a Linux bonding driver bug.
633ada6f083SXin LI
634ada6f083SXin LIThursday Feb. 12, 2015 guy@alum.mit.edu/mcr@sandelman.ca
635ada6f083SXin LI  Summary for 1.7.2 libpcap release
636ada6f083SXin LI	Support for filtering Geneve encapsulated packets.
637ada6f083SXin LI	Generalize encapsulation handling, fixing some bugs.
638ada6f083SXin LI	Don't add null addresses to address lists.
639ada6f083SXin LI	Add pcap_dump_open_append() to open for appending.
640ada6f083SXin LI	Fix the swapping of isochronous descriptors in Linux USB.
641ada6f083SXin LI	Attempt to handle TPACKET_V1 with 32-bit userland and 64-bit kernel.
642ada6f083SXin LI
643ada6f083SXin LIWednesday Nov. 12, 2014 guy@alum.mit.edu/mcr@sandelman.ca
644ada6f083SXin LI  Summary for 1.7.0 libpcap release
645ada6f083SXin LI	Fix handling of zones for BPF on Solaris
646ada6f083SXin LI	new DLT for ZWAVE
647ada6f083SXin LI	clarifications for read timeouts.
648ada6f083SXin LI	Use BPF extensions in compiled filters, fixing VLAN filters
649ada6f083SXin LI	some fixes to compilation without stdint.h
650ada6f083SXin LI	EBUSY can now be returned by SNFv3 code.
651ada6f083SXin LI	Fix the range checks in BPF loads
652ada6f083SXin LI	Various DAG fixes.
653ada6f083SXin LI	Various Linux fixes.
654ada6f083SXin LI
655681ed54cSXin LIMonday Aug. 12, 2014 guy@alum.mit.edu
656ada6f083SXin LI  Summary for 1.6.2 libpcap release
657681ed54cSXin LI	Don't crash on filters testing a non-existent link-layer type
658681ed54cSXin LI	    field.
659681ed54cSXin LI	Fix sending in non-blocking mode on Linux with memory-mapped
660681ed54cSXin LI	    capture.
661681ed54cSXin LI	Fix timestamps when reading pcap-ng files on big-endian
662681ed54cSXin LI	    machines.
663681ed54cSXin LI
664681ed54cSXin LISaturday  Jul. 19, 2014 mcr@sandelman.ca
665ada6f083SXin LI  Summary for 1.6.1 libpcap release
666681ed54cSXin LI	some fixes for the any device
667ada6f083SXin LI	changes for how --enable-XXX (--enable-sniffing, --enable-can) works
668681ed54cSXin LI
669681ed54cSXin LIWednesday Jul. 2, 2014 mcr@sandelman.ca
670ada6f083SXin LI  Summary for 1.6.0 libpcap release
671681ed54cSXin LI        Don't support D-Bus sniffing on OS X
672681ed54cSXin LI        fixes for byte order issues with NFLOG captures
673681ed54cSXin LI        Handle using cooked mode for DLT_NETLINK in activate_new().
674681ed54cSXin LI        on platforms where you can not capture on down interfaces, do not list them
675681ed54cSXin LI        but: do list interfaces which are down, if you can capture on them!
676681ed54cSXin LI
677681ed54cSXin LIWednesday December 18, 2013 guy@alum.mit.edu
678681ed54cSXin LISummary for 1.5.3 libpcap release
679681ed54cSXin LI	Don't let packets that don't match the current filter get to the
680681ed54cSXin LI	    application when TPACKET_V3 is used. (GitHub issue #331)
681681ed54cSXin LI	Fix handling of pcap_loop()/pcap_dispatch() with a packet count
682681ed54cSXin LI	    of 0 on some platforms (including Linux with TPACKET_V3).
683681ed54cSXin LI	    (GitHub issue #333)
684681ed54cSXin LI	Work around TPACKET_V3 deficiency that causes packets to be lost
685681ed54cSXin LI	    when a timeout of 0 is specified. (GitHub issue #335)
686681ed54cSXin LI	Man page formatting fixes.
687681ed54cSXin LI
688681ed54cSXin LIWednesday December 4, 2013 guy@alum.mit.edu
689681ed54cSXin LISummary for 1.5.2 libpcap release
690681ed54cSXin LI	Fix libpcap to work when compiled with TPACKET_V3 support and
691681ed54cSXin LI	    running on a kernel without TPACKET_V3 support. (GitHub
692681ed54cSXin LI	    issue #329)
693681ed54cSXin LI
694681ed54cSXin LIWednesday November 20, 2013 guy@alum.mit.edu
695681ed54cSXin LISummary for 1.5.1 libpcap release
696681ed54cSXin LI	Report an error, rather than crashing, if an IPv6 address is
697681ed54cSXin LI	    used for link-layer filtering.  (Wireshark bug 9376)
698681ed54cSXin LI
699681ed54cSXin LIWednesday October 30, 2013 guy@alum.mit.edu
700681ed54cSXin LISummary for 1.5.0 libpcap release
701681ed54cSXin LI	TPACKET_V3 support added for Linux
702681ed54cSXin LI	Point users to the the-tcpdump-group repository on GitHub rather
703681ed54cSXin LI	    than the mcr repository
704681ed54cSXin LI	Checks added for malloc()/realloc()/etc. failures
705681ed54cSXin LI	Fixed build on Solaris 11
706*6f9cba8fSJoseph Mingrone	Support filtering E1 SS7 traffic on MTP2 layer Annex A
707681ed54cSXin LI	Use "ln -s" to link man pages by default
708681ed54cSXin LI        Add support for getting nanosecond-resolution time stamps when
709681ed54cSXin LI	    capturing and reading capture files
710681ed54cSXin LI        Many changes to autoconf to deal better with non-GCC compilers
711681ed54cSXin LI        added many new DLT types
712681ed54cSXin LI
713681ed54cSXin LISaturday April 6, 2013 guy@alum.mit.edu
714edc89b24SXin LISummary for 1.4.0 libpcap release
715edc89b24SXin LI	Add netfilter/nfqueue interface.
716edc89b24SXin LI	If we don't have support for IPv6 address resolution, support,
717edc89b24SXin LI	    in filter expressions, what IPv6 stuff we can.
718edc89b24SXin LI	Fix pcap-config to include -lpthread if canusb support is
719edc89b24SXin LI	    present
720edc89b24SXin LI	Try to fix "pcap_parse not defined" problems when --without-flex
721edc89b24SXin LI	    and --without-bison are used when you have Flex and Bison
722edc89b24SXin LI	Fix some issues with the pcap_loop man page.
723edc89b24SXin LI	Fix pcap_getnonblock() and pcap_setnonblock() to fill in the
724edc89b24SXin LI	    supplied error message buffer
725edc89b24SXin LI	Fix typo that, it appeared, would cause pcap-libdlpi.c not to
726edc89b24SXin LI	    compile (perhaps systems with libdlpi also have BPF and use
727edc89b24SXin LI	    that instead)
728edc89b24SXin LI	Catch attempts to call pcap_compile() on a non-activated pcap_t
729edc89b24SXin LI	Fix crash on Linux with CAN-USB support without usbfs
730edc89b24SXin LI	Fix addition of VLAN tags for Linux cooked captures
731edc89b24SXin LI	Check for both EOPNOTSUPP and EINVAL after SIOCETHTOOL ioctl, so
732edc89b24SXin LI	    that the driver can report either one if it doesn't support
733edc89b24SXin LI	    SIOCETHTOOL
734edc89b24SXin LI	Add DLT_INFINIBAND and DLT_SCTP
735edc89b24SXin LI	Describe "proto XXX" and "protochain XXX" in the pcap-filter man
736edc89b24SXin LI	    page
737edc89b24SXin LI	Handle either directories, or symlinks to directories, that
738edc89b24SXin LI	    correspond to interfaces in /sys/class/net
739edc89b24SXin LI	Fix handling of VLAN tag insertion to check, on Linux 3.x
740edc89b24SXin LI	    kernels, for VLAN tag valid flag
741edc89b24SXin LI	Clean up some man pages
742edc89b24SXin LI	Support libnl3 as well as libnl1 and libnl2 on Linux
743681ed54cSXin LI	Fix handling of Bluetooth devices on 3.x Linux kernels
744edc89b24SXin LI
74515752fa8SXin LIFriday  March 30, 2012.  mcr@sandelman.ca
74615752fa8SXin LISummary for 1.3.0 libpcap release
74715752fa8SXin LI        Handle DLT_PFSYNC in {FreeBSD, other *BSD+Mac OS X, other}.
74815752fa8SXin LI        Linux: Don't fail if netfilter isn't enabled in the kernel.
74915752fa8SXin LI        Add new link-layer type for NFC Forum LLCP.
75015752fa8SXin LI        Put the CANUSB stuff into EXTRA_DIST, so it shows up in the release tarball.
75115752fa8SXin LI        Add LINKTYPE_NG40/DLT_NG40.
75215752fa8SXin LI        Add DLT_MPEG_2_TS/LINKTYPE_MPEG_2_TS for MPEG-2 transport streams.
75315752fa8SXin LI        [PATCH] Fix AIX-3.5 crash with read failure during stress
75415752fa8SXin LI        AIX fixes.
75515752fa8SXin LI        Introduce --disable-shared configure option.
75615752fa8SXin LI        Added initial support for canusb devices.
75715752fa8SXin LI        Include the pcap(3PCAP) additions as 1.2.1 changes.
75815752fa8SXin LI        many updates to documentation: pcap.3pcap.in
75915752fa8SXin LI        Improve 'inbound'/'outbound' capture filters under Linux.
76015752fa8SXin LI        Note the cleanup of handling of new DLT_/LINKTYPE_ values.
76115752fa8SXin LI        On Lion, don't build for PPC.
76215752fa8SXin LI        For mac80211 devices we need to clean up monitor mode on exit.
76315752fa8SXin LI
764d1e87331SXin LIFriday  December 9, 2011.  guy@alum.mit.edu.
765d1e87331SXin LISummary for 1.2.1 libpcap release
766d1e87331SXin LI	Update README file.
767*6f9cba8fSJoseph Mingrone	Fix typos in README.linux file.
768d1e87331SXin LI	Clean up some compiler warnings.
769d1e87331SXin LI	Fix Linux compile problems and tests for ethtool.h.
770d1e87331SXin LI	Treat Debian/kFreeBSD and GNU/Hurd as systems with GNU
771d1e87331SXin LI	 toolchains.
772d1e87331SXin LI	Support 802.1 QinQ as a form of VLAN in filters.
773d1e87331SXin LI	Treat "carp" as equivalent to "vrrp" in filters.
774d1e87331SXin LI	Fix code generated for "ip6 protochain".
775d1e87331SXin LI	Add some new link-layer header types.
776d1e87331SXin LI	Support capturing NetFilter log messages on Linux.
777d1e87331SXin LI	Clean up some error messages.
778d1e87331SXin LI	Turn off monitor mode on exit for mac80211 interfaces on Linux.
779d1e87331SXin LI	Fix problems turning monitor mode on for non-mac80211 interfaces
780d1e87331SXin LI	 on Linux.
781d1e87331SXin LI	Properly fail if /sys/class/net or /proc/net/dev exist but can't
782d1e87331SXin LI	 be opened.
783d1e87331SXin LI	Fail if pcap_activate() is called on an already-activated
784d1e87331SXin LI	 pcap_t, and add a test program for that.
785d1e87331SXin LI	Fix filtering in pcap-ng files.
786d1e87331SXin LI	Don't build for PowerPC on Mac OS X Lion.
787d1e87331SXin LI	Simplify handling of new DLT_/LINKTYPE_ values.
788d1e87331SXin LI	Expand pcap(3PCAP) man page.
789d1e87331SXin LI
790d1e87331SXin LISunday  July 24, 2011.  mcr@sandelman.ca.
791d1e87331SXin LISummary for 1.2 libpcap release
792d1e87331SXin LI        All of the changes listed below for 1.1.1 and 1.1.2.
793d1e87331SXin LI        Changes to error handling for pcap_findalldevs().
794d1e87331SXin LI        Fix the calculation of the frame size in memory-mapped captures.
795d1e87331SXin LI        Add a link-layer header type for STANAG 5066 D_PDUs.
796d1e87331SXin LI        Add a link-layer type for a variant of 3GPP TS 27.010.
797d1e87331SXin LI        Noted real nature of LINKTYPE_ARCNET.
798d1e87331SXin LI        Add a link-layer type for DVB-CI.
799d1e87331SXin LI        Fix configure-script discovery of VLAN acceleration support.
800*6f9cba8fSJoseph Mingrone         see https://netoptimizer.blogspot.com/2010/09/tcpdump-vs-vlan-tags.html
801d1e87331SXin LI        Linux, HP-UX, AIX, NetBSD and OpenBSD compilation/conflict fixes.
802d1e87331SXin LI        Protect against including AIX 5.x's <net/bpf.h> having been included.
803d1e87331SXin LI        Add DLT_DBUS, for raw D-Bus messages.
804d1e87331SXin LI        Treat either EPERM or EACCES as "no soup for you".
805d1e87331SXin LI        Changes to permissions on DLPI systems.
806d1e87331SXin LI        Add DLT_IEEE802_15_4_NOFCS for 802.15.4 interfaces.
807d1e87331SXin LI
808d1e87331SXin LIFri.    August 6, 2010.  guy@alum.mit.edu.
809d1e87331SXin LISummary for 1.1.2 libpcap release
810d1e87331SXin LI	Return DLT_ values, not raw LINKTYPE_ values from
811d1e87331SXin LI	  pcap_datalink() when reading pcap-ng files
812d1e87331SXin LI	Add support for "wlan ra" and "wlan ta", to check the RA and TA
813d1e87331SXin LI	  of WLAN frames that have them
814d1e87331SXin LI	Don't crash if "wlan addr{1,2,3,4}" are used without 802.11
815d1e87331SXin LI	  headers
816d1e87331SXin LI	Do filtering on USB and Bluetooth capturing
817d1e87331SXin LI	On FreeBSD/SPARC64, use -fPIC - it's apparently necessary
818d1e87331SXin LI	Check for valid port numbers (fit in a 16-bit unsigned field) in
819d1e87331SXin LI	  "port" filters
820d1e87331SXin LI	Reject attempts to put savefiles into non-blocking mode
821d1e87331SXin LI	Check for "no such device" for the "get the media types" ioctl
822d1e87331SXin LI	  in *BSD
823d1e87331SXin LI	Improve error messages from bpf_open(), and let it do the error
824d1e87331SXin LI	  handling
825d1e87331SXin LI	Return more specific errors from pcap_can_set_rfmon(); fix
826d1e87331SXin LI	  documentation
827d1e87331SXin LI	Update description fetching code for FreeBSD, fix code for
828d1e87331SXin LI	  OpenBSD
829d1e87331SXin LI	Ignore /sys/net/dev files if we get ENODEV for them, not just
830d1e87331SXin LI	  ENXIO; fixes handling of bonding devices on Linux
831d1e87331SXin LI	Fix check for a constant 0 argument to BPF_DIV
832d1e87331SXin LI	Use the right version of ar when cross-building
833d1e87331SXin LI	Free any filter set on a savefile when the savefile is closed
834d1e87331SXin LI	Include the CFLAGS setting when configure was run in the
835d1e87331SXin LI	  compiler flags
836d1e87331SXin LI	Add support for 802.15.4 interfaces on Linux
837d1e87331SXin LI
838a0ee43a1SRui PauloThu.    April 1, 2010.  guy@alum.mit.edu.
839a0ee43a1SRui PauloSummary for 1.1.1 libpcap release
840a0ee43a1SRui Paulo	Update CHANGES to reflect more of the changes in 1.1.0.
841a0ee43a1SRui Paulo	Fix build on RHEL5.
842a0ee43a1SRui Paulo	Fix shared library build on AIX.
843a0ee43a1SRui Paulo
844a0ee43a1SRui PauloThu.	March 11, 2010.  ken@netfunctional.ca/guy@alum.mit.edu.
845a0ee43a1SRui PauloSummary for 1.1.0 libpcap release
846a0ee43a1SRui Paulo	Add SocketCAN capture support
847a0ee43a1SRui Paulo	Add Myricom SNF API support
848a0ee43a1SRui Paulo	Update Endace DAG and ERF support
849a0ee43a1SRui Paulo	Add support for shared libraries on Solaris, HP-UX, and AIX
850a0ee43a1SRui Paulo	Build, install, and un-install shared libraries by default;
851a0ee43a1SRui Paulo	  don't build/install shared libraries on platforms we don't support
852a0ee43a1SRui Paulo	Fix building from a directory other than the source directory
853a0ee43a1SRui Paulo	Fix compiler warnings and builds on some platforms
854a0ee43a1SRui Paulo	Update config.guess and config.sub
855a0ee43a1SRui Paulo	Support monitor mode on mac80211 devices on Linux
856a0ee43a1SRui Paulo	Fix USB memory-mapped capturing on Linux; it requires a new DLT_
857a0ee43a1SRui Paulo	  value
858a0ee43a1SRui Paulo	On Linux, scan /sys/class/net for devices if we have it; scan
859a0ee43a1SRui Paulo	  it, or /proc/net/dev if we don't have /sys/class/net, even if
860a0ee43a1SRui Paulo	  we have getifaddrs(), as it'll find interfaces with no
861a0ee43a1SRui Paulo	  addresses
862a0ee43a1SRui Paulo	Add limited support for reading pcap-ng files
863a0ee43a1SRui Paulo	Fix BPF driver-loading error handling on AIX
864a0ee43a1SRui Paulo	Support getting the full-length interface description on FreeBSD
865a0ee43a1SRui Paulo	In the lexical analyzer, free up any addrinfo structure we got back
866a0ee43a1SRui Paulo	  from getaddrinfo().
867a0ee43a1SRui Paulo	Add support for BPF and libdlpi in OpenSolaris (and SXCE)
868a0ee43a1SRui Paulo	Hyphenate "link-layer" everywhere
869a0ee43a1SRui Paulo	Add /sys/kernel/debug/usb/usbmon to the list of usbmon locations
870a0ee43a1SRui Paulo	In pcap_read_linux_mmap(), if there are no frames available, call
871a0ee43a1SRui Paulo	  poll() even if we're in non-blocking mode, so we pick up
872a0ee43a1SRui Paulo	  errors, and check for the errors in question.
873a0ee43a1SRui Paulo	Note that poll() works on BPF devices is Snow Leopard
874a0ee43a1SRui Paulo	If an ENXIO or ENETDOWN is received, it may mean the device has
875a0ee43a1SRui Paulo	  gone away.  Deal with it.
876a0ee43a1SRui Paulo	For BPF, raise the default capture buffer size to from 32k to 512k
877a0ee43a1SRui Paulo	Support ps_ifdrop on Linux
878a0ee43a1SRui Paulo	Added a bunch of #ifdef directives to make wpcap.dll (WinPcap) compile
879a0ee43a1SRui Paulo	 under cygwin.
880a0ee43a1SRui Paulo	Changes to Linux mmapped captures.
881a0ee43a1SRui Paulo	Fix bug where create_ring would fail for particular snaplen and
882a0ee43a1SRui Paulo	  buffer size combinations
883a0ee43a1SRui Paulo	Update pcap-config so that it handles libpcap requiring
884a0ee43a1SRui Paulo	  additional libraries
885a0ee43a1SRui Paulo	Add workaround for threadsafeness on Windows
886a0ee43a1SRui Paulo	Add missing mapping for DLT_ENC <-> LINKTYPE_ENC
887a0ee43a1SRui Paulo	DLT: Add DLT_CAN_SOCKETCAN
888a0ee43a1SRui Paulo	DLT: Add Solaris ipnet
889a0ee43a1SRui Paulo	Don't check for DLT_IPNET if it's not defined
890a0ee43a1SRui Paulo	Add link-layer types for Fibre Channel FC-2
891a0ee43a1SRui Paulo	Add link-layer types for Wireless HART
892a0ee43a1SRui Paulo	Add link-layer types for AOS
893a0ee43a1SRui Paulo	Add link-layer types for DECT
894a0ee43a1SRui Paulo	Autoconf fixes (AIX, HP-UX, OSF/1, Tru64 cleanups)
895a0ee43a1SRui Paulo	Install headers unconditionally, and include vlan.h/bluetooth.h if
896a0ee43a1SRui Paulo	  enabled
897a0ee43a1SRui Paulo	Autoconf fixes+cleanup
898a0ee43a1SRui Paulo	Support enabling/disabling bluetooth (--{en,dis}able-bluetooth)
899a0ee43a1SRui Paulo	Support disabling SITA support (--without-sita)
900a0ee43a1SRui Paulo	Return -1 on failure to create packet ring (if supported but
901a0ee43a1SRui Paulo	  creation failed)
902a0ee43a1SRui Paulo	Fix handling of 'any' device, so that it can be opened, and no longer
903a0ee43a1SRui Paulo	  attempt to open it in Monitor mode
904a0ee43a1SRui Paulo	Add support for snapshot length for USB Memory-Mapped Interface
905a0ee43a1SRui Paulo	Fix configure and build on recent Linux kernels
906a0ee43a1SRui Paulo	Fix memory-mapped Linux capture to support pcap_next() and
907a0ee43a1SRui Paulo	  pcap_next_ex()
908a0ee43a1SRui Paulo	Fixes for Linux USB capture
909a0ee43a1SRui Paulo	DLT: Add DLT_LINUX_EVDEV
910a0ee43a1SRui Paulo	DLT: Add DLT_GSMTAP_UM
911a0ee43a1SRui Paulo	DLT: Add DLT_GSMTAP_ABIS
912a8e07101SRui Paulo
913a8e07101SRui PauloMon.    October 27, 2008.  ken@netfunctional.ca.  Summary for 1.0.0 libpcap release
914a8e07101SRui Paulo	Compile with IPv6 support by default
915a8e07101SRui Paulo	Compile with large file support on by default
916a8e07101SRui Paulo	Add pcap-config script, which deals with -I/-L flags for compiling
917a8e07101SRui Paulo	DLT: Add IPMB
918a8e07101SRui Paulo	DLT: Add LAPD
919a8e07101SRui Paulo	DLT: Add AX25 (AX.25 w/KISS header)
920a8e07101SRui Paulo	DLT: Add JUNIPER_ST
921a8e07101SRui Paulo	802.15.4 support
922a8e07101SRui Paulo	Variable length 802.11 header support
923a8e07101SRui Paulo	X2E data type support
924a8e07101SRui Paulo	SITA ACN Interface support - see README.sita
925a0ee43a1SRui Paulo	Support for memory-mapped capture on Linux
926a8e07101SRui Paulo	Support for zerocopy BPF on platforms that support it
927a0ee43a1SRui Paulo	Support for setting buffer size when opening devices
928a0ee43a1SRui Paulo	Support for setting monitor mode when opening 802.11 devices
929a8e07101SRui Paulo	Better support for dealing with VLAN tagging/stripping on Linux
930a8e07101SRui Paulo	Fix dynamic library support on OSX
931a8e07101SRui Paulo	Return PCAP_ERROR_IFACE_NOT_UP if the interface isn't 'UP', so applications
932a8e07101SRui Paulo	 can print better diagnostic information
933a8e07101SRui Paulo	Return PCAP_ERROR_PERM_DENIED if we don't have permission to open a device, so
934a8e07101SRui Paulo	 applications can tell the user they need to go play with permissions
935a8e07101SRui Paulo	On Linux, ignore ENETDOWN so we can continue to capture packets if the
936a8e07101SRui Paulo	 interface goes down and comes back up again.
937a8e07101SRui Paulo	On Linux, support new tpacket frame headers (2.6.27+)
938a0ee43a1SRui Paulo	On Mac OS X, add scripts for changing permissions on /dev/bpf* and launchd plist
939a8e07101SRui Paulo	On Solaris, support 'passive mode' on systems that support it
940a8e07101SRui Paulo	Fixes to autoconf and general build environment
941a8e07101SRui Paulo	Man page reorganization + cleanup
942a8e07101SRui Paulo	Autogenerate VERSION numbers better
943ef96d74fSMax Laier
944ef96d74fSMax LaierMon.    September 10, 2007.  ken@xelerance.com.  Summary for 0.9.8 libpcap release
945ef96d74fSMax Laier        Change build process to put public libpcap headers into pcap subir
946ef96d74fSMax Laier        DLT: Add value for IPMI IPMB packets
947ef96d74fSMax Laier        DLT: Add value for u10 Networks boards
948ef96d74fSMax Laier        Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted
949ef96d74fSMax Laier         libpcap files on an OS other than where the file was generated
950ef96d74fSMax Laier
951ef96d74fSMax LaierWed.	April 25, 2007.  ken@xelerance.com.  Summary for 0.9.6 libpcap release
952ef96d74fSMax Laier
953ef96d74fSMax Laier	Put the public libpcap headers into a pcap subdirectory in both the
954ef96d74fSMax Laier	 source directory and the target include directory, and have include
955ef96d74fSMax Laier	 files at the top-level directory to include those headers, for
956ef96d74fSMax Laier	 backwards compatibility.
957ef96d74fSMax Laier	Add Bluetooth support
958ef96d74fSMax Laier	Add USB capturing support on Linux
959ef96d74fSMax Laier	Add support for the binary USB sniffing interface in Linux
960ef96d74fSMax Laier	Add support for new FreeBSD BIOCSDIRECTION ioctl
961ef96d74fSMax Laier	Add additional filter operations for 802.11 frame types
962ef96d74fSMax Laier	Add support for filtering on MTP2 frame types
963ef96d74fSMax Laier	Propagate some changes from the main branch, so the x.9 branch has
964ef96d74fSMax Laier	 all the DLT_ and LINKTYPE_ values that the main branch does
965ef96d74fSMax Laier	Reserved a DLT_ and SAVEFILE_ value for PPI (Per Packet Info)
966ef96d74fSMax Laier	 encapsulated packets
967ef96d74fSMax Laier	Add LINKTYPE_ for IEEE 802.15.4, with address fields padded as done
968ef96d74fSMax Laier	 by Linux drivers
969ef96d74fSMax Laier	Add LINKTYPE_ value corresponding to DLT_IEEE802_16_MAC_CPS.
970ef96d74fSMax Laier	Add DLT for IEEE 802.16 (WiMAX) MAC Common Part Sublayer
971ef96d74fSMax Laier	Add DLT for Bluetooth HCI UART transport layer
972ef96d74fSMax Laier	When building a shared library, build with "-fPIC" on Linux to support x86_64
973ef96d74fSMax Laier	Link with "$(CC) -shared" rather than "ld -shared" when building a
974ef96d74fSMax Laier	 ".so" shared library
975ef96d74fSMax Laier	Add support for autoconf 2.60
976ef96d74fSMax Laier	Fixes to discard unread packets when changing filters
977ef96d74fSMax Laier	Changes to handle name changes in the DAG library resulting from
978ef96d74fSMax Laier	 switching to libtool.
979ef96d74fSMax Laier	Add support for new DAG ERF types.
980ef96d74fSMax Laier        Add an explicit "-ldag" when building the shared library, so the DAG
981ef96d74fSMax Laier	 library dependency is explicit.
982ef96d74fSMax Laier	Mac OSX fixes for dealing with "wlt" devices
983ef96d74fSMax Laier	Fixes in add_or_find_if() & pcap_findalldevs() to optimize generating
984ef96d74fSMax Laier	 device lists
985ef96d74fSMax Laier	Fixed a bug in pcap_open_live(). The return value of PacketSetHwFilter
986ef96d74fSMax Laier	 was not checked.
987ef96d74fSMax Laier
988ef96d74fSMax LaierTue.	September 19, 2006. ken@xelerance.com. Summary for 0.9.5 libpcap release
989ef96d74fSMax Laier
990ef96d74fSMax Laier	Support for LAPD frames with vISDN
991ef96d74fSMax Laier	Support for ERF on channelized T1/E1 cards via DAG API
992ef96d74fSMax Laier	Fix capitalization that caused issues crossc compiling on Linux
993ef96d74fSMax Laier	Better failure detection on PacketGetAdapterNames()
994ef96d74fSMax Laier	Fixes for MPLS packet generation (link layer)
995ef96d74fSMax Laier	OP_PACKET now matches the beginning of the packet, instead of
996ef96d74fSMax Laier	 beginning+link-layer
997ef96d74fSMax Laier	Add DLT/LINKTYPE for carrying FRF.16 Multi-link Frame Relay
998ef96d74fSMax Laier	Fix allocation of buffer for list of link-layer types
999*6f9cba8fSJoseph Mingrone	Added a new DLT and LINKTYPE value for ARINC 653 Interpartition Communication Messages
1000ef96d74fSMax Laier	Fixed a typo in a DLT value: it should start with DLT_ and not LINKTYPE_
1001ef96d74fSMax Laier	Redefined DLT_CAN20B and LINKTYPE_CAN20B as #190 (as this is the right value for CAN).
1002ef96d74fSMax Laier	Added definition for DLT_A429 and LINKTYPE_A429 as #184.
1003ef96d74fSMax Laier	Added a new DLT and LINKTYPE value for CAN v2.0B frames.
1004ef96d74fSMax Laier	Add support for DLT_JUNIPER_VP.
1005ef96d74fSMax Laier	Don't double-count received packets on Linux systems that
1006ef96d74fSMax Laier	 support the PACKET_STATISTICS getsockopt() argument on
1007ef96d74fSMax Laier	 PF_PACKET sockets.
1008ef96d74fSMax Laier	Add support for DLT_IEEE802_11 and DLT_IEEE802_11_RADIO link
1009ef96d74fSMax Laier	 layers in Windows
1010ef96d74fSMax Laier	Add support to build libpcap.lib and wpcap.dll under Cygnus and
1011ef96d74fSMax Laier	 MingW32.
1012ee2dd488SSam Leffler
10135d18909fSSam LefflerMon. 	September 5, 2005.  ken@xelerance.com. Summary for 0.9.4 libpcap release
10145d18909fSSam Leffler
10155d18909fSSam Leffler	Support for radiotap on Linux (Mike Kershaw)
10165d18909fSSam Leffler	Fixes for HP-UX
10175d18909fSSam Leffler	Support for additional Juniper link-layer types
10185d18909fSSam Leffler	Fixes for filters on MPLS-encapsulated packets
10195d18909fSSam Leffler	"vlan" filter fixed
10205d18909fSSam Leffler	"pppoed" and "pppoes" filters added; the latter modifies later
10215d18909fSSam Leffler	parts of the filter expression to look at the PPP headers and
10225d18909fSSam Leffler	headers in the PPP payload
10235d18909fSSam Leffler
10245d18909fSSam LefflerTue. 	July 5, 2005.  ken@xelerance.com. Summary for 0.9.3 libpcap release
1025ee2dd488SSam Leffler
1026ee2dd488SSam Leffler	Fixes for compiling on nearly every platform,
1027ee2dd488SSam Leffler		including improved 64bit support
1028ee2dd488SSam Leffler	MSDOS Support
1029ee2dd488SSam Leffler	Add support for sending packets
1030ee2dd488SSam Leffler	OpenBSD pf format support
1031ee2dd488SSam Leffler	IrDA capture (Linux only)
1032ee2dd488SSam Leffler
1033feb4ecdbSBruce M SimpsonTue.   March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release
1034feb4ecdbSBruce M Simpson
1035feb4ecdbSBruce M Simpson	Fixed minor problem in gencode.c that would appear on 64-bit
1036feb4ecdbSBruce M Simpson	platforms.
1037feb4ecdbSBruce M Simpson	Version number is now sane.
1038feb4ecdbSBruce M Simpson
1039feb4ecdbSBruce M SimpsonMon.   March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release
1040feb4ecdbSBruce M Simpson
1041feb4ecdbSBruce M Simpson	updates for autoconf 2.5
1042feb4ecdbSBruce M Simpson	fixes for ppp interfaces for freebsd 4.1
1043feb4ecdbSBruce M Simpson	pcap gencode can generate code for 802.11, IEEE1394, and pflog.
1044feb4ecdbSBruce M Simpson
1045feb4ecdbSBruce M SimpsonWed.   November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 0.8 release
1046feb4ecdbSBruce M Simpson
1047feb4ecdbSBruce M Simpson	added pcap_findalldevs()
1048feb4ecdbSBruce M Simpson	Win32 patches from NetGroup, Politecnico di Torino (Italy)
1049feb4ecdbSBruce M Simpson	OpenBSD pf, DLT_PFLOG added
1050feb4ecdbSBruce M Simpson	Many changes to ATM support.
1051feb4ecdbSBruce M Simpson	lookup pcap_lookupnet()
1052feb4ecdbSBruce M Simpson	Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM,
1053feb4ecdbSBruce M Simpson		DLT_IP_OVER_FC, DLT_FRELAY, others.
1054feb4ecdbSBruce M Simpson	Sigh.  More AIX wonderfulness.
1055feb4ecdbSBruce M Simpson	Document updates.
1056feb4ecdbSBruce M Simpson	Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(),
1057feb4ecdbSBruce M Simpson			pcap_list_datalinks(), pcap_set_datalink(),
1058feb4ecdbSBruce M Simpson			pcap_lib_version(), pcap_datalink_val_to_name(),
1059feb4ecdbSBruce M Simpson			pcap_datalink_name_to_val(), new error returns.
1060feb4ecdbSBruce M Simpson
1061feb4ecdbSBruce M SimpsonTuesday, February 25, 2003. fenner@research.att.com.  0.7.2 release
1062feb4ecdbSBruce M Simpson
1063feb4ecdbSBruce M Simpson 	Support link types that use 802.2 always, never, and sometimes.
1064feb4ecdbSBruce M Simpson 	Don't decrease the size of the BPF buffer from the default.
1065feb4ecdbSBruce M Simpson 	Support frame relay.
1066feb4ecdbSBruce M Simpson 	Handle 32-bit timestamps in DLPI, and pass the right buffer size.
1067feb4ecdbSBruce M Simpson 	Handle Linux systems with modern kernel but without
1068feb4ecdbSBruce M Simpson 	 SOL_PACKET in the userland headers.
1069feb4ecdbSBruce M Simpson 	Linux support for ARPHRD_RAWHDLC.
1070feb4ecdbSBruce M Simpson 	Handle 32-bit timestamps in snoop.
1071feb4ecdbSBruce M Simpson 	Support eg (Octane/O2xxx/O3xxx Gigabit) devices.
1072feb4ecdbSBruce M Simpson 	Add new reserved DLT types.
10730a94d38fSBill Fenner
10740a94d38fSBill FennerMonday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release
10750a94d38fSBill Fenner
10760a94d38fSBill Fenner	Added pcap_findalldevs() call to get list of interfaces in a MI way.
10770a94d38fSBill Fenner
10780a94d38fSBill Fenner	pcap_stats() has been documented as to what its counters mean on
10790a94d38fSBill Fenner	each platform.
10808751327cSBill Fenner
1081dc2c7305SBill FennerTuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release
10828751327cSBill Fenner
1083dc2c7305SBill Fenner	New Linux libpcap implementation, which, in 2.2 and later
1084dc2c7305SBill Fenner	kernels, uses PF_PACKET sockets and supports kernel packet
1085dc2c7305SBill Fenner	filtering (if compiled into the kernel), and supports the "any"
1086dc2c7305SBill Fenner	device for capturing on all interfaces.  Cleans up promiscuous
1087dc2c7305SBill Fenner	mode better on pre-2.2 kernels, and has various other fixes
1088dc2c7305SBill Fenner	(handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better,
1089dc2c7305SBill Fenner	doesn't show duplicate packets on loopback interface, etc.).
1090dc2c7305SBill Fenner
1091dc2c7305SBill Fenner	Fixed HP-UX libpcap implementation to correctly get the PPA for
1092dc2c7305SBill Fenner	an interface, to allow interfaces to be opened by interface name.
1093dc2c7305SBill Fenner
1094dc2c7305SBill Fenner	libpcap savefiles have system-independent link-layer type values
1095dc2c7305SBill Fenner	in the header, rather than sometimes platform-dependent DLT_
1096dc2c7305SBill Fenner	values, to make it easier to exchange capture files between
1097dc2c7305SBill Fenner	different OSes.
1098dc2c7305SBill Fenner
1099dc2c7305SBill Fenner	Non-standard capture files produced by some Linux tcpdumps, e.g.
1100dc2c7305SBill Fenner	the one from Red Hat Linux 6.2 and later, can now be read.
1101dc2c7305SBill Fenner
1102dc2c7305SBill Fenner	Updated autoconf stock files.
1103dc2c7305SBill Fenner
1104dc2c7305SBill Fenner	Filter expressions can filter on VLAN IDs and various OSI
1105dc2c7305SBill Fenner	protocols, and work on Token Ring (with non-source-routed
1106dc2c7305SBill Fenner	packets).
1107dc2c7305SBill Fenner
1108dc2c7305SBill Fenner	"pcap_open_dead()" added to allow compiling filter expressions
1109dc2c7305SBill Fenner	to pcap code without opening a capture device or capture file.
1110dc2c7305SBill Fenner
1111dc2c7305SBill Fenner	Header files fixed to allow use in C++ programs.
1112dc2c7305SBill Fenner
1113*6f9cba8fSJoseph Mingrone	Removed dependency on native headers for packet layout.
1114dc2c7305SBill Fenner	Removed Linux specific headers that were shipped.
1115dc2c7305SBill Fenner
1116dc2c7305SBill Fenner	Security fixes: Strcpy replaced with strlcpy, sprintf replaced
1117dc2c7305SBill Fenner	with snprintf.
1118dc2c7305SBill Fenner
1119dc2c7305SBill Fenner	Fixed bug that could cause subsequent "pcap_compile()"s to fail
1120dc2c7305SBill Fenner	erroneously after one compile failed.
1121dc2c7305SBill Fenner
1122dc2c7305SBill Fenner	Assorted other bug fixes.
1123dc2c7305SBill Fenner
1124dc2c7305SBill Fenner	README.aix and README.linux files added to describe
1125dc2c7305SBill Fenner	platform-specific issues.
1126dc2c7305SBill Fenner
1127dc2c7305SBill Fenner	"getifaddrs()" rather than SIOCGIFCONF used, if available.
1128dc2c7305SBill Fenner
1129dc2c7305SBill Fennerv0.5 Sat Jun 10 11:09:15 PDT 2000
1130dc2c7305SBill Fenner
1131dc2c7305SBill Fenneritojun@iijlab.net
1132dc2c7305SBill Fenner- Brought in KAME IPv6/IPsec bpf compiler.
1133dc2c7305SBill Fenner- Fixes for NetBSD.
1134dc2c7305SBill Fenner- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC),
1135dc2c7305SBill Fenner  and changes to work around different BSDs having different DLT_ types
1136dc2c7305SBill Fenner  with the same numeric value.
1137dc2c7305SBill Fenner
1138dc2c7305SBill FennerAssar Westerlund  <assar@sics.se>
1139dc2c7305SBill Fenner- Building outside the source code tree fixed.
1140dc2c7305SBill Fenner- Changed to write out time stamps with 32-bit seconds and microseconds
1141dc2c7305SBill Fenner  fields, regardless of whether those fields are 32 bits or 64 bits in
1142dc2c7305SBill Fenner  the OS's native "struct timeval".
1143dc2c7305SBill Fenner- Changed "pcap_lookupdev()" to dynamically grow the buffer into which
1144dc2c7305SBill Fenner  the list of interfaces is read as necessary in order to hold the
1145dc2c7305SBill Fenner  entire list.
1146dc2c7305SBill Fenner
1147dc2c7305SBill FennerGreg Troxel <gdt@ir.bbn.com>
1148dc2c7305SBill Fenner- Added a new "pcap_compile_nopcap()", which lets you compile a filter
1149dc2c7305SBill Fenner  expression into a BPF program without having an open live capture or
1150dc2c7305SBill Fenner  capture file.
1151a4b5b39fSBill Fenner
1152a4b5b39fSBill Fennerv0.4 Sat Jul 25 12:40:09 PDT 1998
1153a4b5b39fSBill Fenner
1154a4b5b39fSBill Fenner- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill
1155a4b5b39fSBill Fenner  Fenner (fenner@parc.xerox.com)
1156a4b5b39fSBill Fenner
1157a4b5b39fSBill Fenner- Fix alignment problem with FDDI under DLPI. This was causing core
1158a4b5b39fSBill Fenner  dumps under Solaris.
1159a4b5b39fSBill Fenner
1160a4b5b39fSBill Fenner- Added configure options to disable flex and bison. Resulted from a
1161a4b5b39fSBill Fenner  bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added
1162a4b5b39fSBill Fenner  options to disable gcc and to force a particular packet capture type.
1163a4b5b39fSBill Fenner
1164a4b5b39fSBill Fenner- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks
1165a4b5b39fSBill Fenner  to John Hawkinson (jhawk@mit.edu)
1166a4b5b39fSBill Fenner
1167a4b5b39fSBill Fenner- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not
1168a4b5b39fSBill Fenner  supply any "link layer" data.
1169a4b5b39fSBill Fenner
1170a4b5b39fSBill Fenner- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type.
1171a4b5b39fSBill Fenner  Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch)
1172a4b5b39fSBill Fenner
1173a4b5b39fSBill Fenner- Change IRIX PPP to use DLT_RAW since the kernel does not supply any
1174a4b5b39fSBill Fenner  "link layer" data.
1175a4b5b39fSBill Fenner
1176a4b5b39fSBill Fenner- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header
1177a4b5b39fSBill Fenner  formats.
1178a4b5b39fSBill Fenner
1179a4b5b39fSBill Fenner- Added some new SGI snoop interface types. Thanks to Steve Alexander
1180a4b5b39fSBill Fenner  (sca@refugee.engr.sgi.com)
1181a4b5b39fSBill Fenner
1182a4b5b39fSBill Fenner- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to
1183a4b5b39fSBill Fenner  Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no)
1184a4b5b39fSBill Fenner
1185a4b5b39fSBill Fenner- Fddi supports broadcast as reported by Jeff Macdonald
1186a4b5b39fSBill Fenner  (jeff@iacnet.com). Also correct ieee802 and arcnet.
1187a4b5b39fSBill Fenner
1188a4b5b39fSBill Fenner- Determine Linux pcap buffer size at run time or else it might not be
1189a4b5b39fSBill Fenner  big enough for some interface types (e.g. FDDI). Thanks to Jes
1190a4b5b39fSBill Fenner  Sorensen (Jes.Sorensen@cern.ch)
1191a4b5b39fSBill Fenner
1192a4b5b39fSBill Fenner- Fix some linux alignment problems.
1193a4b5b39fSBill Fenner
1194a4b5b39fSBill Fenner- Document promisc argument to pcap_open_live(). Reported by Ian Marsh
1195a4b5b39fSBill Fenner  (ianm@sics.se)
1196a4b5b39fSBill Fenner
1197a4b5b39fSBill Fenner- Support Metricom radio packets under Linux. Thanks to Kevin Lai
1198a4b5b39fSBill Fenner  (laik@gunpowder.stanford.edu)
1199a4b5b39fSBill Fenner
1200a4b5b39fSBill Fenner- Bind to interface name under Linux to avoid packets from multiple
1201a4b5b39fSBill Fenner  interfaces on multi-homed hosts. Thanks to Kevin Lai
1202a4b5b39fSBill Fenner  (laik@gunpowder.stanford.edu)
1203a4b5b39fSBill Fenner
1204a4b5b39fSBill Fenner- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts
1205a4b5b39fSBill Fenner  (rroberts@muller.com)
1206a4b5b39fSBill Fenner
1207a4b5b39fSBill Fenner- Fixed an uninitialized memory reference found by Kent Vander Velden
1208a4b5b39fSBill Fenner  (graphix@iastate.edu)
1209a4b5b39fSBill Fenner
1210a4b5b39fSBill Fenner- Fixed lex pattern for IDs to allow leading digits. As reported by
1211a4b5b39fSBill Fenner  Theo de Raadt (deraadt@cvs.openbsd.org)
1212a4b5b39fSBill Fenner
1213a4b5b39fSBill Fenner- Fixed Linux include file problems when using GNU libc.
1214a4b5b39fSBill Fenner
1215a4b5b39fSBill Fenner- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it.
1216a4b5b39fSBill Fenner  Reported reported by Eric Jacksch (jacksch@tenebris.ca)
1217a4b5b39fSBill Fenner
1218a4b5b39fSBill Fenner- Fixed bug in pcap_dispatch() that kept it from returning on packet
1219a4b5b39fSBill Fenner  timeouts.
1220a4b5b39fSBill Fenner
1221a4b5b39fSBill Fenner- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check
1222a4b5b39fSBill Fenner  for "lo" followed by an eos or digit (newer versions of Linux
1223a4b5b39fSBill Fenner  apparently call the loopback "lo" instead of "lo0").
1224a4b5b39fSBill Fenner
1225a4b5b39fSBill Fenner- Fixed Linux networking include files to use ints instead of longs to
1226a4b5b39fSBill Fenner  avoid problems with 64 bit longs on the alpha. Thanks to Cristian
1227a4b5b39fSBill Fenner  Gafton (gafton@redhat.com)
12283052b236SBill Fenner
12293052b236SBill Fennerv0.3 Sat Nov 30 20:56:27 PST 1996
12303052b236SBill Fenner
12313052b236SBill Fenner- Added Linux support.
12323052b236SBill Fenner
12333052b236SBill Fenner- Fixed savefile bugs.
12343052b236SBill Fenner
12353052b236SBill Fenner- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl)
12363052b236SBill Fenner
12373052b236SBill Fenner- Add support for bpf kernel port filters.
12383052b236SBill Fenner
12393052b236SBill Fenner- Remove duplicate atalk protocol table entry. Thanks to Christian
12403052b236SBill Fenner  Hopps (chopps@water.emich.edu)
12413052b236SBill Fenner
12423052b236SBill Fenner- Fixed pcap_lookupdev() to ignore nonexistent devices. This was
12433052b236SBill Fenner  reported to happen under BSD/OS by David Vincenzetti
12443052b236SBill Fenner  (vince@cryptonet.it)
12453052b236SBill Fenner
12463052b236SBill Fenner- Avoid solaris compiler warnings. Thanks to Bruce Barnett
12473052b236SBill Fenner  (barnett@grymoire.crd.ge.com)
12488cf6c252SPaul Traina
12498cf6c252SPaul Trainav0.2.1 Sun Jul 14 03:02:26 PDT 1996
12508cf6c252SPaul Traina
1251*6f9cba8fSJoseph Mingrone- Fixes for HP-UX 10. Thanks in part to Thomas Wolfram
12528cf6c252SPaul Traina  (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com)
12538cf6c252SPaul Traina
12548cf6c252SPaul Traina- Added support for SINIX. Thanks to Andrej Borsenkow
12558cf6c252SPaul Traina  (borsenkow.msk@sni.de)
12568cf6c252SPaul Traina
12578cf6c252SPaul Traina- Fixes for AIX (although this system is not yet supported). Thanks to
12588cf6c252SPaul Traina  John Hawkinson (jhawk@mit.edu)
12598cf6c252SPaul Traina
12608cf6c252SPaul Traina- Use autoconf's idea of the top level directory in install targets.
12618cf6c252SPaul Traina  Thanks to John Hawkinson.
12628cf6c252SPaul Traina
12638cf6c252SPaul Traina- Add missing autoconf packet capture result message. Thanks to Bill
12648cf6c252SPaul Traina  Fenner (fenner@parc.xerox.com)
12658cf6c252SPaul Traina
12668cf6c252SPaul Traina- Fixed padding problems in the pf module.
12678cf6c252SPaul Traina
12688cf6c252SPaul Traina- Fixed some more alignment problems on the alpha.
12698cf6c252SPaul Traina
12708cf6c252SPaul Traina- Added explicit netmask support. Thanks to Steve Nuchia
12718cf6c252SPaul Traina  (steve@research.oknet.com)
12728cf6c252SPaul Traina
12738cf6c252SPaul Traina- Fixed to handle raw ip addresses such as 0.0.0.1 without "left
12748cf6c252SPaul Traina  justifing"
12758cf6c252SPaul Traina
12768cf6c252SPaul Traina- Add "sca" keyword (for DEC cluster services) as suggested by Terry
12778cf6c252SPaul Traina  Kennedy (terry@spcvxa.spc.edu)
12788cf6c252SPaul Traina
12798cf6c252SPaul Traina- Add "atalk" keyword as suggested by John Hawkinson.
12808cf6c252SPaul Traina
12818cf6c252SPaul Traina- Add "igrp" keyword.
12828cf6c252SPaul Traina
12838cf6c252SPaul Traina- Fixed HID definition in grammar.y to be a string, not a value.
12848cf6c252SPaul Traina
12858cf6c252SPaul Traina- Use $CC when checking gcc version. Thanks to Carl Lindberg
12868cf6c252SPaul Traina  (carl_lindberg@blacksmith.com)
12878cf6c252SPaul Traina
12888cf6c252SPaul Traina- Removed obsolete reference to pcap_immediate() from the man page.
12898cf6c252SPaul Traina  Michael Stolarchuk (mts@terminator.rs.itd.umich.edu)
12908cf6c252SPaul Traina
12918cf6c252SPaul Traina- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig
12928cf6c252SPaul Traina  (jch@bsdi.com)
12938cf6c252SPaul Traina
12948cf6c252SPaul Trainav0.2 Sun Jun 23 02:28:42 PDT 1996
12958cf6c252SPaul Traina
12968cf6c252SPaul Traina- Add support for HP-UX. Resulted from code contributed by Tom Murray
12978cf6c252SPaul Traina  (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville
12988cf6c252SPaul Traina  (philipp@res.enst.fr)
12998cf6c252SPaul Traina
13008cf6c252SPaul Traina- Update INSTALL with a reminder to install include files. Thanks to
13018cf6c252SPaul Traina  Mark Andrews (mandrews@aw.sgi.com)
13028cf6c252SPaul Traina
13038cf6c252SPaul Traina- Fix bpf compiler alignment bug on the alpha.
13048cf6c252SPaul Traina
13058cf6c252SPaul Traina- Use autoconf to detect architectures that can't handle misaligned
13068cf6c252SPaul Traina  accesses.
13078cf6c252SPaul Traina
13088cf6c252SPaul Traina- Added loopback support for snoop. Resulted from report Steve
13098cf6c252SPaul Traina  Alexander (sca@engr.sgi.com)
13108cf6c252SPaul Traina
13118cf6c252SPaul Trainav0.1 Fri Apr 28 18:11:03 PDT 1995
13128cf6c252SPaul Traina
13138cf6c252SPaul Traina- Fixed compiler and optimizer bugs.  The BPF filter engine uses unsigned
13148cf6c252SPaul Traina  comparison operators, while the code generator and optimizer assumed
13158cf6c252SPaul Traina  signed semantics in several places.  Thanks to Charlie Slater
13168cf6c252SPaul Traina  (cslater@imatek.com) for pointing this out.
13178cf6c252SPaul Traina
13188cf6c252SPaul Traina- Removed FDDI ifdef's, they aren't really needed. Resulted from report
13198cf6c252SPaul Traina  by Gary Veum (veum@boa.gsfc.nasa.gov).
13208cf6c252SPaul Traina
13218cf6c252SPaul Traina- Add pcap-null.c which allows offline use of libpcap on systems that
13228cf6c252SPaul Traina  don't support live package capture. This feature resulting from a
13238cf6c252SPaul Traina  request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl).
13248cf6c252SPaul Traina
13258cf6c252SPaul Traina- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin
13268cf6c252SPaul Traina  (Pascal.Hennequin@hugo.int-evry.fr).
13278cf6c252SPaul Traina
13288cf6c252SPaul Traina- Port to GNU autoconf.
13298cf6c252SPaul Traina
13308cf6c252SPaul Traina- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming
13318cf6c252SPaul Traina  Johansen (fsj@csd.cri.dk).
13328cf6c252SPaul Traina
13338cf6c252SPaul Traina- Handle multi-digit interface unit numbers (aka ppa's) under dlpi.
13348cf6c252SPaul Traina  Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu).
13358cf6c252SPaul Traina
13368cf6c252SPaul Traina- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report
13378cf6c252SPaul Traina  by Jeff Murphy (jcmurphy@acsu.buffalo.edu).
13388cf6c252SPaul Traina
13398cf6c252SPaul Traina- Add support for "long jumps". Thanks to Jeffrey Mogul
13408cf6c252SPaul Traina  (mogul@pa.dec.com).
13418cf6c252SPaul Traina
13428cf6c252SPaul Traina- Fix minor problems when compiling with BDEBUG as noticed by Scott
13438cf6c252SPaul Traina  Bertilson (scott@unet.umn.edu).
13448cf6c252SPaul Traina
13458cf6c252SPaul Traina- Declare sys_errlist "const char *const" to avoid problems under
13468cf6c252SPaul Traina  FreeBSD. Resulted from report by jher@eden.com.
13478cf6c252SPaul Traina
13488cf6c252SPaul Trainav0.0.6 Fri Apr 28 04:07:13 PDT 1995
13498cf6c252SPaul Traina
13508cf6c252SPaul Traina- Add missing variable declaration missing from 0.0.6
13518cf6c252SPaul Traina
13528cf6c252SPaul Trainav0.0.5 Fri Apr 28 00:22:21 PDT 1995
13538cf6c252SPaul Traina
13548cf6c252SPaul Traina- Workaround for problems when pcap_read() returns 0 due to the timeout
13558cf6c252SPaul Traina  expiring.
13568cf6c252SPaul Traina
13578cf6c252SPaul Trainav0.0.4 Thu Apr 20 20:41:48 PDT 1995
13588cf6c252SPaul Traina
13598cf6c252SPaul Traina- Change configuration to not use gcc v2 flags with gcc v1.
13608cf6c252SPaul Traina
13618cf6c252SPaul Traina- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next()
13628cf6c252SPaul Traina  should also return 0. Thanks to Richard Stevens (rstevens@noao.edu).
13638cf6c252SPaul Traina
13648cf6c252SPaul Traina- Fixed configure to test for snoop before dlpi to avoid problems under
13658cf6c252SPaul Traina  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
13668cf6c252SPaul Traina
13678cf6c252SPaul Traina- Hack around deficiency in Ultrix's make.
13688cf6c252SPaul Traina
13698cf6c252SPaul Traina- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle
13708cf6c252SPaul Traina  savefiles that have more than snapshot bytes of data in them (so we
13718cf6c252SPaul Traina  can read old savefiles) and avoid writing such files.
13728cf6c252SPaul Traina
13738cf6c252SPaul Traina- Added checkioctl which is used with gcc to check that the
13748cf6c252SPaul Traina  "fixincludes" script has been run.
13758cf6c252SPaul Traina
13768cf6c252SPaul Trainav0.0.3 Tue Oct 18 18:13:46 PDT 1994
13778cf6c252SPaul Traina
13788cf6c252SPaul Traina- Fixed configure to test for snoop before dlpi to avoid problems under
13798cf6c252SPaul Traina  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
13808cf6c252SPaul Traina
13818cf6c252SPaul Trainav0.0.2 Wed Oct 12 20:56:37 PDT 1994
13828cf6c252SPaul Traina
13838cf6c252SPaul Traina- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard
13848cf6c252SPaul Traina  Stevens.
13858cf6c252SPaul Traina
13868cf6c252SPaul Traina- Determine pcap link type from dlpi media type. Resulted from report
13878cf6c252SPaul Traina  by Mahesh Jethanandani (mahesh@npix.com).
13888cf6c252SPaul Traina
13898cf6c252SPaul Trainav0.0.1 Fri Jun 24 14:50:57 PDT 1994
13908cf6c252SPaul Traina
13918cf6c252SPaul Traina- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout
13928cf6c252SPaul Traina  wasn't being initialized sometimes resulting in an "NIOCSFLAGS:
13938cf6c252SPaul Traina  Invalid argument" error under OSF/1. Reported by Matt Day
13948cf6c252SPaul Traina  (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com).
13958cf6c252SPaul Traina
13968cf6c252SPaul Traina- Turn on FDDI support by default.
13978cf6c252SPaul Traina
13988cf6c252SPaul Trainav0.0 Mon Jun 20 19:20:16 PDT 1994
13998cf6c252SPaul Traina
14008cf6c252SPaul Traina- Initial release.
14018cf6c252SPaul Traina
14028cf6c252SPaul Traina- Fixed bug with greater/less keywords, reported by Mark Andrews
14038cf6c252SPaul Traina  (mandrews@alias.com).
14048cf6c252SPaul Traina
14058cf6c252SPaul Traina- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported
14068cf6c252SPaul Traina  by Elan Amir (elan@leeb.cs.berkeley.edu).
14078cf6c252SPaul Traina
14088cf6c252SPaul Traina- Machines with little-endian byte ordering are supported thanks to
14098cf6c252SPaul Traina  Jeff Mogul.
14108cf6c252SPaul Traina
14118cf6c252SPaul Traina- Add hack for version 2.3 savefiles which don't have caplen and len
14128cf6c252SPaul Traina  swapped thanks to Vern Paxson.
14138cf6c252SPaul Traina
14148cf6c252SPaul Traina- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson.
14158cf6c252SPaul Traina
14168cf6c252SPaul Traina- Added length, inbound and outbound keywords.
1417