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