CHANGES revision 98530
198530Sfenner@(#) $Header: /tcpdump/master/libpcap/CHANGES,v 1.56 2001/10/23 04:37:31 mcr Exp $ (LBL) 217683Spst 398530SfennerMonday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release 498530Sfenner 598530Sfenner Added pcap_findalldevs() call to get list of interfaces in a MI way. 698530Sfenner 798530Sfenner pcap_stats() has been documented as to what its counters mean on 898530Sfenner each platform. 998530Sfenner 1075107SfennerTuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release 1156889Sfenner 1275107Sfenner New Linux libpcap implementation, which, in 2.2 and later 1375107Sfenner kernels, uses PF_PACKET sockets and supports kernel packet 1475107Sfenner filtering (if compiled into the kernel), and supports the "any" 1575107Sfenner device for capturing on all interfaces. Cleans up promiscuous 1675107Sfenner mode better on pre-2.2 kernels, and has various other fixes 1775107Sfenner (handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better, 1875107Sfenner doesn't show duplicate packets on loopback interface, etc.). 1956889Sfenner 2075107Sfenner Fixed HP-UX libpcap implementation to correctly get the PPA for 2175107Sfenner an interface, to allow interfaces to be opened by interface name. 2275107Sfenner 2375107Sfenner libpcap savefiles have system-independent link-layer type values 2475107Sfenner in the header, rather than sometimes platform-dependent DLT_ 2575107Sfenner values, to make it easier to exchange capture files between 2675107Sfenner different OSes. 2775107Sfenner 2875107Sfenner Non-standard capture files produced by some Linux tcpdumps, e.g. 2975107Sfenner the one from Red Hat Linux 6.2 and later, can now be read. 3075107Sfenner 3175107Sfenner Updated autoconf stock files. 3275107Sfenner 3375107Sfenner Filter expressions can filter on VLAN IDs and various OSI 3475107Sfenner protocols, and work on Token Ring (with non-source-routed 3575107Sfenner packets). 3675107Sfenner 3775107Sfenner "pcap_open_dead()" added to allow compiling filter expressions 3875107Sfenner to pcap code without opening a capture device or capture file. 3975107Sfenner 4075107Sfenner Header files fixed to allow use in C++ programs. 4175107Sfenner 4275107Sfenner Removed dependancy on native headers for packet layout. 4375107Sfenner Removed Linux specific headers that were shipped. 4475107Sfenner 4575107Sfenner Security fixes: Strcpy replaced with strlcpy, sprintf replaced 4675107Sfenner with snprintf. 4775107Sfenner 4875107Sfenner Fixed bug that could cause subsequent "pcap_compile()"s to fail 4975107Sfenner erroneously after one compile failed. 5075107Sfenner 5175107Sfenner Assorted other bug fixes. 5275107Sfenner 5375107Sfenner README.aix and README.linux files added to describe 5475107Sfenner platform-specific issues. 5575107Sfenner 5675107Sfenner "getifaddrs()" rather than SIOCGIFCONF used, if available. 5775107Sfenner 5875107Sfennerv0.5 Sat Jun 10 11:09:15 PDT 2000 5975107Sfenner 6075107Sfenneritojun@iijlab.net 6175107Sfenner- Brought in KAME IPv6/IPsec bpf compiler. 6275107Sfenner- Fixes for NetBSD. 6375107Sfenner- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC), 6475107Sfenner and changes to work around different BSDs having different DLT_ types 6575107Sfenner with the same numeric value. 6675107Sfenner 6775107SfennerAssar Westerlund <assar@sics.se> 6875107Sfenner- Building outside the source code tree fixed. 6975107Sfenner- Changed to write out time stamps with 32-bit seconds and microseconds 7075107Sfenner fields, regardless of whether those fields are 32 bits or 64 bits in 7175107Sfenner the OS's native "struct timeval". 7275107Sfenner- Changed "pcap_lookupdev()" to dynamically grow the buffer into which 7375107Sfenner the list of interfaces is read as necessary in order to hold the 7475107Sfenner entire list. 7575107Sfenner 7675107SfennerGreg Troxel <gdt@ir.bbn.com> 7775107Sfenner- Added a new "pcap_compile_nopcap()", which lets you compile a filter 7875107Sfenner expression into a BPF program without having an open live capture or 7975107Sfenner capture file. 8075107Sfenner 8139291Sfennerv0.4 Sat Jul 25 12:40:09 PDT 1998 8239291Sfenner 8339291Sfenner- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill 8439291Sfenner Fenner (fenner@parc.xerox.com) 8539291Sfenner 8639291Sfenner- Fix alignment problem with FDDI under DLPI. This was causing core 8739291Sfenner dumps under Solaris. 8839291Sfenner 8939291Sfenner- Added configure options to disable flex and bison. Resulted from a 9039291Sfenner bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added 9139291Sfenner options to disable gcc and to force a particular packet capture type. 9239291Sfenner 9339291Sfenner- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks 9439291Sfenner to John Hawkinson (jhawk@mit.edu) 9539291Sfenner 9639291Sfenner- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not 9739291Sfenner supply any "link layer" data. 9839291Sfenner 9939291Sfenner- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type. 10039291Sfenner Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch) 10139291Sfenner 10239291Sfenner- Change IRIX PPP to use DLT_RAW since the kernel does not supply any 10339291Sfenner "link layer" data. 10439291Sfenner 10539291Sfenner- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header 10639291Sfenner formats. 10739291Sfenner 10839291Sfenner- Added some new SGI snoop interface types. Thanks to Steve Alexander 10939291Sfenner (sca@refugee.engr.sgi.com) 11039291Sfenner 11139291Sfenner- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to 11239291Sfenner Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no) 11339291Sfenner 11439291Sfenner- Fddi supports broadcast as reported by Jeff Macdonald 11539291Sfenner (jeff@iacnet.com). Also correct ieee802 and arcnet. 11639291Sfenner 11739291Sfenner- Determine Linux pcap buffer size at run time or else it might not be 11839291Sfenner big enough for some interface types (e.g. FDDI). Thanks to Jes 11939291Sfenner Sorensen (Jes.Sorensen@cern.ch) 12039291Sfenner 12139291Sfenner- Fix some linux alignment problems. 12239291Sfenner 12339291Sfenner- Document promisc argument to pcap_open_live(). Reported by Ian Marsh 12439291Sfenner (ianm@sics.se) 12539291Sfenner 12639291Sfenner- Support Metricom radio packets under Linux. Thanks to Kevin Lai 12739291Sfenner (laik@gunpowder.stanford.edu) 12839291Sfenner 12939291Sfenner- Bind to interface name under Linux to avoid packets from multiple 13039291Sfenner interfaces on multi-homed hosts. Thanks to Kevin Lai 13139291Sfenner (laik@gunpowder.stanford.edu) 13239291Sfenner 13339291Sfenner- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts 13439291Sfenner (rroberts@muller.com) 13539291Sfenner 13639291Sfenner- Fixed an uninitialized memory reference found by Kent Vander Velden 13739291Sfenner (graphix@iastate.edu) 13839291Sfenner 13939291Sfenner- Fixed lex pattern for IDs to allow leading digits. As reported by 14039291Sfenner Theo de Raadt (deraadt@cvs.openbsd.org) 14139291Sfenner 14239291Sfenner- Fixed Linux include file problems when using GNU libc. 14339291Sfenner 14439291Sfenner- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it. 14539291Sfenner Reported reported by Eric Jacksch (jacksch@tenebris.ca) 14639291Sfenner 14739291Sfenner- Fixed bug in pcap_dispatch() that kept it from returning on packet 14839291Sfenner timeouts. 14939291Sfenner 15039291Sfenner- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check 15139291Sfenner for "lo" followed by an eos or digit (newer versions of Linux 15239291Sfenner apparently call the loopback "lo" instead of "lo0"). 15339291Sfenner 15439291Sfenner- Fixed Linux networking include files to use ints instead of longs to 15539291Sfenner avoid problems with 64 bit longs on the alpha. Thanks to Cristian 15639291Sfenner Gafton (gafton@redhat.com) 15739291Sfenner 15826175Sfennerv0.3 Sat Nov 30 20:56:27 PST 1996 15926175Sfenner 16026175Sfenner- Added Linux support. 16126175Sfenner 16226175Sfenner- Fixed savefile bugs. 16326175Sfenner 16426175Sfenner- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl) 16526175Sfenner 16626175Sfenner- Add support for bpf kernel port filters. 16726175Sfenner 16826175Sfenner- Remove duplicate atalk protocol table entry. Thanks to Christian 16926175Sfenner Hopps (chopps@water.emich.edu) 17026175Sfenner 17126175Sfenner- Fixed pcap_lookupdev() to ignore nonexistent devices. This was 17226175Sfenner reported to happen under BSD/OS by David Vincenzetti 17326175Sfenner (vince@cryptonet.it) 17426175Sfenner 17526175Sfenner- Avoid solaris compiler warnings. Thanks to Bruce Barnett 17626175Sfenner (barnett@grymoire.crd.ge.com) 17726175Sfenner 17817683Spstv0.2.1 Sun Jul 14 03:02:26 PDT 1996 17917683Spst 18017683Spst- Fixes for HP-UX 10. Thanks in part to to Thomas Wolfram 18117683Spst (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com) 18217683Spst 18317683Spst- Added support for SINIX. Thanks to Andrej Borsenkow 18417683Spst (borsenkow.msk@sni.de) 18517683Spst 18617683Spst- Fixes for AIX (although this system is not yet supported). Thanks to 18717683Spst John Hawkinson (jhawk@mit.edu) 18817683Spst 18917683Spst- Use autoconf's idea of the top level directory in install targets. 19017683Spst Thanks to John Hawkinson. 19117683Spst 19217683Spst- Add missing autoconf packet capture result message. Thanks to Bill 19317683Spst Fenner (fenner@parc.xerox.com) 19417683Spst 19517683Spst- Fixed padding problems in the pf module. 19617683Spst 19717683Spst- Fixed some more alignment problems on the alpha. 19817683Spst 19917683Spst- Added explicit netmask support. Thanks to Steve Nuchia 20017683Spst (steve@research.oknet.com) 20117683Spst 20217683Spst- Fixed to handle raw ip addresses such as 0.0.0.1 without "left 20317683Spst justifing" 20417683Spst 20517683Spst- Add "sca" keyword (for DEC cluster services) as suggested by Terry 20617683Spst Kennedy (terry@spcvxa.spc.edu) 20717683Spst 20817683Spst- Add "atalk" keyword as suggested by John Hawkinson. 20917683Spst 21017683Spst- Add "igrp" keyword. 21117683Spst 21217683Spst- Fixed HID definition in grammar.y to be a string, not a value. 21317683Spst 21417683Spst- Use $CC when checking gcc version. Thanks to Carl Lindberg 21517683Spst (carl_lindberg@blacksmith.com) 21617683Spst 21717683Spst- Removed obsolete reference to pcap_immediate() from the man page. 21817683Spst Michael Stolarchuk (mts@terminator.rs.itd.umich.edu) 21917683Spst 22017683Spst- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig 22117683Spst (jch@bsdi.com) 22217683Spst 22317683Spstv0.2 Sun Jun 23 02:28:42 PDT 1996 22417683Spst 22517683Spst- Add support for HP-UX. Resulted from code contributed by Tom Murray 22617683Spst (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville 22717683Spst (philipp@res.enst.fr) 22817683Spst 22917683Spst- Update INSTALL with a reminder to install include files. Thanks to 23017683Spst Mark Andrews (mandrews@aw.sgi.com) 23117683Spst 23217683Spst- Fix bpf compiler alignment bug on the alpha. 23317683Spst 23417683Spst- Use autoconf to detect architectures that can't handle misaligned 23517683Spst accesses. 23617683Spst 23717683Spst- Added loopback support for snoop. Resulted from report Steve 23817683Spst Alexander (sca@engr.sgi.com) 23917683Spst 24017683Spstv0.1 Fri Apr 28 18:11:03 PDT 1995 24117683Spst 24217683Spst- Fixed compiler and optimizer bugs. The BPF filter engine uses unsigned 24317683Spst comparison operators, while the code generator and optimizer assumed 24417683Spst signed semantics in several places. Thanks to Charlie Slater 24517683Spst (cslater@imatek.com) for pointing this out. 24617683Spst 24717683Spst- Removed FDDI ifdef's, they aren't really needed. Resulted from report 24817683Spst by Gary Veum (veum@boa.gsfc.nasa.gov). 24917683Spst 25017683Spst- Add pcap-null.c which allows offline use of libpcap on systems that 25117683Spst don't support live package capture. This feature resulting from a 25217683Spst request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl). 25317683Spst 25417683Spst- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin 25517683Spst (Pascal.Hennequin@hugo.int-evry.fr). 25617683Spst 25717683Spst- Port to GNU autoconf. 25817683Spst 25917683Spst- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming 26017683Spst Johansen (fsj@csd.cri.dk). 26117683Spst 26217683Spst- Handle multi-digit interface unit numbers (aka ppa's) under dlpi. 26317683Spst Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu). 26417683Spst 26517683Spst- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report 26617683Spst by Jeff Murphy (jcmurphy@acsu.buffalo.edu). 26717683Spst 26817683Spst- Add support for "long jumps". Thanks to Jeffrey Mogul 26917683Spst (mogul@pa.dec.com). 27017683Spst 27117683Spst- Fix minor problems when compiling with BDEBUG as noticed by Scott 27217683Spst Bertilson (scott@unet.umn.edu). 27317683Spst 27417683Spst- Declare sys_errlist "const char *const" to avoid problems under 27517683Spst FreeBSD. Resulted from report by jher@eden.com. 27617683Spst 27717683Spstv0.0.6 Fri Apr 28 04:07:13 PDT 1995 27817683Spst 27917683Spst- Add missing variable declaration missing from 0.0.6 28017683Spst 28117683Spstv0.0.5 Fri Apr 28 00:22:21 PDT 1995 28217683Spst 28317683Spst- Workaround for problems when pcap_read() returns 0 due to the timeout 28417683Spst expiring. 28517683Spst 28617683Spstv0.0.4 Thu Apr 20 20:41:48 PDT 1995 28717683Spst 28817683Spst- Change configuration to not use gcc v2 flags with gcc v1. 28917683Spst 29017683Spst- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next() 29117683Spst should also return 0. Thanks to Richard Stevens (rstevens@noao.edu). 29217683Spst 29317683Spst- Fixed configure to test for snoop before dlpi to avoid problems under 29417683Spst IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 29517683Spst 29617683Spst- Hack around deficiency in Ultrix's make. 29717683Spst 29817683Spst- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle 29917683Spst savefiles that have more than snapshot bytes of data in them (so we 30017683Spst can read old savefiles) and avoid writing such files. 30117683Spst 30217683Spst- Added checkioctl which is used with gcc to check that the 30317683Spst "fixincludes" script has been run. 30417683Spst 30517683Spstv0.0.3 Tue Oct 18 18:13:46 PDT 1994 30617683Spst 30717683Spst- Fixed configure to test for snoop before dlpi to avoid problems under 30817683Spst IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 30917683Spst 31017683Spstv0.0.2 Wed Oct 12 20:56:37 PDT 1994 31117683Spst 31217683Spst- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard 31317683Spst Stevens. 31417683Spst 31517683Spst- Determine pcap link type from dlpi media type. Resulted from report 31617683Spst by Mahesh Jethanandani (mahesh@npix.com). 31717683Spst 31817683Spstv0.0.1 Fri Jun 24 14:50:57 PDT 1994 31917683Spst 32017683Spst- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout 32117683Spst wasn't being initialized sometimes resulting in an "NIOCSFLAGS: 32217683Spst Invalid argument" error under OSF/1. Reported by Matt Day 32317683Spst (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com). 32417683Spst 32517683Spst- Turn on FDDI support by default. 32617683Spst 32717683Spstv0.0 Mon Jun 20 19:20:16 PDT 1994 32817683Spst 32917683Spst- Initial release. 33017683Spst 33117683Spst- Fixed bug with greater/less keywords, reported by Mark Andrews 33217683Spst (mandrews@alias.com). 33317683Spst 33417683Spst- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported 33517683Spst by Elan Amir (elan@leeb.cs.berkeley.edu). 33617683Spst 33717683Spst- Machines with little-endian byte ordering are supported thanks to 33817683Spst Jeff Mogul. 33917683Spst 34017683Spst- Add hack for version 2.3 savefiles which don't have caplen and len 34117683Spst swapped thanks to Vern Paxson. 34217683Spst 34317683Spst- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson. 34417683Spst 34517683Spst- Added length, inbound and outbound keywords. 346