CHANGES revision 162012
1162012Ssam@(#) $Header: /tcpdump/master/libpcap/CHANGES,v 1.59.2.8 2005/09/05 09:17:47 guy Exp $ (LBL)
217683Spst
3162012SsamMon. 	September 5, 2005.  ken@xelerance.com. Summary for 0.9.4 libpcap release
4147894Ssam
5162012Ssam	Support for radiotap on Linux (Mike Kershaw)
6162012Ssam	Fixes for HP-UX
7162012Ssam	Support for additional Juniper link-layer types
8162012Ssam	Fixes for filters on MPLS-encapsulated packets
9162012Ssam	"vlan" filter fixed
10162012Ssam	"pppoed" and "pppoes" filters added; the latter modifies later
11162012Ssam	parts of the filter expression to look at the PPP headers and
12162012Ssam	headers in the PPP payload
13162012Ssam
14162012SsamTue. 	July 5, 2005.  ken@xelerance.com. Summary for 0.9.3 libpcap release
15162012Ssam
16147894Ssam	Fixes for compiling on nearly every platform,
17147894Ssam		including improved 64bit support
18147894Ssam	MSDOS Support
19147894Ssam	Add support for sending packets
20147894Ssam	OpenBSD pf format support
21147894Ssam	IrDA capture (Linux only)
22147894Ssam
23127664SbmsTue.   March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release
24127664Sbms
25127664Sbms	Fixed minor problem in gencode.c that would appear on 64-bit
26127664Sbms	platforms.
27127664Sbms	Version number is now sane.
28162012Ssam
29127664SbmsMon.   March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release
30127664Sbms
31127664Sbms	updates for autoconf 2.5
32127664Sbms	fixes for ppp interfaces for freebsd 4.1
33127664Sbms	pcap gencode can generate code for 802.11, IEEE1394, and pflog.
34127664Sbms
35127664SbmsWed.   November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 0.8 release
36127664Sbms
37127664Sbms	added pcap_findalldevs()
38127664Sbms	Win32 patches from NetGroup, Politecnico di Torino (Italy)
39127664Sbms	OpenBSD pf, DLT_PFLOG added
40127664Sbms	Many changes to ATM support.
41162012Ssam	lookup pcap_lookupnet()
42127664Sbms	Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM,
43127664Sbms		DLT_IP_OVER_FC, DLT_FRELAY, others.
44127664Sbms	Sigh.  More AIX wonderfulness.
45162012Ssam	Document updates.
46127664Sbms	Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(),
47162012Ssam			pcap_list_datalinks(), pcap_set_datalink(),
48127664Sbms			pcap_lib_version(), pcap_datalink_val_to_name(),
49127664Sbms			pcap_datalink_name_to_val(), new error returns.
50127664Sbms
51127664SbmsTuesday, February 25, 2003. fenner@research.att.com.  0.7.2 release
52127664Sbms
53127664Sbms 	Support link types that use 802.2 always, never, and sometimes.
54127664Sbms 	Don't decrease the size of the BPF buffer from the default.
55127664Sbms 	Support frame relay.
56127664Sbms 	Handle 32-bit timestamps in DLPI, and pass the right buffer size.
57127664Sbms 	Handle Linux systems with modern kernel but without
58127664Sbms 	 SOL_PACKET in the userland headers.
59127664Sbms 	Linux support for ARPHRD_RAWHDLC.
60127664Sbms 	Handle 32-bit timestamps in snoop.
61127664Sbms 	Support eg (Octane/O2xxx/O3xxx Gigabit) devices.
62127664Sbms 	Add new reserved DLT types.
63127664Sbms
6498530SfennerMonday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release
6598530Sfenner
6698530Sfenner	Added pcap_findalldevs() call to get list of interfaces in a MI way.
6798530Sfenner
68162012Ssam	pcap_stats() has been documented as to what its counters mean on
6998530Sfenner	each platform.
7098530Sfenner
7175107SfennerTuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release
7256889Sfenner
7375107Sfenner	New Linux libpcap implementation, which, in 2.2 and later
7475107Sfenner	kernels, uses PF_PACKET sockets and supports kernel packet
7575107Sfenner	filtering (if compiled into the kernel), and supports the "any"
7675107Sfenner	device for capturing on all interfaces.  Cleans up promiscuous
7775107Sfenner	mode better on pre-2.2 kernels, and has various other fixes
7875107Sfenner	(handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better,
7975107Sfenner	doesn't show duplicate packets on loopback interface, etc.).
8056889Sfenner
8175107Sfenner	Fixed HP-UX libpcap implementation to correctly get the PPA for
8275107Sfenner	an interface, to allow interfaces to be opened by interface name.
8375107Sfenner
8475107Sfenner	libpcap savefiles have system-independent link-layer type values
8575107Sfenner	in the header, rather than sometimes platform-dependent DLT_
8675107Sfenner	values, to make it easier to exchange capture files between
8775107Sfenner	different OSes.
8875107Sfenner
8975107Sfenner	Non-standard capture files produced by some Linux tcpdumps, e.g.
9075107Sfenner	the one from Red Hat Linux 6.2 and later, can now be read.
9175107Sfenner
9275107Sfenner	Updated autoconf stock files.
9375107Sfenner
9475107Sfenner	Filter expressions can filter on VLAN IDs and various OSI
9575107Sfenner	protocols, and work on Token Ring (with non-source-routed
9675107Sfenner	packets).
9775107Sfenner
9875107Sfenner	"pcap_open_dead()" added to allow compiling filter expressions
9975107Sfenner	to pcap code without opening a capture device or capture file.
10075107Sfenner
10175107Sfenner	Header files fixed to allow use in C++ programs.
10275107Sfenner
10375107Sfenner	Removed dependancy on native headers for packet layout.
10475107Sfenner	Removed Linux specific headers that were shipped.
10575107Sfenner
10675107Sfenner	Security fixes: Strcpy replaced with strlcpy, sprintf replaced
10775107Sfenner	with snprintf.
10875107Sfenner
10975107Sfenner	Fixed bug that could cause subsequent "pcap_compile()"s to fail
11075107Sfenner	erroneously after one compile failed.
11175107Sfenner
11275107Sfenner	Assorted other bug fixes.
11375107Sfenner
11475107Sfenner	README.aix and README.linux files added to describe
11575107Sfenner	platform-specific issues.
11675107Sfenner
11775107Sfenner	"getifaddrs()" rather than SIOCGIFCONF used, if available.
11875107Sfenner
11975107Sfennerv0.5 Sat Jun 10 11:09:15 PDT 2000
12075107Sfenner
12175107Sfenneritojun@iijlab.net
12275107Sfenner- Brought in KAME IPv6/IPsec bpf compiler.
12375107Sfenner- Fixes for NetBSD.
12475107Sfenner- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC),
12575107Sfenner  and changes to work around different BSDs having different DLT_ types
12675107Sfenner  with the same numeric value.
12775107Sfenner
12875107SfennerAssar Westerlund  <assar@sics.se>
12975107Sfenner- Building outside the source code tree fixed.
13075107Sfenner- Changed to write out time stamps with 32-bit seconds and microseconds
13175107Sfenner  fields, regardless of whether those fields are 32 bits or 64 bits in
13275107Sfenner  the OS's native "struct timeval".
13375107Sfenner- Changed "pcap_lookupdev()" to dynamically grow the buffer into which
13475107Sfenner  the list of interfaces is read as necessary in order to hold the
13575107Sfenner  entire list.
13675107Sfenner
13775107SfennerGreg Troxel <gdt@ir.bbn.com>
13875107Sfenner- Added a new "pcap_compile_nopcap()", which lets you compile a filter
13975107Sfenner  expression into a BPF program without having an open live capture or
14075107Sfenner  capture file.
141162012Ssam
14239291Sfennerv0.4 Sat Jul 25 12:40:09 PDT 1998
14339291Sfenner
14439291Sfenner- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill
14539291Sfenner  Fenner (fenner@parc.xerox.com)
14639291Sfenner
14739291Sfenner- Fix alignment problem with FDDI under DLPI. This was causing core
14839291Sfenner  dumps under Solaris.
14939291Sfenner
15039291Sfenner- Added configure options to disable flex and bison. Resulted from a
15139291Sfenner  bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added
15239291Sfenner  options to disable gcc and to force a particular packet capture type.
15339291Sfenner
15439291Sfenner- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks
15539291Sfenner  to John Hawkinson (jhawk@mit.edu)
15639291Sfenner
15739291Sfenner- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not
15839291Sfenner  supply any "link layer" data.
15939291Sfenner
16039291Sfenner- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type.
16139291Sfenner  Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch)
16239291Sfenner
16339291Sfenner- Change IRIX PPP to use DLT_RAW since the kernel does not supply any
16439291Sfenner  "link layer" data.
16539291Sfenner
16639291Sfenner- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header
16739291Sfenner  formats.
16839291Sfenner
16939291Sfenner- Added some new SGI snoop interface types. Thanks to Steve Alexander
17039291Sfenner  (sca@refugee.engr.sgi.com)
17139291Sfenner
17239291Sfenner- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to
17339291Sfenner  Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no)
17439291Sfenner
17539291Sfenner- Fddi supports broadcast as reported by Jeff Macdonald
17639291Sfenner  (jeff@iacnet.com). Also correct ieee802 and arcnet.
17739291Sfenner
17839291Sfenner- Determine Linux pcap buffer size at run time or else it might not be
17939291Sfenner  big enough for some interface types (e.g. FDDI). Thanks to Jes
18039291Sfenner  Sorensen (Jes.Sorensen@cern.ch)
18139291Sfenner
18239291Sfenner- Fix some linux alignment problems.
18339291Sfenner
18439291Sfenner- Document promisc argument to pcap_open_live(). Reported by Ian Marsh
18539291Sfenner  (ianm@sics.se)
18639291Sfenner
18739291Sfenner- Support Metricom radio packets under Linux. Thanks to Kevin Lai
18839291Sfenner  (laik@gunpowder.stanford.edu)
18939291Sfenner
19039291Sfenner- Bind to interface name under Linux to avoid packets from multiple
19139291Sfenner  interfaces on multi-homed hosts. Thanks to Kevin Lai
19239291Sfenner  (laik@gunpowder.stanford.edu)
19339291Sfenner
19439291Sfenner- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts
19539291Sfenner  (rroberts@muller.com)
19639291Sfenner
19739291Sfenner- Fixed an uninitialized memory reference found by Kent Vander Velden
19839291Sfenner  (graphix@iastate.edu)
19939291Sfenner
20039291Sfenner- Fixed lex pattern for IDs to allow leading digits. As reported by
20139291Sfenner  Theo de Raadt (deraadt@cvs.openbsd.org)
20239291Sfenner
20339291Sfenner- Fixed Linux include file problems when using GNU libc.
20439291Sfenner
20539291Sfenner- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it.
20639291Sfenner  Reported reported by Eric Jacksch (jacksch@tenebris.ca)
20739291Sfenner
20839291Sfenner- Fixed bug in pcap_dispatch() that kept it from returning on packet
20939291Sfenner  timeouts.
21039291Sfenner
21139291Sfenner- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check
21239291Sfenner  for "lo" followed by an eos or digit (newer versions of Linux
21339291Sfenner  apparently call the loopback "lo" instead of "lo0").
21439291Sfenner
21539291Sfenner- Fixed Linux networking include files to use ints instead of longs to
21639291Sfenner  avoid problems with 64 bit longs on the alpha. Thanks to Cristian
21739291Sfenner  Gafton (gafton@redhat.com)
21839291Sfenner
21926175Sfennerv0.3 Sat Nov 30 20:56:27 PST 1996
22026175Sfenner
22126175Sfenner- Added Linux support.
22226175Sfenner
22326175Sfenner- Fixed savefile bugs.
22426175Sfenner
22526175Sfenner- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl)
22626175Sfenner
22726175Sfenner- Add support for bpf kernel port filters.
22826175Sfenner
22926175Sfenner- Remove duplicate atalk protocol table entry. Thanks to Christian
23026175Sfenner  Hopps (chopps@water.emich.edu)
23126175Sfenner
23226175Sfenner- Fixed pcap_lookupdev() to ignore nonexistent devices. This was
23326175Sfenner  reported to happen under BSD/OS by David Vincenzetti
23426175Sfenner  (vince@cryptonet.it)
23526175Sfenner
23626175Sfenner- Avoid solaris compiler warnings. Thanks to Bruce Barnett
23726175Sfenner  (barnett@grymoire.crd.ge.com)
23826175Sfenner
23917683Spstv0.2.1 Sun Jul 14 03:02:26 PDT 1996
24017683Spst
24117683Spst- Fixes for HP-UX 10. Thanks in part to to Thomas Wolfram
24217683Spst  (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com)
24317683Spst
24417683Spst- Added support for SINIX. Thanks to Andrej Borsenkow
24517683Spst  (borsenkow.msk@sni.de)
24617683Spst
24717683Spst- Fixes for AIX (although this system is not yet supported). Thanks to
24817683Spst  John Hawkinson (jhawk@mit.edu)
24917683Spst
25017683Spst- Use autoconf's idea of the top level directory in install targets.
25117683Spst  Thanks to John Hawkinson.
25217683Spst
25317683Spst- Add missing autoconf packet capture result message. Thanks to Bill
25417683Spst  Fenner (fenner@parc.xerox.com)
25517683Spst
25617683Spst- Fixed padding problems in the pf module.
25717683Spst
25817683Spst- Fixed some more alignment problems on the alpha.
25917683Spst
26017683Spst- Added explicit netmask support. Thanks to Steve Nuchia
26117683Spst  (steve@research.oknet.com)
26217683Spst
26317683Spst- Fixed to handle raw ip addresses such as 0.0.0.1 without "left
26417683Spst  justifing"
26517683Spst
26617683Spst- Add "sca" keyword (for DEC cluster services) as suggested by Terry
26717683Spst  Kennedy (terry@spcvxa.spc.edu)
26817683Spst
26917683Spst- Add "atalk" keyword as suggested by John Hawkinson.
27017683Spst
27117683Spst- Add "igrp" keyword.
27217683Spst
27317683Spst- Fixed HID definition in grammar.y to be a string, not a value.
27417683Spst
27517683Spst- Use $CC when checking gcc version. Thanks to Carl Lindberg
27617683Spst  (carl_lindberg@blacksmith.com)
27717683Spst
27817683Spst- Removed obsolete reference to pcap_immediate() from the man page.
27917683Spst  Michael Stolarchuk (mts@terminator.rs.itd.umich.edu)
28017683Spst
28117683Spst- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig
28217683Spst  (jch@bsdi.com)
28317683Spst
28417683Spstv0.2 Sun Jun 23 02:28:42 PDT 1996
28517683Spst
28617683Spst- Add support for HP-UX. Resulted from code contributed by Tom Murray
28717683Spst  (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville
28817683Spst  (philipp@res.enst.fr)
28917683Spst
29017683Spst- Update INSTALL with a reminder to install include files. Thanks to
29117683Spst  Mark Andrews (mandrews@aw.sgi.com)
29217683Spst
29317683Spst- Fix bpf compiler alignment bug on the alpha.
29417683Spst
29517683Spst- Use autoconf to detect architectures that can't handle misaligned
29617683Spst  accesses.
29717683Spst
29817683Spst- Added loopback support for snoop. Resulted from report Steve
29917683Spst  Alexander (sca@engr.sgi.com)
30017683Spst
30117683Spstv0.1 Fri Apr 28 18:11:03 PDT 1995
30217683Spst
30317683Spst- Fixed compiler and optimizer bugs.  The BPF filter engine uses unsigned
30417683Spst  comparison operators, while the code generator and optimizer assumed
30517683Spst  signed semantics in several places.  Thanks to Charlie Slater
30617683Spst  (cslater@imatek.com) for pointing this out.
30717683Spst
30817683Spst- Removed FDDI ifdef's, they aren't really needed. Resulted from report
30917683Spst  by Gary Veum (veum@boa.gsfc.nasa.gov).
31017683Spst
31117683Spst- Add pcap-null.c which allows offline use of libpcap on systems that
31217683Spst  don't support live package capture. This feature resulting from a
31317683Spst  request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl).
31417683Spst
31517683Spst- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin
31617683Spst  (Pascal.Hennequin@hugo.int-evry.fr).
31717683Spst
31817683Spst- Port to GNU autoconf.
31917683Spst
32017683Spst- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming
32117683Spst  Johansen (fsj@csd.cri.dk).
32217683Spst
32317683Spst- Handle multi-digit interface unit numbers (aka ppa's) under dlpi.
32417683Spst  Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu).
32517683Spst
32617683Spst- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report
32717683Spst  by Jeff Murphy (jcmurphy@acsu.buffalo.edu).
32817683Spst
32917683Spst- Add support for "long jumps". Thanks to Jeffrey Mogul
33017683Spst  (mogul@pa.dec.com).
33117683Spst
33217683Spst- Fix minor problems when compiling with BDEBUG as noticed by Scott
33317683Spst  Bertilson (scott@unet.umn.edu).
33417683Spst
33517683Spst- Declare sys_errlist "const char *const" to avoid problems under
33617683Spst  FreeBSD. Resulted from report by jher@eden.com.
33717683Spst
33817683Spstv0.0.6 Fri Apr 28 04:07:13 PDT 1995
33917683Spst
34017683Spst- Add missing variable declaration missing from 0.0.6
34117683Spst
34217683Spstv0.0.5 Fri Apr 28 00:22:21 PDT 1995
34317683Spst
34417683Spst- Workaround for problems when pcap_read() returns 0 due to the timeout
34517683Spst  expiring.
34617683Spst
34717683Spstv0.0.4 Thu Apr 20 20:41:48 PDT 1995
34817683Spst
34917683Spst- Change configuration to not use gcc v2 flags with gcc v1.
35017683Spst
35117683Spst- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next()
35217683Spst  should also return 0. Thanks to Richard Stevens (rstevens@noao.edu).
35317683Spst
35417683Spst- Fixed configure to test for snoop before dlpi to avoid problems under
35517683Spst  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
35617683Spst
35717683Spst- Hack around deficiency in Ultrix's make.
35817683Spst
35917683Spst- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle
36017683Spst  savefiles that have more than snapshot bytes of data in them (so we
36117683Spst  can read old savefiles) and avoid writing such files.
36217683Spst
36317683Spst- Added checkioctl which is used with gcc to check that the
36417683Spst  "fixincludes" script has been run.
36517683Spst
36617683Spstv0.0.3 Tue Oct 18 18:13:46 PDT 1994
36717683Spst
36817683Spst- Fixed configure to test for snoop before dlpi to avoid problems under
36917683Spst  IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com).
37017683Spst
37117683Spstv0.0.2 Wed Oct 12 20:56:37 PDT 1994
37217683Spst
37317683Spst- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard
37417683Spst  Stevens.
37517683Spst
37617683Spst- Determine pcap link type from dlpi media type. Resulted from report
37717683Spst  by Mahesh Jethanandani (mahesh@npix.com).
37817683Spst
37917683Spstv0.0.1 Fri Jun 24 14:50:57 PDT 1994
38017683Spst
38117683Spst- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout
38217683Spst  wasn't being initialized sometimes resulting in an "NIOCSFLAGS:
38317683Spst  Invalid argument" error under OSF/1. Reported by Matt Day
38417683Spst  (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com).
38517683Spst
38617683Spst- Turn on FDDI support by default.
38717683Spst
38817683Spstv0.0 Mon Jun 20 19:20:16 PDT 1994
38917683Spst
39017683Spst- Initial release.
39117683Spst
39217683Spst- Fixed bug with greater/less keywords, reported by Mark Andrews
39317683Spst  (mandrews@alias.com).
39417683Spst
39517683Spst- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported
39617683Spst  by Elan Amir (elan@leeb.cs.berkeley.edu).
39717683Spst
39817683Spst- Machines with little-endian byte ordering are supported thanks to
39917683Spst  Jeff Mogul.
40017683Spst
40117683Spst- Add hack for version 2.3 savefiles which don't have caplen and len
40217683Spst  swapped thanks to Vern Paxson.
40317683Spst
40417683Spst- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson.
40517683Spst
40617683Spst- Added length, inbound and outbound keywords.
407