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