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