wireshark.org protocol dissector with Osmocom additions
Go to file
Richard Sharpe 9b8cd07087 More decoding of fields. Now handle enumerated fields, but still have
problems with single bit fields when declared as an enumerated field.

It shows an unknown ... Damn ... Can't see what the problem is.

svn path=/trunk/; revision=353
1999-07-10 14:01:53 +00:00
doc Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +00:00
image * Added column formatting functionality. 1998-11-17 04:29:13 +00:00
wiretap Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +00:00
AUTHORS Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +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 Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +00:00
Makefile.in Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +00:00
NEWS Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +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
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 Jun-ichiro's IPv6 patch is merged in with ethereal and now uses the new 1999-03-28 18:32:03 +00:00
aclocal.m4 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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
capture.c Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
capture.h Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
column.c Found some erroneous usages of gtk_signal_connect_object. I always wondered 1999-06-21 19:04:35 +00:00
column.h Use "gtk_toggle_button_set_state()" rather than 1999-06-19 03:14:32 +00:00
config.guess * Scripts needed for configure.in 1998-09-20 00:25:16 +00:00
config.h.in Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
config.sub * Scripts needed for configure.in 1998-09-20 00:25:16 +00:00
configure Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
configure.in Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +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 Put the XOR logic in place, where previously I had left an inclusive-OR 1999-07-08 03:35:30 +00:00
dfilter.h "const"ifty some function arguments and structure members, and "#if 0" 1999-07-07 23:54:13 +00:00
display.c Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +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 Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
ethereal.h Added Ashok's Match Selected functionality, and changes to move ethereal 1999-06-24 16:25:59 +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 Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
file.h Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
filter.c * GTK+ 1.1/1.2 compatibility changes (use gtk_scrolled_window_add_with_viewport 1998-12-27 20:44:53 +00:00
filter.h * Pod page update 1998-10-13 02:10:57 +00:00
follow.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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
install-sh Initial revision 1998-09-16 02:39:15 +00:00
manuf *** empty log message *** 1998-09-27 07:13:29 +00:00
menu.c Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
menu.h A patch spread across many files to let Ethereal compile under GTK+-1.1.x. 1998-12-17 05:42:33 +00:00
missing Initial revision 1998-09-16 02:39:15 +00:00
mkinstalldirs Initial revision 1998-09-16 02:39:15 +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 Documented the proto_register_field_array() function, and converted 1999-07-08 03:18:20 +00:00
packet-fddi.c Documented the proto_register_field_array() function, and converted 1999-07-08 03:18:20 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-http.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-icmpv6.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ip.c Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-ipv6.h Capturing packets from ethereal now saves the capture in an "anonymous" buffer. That is, it's 1999-04-06 16:24:50 +00:00
packet-ipx.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 "pntohl()" doesn't actually return a "long" (or an "unsigned long"), it 1999-07-08 06:03:21 +00:00
packet-llc.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-radius.c Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet-rsvp.h Added RSVP protocol dissector. 1999-06-11 16:45:02 +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 More decoding of fields. Now handle enumerated fields, but still have 1999-07-10 14:01:53 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Added Johan's RADIUS dissector, finally. I modified it to fit in with the 1999-07-08 04:23:28 +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 Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
packet.h More decoding of fields. Now handle enumerated fields, but still have 1999-07-10 14:01:53 +00:00
prefs.c Found some erroneous usages of gtk_signal_connect_object. I always wondered 1999-06-21 19:04:35 +00:00
prefs.h Don't pop up the "Can't open preferences file" dialog until *after* 1999-06-12 07:04:35 +00:00
print.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
print.h * Added preference file saves and reads. 1998-10-28 21:38:11 +00:00
print.ps * Added Joerg Mayer's Vines patch 1998-12-29 04:05:38 +00:00
proto.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
proto.h "const"ifty some function arguments and structure members, and "#if 0" 1999-07-07 23:54:13 +00:00
ps.h Added ID tags to the beginning of each source file. 1998-09-16 03:22:19 +00:00
rdps.c Added ID tags to the beginning of each source file. 1998-09-16 03:22:19 +00:00
resolv.c Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +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 Add some SMB codes and error codes from the 1999-05-11 07:22:31 +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
stamp-h.in Initial revision 1998-09-16 02:39:15 +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 Added the ability to create a read-only ethereal, i.e., one that 1999-07-09 04:18:36 +00:00
summary.h Created a new protocol tree implementation and a new display filter 1999-07-07 22:52:57 +00:00
timestamp.h Update the column widths if we change the time stamp format from the 1999-06-19 01:47:43 +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
ylwrap Fixed 0.6.0 packaging problems. 1999-05-01 05:19:25 +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>