wireshark.org protocol dissector with Osmocom additions
Go to file
Guy Harris 075ba742f7 If a column doesn't automatically resize, we have to set its size to the
appropriate value when we thaw the packet list, so that its size isn't
set to the size of the column title.

svn path=/trunk/; revision=396
1999-07-28 03:38:42 +00:00
doc Removed automatically-generated files from CVS. Some files are generated, 1999-07-27 04:43:22 +00:00
image * Added column formatting functionality. 1998-11-17 04:29:13 +00:00
wiretap Added a patch from Olivier Abad to handle X.25 iptrace captures. 1999-07-28 01:35:34 +00:00
AUTHORS Added a patch from Olivier Abad to handle X.25 iptrace captures. 1999-07-28 01:35:34 +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 Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
INSTALL.configure * Installation documentation updates 1998-12-29 03:12:07 +00:00
Makefile.am Don't depend on Perl being in "/usr/bin/perl"; find it, and generate a 1999-07-20 08:28:15 +00:00
Makefile.nmake Finally got the win32 ethereal to link properly with MSVC. 1999-07-21 17:40:42 +00:00
NEWS Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
README Add back in the note about GNU "make", "flex", and "bison"/Berkeley 1999-07-09 04:28:45 +00:00
README.tru64 Miscellaneous updates of README and README.tru64 created. 1999-04-30 21:16:31 +00:00
README.win32 Finally got the win32 ethereal to link properly with MSVC. 1999-07-21 17:40:42 +00:00
VERSION Added Ashok's Match Selected functionality, and changes to move ethereal 1999-06-24 16:25:59 +00:00
acconfig.h Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
acinclude.m4 Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
alignment.h Get rid of the "P*" macros, as we're not using them (Ethereal only reads 1999-05-10 20:17:36 +00:00
autogen.sh Fixed some improper word choices in the echoed error messages. 1999-07-27 05:19:10 +00:00
capture.c Added a bug fix from Erik Daughtrey that sets cf_filter to NULL after being 1999-07-28 02:40:16 +00:00
capture.h If doing a catpure with "-S", as soon as we've created the capture file 1999-07-20 06:16:09 +00:00
column.c Have: 1999-07-28 03:29:02 +00:00
column.h Have: 1999-07-28 03:29:02 +00:00
config.guess * Scripts needed for configure.in 1998-09-20 00:25:16 +00:00
config.h.win32 Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
configure.in Don't depend on Perl being in "/usr/bin/perl"; find it, and generate a 1999-07-20 08:02:24 +00:00
dfilter-grammar.y Fixed the byte_range implementation, and removed some of the C-style 1999-07-08 03:05:55 +00:00
dfilter.c When you hit <Return> in the text entry box for the display filter, 1999-07-11 08:40:52 +00:00
dfilter.h Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
display.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
display.h Added "Capture" and "Display" menus; "Capture" has a "Start" item, which 1999-06-19 01:14:51 +00:00
ethereal.c Have: 1999-07-28 03:29:02 +00:00
ethereal.h Actually, I think File/Reload is still used if you do a capture with 1999-07-27 02:04:38 +00:00
ethereal.spec Added Ashok's Match Selected functionality, and changes to move ethereal 1999-06-24 16:25:59 +00:00
ethertype.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
etypes.h Added Aaron Hillegass' summary dialogue. We're ignoring the problem with 1999-06-22 22:02:39 +00:00
file.c If a column doesn't automatically resize, we have to set its size to the 1999-07-28 03:38:42 +00:00
file.h Turn "protocol_tree" and "fd" from global variables into members of a 1999-07-24 03:22:50 +00:00
filter.c Since ethereal is now dependent on GTK+-1.2.x (because of proto_tree and 1999-07-13 03:08:06 +00:00
filter.h * Pod page update 1998-10-13 02:10:57 +00:00
follow.c Added just enough fields to TCP to support "Follow TCP Stream". It works now. 1999-07-17 04:19:15 +00:00
follow.h From Jason Lango <jal@netapp.com>, a fix to a long-standing problem 1999-07-07 01:41:15 +00:00
gtkpacket.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
gtkpacket.h Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
manuf *** empty log message *** 1998-09-27 07:13:29 +00:00
menu.c Get rid of the "Tools/Capture" menu item, in favor of "Capture/Start". 1999-07-28 03:33:34 +00:00
menu.h Since ethereal is now dependent on GTK+-1.2.x (because of proto_tree and 1999-07-13 03:08:06 +00:00
packet-aarp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-arp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-atalk.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-bootp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-cdp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-data.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-dns.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-dns.h Correctly handle the case of the root showing up as a name in a DNS 1999-05-27 05:35:08 +00:00
packet-eth.c Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
packet-fddi.c Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
packet-ftp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-giop.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-gre.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-http.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-icmpv6.c Added a fix from Shoichi Sakane that corrects some missing "break"s. 1999-07-28 02:32:25 +00:00
packet-ip.c Added just enough fields to TCP to support "Follow TCP Stream". It works now. 1999-07-17 04:19:15 +00:00
packet-ip.h Added RSVP protocol dissector. 1999-06-11 16:45:02 +00:00
packet-ipsec.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ipv6.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-ipv6.h Got rid of ipv6 compiler warnings when compiling on RedHat 6.0. 1999-07-23 15:08:25 +00:00
packet-ipx.c Converted some IPX fields to the new proto_tree functions. 1999-07-20 02:56:44 +00:00
packet-ipx.h I've started to figure out the difference between NetBIOS over IPX for 1998-10-14 05:18:32 +00:00
packet-isakmp.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-llc.c Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
packet-lpd.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-nbipx.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-nbns.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ncp.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-ncp.h Re-wrote the NCP module in accordance with how NCP is really organized. 1999-03-20 04:38:57 +00:00
packet-nntp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-null.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-osi.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ospf.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ospf.h Removed all references to gtk objects from packet*.[ch] files. They now 1999-03-23 03:14:46 +00:00
packet-pop.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ppp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-pppoe.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-pptp.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-radius.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-raw.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-rip.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-rip.h The address family isn't part of the RIP header, it's part of the RIP 1998-11-20 09:24:42 +00:00
packet-rsvp.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-rsvp.h Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
packet-rtsp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-sdp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-smb.c Got rid of ipv6 compiler warnings when compiling on RedHat 6.0. 1999-07-23 15:08:25 +00:00
packet-snmp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-tcp.c Added just enough fields to TCP to support "Follow TCP Stream". It works now. 1999-07-17 04:19:15 +00:00
packet-telnet.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-tftp.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-tr.c Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
packet-trmac.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-udp.c Converted UDP fields to new proto_tree functions. 1999-07-22 16:41:22 +00:00
packet-vines.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-vines.h * Added Joerg Mayer's Vines patch 1998-12-29 04:05:38 +00:00
packet.c Added "Packet Length in bytes" as an optional column. 1999-07-22 16:03:52 +00:00
packet.h Have: 1999-07-28 03:29:02 +00:00
prefs.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
prefs.h Add a "File/Print" menu item, which prints *all* the packets in the 1999-07-23 08:29:24 +00:00
print.c Printing multiple frames in PostScript is a bit tricky, I think - I 1999-07-23 21:09:25 +00:00
print.h Printing multiple frames in PostScript is a bit tricky, I think - I 1999-07-23 21:09:25 +00:00
print.ps * Added Joerg Mayer's Vines patch 1998-12-29 04:05:38 +00:00
proto.c Converted UDP fields to new proto_tree functions. 1999-07-22 16:41:22 +00:00
proto.h Modified the proto_register_field_array usage again. Thanks to Guy's 1999-07-15 15:33:52 +00:00
ps.h Added ID tags to the beginning of each source file. 1998-09-16 03:22:19 +00:00
rdps.c Finally got the win32 ethereal to link properly with MSVC. 1999-07-21 17:40:42 +00:00
resolv.c Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
resolv.h Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
smb.h Added support for compiling on win32 with Visual C and 'nmake'. It compiles, 1999-07-13 02:53:26 +00:00
snprintf-imp.h Squelch a number of "-Wall" errors by: 1998-10-13 07:03:37 +00:00
snprintf.c Add support for "%i" (it's the same as "%d", according to the ANSI C 1999-02-15 06:36:19 +00:00
snprintf.h Squelch a number of "-Wall" errors by: 1998-10-13 07:03:37 +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
summary.c Since ethereal is now dependent on GTK+-1.2.x (because of proto_tree and 1999-07-13 03:08:06 +00:00
summary.h Since ethereal is now dependent on GTK+-1.2.x (because of proto_tree and 1999-07-13 03:08:06 +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
util.c Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
util.h Improve the alert boxes put up for file open/read/write errors. (Some 1999-06-12 09:10:20 +00:00

README

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

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

The official home of Ethereal is

    http://ethereal.zing.org

The latest distribution can be found in the subdirectory

    http://ethereal.zing.org/distribution

Interesting and exotic packet traces can be found at

    http://ethereal.zing.org/~gram/sample.html


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

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

  - Linux (2.0.x, 2.1.x, 2.2.x)
  - Solaris (2.5.1, 2.6)
  - FreeBSD (2.2.5, 2.2.6)
  - Sequent PTX v4.4.5  (Nick Williams <njw@sequent.com>)
  - Tru64 UNIX (formerly Digital UNIX) (3.2, 4.0)

It should run on other 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".

In addition, wiretap (see below) requires "flex" - it cannot be built
with vanilla "lex" - and either "bison" or the Berkeley "yacc"; whilst
the "yacc" that comes with Solaris 7 has a "-p" flag to replace "yy" in
various variable names with a specified prefix, to allow multiple
yacc-built parsers in the same program, it doesn't replace "yy" in the
"y.tab.h" file, so the lexical analyzer has no clue that "yylval" has
been renamed to "wtap_lval".  (What *were* they thinking?)

You must therefore install 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 Solaris 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, Sniffer (uncompresed), NetXray, Sniffer Pro, snoop,
Shomiti, LANalyzer, Network Monitor, and iptrace 2.0 (AIX)


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.


SNMP
----
Ethereal can do some basic decoding of SNMP packets, but it relies on an
external SNMP library to do this. You can use either the UCD or the CMU
SNMP libraries. 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. No SNMP support will be compiled into
ethereal with this option.


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@verdict.uthscsa.edu>