CHANGES revision 251129
1251129SdelphijMonday March 18, 2013 guy@alum.mit.edu 2251129SdelphijSummary for 1.4.0 libpcap release 3251129Sdelphij Add netfilter/nfqueue interface. 4251129Sdelphij If we don't have support for IPv6 address resolution, support, 5251129Sdelphij in filter expressions, what IPv6 stuff we can. 6251129Sdelphij Checks added for malloc()/realloc()/etc. failures. 7251129Sdelphij Fix pcap-config to include -lpthread if canusb support is 8251129Sdelphij present 9251129Sdelphij Try to fix "pcap_parse not defined" problems when --without-flex 10251129Sdelphij and --without-bison are used when you have Flex and Bison 11251129Sdelphij Fix some issues with the pcap_loop man page. 12251129Sdelphij Fix pcap_getnonblock() and pcap_setnonblock() to fill in the 13251129Sdelphij supplied error message buffer 14251129Sdelphij Fix typo that, it appeared, would cause pcap-libdlpi.c not to 15251129Sdelphij compile (perhaps systems with libdlpi also have BPF and use 16251129Sdelphij that instead) 17251129Sdelphij Catch attempts to call pcap_compile() on a non-activated pcap_t 18251129Sdelphij Fix crash on Linux with CAN-USB support without usbfs 19251129Sdelphij Fix addition of VLAN tags for Linux cooked captures 20251129Sdelphij Check for both EOPNOTSUPP and EINVAL after SIOCETHTOOL ioctl, so 21251129Sdelphij that the driver can report either one if it doesn't support 22251129Sdelphij SIOCETHTOOL 23251129Sdelphij Add DLT_INFINIBAND and DLT_SCTP 24251129Sdelphij Describe "proto XXX" and "protochain XXX" in the pcap-filter man 25251129Sdelphij page 26251129Sdelphij Handle either directories, or symlinks to directories, that 27251129Sdelphij correspond to interfaces in /sys/class/net 28251129Sdelphij Fix handling of VLAN tag insertion to check, on Linux 3.x 29251129Sdelphij kernels, for VLAN tag valid flag 30251129Sdelphij Clean up some man pages 31251129Sdelphij Support libnl3 as well as libnl1 and libnl2 on Linux 32251129Sdelphij 33241231SdelphijFriday March 30, 2012. mcr@sandelman.ca 34241231SdelphijSummary for 1.3.0 libpcap release 35241231Sdelphij Handle DLT_PFSYNC in {FreeBSD, other *BSD+Mac OS X, other}. 36241231Sdelphij Linux: Don't fail if netfilter isn't enabled in the kernel. 37241231Sdelphij Add new link-layer type for NFC Forum LLCP. 38241231Sdelphij Put the CANUSB stuff into EXTRA_DIST, so it shows up in the release tarball. 39241231Sdelphij Add LINKTYPE_NG40/DLT_NG40. 40241231Sdelphij Add DLT_MPEG_2_TS/LINKTYPE_MPEG_2_TS for MPEG-2 transport streams. 41241231Sdelphij [PATCH] Fix AIX-3.5 crash with read failure during stress 42241231Sdelphij AIX fixes. 43241231Sdelphij Introduce --disable-shared configure option. 44241231Sdelphij Added initial support for canusb devices. 45241231Sdelphij Include the pcap(3PCAP) additions as 1.2.1 changes. 46241231Sdelphij many updates to documentation: pcap.3pcap.in 47241231Sdelphij Improve 'inbound'/'outbound' capture filters under Linux. 48241231Sdelphij Note the cleanup of handling of new DLT_/LINKTYPE_ values. 49241231Sdelphij On Lion, don't build for PPC. 50241231Sdelphij For mac80211 devices we need to clean up monitor mode on exit. 51241231Sdelphij 52235426SdelphijFriday December 9, 2011. guy@alum.mit.edu. 53235426SdelphijSummary for 1.2.1 libpcap release 54235426Sdelphij Update README file. 55235426Sdelphij Fix typoes in README.linux file. 56235426Sdelphij Clean up some compiler warnings. 57235426Sdelphij Fix Linux compile problems and tests for ethtool.h. 58235426Sdelphij Treat Debian/kFreeBSD and GNU/Hurd as systems with GNU 59235426Sdelphij toolchains. 60235426Sdelphij Support 802.1 QinQ as a form of VLAN in filters. 61235426Sdelphij Treat "carp" as equivalent to "vrrp" in filters. 62235426Sdelphij Fix code generated for "ip6 protochain". 63235426Sdelphij Add some new link-layer header types. 64235426Sdelphij Support capturing NetFilter log messages on Linux. 65235426Sdelphij Clean up some error messages. 66235426Sdelphij Turn off monitor mode on exit for mac80211 interfaces on Linux. 67235426Sdelphij Fix problems turning monitor mode on for non-mac80211 interfaces 68235426Sdelphij on Linux. 69235426Sdelphij Properly fail if /sys/class/net or /proc/net/dev exist but can't 70235426Sdelphij be opened. 71235426Sdelphij Fail if pcap_activate() is called on an already-activated 72235426Sdelphij pcap_t, and add a test program for that. 73235426Sdelphij Fix filtering in pcap-ng files. 74235426Sdelphij Don't build for PowerPC on Mac OS X Lion. 75235426Sdelphij Simplify handling of new DLT_/LINKTYPE_ values. 76235426Sdelphij Expand pcap(3PCAP) man page. 77235426Sdelphij 78235426SdelphijSunday July 24, 2011. mcr@sandelman.ca. 79235426SdelphijSummary for 1.2 libpcap release 80235426Sdelphij All of the changes listed below for 1.1.1 and 1.1.2. 81235426Sdelphij Changes to error handling for pcap_findalldevs(). 82235426Sdelphij Fix the calculation of the frame size in memory-mapped captures. 83235426Sdelphij Add a link-layer header type for STANAG 5066 D_PDUs. 84235426Sdelphij Add a link-layer type for a variant of 3GPP TS 27.010. 85235426Sdelphij Noted real nature of LINKTYPE_ARCNET. 86235426Sdelphij Add a link-layer type for DVB-CI. 87235426Sdelphij Fix configure-script discovery of VLAN acceleration support. 88235426Sdelphij see http://netoptimizer.blogspot.com/2010/09/tcpdump-vs-vlan-tags.html 89235426Sdelphij Linux, HP-UX, AIX, NetBSD and OpenBSD compilation/conflict fixes. 90235426Sdelphij Protect against including AIX 5.x's <net/bpf.h> having been included. 91235426Sdelphij Add DLT_DBUS, for raw D-Bus messages. 92235426Sdelphij Treat either EPERM or EACCES as "no soup for you". 93235426Sdelphij Changes to permissions on DLPI systems. 94235426Sdelphij Add DLT_IEEE802_15_4_NOFCS for 802.15.4 interfaces. 95235426Sdelphij 96235426SdelphijFri. August 6, 2010. guy@alum.mit.edu. 97235426SdelphijSummary for 1.1.2 libpcap release 98235426Sdelphij Return DLT_ values, not raw LINKTYPE_ values from 99235426Sdelphij pcap_datalink() when reading pcap-ng files 100235426Sdelphij Add support for "wlan ra" and "wlan ta", to check the RA and TA 101235426Sdelphij of WLAN frames that have them 102235426Sdelphij Don't crash if "wlan addr{1,2,3,4}" are used without 802.11 103235426Sdelphij headers 104235426Sdelphij Do filtering on USB and Bluetooth capturing 105235426Sdelphij On FreeBSD/SPARC64, use -fPIC - it's apparently necessary 106235426Sdelphij Check for valid port numbers (fit in a 16-bit unsigned field) in 107235426Sdelphij "port" filters 108235426Sdelphij Reject attempts to put savefiles into non-blocking mode 109235426Sdelphij Check for "no such device" for the "get the media types" ioctl 110235426Sdelphij in *BSD 111235426Sdelphij Improve error messages from bpf_open(), and let it do the error 112235426Sdelphij handling 113235426Sdelphij Return more specific errors from pcap_can_set_rfmon(); fix 114235426Sdelphij documentation 115235426Sdelphij Update description fetching code for FreeBSD, fix code for 116235426Sdelphij OpenBSD 117235426Sdelphij Ignore /sys/net/dev files if we get ENODEV for them, not just 118235426Sdelphij ENXIO; fixes handling of bonding devices on Linux 119235426Sdelphij Fix check for a constant 0 argument to BPF_DIV 120235426Sdelphij Use the right version of ar when cross-building 121235426Sdelphij Free any filter set on a savefile when the savefile is closed 122235426Sdelphij Include the CFLAGS setting when configure was run in the 123235426Sdelphij compiler flags 124235426Sdelphij Add support for 802.15.4 interfaces on Linux 125235426Sdelphij 126214518SrpauloThu. April 1, 2010. guy@alum.mit.edu. 127214518SrpauloSummary for 1.1.1 libpcap release 128214518Srpaulo Update CHANGES to reflect more of the changes in 1.1.0. 129214518Srpaulo Fix build on RHEL5. 130214518Srpaulo Fix shared library build on AIX. 13117683Spst 132214518SrpauloThu. March 11, 2010. ken@netfunctional.ca/guy@alum.mit.edu. 133214518SrpauloSummary for 1.1.0 libpcap release 134214518Srpaulo Add SocketCAN capture support 135214518Srpaulo Add Myricom SNF API support 136214518Srpaulo Update Endace DAG and ERF support 137214518Srpaulo Add support for shared libraries on Solaris, HP-UX, and AIX 138214518Srpaulo Build, install, and un-install shared libraries by default; 139214518Srpaulo don't build/install shared libraries on platforms we don't support 140214518Srpaulo Fix building from a directory other than the source directory 141214518Srpaulo Fix compiler warnings and builds on some platforms 142214518Srpaulo Update config.guess and config.sub 143214518Srpaulo Support monitor mode on mac80211 devices on Linux 144214518Srpaulo Fix USB memory-mapped capturing on Linux; it requires a new DLT_ 145214518Srpaulo value 146214518Srpaulo On Linux, scan /sys/class/net for devices if we have it; scan 147214518Srpaulo it, or /proc/net/dev if we don't have /sys/class/net, even if 148214518Srpaulo we have getifaddrs(), as it'll find interfaces with no 149214518Srpaulo addresses 150214518Srpaulo Add limited support for reading pcap-ng files 151214518Srpaulo Fix BPF driver-loading error handling on AIX 152214518Srpaulo Support getting the full-length interface description on FreeBSD 153214518Srpaulo In the lexical analyzer, free up any addrinfo structure we got back 154214518Srpaulo from getaddrinfo(). 155214518Srpaulo Add support for BPF and libdlpi in OpenSolaris (and SXCE) 156214518Srpaulo Hyphenate "link-layer" everywhere 157214518Srpaulo Add /sys/kernel/debug/usb/usbmon to the list of usbmon locations 158214518Srpaulo In pcap_read_linux_mmap(), if there are no frames available, call 159214518Srpaulo poll() even if we're in non-blocking mode, so we pick up 160214518Srpaulo errors, and check for the errors in question. 161214518Srpaulo Note that poll() works on BPF devices is Snow Leopard 162214518Srpaulo If an ENXIO or ENETDOWN is received, it may mean the device has 163214518Srpaulo gone away. Deal with it. 164214518Srpaulo For BPF, raise the default capture buffer size to from 32k to 512k 165214518Srpaulo Support ps_ifdrop on Linux 166214518Srpaulo Added a bunch of #ifdef directives to make wpcap.dll (WinPcap) compile 167214518Srpaulo under cygwin. 168214518Srpaulo Changes to Linux mmapped captures. 169214518Srpaulo Fix bug where create_ring would fail for particular snaplen and 170214518Srpaulo buffer size combinations 171214518Srpaulo Update pcap-config so that it handles libpcap requiring 172214518Srpaulo additional libraries 173214518Srpaulo Add workaround for threadsafeness on Windows 174214518Srpaulo Add missing mapping for DLT_ENC <-> LINKTYPE_ENC 175214518Srpaulo DLT: Add DLT_CAN_SOCKETCAN 176214518Srpaulo DLT: Add Solaris ipnet 177214518Srpaulo Don't check for DLT_IPNET if it's not defined 178214518Srpaulo Add link-layer types for Fibre Channel FC-2 179214518Srpaulo Add link-layer types for Wireless HART 180214518Srpaulo Add link-layer types for AOS 181214518Srpaulo Add link-layer types for DECT 182214518Srpaulo Autoconf fixes (AIX, HP-UX, OSF/1, Tru64 cleanups) 183214518Srpaulo Install headers unconditionally, and include vlan.h/bluetooth.h if 184214518Srpaulo enabled 185214518Srpaulo Autoconf fixes+cleanup 186214518Srpaulo Support enabling/disabling bluetooth (--{en,dis}able-bluetooth) 187214518Srpaulo Support disabling SITA support (--without-sita) 188214518Srpaulo Return -1 on failure to create packet ring (if supported but 189214518Srpaulo creation failed) 190214518Srpaulo Fix handling of 'any' device, so that it can be opened, and no longer 191214518Srpaulo attempt to open it in Monitor mode 192214518Srpaulo Add support for snapshot length for USB Memory-Mapped Interface 193214518Srpaulo Fix configure and build on recent Linux kernels 194214518Srpaulo Fix memory-mapped Linux capture to support pcap_next() and 195214518Srpaulo pcap_next_ex() 196214518Srpaulo Fixes for Linux USB capture 197214518Srpaulo DLT: Add DLT_LINUX_EVDEV 198214518Srpaulo DLT: Add DLT_GSMTAP_UM 199214518Srpaulo DLT: Add DLT_GSMTAP_ABIS 200214518Srpaulo 201190225SrpauloMon. October 27, 2008. ken@netfunctional.ca. Summary for 1.0.0 libpcap release 202190225Srpaulo Compile with IPv6 support by default 203190225Srpaulo Compile with large file support on by default 204190225Srpaulo Add pcap-config script, which deals with -I/-L flags for compiling 205190225Srpaulo DLT: Add IPMB 206190225Srpaulo DLT: Add LAPD 207190225Srpaulo DLT: Add AX25 (AX.25 w/KISS header) 208190225Srpaulo DLT: Add JUNIPER_ST 209190225Srpaulo 802.15.4 support 210190225Srpaulo Variable length 802.11 header support 211190225Srpaulo X2E data type support 212190225Srpaulo SITA ACN Interface support - see README.sita 213214518Srpaulo Support for memory-mapped capture on Linux 214190225Srpaulo Support for zerocopy BPF on platforms that support it 215214518Srpaulo Support for setting buffer size when opening devices 216214518Srpaulo Support for setting monitor mode when opening 802.11 devices 217190225Srpaulo Better support for dealing with VLAN tagging/stripping on Linux 218190225Srpaulo Fix dynamic library support on OSX 219190225Srpaulo Return PCAP_ERROR_IFACE_NOT_UP if the interface isn't 'UP', so applications 220190225Srpaulo can print better diagnostic information 221190225Srpaulo Return PCAP_ERROR_PERM_DENIED if we don't have permission to open a device, so 222190225Srpaulo applications can tell the user they need to go play with permissions 223190225Srpaulo On Linux, ignore ENETDOWN so we can continue to capture packets if the 224190225Srpaulo interface goes down and comes back up again. 225190225Srpaulo On Linux, support new tpacket frame headers (2.6.27+) 226214518Srpaulo On Mac OS X, add scripts for changing permissions on /dev/bpf* and launchd plist 227190225Srpaulo On Solaris, support 'passive mode' on systems that support it 228190225Srpaulo Fixes to autoconf and general build environment 229190225Srpaulo Man page reorganization + cleanup 230190225Srpaulo Autogenerate VERSION numbers better 231172677Smlaier 232190225SrpauloMon. September 10, 2007. ken@xelerance.com. Summary for 0.9.8 libpcap release 233190225Srpaulo Change build process to put public libpcap headers into pcap subir 234190225Srpaulo DLT: Add value for IPMI IPMB packets 235190225Srpaulo DLT: Add value for u10 Networks boards 236190225Srpaulo Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted 237190225Srpaulo libpcap files on an OS other than where the file was generated 238172677Smlaier 239190225SrpauloWed. April 25, 2007. ken@xelerance.com. Summary for 0.9.6 libpcap release 240172677Smlaier 241172677Smlaier Put the public libpcap headers into a pcap subdirectory in both the 242172677Smlaier source directory and the target include directory, and have include 243172677Smlaier files at the top-level directory to include those headers, for 244172677Smlaier backwards compatibility. 245172677Smlaier Add Bluetooth support 246172677Smlaier Add USB capturing support on Linux 247172677Smlaier Add support for the binary USB sniffing interface in Linux 248172677Smlaier Add support for new FreeBSD BIOCSDIRECTION ioctl 249172677Smlaier Add additional filter operations for 802.11 frame types 250172677Smlaier Add support for filtering on MTP2 frame types 251172677Smlaier Propagate some changes from the main branch, so the x.9 branch has 252172677Smlaier all the DLT_ and LINKTYPE_ values that the main branch does 253172677Smlaier Reserved a DLT_ and SAVEFILE_ value for PPI (Per Packet Info) 254172677Smlaier encapsulated packets 255172677Smlaier Add LINKTYPE_ for IEEE 802.15.4, with address fields padded as done 256172677Smlaier by Linux drivers 257172677Smlaier Add LINKTYPE_ value corresponding to DLT_IEEE802_16_MAC_CPS. 258172677Smlaier Add DLT for IEEE 802.16 (WiMAX) MAC Common Part Sublayer 259172677Smlaier Add DLT for Bluetooth HCI UART transport layer 260172677Smlaier When building a shared library, build with "-fPIC" on Linux to support x86_64 261172677Smlaier Link with "$(CC) -shared" rather than "ld -shared" when building a 262172677Smlaier ".so" shared library 263172677Smlaier Add support for autoconf 2.60 264172677Smlaier Fixes to discard unread packets when changing filters 265172677Smlaier Changes to handle name changes in the DAG library resulting from 266172677Smlaier switching to libtool. 267172677Smlaier Add support for new DAG ERF types. 268172677Smlaier Add an explicit "-ldag" when building the shared library, so the DAG 269172677Smlaier library dependency is explicit. 270172677Smlaier Mac OSX fixes for dealing with "wlt" devices 271172677Smlaier Fixes in add_or_find_if() & pcap_findalldevs() to optimize generating 272172677Smlaier device lists 273172677Smlaier Fixed a bug in pcap_open_live(). The return value of PacketSetHwFilter 274172677Smlaier was not checked. 275172677Smlaier 276172677SmlaierTue. September 19, 2006. ken@xelerance.com. Summary for 0.9.5 libpcap release 277172677Smlaier 278172677Smlaier Support for LAPD frames with vISDN 279172677Smlaier Support for ERF on channelized T1/E1 cards via DAG API 280172677Smlaier Fix capitalization that caused issues crossc compiling on Linux 281172677Smlaier Better failure detection on PacketGetAdapterNames() 282172677Smlaier Fixes for MPLS packet generation (link layer) 283172677Smlaier OP_PACKET now matches the beginning of the packet, instead of 284172677Smlaier beginning+link-layer 285172677Smlaier Add DLT/LINKTYPE for carrying FRF.16 Multi-link Frame Relay 286172677Smlaier Fix allocation of buffer for list of link-layer types 287172677Smlaier Added a new DLT and LINKTYPE value for ARINC 653 Interpartition Communcation Messages 288172677Smlaier Fixed a typo in a DLT value: it should start with DLT_ and not LINKTYPE_ 289172677Smlaier Redefined DLT_CAN20B and LINKTYPE_CAN20B as #190 (as this is the right value for CAN). 290172677Smlaier Added definition for DLT_A429 and LINKTYPE_A429 as #184. 291172677Smlaier Added a new DLT and LINKTYPE value for CAN v2.0B frames. 292172677Smlaier Add support for DLT_JUNIPER_VP. 293172677Smlaier Don't double-count received packets on Linux systems that 294172677Smlaier support the PACKET_STATISTICS getsockopt() argument on 295172677Smlaier PF_PACKET sockets. 296172677Smlaier Add support for DLT_IEEE802_11 and DLT_IEEE802_11_RADIO link 297172677Smlaier layers in Windows 298172677Smlaier Add support to build libpcap.lib and wpcap.dll under Cygnus and 299172677Smlaier MingW32. 300172677Smlaier 301162012SsamMon. September 5, 2005. ken@xelerance.com. Summary for 0.9.4 libpcap release 302147894Ssam 303162012Ssam Support for radiotap on Linux (Mike Kershaw) 304162012Ssam Fixes for HP-UX 305162012Ssam Support for additional Juniper link-layer types 306162012Ssam Fixes for filters on MPLS-encapsulated packets 307162012Ssam "vlan" filter fixed 308162012Ssam "pppoed" and "pppoes" filters added; the latter modifies later 309162012Ssam parts of the filter expression to look at the PPP headers and 310162012Ssam headers in the PPP payload 311162012Ssam 312162012SsamTue. July 5, 2005. ken@xelerance.com. Summary for 0.9.3 libpcap release 313162012Ssam 314147894Ssam Fixes for compiling on nearly every platform, 315147894Ssam including improved 64bit support 316147894Ssam MSDOS Support 317147894Ssam Add support for sending packets 318147894Ssam OpenBSD pf format support 319147894Ssam IrDA capture (Linux only) 320147894Ssam 321127664SbmsTue. March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release 322127664Sbms 323127664Sbms Fixed minor problem in gencode.c that would appear on 64-bit 324127664Sbms platforms. 325127664Sbms Version number is now sane. 326162012Ssam 327127664SbmsMon. March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release 328127664Sbms 329127664Sbms updates for autoconf 2.5 330127664Sbms fixes for ppp interfaces for freebsd 4.1 331127664Sbms pcap gencode can generate code for 802.11, IEEE1394, and pflog. 332127664Sbms 333127664SbmsWed. November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 0.8 release 334127664Sbms 335127664Sbms added pcap_findalldevs() 336127664Sbms Win32 patches from NetGroup, Politecnico di Torino (Italy) 337127664Sbms OpenBSD pf, DLT_PFLOG added 338127664Sbms Many changes to ATM support. 339162012Ssam lookup pcap_lookupnet() 340127664Sbms Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM, 341127664Sbms DLT_IP_OVER_FC, DLT_FRELAY, others. 342127664Sbms Sigh. More AIX wonderfulness. 343162012Ssam Document updates. 344127664Sbms Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(), 345162012Ssam pcap_list_datalinks(), pcap_set_datalink(), 346127664Sbms pcap_lib_version(), pcap_datalink_val_to_name(), 347127664Sbms pcap_datalink_name_to_val(), new error returns. 348127664Sbms 349127664SbmsTuesday, February 25, 2003. fenner@research.att.com. 0.7.2 release 350127664Sbms 351127664Sbms Support link types that use 802.2 always, never, and sometimes. 352127664Sbms Don't decrease the size of the BPF buffer from the default. 353127664Sbms Support frame relay. 354127664Sbms Handle 32-bit timestamps in DLPI, and pass the right buffer size. 355127664Sbms Handle Linux systems with modern kernel but without 356127664Sbms SOL_PACKET in the userland headers. 357127664Sbms Linux support for ARPHRD_RAWHDLC. 358127664Sbms Handle 32-bit timestamps in snoop. 359127664Sbms Support eg (Octane/O2xxx/O3xxx Gigabit) devices. 360127664Sbms Add new reserved DLT types. 361127664Sbms 36298530SfennerMonday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release 36398530Sfenner 36498530Sfenner Added pcap_findalldevs() call to get list of interfaces in a MI way. 36598530Sfenner 366162012Ssam pcap_stats() has been documented as to what its counters mean on 36798530Sfenner each platform. 36898530Sfenner 36975107SfennerTuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release 37056889Sfenner 37175107Sfenner New Linux libpcap implementation, which, in 2.2 and later 37275107Sfenner kernels, uses PF_PACKET sockets and supports kernel packet 37375107Sfenner filtering (if compiled into the kernel), and supports the "any" 37475107Sfenner device for capturing on all interfaces. Cleans up promiscuous 37575107Sfenner mode better on pre-2.2 kernels, and has various other fixes 37675107Sfenner (handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better, 37775107Sfenner doesn't show duplicate packets on loopback interface, etc.). 37856889Sfenner 37975107Sfenner Fixed HP-UX libpcap implementation to correctly get the PPA for 38075107Sfenner an interface, to allow interfaces to be opened by interface name. 38175107Sfenner 38275107Sfenner libpcap savefiles have system-independent link-layer type values 38375107Sfenner in the header, rather than sometimes platform-dependent DLT_ 38475107Sfenner values, to make it easier to exchange capture files between 38575107Sfenner different OSes. 38675107Sfenner 38775107Sfenner Non-standard capture files produced by some Linux tcpdumps, e.g. 38875107Sfenner the one from Red Hat Linux 6.2 and later, can now be read. 38975107Sfenner 39075107Sfenner Updated autoconf stock files. 39175107Sfenner 39275107Sfenner Filter expressions can filter on VLAN IDs and various OSI 39375107Sfenner protocols, and work on Token Ring (with non-source-routed 39475107Sfenner packets). 39575107Sfenner 39675107Sfenner "pcap_open_dead()" added to allow compiling filter expressions 39775107Sfenner to pcap code without opening a capture device or capture file. 39875107Sfenner 39975107Sfenner Header files fixed to allow use in C++ programs. 40075107Sfenner 40175107Sfenner Removed dependancy on native headers for packet layout. 40275107Sfenner Removed Linux specific headers that were shipped. 40375107Sfenner 40475107Sfenner Security fixes: Strcpy replaced with strlcpy, sprintf replaced 40575107Sfenner with snprintf. 40675107Sfenner 40775107Sfenner Fixed bug that could cause subsequent "pcap_compile()"s to fail 40875107Sfenner erroneously after one compile failed. 40975107Sfenner 41075107Sfenner Assorted other bug fixes. 41175107Sfenner 41275107Sfenner README.aix and README.linux files added to describe 41375107Sfenner platform-specific issues. 41475107Sfenner 41575107Sfenner "getifaddrs()" rather than SIOCGIFCONF used, if available. 41675107Sfenner 41775107Sfennerv0.5 Sat Jun 10 11:09:15 PDT 2000 41875107Sfenner 41975107Sfenneritojun@iijlab.net 42075107Sfenner- Brought in KAME IPv6/IPsec bpf compiler. 42175107Sfenner- Fixes for NetBSD. 42275107Sfenner- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC), 42375107Sfenner and changes to work around different BSDs having different DLT_ types 42475107Sfenner with the same numeric value. 42575107Sfenner 42675107SfennerAssar Westerlund <assar@sics.se> 42775107Sfenner- Building outside the source code tree fixed. 42875107Sfenner- Changed to write out time stamps with 32-bit seconds and microseconds 42975107Sfenner fields, regardless of whether those fields are 32 bits or 64 bits in 43075107Sfenner the OS's native "struct timeval". 43175107Sfenner- Changed "pcap_lookupdev()" to dynamically grow the buffer into which 43275107Sfenner the list of interfaces is read as necessary in order to hold the 43375107Sfenner entire list. 43475107Sfenner 43575107SfennerGreg Troxel <gdt@ir.bbn.com> 43675107Sfenner- Added a new "pcap_compile_nopcap()", which lets you compile a filter 43775107Sfenner expression into a BPF program without having an open live capture or 43875107Sfenner capture file. 439162012Ssam 44039291Sfennerv0.4 Sat Jul 25 12:40:09 PDT 1998 44139291Sfenner 44239291Sfenner- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill 44339291Sfenner Fenner (fenner@parc.xerox.com) 44439291Sfenner 44539291Sfenner- Fix alignment problem with FDDI under DLPI. This was causing core 44639291Sfenner dumps under Solaris. 44739291Sfenner 44839291Sfenner- Added configure options to disable flex and bison. Resulted from a 44939291Sfenner bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added 45039291Sfenner options to disable gcc and to force a particular packet capture type. 45139291Sfenner 45239291Sfenner- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks 45339291Sfenner to John Hawkinson (jhawk@mit.edu) 45439291Sfenner 45539291Sfenner- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not 45639291Sfenner supply any "link layer" data. 45739291Sfenner 45839291Sfenner- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type. 45939291Sfenner Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch) 46039291Sfenner 46139291Sfenner- Change IRIX PPP to use DLT_RAW since the kernel does not supply any 46239291Sfenner "link layer" data. 46339291Sfenner 46439291Sfenner- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header 46539291Sfenner formats. 46639291Sfenner 46739291Sfenner- Added some new SGI snoop interface types. Thanks to Steve Alexander 46839291Sfenner (sca@refugee.engr.sgi.com) 46939291Sfenner 47039291Sfenner- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to 47139291Sfenner Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no) 47239291Sfenner 47339291Sfenner- Fddi supports broadcast as reported by Jeff Macdonald 47439291Sfenner (jeff@iacnet.com). Also correct ieee802 and arcnet. 47539291Sfenner 47639291Sfenner- Determine Linux pcap buffer size at run time or else it might not be 47739291Sfenner big enough for some interface types (e.g. FDDI). Thanks to Jes 47839291Sfenner Sorensen (Jes.Sorensen@cern.ch) 47939291Sfenner 48039291Sfenner- Fix some linux alignment problems. 48139291Sfenner 48239291Sfenner- Document promisc argument to pcap_open_live(). Reported by Ian Marsh 48339291Sfenner (ianm@sics.se) 48439291Sfenner 48539291Sfenner- Support Metricom radio packets under Linux. Thanks to Kevin Lai 48639291Sfenner (laik@gunpowder.stanford.edu) 48739291Sfenner 48839291Sfenner- Bind to interface name under Linux to avoid packets from multiple 48939291Sfenner interfaces on multi-homed hosts. Thanks to Kevin Lai 49039291Sfenner (laik@gunpowder.stanford.edu) 49139291Sfenner 49239291Sfenner- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts 49339291Sfenner (rroberts@muller.com) 49439291Sfenner 49539291Sfenner- Fixed an uninitialized memory reference found by Kent Vander Velden 49639291Sfenner (graphix@iastate.edu) 49739291Sfenner 49839291Sfenner- Fixed lex pattern for IDs to allow leading digits. As reported by 49939291Sfenner Theo de Raadt (deraadt@cvs.openbsd.org) 50039291Sfenner 50139291Sfenner- Fixed Linux include file problems when using GNU libc. 50239291Sfenner 50339291Sfenner- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it. 50439291Sfenner Reported reported by Eric Jacksch (jacksch@tenebris.ca) 50539291Sfenner 50639291Sfenner- Fixed bug in pcap_dispatch() that kept it from returning on packet 50739291Sfenner timeouts. 50839291Sfenner 50939291Sfenner- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check 51039291Sfenner for "lo" followed by an eos or digit (newer versions of Linux 51139291Sfenner apparently call the loopback "lo" instead of "lo0"). 51239291Sfenner 51339291Sfenner- Fixed Linux networking include files to use ints instead of longs to 51439291Sfenner avoid problems with 64 bit longs on the alpha. Thanks to Cristian 51539291Sfenner Gafton (gafton@redhat.com) 51639291Sfenner 51726175Sfennerv0.3 Sat Nov 30 20:56:27 PST 1996 51826175Sfenner 51926175Sfenner- Added Linux support. 52026175Sfenner 52126175Sfenner- Fixed savefile bugs. 52226175Sfenner 52326175Sfenner- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl) 52426175Sfenner 52526175Sfenner- Add support for bpf kernel port filters. 52626175Sfenner 52726175Sfenner- Remove duplicate atalk protocol table entry. Thanks to Christian 52826175Sfenner Hopps (chopps@water.emich.edu) 52926175Sfenner 53026175Sfenner- Fixed pcap_lookupdev() to ignore nonexistent devices. This was 53126175Sfenner reported to happen under BSD/OS by David Vincenzetti 53226175Sfenner (vince@cryptonet.it) 53326175Sfenner 53426175Sfenner- Avoid solaris compiler warnings. Thanks to Bruce Barnett 53526175Sfenner (barnett@grymoire.crd.ge.com) 53626175Sfenner 53717683Spstv0.2.1 Sun Jul 14 03:02:26 PDT 1996 53817683Spst 53917683Spst- Fixes for HP-UX 10. Thanks in part to to Thomas Wolfram 54017683Spst (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com) 54117683Spst 54217683Spst- Added support for SINIX. Thanks to Andrej Borsenkow 54317683Spst (borsenkow.msk@sni.de) 54417683Spst 54517683Spst- Fixes for AIX (although this system is not yet supported). Thanks to 54617683Spst John Hawkinson (jhawk@mit.edu) 54717683Spst 54817683Spst- Use autoconf's idea of the top level directory in install targets. 54917683Spst Thanks to John Hawkinson. 55017683Spst 55117683Spst- Add missing autoconf packet capture result message. Thanks to Bill 55217683Spst Fenner (fenner@parc.xerox.com) 55317683Spst 55417683Spst- Fixed padding problems in the pf module. 55517683Spst 55617683Spst- Fixed some more alignment problems on the alpha. 55717683Spst 55817683Spst- Added explicit netmask support. Thanks to Steve Nuchia 55917683Spst (steve@research.oknet.com) 56017683Spst 56117683Spst- Fixed to handle raw ip addresses such as 0.0.0.1 without "left 56217683Spst justifing" 56317683Spst 56417683Spst- Add "sca" keyword (for DEC cluster services) as suggested by Terry 56517683Spst Kennedy (terry@spcvxa.spc.edu) 56617683Spst 56717683Spst- Add "atalk" keyword as suggested by John Hawkinson. 56817683Spst 56917683Spst- Add "igrp" keyword. 57017683Spst 57117683Spst- Fixed HID definition in grammar.y to be a string, not a value. 57217683Spst 57317683Spst- Use $CC when checking gcc version. Thanks to Carl Lindberg 57417683Spst (carl_lindberg@blacksmith.com) 57517683Spst 57617683Spst- Removed obsolete reference to pcap_immediate() from the man page. 57717683Spst Michael Stolarchuk (mts@terminator.rs.itd.umich.edu) 57817683Spst 57917683Spst- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig 58017683Spst (jch@bsdi.com) 58117683Spst 58217683Spstv0.2 Sun Jun 23 02:28:42 PDT 1996 58317683Spst 58417683Spst- Add support for HP-UX. Resulted from code contributed by Tom Murray 58517683Spst (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville 58617683Spst (philipp@res.enst.fr) 58717683Spst 58817683Spst- Update INSTALL with a reminder to install include files. Thanks to 58917683Spst Mark Andrews (mandrews@aw.sgi.com) 59017683Spst 59117683Spst- Fix bpf compiler alignment bug on the alpha. 59217683Spst 59317683Spst- Use autoconf to detect architectures that can't handle misaligned 59417683Spst accesses. 59517683Spst 59617683Spst- Added loopback support for snoop. Resulted from report Steve 59717683Spst Alexander (sca@engr.sgi.com) 59817683Spst 59917683Spstv0.1 Fri Apr 28 18:11:03 PDT 1995 60017683Spst 60117683Spst- Fixed compiler and optimizer bugs. The BPF filter engine uses unsigned 60217683Spst comparison operators, while the code generator and optimizer assumed 60317683Spst signed semantics in several places. Thanks to Charlie Slater 60417683Spst (cslater@imatek.com) for pointing this out. 60517683Spst 60617683Spst- Removed FDDI ifdef's, they aren't really needed. Resulted from report 60717683Spst by Gary Veum (veum@boa.gsfc.nasa.gov). 60817683Spst 60917683Spst- Add pcap-null.c which allows offline use of libpcap on systems that 61017683Spst don't support live package capture. This feature resulting from a 61117683Spst request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl). 61217683Spst 61317683Spst- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin 61417683Spst (Pascal.Hennequin@hugo.int-evry.fr). 61517683Spst 61617683Spst- Port to GNU autoconf. 61717683Spst 61817683Spst- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming 61917683Spst Johansen (fsj@csd.cri.dk). 62017683Spst 62117683Spst- Handle multi-digit interface unit numbers (aka ppa's) under dlpi. 62217683Spst Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu). 62317683Spst 62417683Spst- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report 62517683Spst by Jeff Murphy (jcmurphy@acsu.buffalo.edu). 62617683Spst 62717683Spst- Add support for "long jumps". Thanks to Jeffrey Mogul 62817683Spst (mogul@pa.dec.com). 62917683Spst 63017683Spst- Fix minor problems when compiling with BDEBUG as noticed by Scott 63117683Spst Bertilson (scott@unet.umn.edu). 63217683Spst 63317683Spst- Declare sys_errlist "const char *const" to avoid problems under 63417683Spst FreeBSD. Resulted from report by jher@eden.com. 63517683Spst 63617683Spstv0.0.6 Fri Apr 28 04:07:13 PDT 1995 63717683Spst 63817683Spst- Add missing variable declaration missing from 0.0.6 63917683Spst 64017683Spstv0.0.5 Fri Apr 28 00:22:21 PDT 1995 64117683Spst 64217683Spst- Workaround for problems when pcap_read() returns 0 due to the timeout 64317683Spst expiring. 64417683Spst 64517683Spstv0.0.4 Thu Apr 20 20:41:48 PDT 1995 64617683Spst 64717683Spst- Change configuration to not use gcc v2 flags with gcc v1. 64817683Spst 64917683Spst- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next() 65017683Spst should also return 0. Thanks to Richard Stevens (rstevens@noao.edu). 65117683Spst 65217683Spst- Fixed configure to test for snoop before dlpi to avoid problems under 65317683Spst IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 65417683Spst 65517683Spst- Hack around deficiency in Ultrix's make. 65617683Spst 65717683Spst- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle 65817683Spst savefiles that have more than snapshot bytes of data in them (so we 65917683Spst can read old savefiles) and avoid writing such files. 66017683Spst 66117683Spst- Added checkioctl which is used with gcc to check that the 66217683Spst "fixincludes" script has been run. 66317683Spst 66417683Spstv0.0.3 Tue Oct 18 18:13:46 PDT 1994 66517683Spst 66617683Spst- Fixed configure to test for snoop before dlpi to avoid problems under 66717683Spst IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 66817683Spst 66917683Spstv0.0.2 Wed Oct 12 20:56:37 PDT 1994 67017683Spst 67117683Spst- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard 67217683Spst Stevens. 67317683Spst 67417683Spst- Determine pcap link type from dlpi media type. Resulted from report 67517683Spst by Mahesh Jethanandani (mahesh@npix.com). 67617683Spst 67717683Spstv0.0.1 Fri Jun 24 14:50:57 PDT 1994 67817683Spst 67917683Spst- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout 68017683Spst wasn't being initialized sometimes resulting in an "NIOCSFLAGS: 68117683Spst Invalid argument" error under OSF/1. Reported by Matt Day 68217683Spst (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com). 68317683Spst 68417683Spst- Turn on FDDI support by default. 68517683Spst 68617683Spstv0.0 Mon Jun 20 19:20:16 PDT 1994 68717683Spst 68817683Spst- Initial release. 68917683Spst 69017683Spst- Fixed bug with greater/less keywords, reported by Mark Andrews 69117683Spst (mandrews@alias.com). 69217683Spst 69317683Spst- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported 69417683Spst by Elan Amir (elan@leeb.cs.berkeley.edu). 69517683Spst 69617683Spst- Machines with little-endian byte ordering are supported thanks to 69717683Spst Jeff Mogul. 69817683Spst 69917683Spst- Add hack for version 2.3 savefiles which don't have caplen and len 70017683Spst swapped thanks to Vern Paxson. 70117683Spst 70217683Spst- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson. 70317683Spst 70417683Spst- Added length, inbound and outbound keywords. 705