wireshark.org protocol dissector with Osmocom additions
Go to file
Guy Harris 4df46758e3 If we have a random stream open for a compressed Sniffer file, have the
sequential pass through the file build a list of information about the
compressed blobs, with the starting offset in the compressed file and in
the uncompressed byte stream for each blob.

When seeking on the random stream, check whether the target location is
within the uncompressed buffer we currently have; if not, use that list
to figure out which blob contains the target location, and read that
blob into the buffer.  Then, as we now know that the target location is
within the uncompressed buffer we currently have, just move the current
pointer into that buffer to the target location.

This means we don't have to read forwards through any uninteresting
blobs in order to seek forwards, and don't have to go all the way back
to the beginning and seek forwards in order to seek backwards.

svn path=/trunk/; revision=2251
2000-08-11 07:28:12 +00:00
debian Add a missing build dependency (debhelper) and change build dependency on 2000-07-03 22:40:13 +00:00
doc Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
gtk Give the Help menu the more-or-less canonical style from most 2000-08-09 06:43:22 +00:00
image Move to version 0.8.11 2000-08-03 01:54:53 +00:00
packaging Update and add ".cvsignore" files to reduce the level of noise from CVS. 2000-07-30 08:32:54 +00:00
plugins Fix plugin function table so that plugins work on Win32. 2000-05-31 18:32:15 +00:00
wiretap If we have a random stream open for a compressed Sniffer file, have the 2000-08-11 07:28:12 +00:00
.cvsignore Update and add ".cvsignore" files to reduce the level of noise from CVS. 2000-07-30 08:32:54 +00:00
AUTHORS Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
COPYING * Copied in the correct GNU license (I'm such a goober) 1998-10-16 01:18:35 +00:00
ChangeLog Initial revision 1998-09-16 02:39:15 +00:00
INSTALL The latest version of libpcap is now at www.tcpdump.org, not at LBL. 2000-07-22 19:28:46 +00:00
INSTALL.configure * Installation documentation updates 1998-12-29 03:12:07 +00:00
Makefile.am Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
Makefile.nmake Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
NEWS Move to version 0.8.11 2000-08-03 01:54:53 +00:00
README Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
README.aix Add an RCS ID. 2000-02-19 21:58:39 +00:00
README.bsd Add a "README.bsd", which currently only explains how to enable BPF in 2000-02-19 21:54:07 +00:00
README.hpux Update the README.hpux file to contain the latest version of the libpcap 2000-04-29 08:38:35 +00:00
README.irix Add in the patch to make the IRIX libpcap handle snapshot lengths larger 2000-04-29 08:45:39 +00:00
README.linux Put in a note about enabling the Packet protocol; if it's not enabled on 2000-02-19 21:44:13 +00:00
README.tru64 Give some README.<os> files RCS IDs; the other ones already have them. 2000-02-19 22:00:25 +00:00
README.vmware Add URL. 2000-01-21 19:19:23 +00:00
README.win32 Re-organize the README so that people who just want to run ethereal, not 2000-08-04 15:40:54 +00:00
TODO Add some more items to the TODO list, and note that loadable modules are 1999-12-26 23:52:54 +00:00
acconfig.h Apparently, on systems with glibc 2.2, "inet_aton()" is declared in 2000-07-14 07:11:53 +00:00
acinclude.m4 Add "-L" flags to LDFLAGS, not LIBS, and get rid of all the exotic 2000-01-21 06:18:16 +00:00
aclocal-flags Add a script, "aclocal-flags", which figures out where 2000-07-26 08:03:57 +00:00
alignment.h Give it an RCS ID. 1999-09-23 05:26:18 +00:00
asn1.c In "asn1_oid_value_decode()", set "size" directly from "enc_len", rather 2000-06-26 00:08:48 +00:00
asn1.h Add type tag values for the REAL and ENUMERATED types. 2000-03-27 08:51:05 +00:00
autogen.sh Add a script, "aclocal-flags", which figures out where 2000-07-26 08:03:57 +00:00
capture.c Fix it to compile on non-Linux UNIX-flavored systems and Win32 systems. 2000-07-31 04:03:31 +00:00
capture.h When initializing a capture filter, assign a pointer to an empty string 2000-01-05 22:31:46 +00:00
column.c Move the code in "column.c" that implements the column preferences tab 2000-01-10 01:44:00 +00:00
column.h Move the code in "column.c" that implements the column preferences tab 2000-01-10 01:44:00 +00:00
config.guess Switch Solaris package build naming to a more generic SVR4. Add RPM and SRPM 2000-07-26 03:39:11 +00:00
config.h.win32 Move to version 0.8.11 2000-08-03 01:54:53 +00:00
config.nmake Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
configure.in Move to version 0.8.11 2000-08-03 01:54:53 +00:00
conversation.c Fix compilation problem. 2000-08-07 11:48:40 +00:00
conversation.h Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
dfilter-grammar.y Allow filtering on strings. 2000-08-01 18:10:06 +00:00
dfilter-int.h Allow filtering on strings. 2000-08-01 18:10:06 +00:00
dfilter-scanner.l Allow filtering on strings. 2000-08-01 18:10:06 +00:00
dfilter.c Allow filtering on strings. 2000-08-01 18:10:06 +00:00
dfilter.h Allow filtering on strings. 2000-08-01 18:10:06 +00:00
editcap.c Make "editcap -h" give the usage message without an error message (i.e., 2000-08-09 06:00:54 +00:00
etypes.h Add some ethertypes (which were captured on my network, so inuse ;-). 2000-08-09 22:10:23 +00:00
except.c Add tvbuff class. 2000-05-11 08:18:09 +00:00
except.h Add tvbuff class. 2000-05-11 08:18:09 +00:00
exceptions.h Have tvbuff's keep track of cap_len and pkt_len ('length' and 'reported_length' 2000-05-16 04:44:14 +00:00
file.c Make copy_binary_file() static since follow_dlg.c no longer uses it. 2000-08-09 06:18:16 +00:00
file.h Make copy_binary_file() static since follow_dlg.c no longer uses it. 2000-08-09 06:18:16 +00:00
follow.c In TCP Follow window, allow the optional showing of: 2000-08-09 05:18:45 +00:00
follow.h In TCP Follow window, allow the optional showing of: 2000-08-09 05:18:45 +00:00
getopt.c Build tethereal and editcap on Win32. 2000-04-12 21:52:11 +00:00
getopt.h Add getopt.c (from GNU libc) for use on Win32. 2000-03-28 20:20:11 +00:00
globals.h Add a "Save As" feature to the TCP Follow dialogue, to save the stream 2000-08-03 12:44:40 +00:00
ieee-float.h Support for MultiProtocol Label Switching (MPLS). The following support 2000-03-09 18:31:51 +00:00
inet_aton.c Apparently, on systems with glibc 2.2, "inet_aton()" is declared in 2000-07-14 07:11:53 +00:00
inet_aton.h Apparently, on systems with glibc 2.2, "inet_aton()" is declared in 2000-07-14 07:11:53 +00:00
inet_ntop.c Some initial changes for win32 support, but not all. 2000-01-10 17:33:17 +00:00
inet_pton.c Some initial changes for win32 support, but not all. 2000-01-10 17:33:17 +00:00
inet_v6defs.h Apparently, on systems with glibc 2.2, "inet_aton()" is declared in 2000-07-14 07:11:53 +00:00
ipproto.c Initial SCTP support (showing it by name from "ipprotostr()") from 2000-05-26 21:54:59 +00:00
ipv4.c Fix Gerald's e-mail address. 2000-01-07 22:05:43 +00:00
ipv4.h Change dfilter_apply() to 4-argument function. 4th argument is not yet used, 2000-04-14 05:39:43 +00:00
llcsaps.h Register a "llc.dsap" dissector table for 802.2 LLC, and have dissectors 2000-04-17 00:32:43 +00:00
make-reg-dotc "test -e" is documented in the Solaris 2.6 man page, but doesn't seem to 2000-08-10 19:43:07 +00:00
manuf Added a passel-o-codes from Gaetan Soltesz <gaetan@cisco.com> 2000-06-14 19:53:37 +00:00
menu.h Have "gtk/menu.c" (and, in the future, code for other UIs) export a set 2000-01-03 03:57:04 +00:00
mkstemp.c Integrate Ed Meaney's <emeaney@altiga.com> changes for using libpcap 2000-02-09 19:18:42 +00:00
mkstemp.h Merge in the final code to make Ethereal run on Win32, compiled 2000-01-15 00:23:13 +00:00
ncp2222.h Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
ncp2222.py - make-reg-dot 2000-08-09 21:24:27 +00:00
nlpid.h Ralf Schneider's changes to enhance to OSI CLNP, CLTP, and ISIS support 2000-04-15 22:11:26 +00:00
oui.h Change my e-mail address from @tivoli.com to @xiexie.org 2000-04-12 20:24:43 +00:00
packet-aarp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-afs.c Fix the display of volume names. 2000-06-21 04:41:30 +00:00
packet-afs.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-arp.c - rename is_name_from_file to is_dummy_entry since now a real 2000-08-10 20:09:29 +00:00
packet-arp.h Make various dissectors static if they can be, and get rid of any header 2000-04-16 22:59:37 +00:00
packet-ascend.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-ascend.h Add wtap-int.h. Move definitions relevant to the internal workins of wiretap 2000-05-19 23:07:04 +00:00
packet-atalk.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-atalk.h Give the Appletalk DDP dissector a dissector hash table, and have the 2000-05-28 22:59:18 +00:00
packet-atm.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-atm.h Add "tvb_reported_length()" to get the "reported length" of a tvbuff 2000-05-29 08:57:42 +00:00
packet-auto_rp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-bgp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-bgp.h BGP confederations support (RFC1965). 2000-04-11 14:21:37 +00:00
packet-bootp.c Phil Techau's fix to BOOTP when client address not supplied. 2000-08-09 06:15:14 +00:00
packet-bootparams.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-bootparams.h Added stubs for various RPC routines: 1999-11-10 17:23:55 +00:00
packet-bpdu.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-bpdu.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-cdp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-cdp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-cgmp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-cgmp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-clip.c replaced pinfo->current with pinfo->current_proto 2000-05-25 18:32:06 +00:00
packet-clip.h Convert dissect_clip() to use tvbuffs. Very trivial change. 2000-05-25 14:55:22 +00:00
packet-clnp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-clnp.h Add support for OSI CLTP. 2000-07-01 08:55:28 +00:00
packet-cops.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-data.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ddtp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ddtp.h Changed my mail address to oabad@cybercable.fr (dhis.net is too 2000-05-28 17:04:47 +00:00
packet-diameter-defs.h David Frascone's DIAMETER dissector. 2000-07-30 07:16:11 +00:00
packet-diameter.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-diameter.h David Frascone's DIAMETER dissector. 2000-07-30 07:16:11 +00:00
packet-dns.c Add #defines for class values, and use them rather than using the 2000-08-09 07:15:19 +00:00
packet-dns.h Make "make-reg-dotc" generate a "register_all_protocol_handoffs()" 2000-04-04 06:17:30 +00:00
packet-eigrp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-esis.c - add proto_tree_add_text_valist 2000-08-10 16:04:33 +00:00
packet-esis.h Register an "osinl" dissector table for ISO/IEC TR 9577 NLPID values, 2000-04-17 01:36:31 +00:00
packet-eth.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-eth.h Convert Ethernet and Lucent/Ascend dissectors to use tvbuff. 2000-05-16 06:21:33 +00:00
packet-ethertype.c Add some ethertypes (which were captured on my network, so inuse ;-). 2000-08-09 22:10:23 +00:00
packet-fddi.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-fddi.h Add tvbuff class. 2000-05-11 08:18:09 +00:00
packet-ftp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-giop.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-gre.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-h1.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-hsrp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-http.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-http.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-icmpv6.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-icp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-icq.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-imap.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ip.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ip.h Initial SCTP support (showing it by name from "ipprotostr()") from 2000-05-26 21:54:59 +00:00
packet-ipp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ipp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-ipsec.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ipsec.h Change dissect_ah() so that dissect_ip() doesn't have to make a 2000-06-05 03:21:03 +00:00
packet-ipv6.c Fix display of IPv6 frag header display in proto tree, from 2000-08-08 21:49:13 +00:00
packet-ipv6.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-ipx.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ipx.h Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-irc.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-isakmp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-isis-clv.c Fix decoding of short ISIS CLV data frames. 2000-08-10 14:21:09 +00:00
packet-isis-clv.h Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-hello.c Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-hello.h Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-lsp.c Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-lsp.h Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-snp.c Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis-snp.h Make the "isis_hello.source_id" an FT_BYTES field rather than an 2000-06-19 08:33:50 +00:00
packet-isis.c - add proto_tree_add_text_valist 2000-08-10 16:04:33 +00:00
packet-isis.h Register an "osinl" dissector table for ISO/IEC TR 9577 NLPID values, 2000-04-17 01:36:31 +00:00
packet-isl.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-isl.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-kerberos.c Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
packet-kerberos.h Kerberos 5 dissector, from Wes Hardaker. 2000-08-11 03:32:53 +00:00
packet-l2tp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-lapb.c Convert LAPD and V.120 dissector to use tvbuff. Convert xdlc dissector-helper, 2000-05-31 03:58:56 +00:00
packet-lapb.h Convert LAPB dissector to use tvbuffs, and to get pseudo_header from 2000-05-25 08:45:54 +00:00
packet-lapd.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-lapd.h Convert LAPD and V.120 dissector to use tvbuff. Convert xdlc dissector-helper, 2000-05-31 03:58:56 +00:00
packet-ldap.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ldap.h Move calls to "dissector_add()" out of the register routines for TCP and 2000-04-08 07:07:42 +00:00
packet-llc.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-llc.h Convert LLC dissector to use tvbuffs. 2000-05-11 22:04:18 +00:00
packet-lpd.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-mapi.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-mip.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-mount.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-mount.h Mount V2. 1999-11-20 06:17:00 +00:00
packet-mpls.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-msproxy.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-nbipx.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-nbipx.h Give the IPX dissector dissector hash tables for the IPX type and socket 2000-05-30 03:35:55 +00:00
packet-nbns.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ncp-int.h Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
packet-ncp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-netbios.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-netbios.h Register a "llc.dsap" dissector table for 802.2 LLC, and have dissectors 2000-04-17 00:32:43 +00:00
packet-nfs.c Several new RPC dissecting function introduced. Interface to 2000-08-08 06:19:52 +00:00
packet-nfs.h New constants for ftype3 decoding. 2000-01-18 11:54:07 +00:00
packet-nlm.c NLM v1 dissector filled with some actual dissectors. 2000-08-08 06:22:08 +00:00
packet-nlm.h Procedure numbers as constants are much better. 2000-08-02 11:32:31 +00:00
packet-nntp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ntp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ntp.h Move calls to "dissector_add()" out of the register routines for TCP and 2000-04-08 07:07:42 +00:00
packet-null.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-null.h Make "packet-null.c" include "packet-null.h", so that the declarations 2000-05-19 05:18:26 +00:00
packet-osi-options.c Add tvbuff class. 2000-05-11 08:18:09 +00:00
packet-osi-options.h Ralf Schneider's changes to enhance to OSI CLNP, CLTP, and ISIS support 2000-04-15 22:11:26 +00:00
packet-osi.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-osi.h Add support for OSI CLTP. 2000-07-01 08:55:28 +00:00
packet-ospf.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ospf.h Register an "ip.proto" dissector table for IPv4, and have dissectors for 2000-04-16 22:46:25 +00:00
packet-pim.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-pop.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-portmap.c Use "dissect_rpc_list()" to dissect NFS READDIR/READDIRPLUS reply lists 2000-06-12 08:47:34 +00:00
packet-portmap.h Uwe Girlich's patches for nfs,mount,portmap and addition of nlm. 1999-11-15 14:17:20 +00:00
packet-ppp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ppp.h Convert dissect_ppp() and friends to use tvbuffs. 2000-05-25 07:42:26 +00:00
packet-pppoe.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-pptp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-q931.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-q931.h Add "tvb_reported_length()" to get the "reported length" of a tvbuff 2000-05-29 08:57:42 +00:00
packet-q2931.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-q2931.h Add "tvb_reported_length()" to get the "reported length" of a tvbuff 2000-05-29 08:57:42 +00:00
packet-quake.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-radius.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-raw.c Convert dissect_ppp() and friends to use tvbuffs. 2000-05-25 07:42:26 +00:00
packet-raw.h Convert dissect_raw() to use tvbuff's. 2000-05-19 21:47:38 +00:00
packet-rip.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-rip.h RFC 1058, on RIP V1, says: 2000-04-14 06:17:23 +00:00
packet-ripng.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-ripng.h Move calls to "dissector_add()" out of the register routines for TCP and 2000-04-08 07:07:42 +00:00
packet-rlogin.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-rpc.c Several new RPC dissecting function introduced. Interface to 2000-08-08 06:19:52 +00:00
packet-rpc.h Several new RPC dissecting function introduced. Interface to 2000-08-08 06:19:52 +00:00
packet-rsvp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-rtcp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-rtcp.h Support for RTCP and RTP, from Jason Lango. 2000-04-21 01:45:58 +00:00
packet-rtp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-rtp.h Support for RTCP and RTP, from Jason Lango. 2000-04-21 01:45:58 +00:00
packet-rtsp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-rx.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-rx.h Register all the AFS ports in "proto_reg_handoff_rx()", rather than 2000-04-14 06:42:52 +00:00
packet-sap.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-sctp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-sdp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-sdp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-smb-browse.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-smb-common.c Add tvbuff class. 2000-05-11 08:18:09 +00:00
packet-smb-common.h Add tvbuff class. 2000-05-11 08:18:09 +00:00
packet-smb-logon.c Use "BYTES_ARE_IN_FRAME()" rather than explicitly checking an offset and 2000-08-06 10:04:15 +00:00
packet-smb-mailslot.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-smb-pipe.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-smb.c A small set of patches to fix one small problem and start working on the 2000-08-07 14:49:03 +00:00
packet-smb.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-sna.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-sna.h Register a "llc.dsap" dissector table for 802.2 LLC, and have dissectors 2000-04-17 00:32:43 +00:00
packet-snmp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-snmp.h Give the IPX dissector dissector hash tables for the IPX type and socket 2000-05-30 03:35:55 +00:00
packet-socks.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-srvloc.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-sscop.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-sscop.h Add "tvb_reported_length()" to get the "reported length" of a tvbuff 2000-05-29 08:57:42 +00:00
packet-stat.c Use the new split between protocol registration and protocol handoff 2000-04-04 06:46:41 +00:00
packet-stat.h Added mount dissector. 1999-11-11 21:22:00 +00:00
packet-syslog.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tacacs.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tcp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tcp.h Have the IPv6 dissector use the same dissector table as the IPv4 2000-04-20 07:05:58 +00:00
packet-telnet.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tftp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-tftp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-time.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tns.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tns.h Move calls to "dissector_add()" out of the register routines for TCP and 2000-04-08 07:07:42 +00:00
packet-tr.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-tr.h Convert token-ring dissector to use tvbuffs. 2000-05-15 06:22:07 +00:00
packet-trmac.c tvbuff-ify the TR MAC dissector. 2000-06-20 03:05:37 +00:00
packet-trmac.h tvbuff-ify the TR MAC dissector. 2000-06-20 03:05:37 +00:00
packet-udp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-udp.h Have the IPv6 dissector use the same dissector table as the IPv4 2000-04-20 07:05:58 +00:00
packet-v120.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-v120.h Convert LAPD and V.120 dissector to use tvbuff. Convert xdlc dissector-helper, 2000-05-31 03:58:56 +00:00
packet-vines.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-vines.h Register a "ppp.protocol" dissector table for PPP, and have dissectors 2000-04-16 21:37:07 +00:00
packet-vlan.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-vlan.h Make various dissectors static if they can be, and get rid of any header 2000-04-16 22:59:37 +00:00
packet-vrrp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-vtp.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-vtp.h Create a header file for every packet-*.c file. Prune the packet.h file. 2000-02-15 21:06:58 +00:00
packet-wccp.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-who.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-x11-declarations.h Christophe Tronche's X11 dissector. 2000-06-12 02:30:35 +00:00
packet-x11-keysym.h Christophe Tronche's X11 dissector. 2000-06-12 02:30:35 +00:00
packet-x11-register-info.h Christophe Tronche's X11 dissector. 2000-06-12 02:30:35 +00:00
packet-x11.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-x25.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-x25.h Convert X.25 dissector to use tvbuffs. 2000-05-25 21:34:58 +00:00
packet-yhoo.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet-yhoo.h Add routines to: 2000-05-05 09:32:36 +00:00
packet-ypbind.c Use the new split between protocol registration and protocol handoff 2000-04-04 06:46:41 +00:00
packet-ypbind.h Added stubs for various RPC routines: 1999-11-10 17:23:55 +00:00
packet-ypserv.c Add routines for adding items to a protocol tree that take arguments of 2000-05-31 05:09:07 +00:00
packet-ypserv.h Added stubs for various RPC routines: 1999-11-10 17:23:55 +00:00
packet-ypxfr.c Use the new split between protocol registration and protocol handoff 2000-04-04 06:46:41 +00:00
packet-ypxfr.h Added stubs for various RPC routines: 1999-11-10 17:23:55 +00:00
packet.c Allow either old-style (pre-tvbuff) or new-style (tvbuffified) 2000-08-07 03:21:25 +00:00
packet.h If G_HAVE_GINT64 is defined, so that we can use "gint64" and "guint64" 2000-08-10 07:58:44 +00:00
plugins.c Move to version 0.8.11 2000-08-03 01:54:53 +00:00
plugins.h Add a counter : "enabled_plugins_number", to record how many plugins are 2000-03-31 21:42:24 +00:00
ppptypes.h Register a "ppp.protocol" dissector table for PPP, and have dissectors 2000-04-16 21:37:07 +00:00
prefs-int.h Turn the code of "colorize_packet()" into a static routine that is given 2000-07-09 03:29:42 +00:00
prefs.c Cast an argument to "isspace()" to "guchar" so that if it has the 8th 2000-08-07 22:31:09 +00:00
prefs.h Turn the code of "colorize_packet()" into a static routine that is given 2000-07-09 03:29:42 +00:00
print.c Consolidate flags in struct frame_data, and add "visited" flag. Use 2000-04-13 20:39:38 +00:00
print.h Add a "Save As" feature to the TCP Follow dialogue, to save the stream 2000-08-03 12:44:40 +00:00
print.ps * Added Joerg Mayer's Vines patch 1998-12-29 04:05:38 +00:00
proto.c We must include "snprintf.h" *after* including <stdarg.h>, and 2000-08-10 19:41:45 +00:00
proto.h - add proto_tree_add_text_valist 2000-08-10 16:04:33 +00:00
ps.h Fix files that had Gilbert's old e-mail address or that didn't have my 2000-01-22 06:22:44 +00:00
ptvcursor.c Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
ptvcursor.h Add the re-write of the NetWare Core Protocol dissector. It's mostly 2000-07-28 20:03:59 +00:00
randpkt.c Add syslog support to randpkt. 2000-06-11 15:54:03 +00:00
rdps.c Finally got the win32 ethereal to link properly with MSVC. 1999-07-21 17:40:42 +00:00
register.h Make "make-reg-dotc" generate a "register_all_protocol_handoffs()" 2000-04-04 06:17:30 +00:00
resolv.c - remove debugging #ifdef 2000-08-10 22:35:30 +00:00
resolv.h - rename is_name_from_file to is_dummy_entry since now a real 2000-08-10 20:09:29 +00:00
simple_dialog.h Take the "simple_dialog()" stuff out of "ui_util.h" and "gtk/ui_util.c", 2000-01-03 06:59:25 +00:00
smb.h Jeff Foster's SMB Mailslot and Netlogin dissectors; he split 2000-02-14 04:02:21 +00:00
snprintf-imp.h Squelch a number of "-Wall" errors by: 1998-10-13 07:03:37 +00:00
snprintf.c Cast arguments to "isxdigit()", "isdigit()", and "isflag()" to "unsigned 2000-08-07 23:05:43 +00:00
snprintf.h Squelch a number of "-Wall" errors by: 1998-10-13 07:03:37 +00:00
strcasecmp.c SINIX-M systems don't know about strcasecmp(). I added the source file 2000-07-06 10:03:44 +00:00
strerror.c Add our own "strerror()", which we use on platforms that don't have it 1999-06-14 21:46:36 +00:00
strerror.h Add our own "strerror()", which we use on platforms that don't have it 1999-06-14 21:46:36 +00:00
strncasecmp.c Uwe Girlich's patch to handle OSes (e.g., SINIX) that lack 1999-10-01 21:41:38 +00:00
summary.c Patch from Ben Fowler to rename the global variable "cf" to "cfile", to 2000-06-27 04:36:03 +00:00
summary.h Move GTK code out of summary.c and into gtk/summary_dlg.c 1999-12-10 04:21:04 +00:00
tethereal.c Add a "Save As" feature to the TCP Follow dialogue, to save the stream 2000-08-03 12:44:40 +00:00
timestamp.h Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
tvbtest.c Add support for the reported length of tvbuffs and for the 2000-06-22 06:36:45 +00:00
tvbuff.c If G_HAVE_GINT64 is defined, so that we can use "gint64" and "guint64" 2000-08-10 07:58:44 +00:00
tvbuff.h If G_HAVE_GINT64 is defined, so that we can use "gint64" and "guint64" 2000-08-10 07:58:44 +00:00
ui_util.h Use "progdlg_t *" rather than "void *" as the handle for a progress 2000-07-07 07:01:58 +00:00
util.c Add a routine to check whether a file is a directory or not. 2000-07-31 04:53:40 +00:00
util.h Add a routine to check whether a file is a directory or not. 2000-07-31 04:53:40 +00:00
xdlc.c Convert LAPD and V.120 dissector to use tvbuff. Convert xdlc dissector-helper, 2000-05-31 03:58:56 +00:00
xdlc.h Convert LAPD and V.120 dissector to use tvbuff. Convert xdlc dissector-helper, 2000-05-31 03:58:56 +00:00

README

$Id: README,v 1.39 2000/07/28 20:03:40 gram Exp $

General Information
------- -----------

Ethereal is a network traffic analyzer, or "sniffer", for Unix and
Unix-like operating systems.  It uses GTK+, a graphical user interface
library, and libpcap, a packet capture and filtering library.

The Ethereal distribution also comes with Tethereal, which is a
line-oriented sniffer (similar to Sun's snoop, or tcpdump) that uses the
same dissection, capture-file reading and writing, and packet filtering
code as Ethereal, and with editcap, which is a program to read capture
files and write the packets from that capture file, possibly in a
different capture file format, and with some packets possibly removed
from the capture.

The official home of Ethereal is

    http://ethereal.zing.org

The latest distribution can be found in the subdirectory

    http://ethereal.zing.org/distribution


Installation
------------

Ethereal is known to compile and run on the following systems:

  - Linux (2.0.x, 2.1.x, 2.2.x, 2.3.x, 2.4.x)
  - Solaris (2.5.1, 2.6, 7)
  - FreeBSD (2.2.5, 2.2.6, 3.1, 3.2, 3.3)
  - Sequent PTX v4.4.5  (Nick Williams <njw@sequent.com>)
  - Tru64 UNIX (formerly Digital UNIX) (3.2, 4.0)
  - Irix (6.5)
  - AIX (4.3.2, with a bit of work)
  - Win32 (NT, 98)

It should run on other Unix-ish systems without too much trouble.

NOTE: the Makefile appears to depend on GNU "make"; it doesn't appear to
work with the "make" that comes with Solaris 7 nor the BSD "make".
Perl is also needed to create the man page.

If you decide to modify the yacc grammar or lex scanner, then
you need "flex" - it cannot be built with vanilla "lex" -
and either "bison" or the Berkeley "yacc". Your flex
version must be 2.5.1 or greater. Check this with 'flex -V'.

If you decide to modify the NetWare Core Protocol dissector, you
will need python, as the data for packet types is stored in a python
script, ncp2222.py.

You must therefore install Perl, GNU "make", "flex", and either "bison" or
Berkeley "yacc" on systems that lack them.

Full installation instructions can be found in the INSTALL file.
         
See also the appropriate README.<OS> files for OS-specific installation
instructions.

Usage
-----          

In order to capture packets from the network, you need to be running as
root, or have access to the appropriate entry under /dev if your system
is so inclined (BSD-derived systems, and systems such as Solaris and
HP-UX that support DLPI, typically fall into this category).  Although
it might be tempting to make the Ethereal executable setuid root, please
don't - alpha code is by nature not very robust, and liable to contain
security holes.

Please consult the man page for a description of each command-line
option and interface feature.


Multiple File Types
-------------------

The wiretap library is a packet-capture library currently under
development parallel to ethereal.  In the future it is hoped that
wiretap will have more features than libpcap, but wiretap is still in
its infancy. However, wiretap is used in ethereal for its ability
to read multiple file types. You can read the following file
formats, and create display filters for them as well:

libpcap (tcpdump -w), Sniffer (compressed and uncompressed), NetXray,
Sniffer Pro, snoop, Shomiti, LANalyzer, Microsoft Network Monitor, AIX's
iptrace, RADCOM's WAN/LAN Analyzer, Lucent/Ascend access products, HP-UX's
nettl, Toshiba's ISDN routers, and the ISDN4BSD "i4btrace" utility.

In addition, it can read gzipped versions of any of these files
automatically, if you have the zlib library available when compiling
Ethereal. Ethereal needs a modern version of zlib to be able to use
zlib to read gzipped files; version 1.1.3 is known to work.  Versions
prior to 1.0.9 are missing some functions that Ethereal needs and won't
work.  "./configure" should detect if you have the proper zlib version
available and, if you don't, should disable zlib support. You can always
use "./configure --disable-zlib" to explicitly disable zlib support.

Although Ethereal can read AIX iptrace files, the documentation on
AIX's iptrace packet-trace command is sparse.  The 'iptrace' command
starts a daemon which you must kill in order to stop the trace. Through
experimentation it appears that sending a HUP signal to that iptrace
daemon causes a graceful shutdown and a complete packet is written
to the trace file. If a partial packet is saved at the end, Ethereal
will complain when reading that file, but you will be able to read all
other packets.  If this occurs, please let the Ethereal developers know
at ethereal-dev@zing.org, and be sure to send us a copy of that trace
file if it's small and contains non-sensitive data.

Support for Lucent/Ascend products is limited to the debug trace output
generated by the MAX and Pipline series of products.  Ethereal can read
the output of the "wandsession" "wandisplay", "wannext", and "wdd"
commands.  For detailed information on use of these commands, please refer
the following pages:

"wandsession", "wandisplay", and "wannext" on the Pipeline series:
  http://aos.ascend.com/aos:/gennavviewer.html?doc_id=0900253d80006c79

"wandsession", "wandisplay", and "wannext" on the MAX series:
  http://aos.ascend.com/aos:/gennavviewer.html?doc_id=0900253d80006972

"wdd" on the Pipeline series:
  http://aos.ascend.com/aos:/gennavviewer.html?doc_id=0900253d80006877

Ethereal can also read dump trace output from the Toshiba "Compact Router"
line of ISDN routers (TR-600 and TR-650). You can telnet to the router
and start a dump session with "snoop dump".

To use the Lucent/Ascend and Toshiba traces with Ethereal, you must capture
the trace output to a file on disk.  The trace is happening inside the router
and the router has no way of saving the trace to a file for you.
An easy way of doing this under Unix is to run "telnet <ascend> | tee <outfile>".
Or, if your system has the "script" command installed, you can save
a shell session, including telnet to a file. For example, to a file named
tracefile.out:

$ script tracefile.out
Script started on <date/time>
$ telnet router
..... do your trace, then exit from the router's telnet session.
$ exit
Script done on <date/time>



IPv6
----
If your operating system includes IPv6 support, ethereal will attempt to
use reverse name resolution capabilities when decoding IPv6 packets. If
you want to turn off name resolution while using ethereal, start ethereal
with the "-n" option. If you would like to compile ethereal without
support for IPv6 name resolution, use the "--disable-ipv6" option with
"./configure". If you compile ethereal without IPv6 name resolution,
you will still be able to decode IPv6 packets, but you'll only see IPv6
addresses, not host names.

The "Follow TCP Stream" feature only supports TCP over IPv4. Support for TCP
over IPv6 is planned.


NetWare Core Protocol
---------------------
There are over 400 different NCP packet types. The NCP dissector does
not understand all of these; support is being added little by little. If
you have some NCP packets that are not dissected by Ethereal, send
a trace file to ethereal-dev@zing.org and if possible, we will add support
for those packets types.


SNMP
----
Ethereal can do some basic decoding of SNMP packets; it can also use an
external SNMP library to do more sophisticated decoding..  The configure
script will automatically determine which library you have on your
system and will use it.  If you have an SNMP library but _do not_ want
to have ethereal use it, you can run configure with the "--disable-snmp"
option. 


How to Report a Bug
-------------------
Ethereal is still under constant development, so it is possible that you will
encounter a bug while using it. Please report bugs to ethereal-dev@zing.org.
Be sure you tell us:

	1) Operating System and version (the command 'uname -sr' may
	   tell you this, although on Linux systems it will probably
	   tell you only the version number of the Linux kernel, not of
	   the distribution as a whole; on Linux systems, please tell us
	   both the version number of the kernel, and which version of
	   which distribution you're running)
	2) Version of GTK+ (the command 'gtk-config --version' will tell you)
	3) Version of Ethereal (the command 'ethereal -v' will tell you,
	   unless the bug is so severe as to prevent that from working,
	   and should also tell you the versions of libraries with which
	   it was built)
	4) The command you used to invoke Ethereal, and the sequence of
	   operations you performed that caused the bug to appear

If the bug is produced by a particular trace file, please be sure to send
a trace file along with your bug description. Please don't send a trace file
greater than 1 MB when compressed. If the trace file contains sensitive
information (e.g., passwords), then please do not send it.

If Ethereal died on you with a 'segmentation violation', you can help the
developers a lot if you have a debugger installed. A stack trace can be
obtained by using your debugger ('gdb' in this example), the ethereal binary,
and the resulting core file. Here's an example of how to use the gdb
command 'backtrace' to do so.

$ gdb ethereal core
(gdb) backtrace
..... prints the stack trace
(gdb) quit
$

Disclaimer
----------

There is no warranty, expressed or implied, associated with this product.
Use at your own risk.


Gerald Combs <gerald@zing.org>
Gilbert Ramirez <gram@xiexie.org>
Guy Harris <guy@alum.mit.edu>