CHANGES revision 172678
1@(#) $Header: /tcpdump/master/libpcap/CHANGES,v 1.59.2.13 2007/09/12 22:40:04 ken Exp $ (LBL) 2 3Mon. September 10, 2007. ken@xelerance.com. Summary for 0.9.8 libpcap release 4 Change build process to put public libpcap headers into pcap subir 5 DLT: Add value for IPMI IPMB packets 6 DLT: Add value for u10 Networks boards 7 Require <net/pfvar.h> for pf definitions - allows reading of pflog formatted 8 libpcap files on an OS other than where the file was generated 9 10Wed. July 23, 2007. mcr@xelerance.com. Summary for 0.9.7 libpcap release 11 12 FIXED version file to be 0.9.7 instead of 0.9.5. 13 added flags/configuration for cloning bpf device. 14 added DLT_MTP2_WITH_PHDR support (PPI) 15 "fix" the "memory leak" in icode_to_fcode() -- documentation bug 16 Various link-layer types, with a pseudo-header, for SITA http://www.sita.aero/ 17 introduces support for the DAG ERF type TYPE_COLOR_MC_HDLC_POS. 18 Basic BPF filtering support for DLT_MTP2_WITH_PHDR is also added. 19 check for IPv4 and IPv6, even for DLT_RAW 20 add support for DLT_JUNIPER_ISM 21 Pick up changes from NetBSD: many from tron, christos, drochner 22 Allocate DLT_ for 802.15.4 without any header munging, for Mikko Saarnivala. 23 Header for 802.16 MAC Common Part Sublayer plus a radiotap radio header 24 25Wed. April 25, 2007. ken@xelerance.com. Summary for 0.9.6 libpcap release 26 27 Put the public libpcap headers into a pcap subdirectory in both the 28 source directory and the target include directory, and have include 29 files at the top-level directory to include those headers, for 30 backwards compatibility. 31 Add Bluetooth support 32 Add USB capturing support on Linux 33 Add support for the binary USB sniffing interface in Linux 34 Add support for new FreeBSD BIOCSDIRECTION ioctl 35 Add additional filter operations for 802.11 frame types 36 Add support for filtering on MTP2 frame types 37 Propagate some changes from the main branch, so the x.9 branch has 38 all the DLT_ and LINKTYPE_ values that the main branch does 39 Reserved a DLT_ and SAVEFILE_ value for PPI (Per Packet Info) 40 encapsulated packets 41 Add LINKTYPE_ for IEEE 802.15.4, with address fields padded as done 42 by Linux drivers 43 Add LINKTYPE_ value corresponding to DLT_IEEE802_16_MAC_CPS. 44 Add DLT for IEEE 802.16 (WiMAX) MAC Common Part Sublayer 45 Add DLT for Bluetooth HCI UART transport layer 46 When building a shared library, build with "-fPIC" on Linux to support x86_64 47 Link with "$(CC) -shared" rather than "ld -shared" when building a 48 ".so" shared library 49 Add support for autoconf 2.60 50 Fixes to discard unread packets when changing filters 51 Changes to handle name changes in the DAG library resulting from 52 switching to libtool. 53 Add support for new DAG ERF types. 54 Add an explicit "-ldag" when building the shared library, so the DAG 55 library dependency is explicit. 56 Mac OSX fixes for dealing with "wlt" devices 57 Fixes in add_or_find_if() & pcap_findalldevs() to optimize generating 58 device lists 59 Fixed a bug in pcap_open_live(). The return value of PacketSetHwFilter 60 was not checked. 61 62Tue. September 19, 2006. ken@xelerance.com. Summary for 0.9.5 libpcap release 63 64 Support for LAPD frames with vISDN 65 Support for ERF on channelized T1/E1 cards via DAG API 66 Fix capitalization that caused issues crossc compiling on Linux 67 Better failure detection on PacketGetAdapterNames() 68 Fixes for MPLS packet generation (link layer) 69 OP_PACKET now matches the beginning of the packet, instead of 70 beginning+link-layer 71 Add DLT/LINKTYPE for carrying FRF.16 Multi-link Frame Relay 72 Fix allocation of buffer for list of link-layer types 73 Added a new DLT and LINKTYPE value for ARINC 653 Interpartition Communcation Messages 74 Fixed a typo in a DLT value: it should start with DLT_ and not LINKTYPE_ 75 Redefined DLT_CAN20B and LINKTYPE_CAN20B as #190 (as this is the right value for CAN). 76 Added definition for DLT_A429 and LINKTYPE_A429 as #184. 77 Added a new DLT and LINKTYPE value for CAN v2.0B frames. 78 Add support for DLT_JUNIPER_VP. 79 Don't double-count received packets on Linux systems that 80 support the PACKET_STATISTICS getsockopt() argument on 81 PF_PACKET sockets. 82 Add support for DLT_IEEE802_11 and DLT_IEEE802_11_RADIO link 83 layers in Windows 84 Add support to build libpcap.lib and wpcap.dll under Cygnus and 85 MingW32. 86 87Mon. September 5, 2005. ken@xelerance.com. Summary for 0.9.4 libpcap release 88 89 Support for radiotap on Linux (Mike Kershaw) 90 Fixes for HP-UX 91 Support for additional Juniper link-layer types 92 Fixes for filters on MPLS-encapsulated packets 93 "vlan" filter fixed 94 "pppoed" and "pppoes" filters added; the latter modifies later 95 parts of the filter expression to look at the PPP headers and 96 headers in the PPP payload 97 98Tue. July 5, 2005. ken@xelerance.com. Summary for 0.9.3 libpcap release 99 100 Fixes for compiling on nearly every platform, 101 including improved 64bit support 102 MSDOS Support 103 Add support for sending packets 104 OpenBSD pf format support 105 IrDA capture (Linux only) 106 107Tue. March 30, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.3 release 108 109 Fixed minor problem in gencode.c that would appear on 64-bit 110 platforms. 111 Version number is now sane. 112 113Mon. March 29, 2004. mcr@sandelman.ottawa.on.ca. Summary for 3.8.2 release 114 115 updates for autoconf 2.5 116 fixes for ppp interfaces for freebsd 4.1 117 pcap gencode can generate code for 802.11, IEEE1394, and pflog. 118 119Wed. November 12, 2003. mcr@sandelman.ottawa.on.ca. Summary for 0.8 release 120 121 added pcap_findalldevs() 122 Win32 patches from NetGroup, Politecnico di Torino (Italy) 123 OpenBSD pf, DLT_PFLOG added 124 Many changes to ATM support. 125 lookup pcap_lookupnet() 126 Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM, 127 DLT_IP_OVER_FC, DLT_FRELAY, others. 128 Sigh. More AIX wonderfulness. 129 Document updates. 130 Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(), 131 pcap_list_datalinks(), pcap_set_datalink(), 132 pcap_lib_version(), pcap_datalink_val_to_name(), 133 pcap_datalink_name_to_val(), new error returns. 134 135Tuesday, February 25, 2003. fenner@research.att.com. 0.7.2 release 136 137 Support link types that use 802.2 always, never, and sometimes. 138 Don't decrease the size of the BPF buffer from the default. 139 Support frame relay. 140 Handle 32-bit timestamps in DLPI, and pass the right buffer size. 141 Handle Linux systems with modern kernel but without 142 SOL_PACKET in the userland headers. 143 Linux support for ARPHRD_RAWHDLC. 144 Handle 32-bit timestamps in snoop. 145 Support eg (Octane/O2xxx/O3xxx Gigabit) devices. 146 Add new reserved DLT types. 147 148Monday October 23, 2001. mcr@sandelman.ottawa.on.ca. Summary for 0.7 release 149 150 Added pcap_findalldevs() call to get list of interfaces in a MI way. 151 152 pcap_stats() has been documented as to what its counters mean on 153 each platform. 154 155Tuesday January 9, 2001. guy@alum.mit.edu. Summary for 0.6 release 156 157 New Linux libpcap implementation, which, in 2.2 and later 158 kernels, uses PF_PACKET sockets and supports kernel packet 159 filtering (if compiled into the kernel), and supports the "any" 160 device for capturing on all interfaces. Cleans up promiscuous 161 mode better on pre-2.2 kernels, and has various other fixes 162 (handles 2.4 ARPHRD_IEEE802_TR, handles ISDN devices better, 163 doesn't show duplicate packets on loopback interface, etc.). 164 165 Fixed HP-UX libpcap implementation to correctly get the PPA for 166 an interface, to allow interfaces to be opened by interface name. 167 168 libpcap savefiles have system-independent link-layer type values 169 in the header, rather than sometimes platform-dependent DLT_ 170 values, to make it easier to exchange capture files between 171 different OSes. 172 173 Non-standard capture files produced by some Linux tcpdumps, e.g. 174 the one from Red Hat Linux 6.2 and later, can now be read. 175 176 Updated autoconf stock files. 177 178 Filter expressions can filter on VLAN IDs and various OSI 179 protocols, and work on Token Ring (with non-source-routed 180 packets). 181 182 "pcap_open_dead()" added to allow compiling filter expressions 183 to pcap code without opening a capture device or capture file. 184 185 Header files fixed to allow use in C++ programs. 186 187 Removed dependancy on native headers for packet layout. 188 Removed Linux specific headers that were shipped. 189 190 Security fixes: Strcpy replaced with strlcpy, sprintf replaced 191 with snprintf. 192 193 Fixed bug that could cause subsequent "pcap_compile()"s to fail 194 erroneously after one compile failed. 195 196 Assorted other bug fixes. 197 198 README.aix and README.linux files added to describe 199 platform-specific issues. 200 201 "getifaddrs()" rather than SIOCGIFCONF used, if available. 202 203v0.5 Sat Jun 10 11:09:15 PDT 2000 204 205itojun@iijlab.net 206- Brought in KAME IPv6/IPsec bpf compiler. 207- Fixes for NetBSD. 208- Support added for OpenBSD DLT_LOOP and BSD/OS DLT_C_HDLC (Cisco HDLC), 209 and changes to work around different BSDs having different DLT_ types 210 with the same numeric value. 211 212Assar Westerlund <assar@sics.se> 213- Building outside the source code tree fixed. 214- Changed to write out time stamps with 32-bit seconds and microseconds 215 fields, regardless of whether those fields are 32 bits or 64 bits in 216 the OS's native "struct timeval". 217- Changed "pcap_lookupdev()" to dynamically grow the buffer into which 218 the list of interfaces is read as necessary in order to hold the 219 entire list. 220 221Greg Troxel <gdt@ir.bbn.com> 222- Added a new "pcap_compile_nopcap()", which lets you compile a filter 223 expression into a BPF program without having an open live capture or 224 capture file. 225 226v0.4 Sat Jul 25 12:40:09 PDT 1998 227 228- Fix endian problem with DLT_NULL devices. From FreeBSD via Bill 229 Fenner (fenner@parc.xerox.com) 230 231- Fix alignment problem with FDDI under DLPI. This was causing core 232 dumps under Solaris. 233 234- Added configure options to disable flex and bison. Resulted from a 235 bug report by barnett@grymoire.crd.ge.com (Bruce Barnett). Also added 236 options to disable gcc and to force a particular packet capture type. 237 238- Added support for Fore ATM interfaces (qaa and fa) under IRIX. Thanks 239 to John Hawkinson (jhawk@mit.edu) 240 241- Change Linux PPP and SLIP to use DLT_RAW since the kernel does not 242 supply any "link layer" data. 243 244- Change Linux to use SIOCGIFHWADDR ioctl to determine link layer type. 245 Thanks to Thomas Sailer (sailer@ife.ee.ethz.ch) 246 247- Change IRIX PPP to use DLT_RAW since the kernel does not supply any 248 "link layer" data. 249 250- Modified to support the new BSD/OS 2.1 PPP and SLIP link layer header 251 formats. 252 253- Added some new SGI snoop interface types. Thanks to Steve Alexander 254 (sca@refugee.engr.sgi.com) 255 256- Fixes for HP-UX 10.20 (which is similar to HP-UX 9). Thanks to 257 Richard Allen (ra@hp.is) and Steinar Haug (sthaug@nethelp.no) 258 259- Fddi supports broadcast as reported by Jeff Macdonald 260 (jeff@iacnet.com). Also correct ieee802 and arcnet. 261 262- Determine Linux pcap buffer size at run time or else it might not be 263 big enough for some interface types (e.g. FDDI). Thanks to Jes 264 Sorensen (Jes.Sorensen@cern.ch) 265 266- Fix some linux alignment problems. 267 268- Document promisc argument to pcap_open_live(). Reported by Ian Marsh 269 (ianm@sics.se) 270 271- Support Metricom radio packets under Linux. Thanks to Kevin Lai 272 (laik@gunpowder.stanford.edu) 273 274- Bind to interface name under Linux to avoid packets from multiple 275 interfaces on multi-homed hosts. Thanks to Kevin Lai 276 (laik@gunpowder.stanford.edu) 277 278- Change L_SET to SEEK_SET for HP-UX. Thanks to Roland Roberts 279 (rroberts@muller.com) 280 281- Fixed an uninitialized memory reference found by Kent Vander Velden 282 (graphix@iastate.edu) 283 284- Fixed lex pattern for IDs to allow leading digits. As reported by 285 Theo de Raadt (deraadt@cvs.openbsd.org) 286 287- Fixed Linux include file problems when using GNU libc. 288 289- Ifdef ARPHRD_FDDI since not all versions of the Linux kernel have it. 290 Reported reported by Eric Jacksch (jacksch@tenebris.ca) 291 292- Fixed bug in pcap_dispatch() that kept it from returning on packet 293 timeouts. 294 295- Changed ISLOOPBACK() macro when IFF_LOOPBACK isn't available to check 296 for "lo" followed by an eos or digit (newer versions of Linux 297 apparently call the loopback "lo" instead of "lo0"). 298 299- Fixed Linux networking include files to use ints instead of longs to 300 avoid problems with 64 bit longs on the alpha. Thanks to Cristian 301 Gafton (gafton@redhat.com) 302 303v0.3 Sat Nov 30 20:56:27 PST 1996 304 305- Added Linux support. 306 307- Fixed savefile bugs. 308 309- Solaris x86 fix from Tim Rylance (t.rylance@elsevier.nl) 310 311- Add support for bpf kernel port filters. 312 313- Remove duplicate atalk protocol table entry. Thanks to Christian 314 Hopps (chopps@water.emich.edu) 315 316- Fixed pcap_lookupdev() to ignore nonexistent devices. This was 317 reported to happen under BSD/OS by David Vincenzetti 318 (vince@cryptonet.it) 319 320- Avoid solaris compiler warnings. Thanks to Bruce Barnett 321 (barnett@grymoire.crd.ge.com) 322 323v0.2.1 Sun Jul 14 03:02:26 PDT 1996 324 325- Fixes for HP-UX 10. Thanks in part to to Thomas Wolfram 326 (wolf@prz.tu-berlin.de) and Rick Jones (raj@hpisrdq.cup.hp.com) 327 328- Added support for SINIX. Thanks to Andrej Borsenkow 329 (borsenkow.msk@sni.de) 330 331- Fixes for AIX (although this system is not yet supported). Thanks to 332 John Hawkinson (jhawk@mit.edu) 333 334- Use autoconf's idea of the top level directory in install targets. 335 Thanks to John Hawkinson. 336 337- Add missing autoconf packet capture result message. Thanks to Bill 338 Fenner (fenner@parc.xerox.com) 339 340- Fixed padding problems in the pf module. 341 342- Fixed some more alignment problems on the alpha. 343 344- Added explicit netmask support. Thanks to Steve Nuchia 345 (steve@research.oknet.com) 346 347- Fixed to handle raw ip addresses such as 0.0.0.1 without "left 348 justifing" 349 350- Add "sca" keyword (for DEC cluster services) as suggested by Terry 351 Kennedy (terry@spcvxa.spc.edu) 352 353- Add "atalk" keyword as suggested by John Hawkinson. 354 355- Add "igrp" keyword. 356 357- Fixed HID definition in grammar.y to be a string, not a value. 358 359- Use $CC when checking gcc version. Thanks to Carl Lindberg 360 (carl_lindberg@blacksmith.com) 361 362- Removed obsolete reference to pcap_immediate() from the man page. 363 Michael Stolarchuk (mts@terminator.rs.itd.umich.edu) 364 365- DLT_NULL has a 4 byte family header. Thanks to Jeffrey Honig 366 (jch@bsdi.com) 367 368v0.2 Sun Jun 23 02:28:42 PDT 1996 369 370- Add support for HP-UX. Resulted from code contributed by Tom Murray 371 (tmurray@hpindck.cup.hp.com) and Philippe-Andri Prindeville 372 (philipp@res.enst.fr) 373 374- Update INSTALL with a reminder to install include files. Thanks to 375 Mark Andrews (mandrews@aw.sgi.com) 376 377- Fix bpf compiler alignment bug on the alpha. 378 379- Use autoconf to detect architectures that can't handle misaligned 380 accesses. 381 382- Added loopback support for snoop. Resulted from report Steve 383 Alexander (sca@engr.sgi.com) 384 385v0.1 Fri Apr 28 18:11:03 PDT 1995 386 387- Fixed compiler and optimizer bugs. The BPF filter engine uses unsigned 388 comparison operators, while the code generator and optimizer assumed 389 signed semantics in several places. Thanks to Charlie Slater 390 (cslater@imatek.com) for pointing this out. 391 392- Removed FDDI ifdef's, they aren't really needed. Resulted from report 393 by Gary Veum (veum@boa.gsfc.nasa.gov). 394 395- Add pcap-null.c which allows offline use of libpcap on systems that 396 don't support live package capture. This feature resulting from a 397 request from Jan van Oorschot (j.p.m.voorschot@et.tudelft.nl). 398 399- Make bpf_compile() reentrant. Fix thanks to Pascal Hennequin 400 (Pascal.Hennequin@hugo.int-evry.fr). 401 402- Port to GNU autoconf. 403 404- Fix pcap-dlpi.c to work with isdn. Resulted from report by Flemming 405 Johansen (fsj@csd.cri.dk). 406 407- Handle multi-digit interface unit numbers (aka ppa's) under dlpi. 408 Resulted from report by Daniel Ehrlich (ehrlich@cse.psu.edu). 409 410- Fix pcap-dlpi.c to work in non-promiscuous mode. Resulted from report 411 by Jeff Murphy (jcmurphy@acsu.buffalo.edu). 412 413- Add support for "long jumps". Thanks to Jeffrey Mogul 414 (mogul@pa.dec.com). 415 416- Fix minor problems when compiling with BDEBUG as noticed by Scott 417 Bertilson (scott@unet.umn.edu). 418 419- Declare sys_errlist "const char *const" to avoid problems under 420 FreeBSD. Resulted from report by jher@eden.com. 421 422v0.0.6 Fri Apr 28 04:07:13 PDT 1995 423 424- Add missing variable declaration missing from 0.0.6 425 426v0.0.5 Fri Apr 28 00:22:21 PDT 1995 427 428- Workaround for problems when pcap_read() returns 0 due to the timeout 429 expiring. 430 431v0.0.4 Thu Apr 20 20:41:48 PDT 1995 432 433- Change configuration to not use gcc v2 flags with gcc v1. 434 435- Fixed a bug in pcap_next(); if pcap_dispatch() returns 0, pcap_next() 436 should also return 0. Thanks to Richard Stevens (rstevens@noao.edu). 437 438- Fixed configure to test for snoop before dlpi to avoid problems under 439 IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 440 441- Hack around deficiency in Ultrix's make. 442 443- Fix two bugs related to the Solaris pre-5.3.2 bufmod bug; handle 444 savefiles that have more than snapshot bytes of data in them (so we 445 can read old savefiles) and avoid writing such files. 446 447- Added checkioctl which is used with gcc to check that the 448 "fixincludes" script has been run. 449 450v0.0.3 Tue Oct 18 18:13:46 PDT 1994 451 452- Fixed configure to test for snoop before dlpi to avoid problems under 453 IRIX 5. Thanks to J. Eric Townsend (jet@abulafia.genmagic.com). 454 455v0.0.2 Wed Oct 12 20:56:37 PDT 1994 456 457- Implement timeout in the dlpi pcap_open_live(). Thanks to Richard 458 Stevens. 459 460- Determine pcap link type from dlpi media type. Resulted from report 461 by Mahesh Jethanandani (mahesh@npix.com). 462 463v0.0.1 Fri Jun 24 14:50:57 PDT 1994 464 465- Fixed bug in nit_setflags() in pcap-snit.c. The streams ioctl timeout 466 wasn't being initialized sometimes resulting in an "NIOCSFLAGS: 467 Invalid argument" error under OSF/1. Reported by Matt Day 468 (mday@artisoft.com) and Danny Mitzel (dmitzel@whitney.hitc.com). 469 470- Turn on FDDI support by default. 471 472v0.0 Mon Jun 20 19:20:16 PDT 1994 473 474- Initial release. 475 476- Fixed bug with greater/less keywords, reported by Mark Andrews 477 (mandrews@alias.com). 478 479- Fix bug where '|' was defined as BPF_AND instead of BPF_OR, reported 480 by Elan Amir (elan@leeb.cs.berkeley.edu). 481 482- Machines with little-endian byte ordering are supported thanks to 483 Jeff Mogul. 484 485- Add hack for version 2.3 savefiles which don't have caplen and len 486 swapped thanks to Vern Paxson. 487 488- Added "&&" and "||" aliases for "and" and "or" thanks to Vern Paxson. 489 490- Added length, inbound and outbound keywords. 491