CHANGES revision 241231
1241231SdelphijFriday  March 30, 2012.  mcr@sandelman.ca
2241231SdelphijSummary for 1.3.0 libpcap release
3241231Sdelphij        Handle DLT_PFSYNC in {FreeBSD, other *BSD+Mac OS X, other}.
4241231Sdelphij        Linux: Don't fail if netfilter isn't enabled in the kernel.
5241231Sdelphij        Add new link-layer type for NFC Forum LLCP.
6241231Sdelphij        Put the CANUSB stuff into EXTRA_DIST, so it shows up in the release tarball.
7241231Sdelphij        Add LINKTYPE_NG40/DLT_NG40.
8241231Sdelphij        Add DLT_MPEG_2_TS/LINKTYPE_MPEG_2_TS for MPEG-2 transport streams.
9241231Sdelphij        [PATCH] Fix AIX-3.5 crash with read failure during stress
10241231Sdelphij        AIX fixes.
11241231Sdelphij        Introduce --disable-shared configure option.
12241231Sdelphij        Added initial support for canusb devices.
13241231Sdelphij        Include the pcap(3PCAP) additions as 1.2.1 changes.
14241231Sdelphij        many updates to documentation: pcap.3pcap.in
15241231Sdelphij        Improve 'inbound'/'outbound' capture filters under Linux.
16241231Sdelphij        Note the cleanup of handling of new DLT_/LINKTYPE_ values.
17241231Sdelphij        On Lion, don't build for PPC.
18241231Sdelphij        For mac80211 devices we need to clean up monitor mode on exit.
19241231Sdelphij
20235426SdelphijFriday  December 9, 2011.  guy@alum.mit.edu.
21235426SdelphijSummary for 1.2.1 libpcap release
22235426Sdelphij	Update README file.
23235426Sdelphij	Fix typoes in README.linux file.
24235426Sdelphij	Clean up some compiler warnings.
25235426Sdelphij	Fix Linux compile problems and tests for ethtool.h.
26235426Sdelphij	Treat Debian/kFreeBSD and GNU/Hurd as systems with GNU
27235426Sdelphij	 toolchains.
28235426Sdelphij	Support 802.1 QinQ as a form of VLAN in filters.
29235426Sdelphij	Treat "carp" as equivalent to "vrrp" in filters.
30235426Sdelphij	Fix code generated for "ip6 protochain".
31235426Sdelphij	Add some new link-layer header types.
32235426Sdelphij	Support capturing NetFilter log messages on Linux.
33235426Sdelphij	Clean up some error messages.
34235426Sdelphij	Turn off monitor mode on exit for mac80211 interfaces on Linux.
35235426Sdelphij	Fix problems turning monitor mode on for non-mac80211 interfaces
36235426Sdelphij	 on Linux.
37235426Sdelphij	Properly fail if /sys/class/net or /proc/net/dev exist but can't
38235426Sdelphij	 be opened.
39235426Sdelphij	Fail if pcap_activate() is called on an already-activated
40235426Sdelphij	 pcap_t, and add a test program for that.
41235426Sdelphij	Fix filtering in pcap-ng files.
42235426Sdelphij	Don't build for PowerPC on Mac OS X Lion.
43235426Sdelphij	Simplify handling of new DLT_/LINKTYPE_ values.
44235426Sdelphij	Expand pcap(3PCAP) man page.
45235426Sdelphij
46235426SdelphijSunday  July 24, 2011.  mcr@sandelman.ca.
47235426SdelphijSummary for 1.2 libpcap release
48235426Sdelphij        All of the changes listed below for 1.1.1 and 1.1.2.
49235426Sdelphij        Changes to error handling for pcap_findalldevs().
50235426Sdelphij        Fix the calculation of the frame size in memory-mapped captures.
51235426Sdelphij        Add a link-layer header type for STANAG 5066 D_PDUs.
52235426Sdelphij        Add a link-layer type for a variant of 3GPP TS 27.010.
53235426Sdelphij        Noted real nature of LINKTYPE_ARCNET.
54235426Sdelphij        Add a link-layer type for DVB-CI.
55235426Sdelphij        Fix configure-script discovery of VLAN acceleration support.
56235426Sdelphij         see http://netoptimizer.blogspot.com/2010/09/tcpdump-vs-vlan-tags.html
57235426Sdelphij        Linux, HP-UX, AIX, NetBSD and OpenBSD compilation/conflict fixes.
58235426Sdelphij        Protect against including AIX 5.x's <net/bpf.h> having been included.
59235426Sdelphij        Add DLT_DBUS, for raw D-Bus messages.
60235426Sdelphij        Treat either EPERM or EACCES as "no soup for you".
61235426Sdelphij        Changes to permissions on DLPI systems.
62235426Sdelphij        Add DLT_IEEE802_15_4_NOFCS for 802.15.4 interfaces.
63235426Sdelphij
64235426SdelphijFri.    August 6, 2010.  guy@alum.mit.edu.
65235426SdelphijSummary for 1.1.2 libpcap release
66235426Sdelphij	Return DLT_ values, not raw LINKTYPE_ values from
67235426Sdelphij	  pcap_datalink() when reading pcap-ng files
68235426Sdelphij	Add support for "wlan ra" and "wlan ta", to check the RA and TA
69235426Sdelphij	  of WLAN frames that have them
70235426Sdelphij	Don't crash if "wlan addr{1,2,3,4}" are used without 802.11
71235426Sdelphij	  headers
72235426Sdelphij	Do filtering on USB and Bluetooth capturing
73235426Sdelphij	On FreeBSD/SPARC64, use -fPIC - it's apparently necessary
74235426Sdelphij	Check for valid port numbers (fit in a 16-bit unsigned field) in
75235426Sdelphij	  "port" filters
76235426Sdelphij	Reject attempts to put savefiles into non-blocking mode
77235426Sdelphij	Check for "no such device" for the "get the media types" ioctl
78235426Sdelphij	  in *BSD
79235426Sdelphij	Improve error messages from bpf_open(), and let it do the error
80235426Sdelphij	  handling
81235426Sdelphij	Return more specific errors from pcap_can_set_rfmon(); fix
82235426Sdelphij	  documentation
83235426Sdelphij	Update description fetching code for FreeBSD, fix code for
84235426Sdelphij	  OpenBSD
85235426Sdelphij	Ignore /sys/net/dev files if we get ENODEV for them, not just
86235426Sdelphij	  ENXIO; fixes handling of bonding devices on Linux
87235426Sdelphij	Fix check for a constant 0 argument to BPF_DIV
88235426Sdelphij	Use the right version of ar when cross-building
89235426Sdelphij	Free any filter set on a savefile when the savefile is closed
90235426Sdelphij	Include the CFLAGS setting when configure was run in the
91235426Sdelphij	  compiler flags
92235426Sdelphij	Add support for 802.15.4 interfaces on Linux
93235426Sdelphij
94214518SrpauloThu.    April 1, 2010.  guy@alum.mit.edu.
95214518SrpauloSummary for 1.1.1 libpcap release
96214518Srpaulo	Update CHANGES to reflect more of the changes in 1.1.0.
97214518Srpaulo	Fix build on RHEL5.
98214518Srpaulo	Fix shared library build on AIX.
9917683Spst
100214518SrpauloThu.	March 11, 2010.  ken@netfunctional.ca/guy@alum.mit.edu.
101214518SrpauloSummary for 1.1.0 libpcap release
102214518Srpaulo	Add SocketCAN capture support
103214518Srpaulo	Add Myricom SNF API support
104214518Srpaulo	Update Endace DAG and ERF support
105214518Srpaulo	Add support for shared libraries on Solaris, HP-UX, and AIX
106214518Srpaulo	Build, install, and un-install shared libraries by default;
107214518Srpaulo	  don't build/install shared libraries on platforms we don't support
108214518Srpaulo	Fix building from a directory other than the source directory
109214518Srpaulo	Fix compiler warnings and builds on some platforms
110214518Srpaulo	Update config.guess and config.sub
111214518Srpaulo	Support monitor mode on mac80211 devices on Linux
112214518Srpaulo	Fix USB memory-mapped capturing on Linux; it requires a new DLT_
113214518Srpaulo	  value
114214518Srpaulo	On Linux, scan /sys/class/net for devices if we have it; scan
115214518Srpaulo	  it, or /proc/net/dev if we don't have /sys/class/net, even if
116214518Srpaulo	  we have getifaddrs(), as it'll find interfaces with no
117214518Srpaulo	  addresses
118214518Srpaulo	Add limited support for reading pcap-ng files
119214518Srpaulo	Fix BPF driver-loading error handling on AIX
120214518Srpaulo	Support getting the full-length interface description on FreeBSD
121214518Srpaulo	In the lexical analyzer, free up any addrinfo structure we got back
122214518Srpaulo	  from getaddrinfo().
123214518Srpaulo	Add support for BPF and libdlpi in OpenSolaris (and SXCE)
124214518Srpaulo	Hyphenate "link-layer" everywhere
125214518Srpaulo	Add /sys/kernel/debug/usb/usbmon to the list of usbmon locations
126214518Srpaulo	In pcap_read_linux_mmap(), if there are no frames available, call
127214518Srpaulo	  poll() even if we're in non-blocking mode, so we pick up
128214518Srpaulo	  errors, and check for the errors in question.
129214518Srpaulo	Note that poll() works on BPF devices is Snow Leopard
130214518Srpaulo	If an ENXIO or ENETDOWN is received, it may mean the device has
131214518Srpaulo	  gone away.  Deal with it.
132214518Srpaulo	For BPF, raise the default capture buffer size to from 32k to 512k
133214518Srpaulo	Support ps_ifdrop on Linux
134214518Srpaulo	Added a bunch of #ifdef directives to make wpcap.dll (WinPcap) compile
135214518Srpaulo	 under cygwin.
136214518Srpaulo	Changes to Linux mmapped captures.
137214518Srpaulo	Fix bug where create_ring would fail for particular snaplen and
138214518Srpaulo	  buffer size combinations
139214518Srpaulo	Update pcap-config so that it handles libpcap requiring
140214518Srpaulo	  additional libraries
141214518Srpaulo	Add workaround for threadsafeness on Windows
142214518Srpaulo	Add missing mapping for DLT_ENC <-> LINKTYPE_ENC
143214518Srpaulo	DLT: Add DLT_CAN_SOCKETCAN
144214518Srpaulo	DLT: Add Solaris ipnet
145214518Srpaulo	Don't check for DLT_IPNET if it's not defined
146214518Srpaulo	Add link-layer types for Fibre Channel FC-2
147214518Srpaulo	Add link-layer types for Wireless HART
148214518Srpaulo	Add link-layer types for AOS
149214518Srpaulo	Add link-layer types for DECT
150214518Srpaulo	Autoconf fixes (AIX, HP-UX, OSF/1, Tru64 cleanups)
151214518Srpaulo	Install headers unconditionally, and include vlan.h/bluetooth.h if
152214518Srpaulo	  enabled
153214518Srpaulo	Autoconf fixes+cleanup
154214518Srpaulo	Support enabling/disabling bluetooth (--{en,dis}able-bluetooth)
155214518Srpaulo	Support disabling SITA support (--without-sita)
156214518Srpaulo	Return -1 on failure to create packet ring (if supported but
157214518Srpaulo	  creation failed)
158214518Srpaulo	Fix handling of 'any' device, so that it can be opened, and no longer
159214518Srpaulo	  attempt to open it in Monitor mode
160214518Srpaulo	Add support for snapshot length for USB Memory-Mapped Interface
161214518Srpaulo	Fix configure and build on recent Linux kernels
162214518Srpaulo	Fix memory-mapped Linux capture to support pcap_next() and
163214518Srpaulo	  pcap_next_ex()
164214518Srpaulo	Fixes for Linux USB capture
165214518Srpaulo	DLT: Add DLT_LINUX_EVDEV
166214518Srpaulo	DLT: Add DLT_GSMTAP_UM
167214518Srpaulo	DLT: Add DLT_GSMTAP_ABIS
168214518Srpaulo
169190225SrpauloMon.    October 27, 2008.  ken@netfunctional.ca.  Summary for 1.0.0 libpcap release
170190225Srpaulo	Compile with IPv6 support by default
171190225Srpaulo	Compile with large file support on by default
172190225Srpaulo	Add pcap-config script, which deals with -I/-L flags for compiling
173190225Srpaulo	DLT: Add IPMB
174190225Srpaulo	DLT: Add LAPD
175190225Srpaulo	DLT: Add AX25 (AX.25 w/KISS header)
176190225Srpaulo	DLT: Add JUNIPER_ST
177190225Srpaulo	802.15.4 support
178190225Srpaulo	Variable length 802.11 header support
179190225Srpaulo	X2E data type support 
180190225Srpaulo	SITA ACN Interface support - see README.sita
181214518Srpaulo	Support for memory-mapped capture on Linux
182190225Srpaulo	Support for zerocopy BPF on platforms that support it
183214518Srpaulo	Support for setting buffer size when opening devices
184214518Srpaulo	Support for setting monitor mode when opening 802.11 devices
185190225Srpaulo	Better support for dealing with VLAN tagging/stripping on Linux
186190225Srpaulo	Fix dynamic library support on OSX
187190225Srpaulo	Return PCAP_ERROR_IFACE_NOT_UP if the interface isn't 'UP', so applications
188190225Srpaulo	 can print better diagnostic information
189190225Srpaulo	Return PCAP_ERROR_PERM_DENIED if we don't have permission to open a device, so
190190225Srpaulo	 applications can tell the user they need to go play with permissions
191190225Srpaulo	On Linux, ignore ENETDOWN so we can continue to capture packets if the 
192190225Srpaulo	 interface goes down and comes back up again.
193190225Srpaulo	On Linux, support new tpacket frame headers (2.6.27+)
194214518Srpaulo	On Mac OS X, add scripts for changing permissions on /dev/bpf* and launchd plist
195190225Srpaulo	On Solaris, support 'passive mode' on systems that support it
196190225Srpaulo	Fixes to autoconf and general build environment
197190225Srpaulo	Man page reorganization + cleanup
198190225Srpaulo	Autogenerate VERSION numbers better
199172677Smlaier
200190225SrpauloMon.    September 10, 2007.  ken@xelerance.com.  Summary for 0.9.8 libpcap release
201190225Srpaulo        Change build process to put public libpcap headers into pcap subir
202190225Srpaulo        DLT: Add value for IPMI IPMB packets
203190225Srpaulo        DLT: Add value for u10 Networks boards
204190225Srpaulo        Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted 
205190225Srpaulo         libpcap files on an OS other than where the file was generated
206172677Smlaier
207190225SrpauloWed.	April 25, 2007.  ken@xelerance.com.  Summary for 0.9.6 libpcap release
208172677Smlaier
209172677Smlaier	Put the public libpcap headers into a pcap subdirectory in both the
210172677Smlaier	 source directory and the target include directory, and have include
211172677Smlaier	 files at the top-level directory to include those headers, for 
212172677Smlaier	 backwards compatibility.
213172677Smlaier	Add Bluetooth support
214172677Smlaier	Add USB capturing support on Linux
215172677Smlaier	Add support for the binary USB sniffing interface in Linux
216172677Smlaier	Add support for new FreeBSD BIOCSDIRECTION ioctl
217172677Smlaier	Add additional filter operations for 802.11 frame types
218172677Smlaier	Add support for filtering on MTP2 frame types
219172677Smlaier	Propagate some changes from the main branch, so the x.9 branch has 
220172677Smlaier	 all the DLT_ and LINKTYPE_ values that the main branch does
221172677Smlaier	Reserved a DLT_ and SAVEFILE_ value for PPI (Per Packet Info) 
222172677Smlaier	 encapsulated packets
223172677Smlaier	Add LINKTYPE_ for IEEE 802.15.4, with address fields padded as done 
224172677Smlaier	 by Linux drivers
225172677Smlaier	Add LINKTYPE_ value corresponding to DLT_IEEE802_16_MAC_CPS.
226172677Smlaier	Add DLT for IEEE 802.16 (WiMAX) MAC Common Part Sublayer
227172677Smlaier	Add DLT for Bluetooth HCI UART transport layer
228172677Smlaier	When building a shared library, build with "-fPIC" on Linux to support x86_64
229172677Smlaier	Link with "$(CC) -shared" rather than "ld -shared" when building a 
230172677Smlaier	 ".so" shared library
231172677Smlaier	Add support for autoconf 2.60
232172677Smlaier	Fixes to discard unread packets when changing filters
233172677Smlaier	Changes to handle name changes in the DAG library resulting from 
234172677Smlaier	 switching to libtool.
235172677Smlaier	Add support for new DAG ERF types.
236172677Smlaier        Add an explicit "-ldag" when building the shared library, so the DAG 
237172677Smlaier	 library dependency is explicit.
238172677Smlaier	Mac OSX fixes for dealing with "wlt" devices
239172677Smlaier	Fixes in add_or_find_if() & pcap_findalldevs() to optimize generating
240172677Smlaier	 device lists
241172677Smlaier	Fixed a bug in pcap_open_live(). The return value of PacketSetHwFilter
242172677Smlaier	 was not checked. 
243172677Smlaier
244172677SmlaierTue.	September 19, 2006. ken@xelerance.com. Summary for 0.9.5 libpcap release
245172677Smlaier
246172677Smlaier	Support for LAPD frames with vISDN
247172677Smlaier	Support for ERF on channelized T1/E1 cards via DAG API
248172677Smlaier	Fix capitalization that caused issues crossc compiling on Linux
249172677Smlaier	Better failure detection on PacketGetAdapterNames()
250172677Smlaier	Fixes for MPLS packet generation (link layer)
251172677Smlaier	OP_PACKET now matches the beginning of the packet, instead of
252172677Smlaier	 beginning+link-layer
253172677Smlaier	Add DLT/LINKTYPE for carrying FRF.16 Multi-link Frame Relay
254172677Smlaier	Fix allocation of buffer for list of link-layer types  
255172677Smlaier	Added a new DLT and LINKTYPE value for ARINC 653 Interpartition Communcation Messages
256172677Smlaier	Fixed a typo in a DLT value: it should start with DLT_ and not LINKTYPE_
257172677Smlaier	Redefined DLT_CAN20B and LINKTYPE_CAN20B as #190 (as this is the right value for CAN).
258172677Smlaier	Added definition for DLT_A429 and LINKTYPE_A429 as #184.
259172677Smlaier	Added a new DLT and LINKTYPE value for CAN v2.0B frames.
260172677Smlaier	Add support for DLT_JUNIPER_VP.
261172677Smlaier	Don't double-count received packets on Linux systems that 
262172677Smlaier	 support the PACKET_STATISTICS getsockopt() argument on 
263172677Smlaier	 PF_PACKET sockets.
264172677Smlaier	Add support for DLT_IEEE802_11 and DLT_IEEE802_11_RADIO link 
265172677Smlaier	 layers in Windows
266172677Smlaier	Add support to build libpcap.lib and wpcap.dll under Cygnus and 
267172677Smlaier	 MingW32.
268172677Smlaier
269162012SsamMon. 	September 5, 2005.  ken@xelerance.com. Summary for 0.9.4 libpcap release
270147894Ssam
271162012Ssam	Support for radiotap on Linux (Mike Kershaw)
272162012Ssam	Fixes for HP-UX
273162012Ssam	Support for additional Juniper link-layer types
274162012Ssam	Fixes for filters on MPLS-encapsulated packets
275162012Ssam	"vlan" filter fixed
276162012Ssam	"pppoed" and "pppoes" filters added; the latter modifies later
277162012Ssam	parts of the filter expression to look at the PPP headers and
278162012Ssam	headers in the PPP payload
279162012Ssam
280162012SsamTue. 	July 5, 2005.  ken@xelerance.com. Summary for 0.9.3 libpcap release
281162012Ssam
282147894Ssam	Fixes for compiling on nearly every platform,
283147894Ssam		including improved 64bit support
284147894Ssam	MSDOS Support
285147894Ssam	Add support for sending packets
286147894Ssam	OpenBSD pf format support
287147894Ssam	IrDA capture (Linux only)
288147894Ssam
289127664SbmsTue.   March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release
290127664Sbms
291127664Sbms	Fixed minor problem in gencode.c that would appear on 64-bit
292127664Sbms	platforms.
293127664Sbms	Version number is now sane.
294162012Ssam
295127664SbmsMon.   March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release
296127664Sbms
297127664Sbms	updates for autoconf 2.5
298127664Sbms	fixes for ppp interfaces for freebsd 4.1
299127664Sbms	pcap gencode can generate code for 802.11, IEEE1394, and pflog.
300127664Sbms
301127664SbmsWed.   November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 0.8 release
302127664Sbms
303127664Sbms	added pcap_findalldevs()
304127664Sbms	Win32 patches from NetGroup, Politecnico di Torino (Italy)
305127664Sbms	OpenBSD pf, DLT_PFLOG added
306127664Sbms	Many changes to ATM support.
307162012Ssam	lookup pcap_lookupnet()
308127664Sbms	Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM,
309127664Sbms		DLT_IP_OVER_FC, DLT_FRELAY, others.
310127664Sbms	Sigh.  More AIX wonderfulness.
311162012Ssam	Document updates.
312127664Sbms	Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(),
313162012Ssam			pcap_list_datalinks(), pcap_set_datalink(),
314127664Sbms			pcap_lib_version(), pcap_datalink_val_to_name(),
315127664Sbms			pcap_datalink_name_to_val(), new error returns.
316127664Sbms
317127664SbmsTuesday, February 25, 2003. fenner@research.att.com.  0.7.2 release
318127664Sbms
319127664Sbms 	Support link types that use 802.2 always, never, and sometimes.
320127664Sbms 	Don't decrease the size of the BPF buffer from the default.
321127664Sbms 	Support frame relay.
322127664Sbms 	Handle 32-bit timestamps in DLPI, and pass the right buffer size.
323127664Sbms 	Handle Linux systems with modern kernel but without
324127664Sbms 	 SOL_PACKET in the userland headers.
325127664Sbms 	Linux support for ARPHRD_RAWHDLC.
326127664Sbms 	Handle 32-bit timestamps in snoop.
327127664Sbms 	Support eg (Octane/O2xxx/O3xxx Gigabit) devices.
328127664Sbms 	Add new reserved DLT types.
329127664Sbms
33098530SfennerMonday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release
33198530Sfenner
33298530Sfenner	Added pcap_findalldevs() call to get list of interfaces in a MI way.
33398530Sfenner
334162012Ssam	pcap_stats() has been documented as to what its counters mean on
33598530Sfenner	each platform.
33698530Sfenner
33775107SfennerTuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release
33856889Sfenner
33975107Sfenner	New Linux libpcap implementation, which, in 2.2 and later
34075107Sfenner	kernels, uses PF_PACKET sockets and supports kernel packet
34175107Sfenner	filtering (if compiled into the kernel), and supports the "any"
34275107Sfenner	device for capturing on all interfaces.  Cleans up promiscuous
34375107Sfenner	mode better on pre-2.2 kernels, and has various other fixes
34475107Sfenner	(handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better,
34575107Sfenner	doesn't show duplicate packets on loopback interface, etc.).
34656889Sfenner
34775107Sfenner	Fixed HP-UX libpcap implementation to correctly get the PPA for
34875107Sfenner	an interface, to allow interfaces to be opened by interface name.
34975107Sfenner
35075107Sfenner	libpcap savefiles have system-independent link-layer type values
35175107Sfenner	in the header, rather than sometimes platform-dependent DLT_
35275107Sfenner	values, to make it easier to exchange capture files between
35375107Sfenner	different OSes.
35475107Sfenner
35575107Sfenner	Non-standard capture files produced by some Linux tcpdumps, e.g.
35675107Sfenner	the one from Red Hat Linux 6.2 and later, can now be read.
35775107Sfenner
35875107Sfenner	Updated autoconf stock files.
35975107Sfenner
36075107Sfenner	Filter expressions can filter on VLAN IDs and various OSI
36175107Sfenner	protocols, and work on Token Ring (with non-source-routed
36275107Sfenner	packets).
36375107Sfenner
36475107Sfenner	"pcap_open_dead()" added to allow compiling filter expressions
36575107Sfenner	to pcap code without opening a capture device or capture file.
36675107Sfenner
36775107Sfenner	Header files fixed to allow use in C++ programs.
36875107Sfenner
36975107Sfenner	Removed dependancy on native headers for packet layout.
37075107Sfenner	Removed Linux specific headers that were shipped.
37175107Sfenner
37275107Sfenner	Security fixes: Strcpy replaced with strlcpy, sprintf replaced
37375107Sfenner	with snprintf.
37475107Sfenner
37575107Sfenner	Fixed bug that could cause subsequent "pcap_compile()"s to fail
37675107Sfenner	erroneously after one compile failed.
37775107Sfenner
37875107Sfenner	Assorted other bug fixes.
37975107Sfenner
38075107Sfenner	README.aix and README.linux files added to describe
38175107Sfenner	platform-specific issues.
38275107Sfenner
38375107Sfenner	"getifaddrs()" rather than SIOCGIFCONF used, if available.
38475107Sfenner
38575107Sfennerv0.5 Sat Jun 10 11:09:15 PDT 2000
38675107Sfenner
38775107Sfenneritojun@iijlab.net
38875107Sfenner- Brought in KAME IPv6/IPsec bpf compiler.
38975107Sfenner- Fixes for NetBSD.
39075107Sfenner- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC),
39175107Sfenner  and changes to work around different BSDs having different DLT_ types
39275107Sfenner  with the same numeric value.
39375107Sfenner
39475107SfennerAssar Westerlund  <assar@sics.se>
39575107Sfenner- Building outside the source code tree fixed.
39675107Sfenner- Changed to write out time stamps with 32-bit seconds and microseconds
39775107Sfenner  fields, regardless of whether those fields are 32 bits or 64 bits in
39875107Sfenner  the OS's native "struct timeval".
39975107Sfenner- Changed "pcap_lookupdev()" to dynamically grow the buffer into which
40075107Sfenner  the list of interfaces is read as necessary in order to hold the
40175107Sfenner  entire list.
40275107Sfenner
40375107SfennerGreg Troxel <gdt@ir.bbn.com>
40475107Sfenner- Added a new "pcap_compile_nopcap()", which lets you compile a filter
40575107Sfenner  expression into a BPF program without having an open live capture or
40675107Sfenner  capture file.
407162012Ssam
40839291Sfennerv0.4 Sat Jul 25 12:40:09 PDT 1998
40939291Sfenner
41039291Sfenner- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill
41139291Sfenner  Fenner (fenner@parc.xerox.com)
41239291Sfenner
41339291Sfenner- Fix alignment problem with FDDI under DLPI. This was causing core
41439291Sfenner  dumps under Solaris.
41539291Sfenner
41639291Sfenner- Added configure options to disable flex and bison. Resulted from a
41739291Sfenner  bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added
41839291Sfenner  options to disable gcc and to force a particular packet capture type.
41939291Sfenner
42039291Sfenner- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks
42139291Sfenner  to John Hawkinson (jhawk@mit.edu)
42239291Sfenner
42339291Sfenner- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not
42439291Sfenner  supply any "link layer" data.
42539291Sfenner
42639291Sfenner- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type.
42739291Sfenner  Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch)
42839291Sfenner
42939291Sfenner- Change IRIX PPP to use DLT_RAW since the kernel does not supply any
43039291Sfenner  "link layer" data.
43139291Sfenner
43239291Sfenner- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header
43339291Sfenner  formats.
43439291Sfenner
43539291Sfenner- Added some new SGI snoop interface types. Thanks to Steve Alexander
43639291Sfenner  (sca@refugee.engr.sgi.com)
43739291Sfenner
43839291Sfenner- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to
43939291Sfenner  Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no)
44039291Sfenner
44139291Sfenner- Fddi supports broadcast as reported by Jeff Macdonald
44239291Sfenner  (jeff@iacnet.com). Also correct ieee802 and arcnet.
44339291Sfenner
44439291Sfenner- Determine Linux pcap buffer size at run time or else it might not be
44539291Sfenner  big enough for some interface types (e.g. FDDI). Thanks to Jes
44639291Sfenner  Sorensen (Jes.Sorensen@cern.ch)
44739291Sfenner
44839291Sfenner- Fix some linux alignment problems.
44939291Sfenner
45039291Sfenner- Document promisc argument to pcap_open_live(). Reported by Ian Marsh
45139291Sfenner  (ianm@sics.se)
45239291Sfenner
45339291Sfenner- Support Metricom radio packets under Linux. Thanks to Kevin Lai
45439291Sfenner  (laik@gunpowder.stanford.edu)
45539291Sfenner
45639291Sfenner- Bind to interface name under Linux to avoid packets from multiple
45739291Sfenner  interfaces on multi-homed hosts. Thanks to Kevin Lai
45839291Sfenner  (laik@gunpowder.stanford.edu)
45939291Sfenner
46039291Sfenner- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts
46139291Sfenner  (rroberts@muller.com)
46239291Sfenner
46339291Sfenner- Fixed an uninitialized memory reference found by Kent Vander Velden
46439291Sfenner  (graphix@iastate.edu)
46539291Sfenner
46639291Sfenner- Fixed lex pattern for IDs to allow leading digits. As reported by
46739291Sfenner  Theo de Raadt (deraadt@cvs.openbsd.org)
46839291Sfenner
46939291Sfenner- Fixed Linux include file problems when using GNU libc.
47039291Sfenner
47139291Sfenner- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it.
47239291Sfenner  Reported reported by Eric Jacksch (jacksch@tenebris.ca)
47339291Sfenner
47439291Sfenner- Fixed bug in pcap_dispatch() that kept it from returning on packet
47539291Sfenner  timeouts.
47639291Sfenner
47739291Sfenner- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check
47839291Sfenner  for "lo" followed by an eos or digit (newer versions of Linux
47939291Sfenner  apparently call the loopback "lo" instead of "lo0").
48039291Sfenner
48139291Sfenner- Fixed Linux networking include files to use ints instead of longs to
48239291Sfenner  avoid problems with 64 bit longs on the alpha. Thanks to Cristian
48339291Sfenner  Gafton (gafton@redhat.com)
48439291Sfenner
48526175Sfennerv0.3 Sat Nov 30 20:56:27 PST 1996
48626175Sfenner
48726175Sfenner- Added Linux support.
48826175Sfenner
48926175Sfenner- Fixed savefile bugs.
49026175Sfenner
49126175Sfenner- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl)
49226175Sfenner
49326175Sfenner- Add support for bpf kernel port filters.
49426175Sfenner
49526175Sfenner- Remove duplicate atalk protocol table entry. Thanks to Christian
49626175Sfenner  Hopps (chopps@water.emich.edu)
49726175Sfenner
49826175Sfenner- Fixed pcap_lookupdev() to ignore nonexistent devices. This was
49926175Sfenner  reported to happen under BSD/OS by David Vincenzetti
50026175Sfenner  (vince@cryptonet.it)
50126175Sfenner
50226175Sfenner- Avoid solaris compiler warnings. Thanks to Bruce Barnett
50326175Sfenner  (barnett@grymoire.crd.ge.com)
50426175Sfenner
50517683Spstv0.2.1 Sun Jul 14 03:02:26 PDT 1996
50617683Spst
50717683Spst- Fixes for HP-UX 10. Thanks in part to to Thomas Wolfram
50817683Spst  (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com)
50917683Spst
51017683Spst- Added support for SINIX. Thanks to Andrej Borsenkow
51117683Spst  (borsenkow.msk@sni.de)
51217683Spst
51317683Spst- Fixes for AIX (although this system is not yet supported). Thanks to
51417683Spst  John Hawkinson (jhawk@mit.edu)
51517683Spst
51617683Spst- Use autoconf's idea of the top level directory in install targets.
51717683Spst  Thanks to John Hawkinson.
51817683Spst
51917683Spst- Add missing autoconf packet capture result message. Thanks to Bill
52017683Spst  Fenner (fenner@parc.xerox.com)
52117683Spst
52217683Spst- Fixed padding problems in the pf module.
52317683Spst
52417683Spst- Fixed some more alignment problems on the alpha.
52517683Spst
52617683Spst- Added explicit netmask support. Thanks to Steve Nuchia
52717683Spst  (steve@research.oknet.com)
52817683Spst
52917683Spst- Fixed to handle raw ip addresses such as 0.0.0.1 without "left
53017683Spst  justifing"
53117683Spst
53217683Spst- Add "sca" keyword (for DEC cluster services) as suggested by Terry
53317683Spst  Kennedy (terry@spcvxa.spc.edu)
53417683Spst
53517683Spst- Add "atalk" keyword as suggested by John Hawkinson.
53617683Spst
53717683Spst- Add "igrp" keyword.
53817683Spst
53917683Spst- Fixed HID definition in grammar.y to be a string, not a value.
54017683Spst
54117683Spst- Use $CC when checking gcc version. Thanks to Carl Lindberg
54217683Spst  (carl_lindberg@blacksmith.com)
54317683Spst
54417683Spst- Removed obsolete reference to pcap_immediate() from the man page.
54517683Spst  Michael Stolarchuk (mts@terminator.rs.itd.umich.edu)
54617683Spst
54717683Spst- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig
54817683Spst  (jch@bsdi.com)
54917683Spst
55017683Spstv0.2 Sun Jun 23 02:28:42 PDT 1996
55117683Spst
55217683Spst- Add support for HP-UX. Resulted from code contributed by Tom Murray
55317683Spst  (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville
55417683Spst  (philipp@res.enst.fr)
55517683Spst
55617683Spst- Update INSTALL with a reminder to install include files. Thanks to
55717683Spst  Mark Andrews (mandrews@aw.sgi.com)
55817683Spst
55917683Spst- Fix bpf compiler alignment bug on the alpha.
56017683Spst
56117683Spst- Use autoconf to detect architectures that can't handle misaligned
56217683Spst  accesses.
56317683Spst
56417683Spst- Added loopback support for snoop. Resulted from report Steve
56517683Spst  Alexander (sca@engr.sgi.com)
56617683Spst
56717683Spstv0.1 Fri Apr 28 18:11:03 PDT 1995
56817683Spst
56917683Spst- Fixed compiler and optimizer bugs.  The BPF filter engine uses unsigned
57017683Spst  comparison operators, while the code generator and optimizer assumed
57117683Spst  signed semantics in several places.  Thanks to Charlie Slater
57217683Spst  (cslater@imatek.com) for pointing this out.
57317683Spst
57417683Spst- Removed FDDI ifdef's, they aren't really needed. Resulted from report
57517683Spst  by Gary Veum (veum@boa.gsfc.nasa.gov).
57617683Spst
57717683Spst- Add pcap-null.c which allows offline use of libpcap on systems that
57817683Spst  don't support live package capture. This feature resulting from a
57917683Spst  request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl).
58017683Spst
58117683Spst- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin
58217683Spst  (Pascal.Hennequin@hugo.int-evry.fr).
58317683Spst
58417683Spst- Port to GNU autoconf.
58517683Spst
58617683Spst- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming
58717683Spst  Johansen (fsj@csd.cri.dk).
58817683Spst
58917683Spst- Handle multi-digit interface unit numbers (aka ppa's) under dlpi.
59017683Spst  Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu).
59117683Spst
59217683Spst- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report
59317683Spst  by Jeff Murphy (jcmurphy@acsu.buffalo.edu).
59417683Spst
59517683Spst- Add support for "long jumps". Thanks to Jeffrey Mogul
59617683Spst  (mogul@pa.dec.com).
59717683Spst
59817683Spst- Fix minor problems when compiling with BDEBUG as noticed by Scott
59917683Spst  Bertilson (scott@unet.umn.edu).
60017683Spst
60117683Spst- Declare sys_errlist "const char *const" to avoid problems under
60217683Spst  FreeBSD. Resulted from report by jher@eden.com.
60317683Spst
60417683Spstv0.0.6 Fri Apr 28 04:07:13 PDT 1995
60517683Spst
60617683Spst- Add missing variable declaration missing from 0.0.6
60717683Spst
60817683Spstv0.0.5 Fri Apr 28 00:22:21 PDT 1995
60917683Spst
61017683Spst- Workaround for problems when pcap_read() returns 0 due to the timeout
61117683Spst  expiring.
61217683Spst
61317683Spstv0.0.4 Thu Apr 20 20:41:48 PDT 1995
61417683Spst
61517683Spst- Change configuration to not use gcc v2 flags with gcc v1.
61617683Spst
61717683Spst- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next()
61817683Spst  should also return 0. Thanks to Richard Stevens (rstevens@noao.edu).
61917683Spst
62017683Spst- Fixed configure to test for snoop before dlpi to avoid problems under
62117683Spst  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
62217683Spst
62317683Spst- Hack around deficiency in Ultrix's make.
62417683Spst
62517683Spst- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle
62617683Spst  savefiles that have more than snapshot bytes of data in them (so we
62717683Spst  can read old savefiles) and avoid writing such files.
62817683Spst
62917683Spst- Added checkioctl which is used with gcc to check that the
63017683Spst  "fixincludes" script has been run.
63117683Spst
63217683Spstv0.0.3 Tue Oct 18 18:13:46 PDT 1994
63317683Spst
63417683Spst- Fixed configure to test for snoop before dlpi to avoid problems under
63517683Spst  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
63617683Spst
63717683Spstv0.0.2 Wed Oct 12 20:56:37 PDT 1994
63817683Spst
63917683Spst- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard
64017683Spst  Stevens.
64117683Spst
64217683Spst- Determine pcap link type from dlpi media type. Resulted from report
64317683Spst  by Mahesh Jethanandani (mahesh@npix.com).
64417683Spst
64517683Spstv0.0.1 Fri Jun 24 14:50:57 PDT 1994
64617683Spst
64717683Spst- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout
64817683Spst  wasn't being initialized sometimes resulting in an "NIOCSFLAGS:
64917683Spst  Invalid argument" error under OSF/1. Reported by Matt Day
65017683Spst  (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com).
65117683Spst
65217683Spst- Turn on FDDI support by default.
65317683Spst
65417683Spstv0.0 Mon Jun 20 19:20:16 PDT 1994
65517683Spst
65617683Spst- Initial release.
65717683Spst
65817683Spst- Fixed bug with greater/less keywords, reported by Mark Andrews
65917683Spst  (mandrews@alias.com).
66017683Spst
66117683Spst- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported
66217683Spst  by Elan Amir (elan@leeb.cs.berkeley.edu).
66317683Spst
66417683Spst- Machines with little-endian byte ordering are supported thanks to
66517683Spst  Jeff Mogul.
66617683Spst
66717683Spst- Add hack for version 2.3 savefiles which don't have caplen and len
66817683Spst  swapped thanks to Vern Paxson.
66917683Spst
67017683Spst- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson.
67117683Spst
67217683Spst- Added length, inbound and outbound keywords.
673