Commit Graph

603 Commits

Author SHA1 Message Date
Guy Harris 98909d9045 Clean up argument names.
svn path=/trunk/; revision=8097
2003-07-29 20:49:32 +00:00
Guy Harris 2a679c88f8 Use GLib's macros for converting from host byte order to little-endian.
svn path=/trunk/; revision=8096
2003-07-29 20:41:19 +00:00
Guy Harris 27022f52e4 Don't free "wdh->dump.opaque" in the close routine - "wtap_dump_close()"
does it for you.

"wdh->dump.opaque" should never be null, so unconditionally call
"lanalyzer_dump_header()".

svn path=/trunk/; revision=8095
2003-07-29 20:30:00 +00:00
Guy Harris cbd5c2a47d Use "guint16" and "guint32" for items in data records, rather than
"unsigned short", "unsigned int" (or "int", as the items appear to be
unsigned), or "unsigned long".

Convert data to and from the appropriate byte order.

Don't free the private data structure in the dumper's close routine -
"wtap_dump_close()" does that for you.

svn path=/trunk/; revision=8094
2003-07-29 20:26:34 +00:00
Guy Harris 2240c0668d From Thierry Martin: support for reading files from Accellent 5Views LAN
agents.

svn path=/trunk/; revision=8093
2003-07-29 19:42:01 +00:00
Gerald Combs 9d91efb9e2 Back out the changes made earlier.
svn path=/trunk/; revision=8075
2003-07-23 20:32:37 +00:00
Gerald Combs de1990a0ab Make "--enable-usr-local" disabled by default, as suggested by Joerg Mayer.
svn path=/trunk/; revision=8073
2003-07-23 18:00:15 +00:00
Guy Harris e3f7c2bb89 %yynowrap forces "yywrap()" to be a macro that returns 1, so there's no
need to define "ascendwrap()" to return 1 - "ascendwrap()" is no longer
used.

svn path=/trunk/; revision=7980
2003-07-08 02:11:09 +00:00
Guy Harris 924136d7d7 A couple of captures have been seen with the first (low-order) byte of
the network type being 1 and the byte after it being 2; we assume, for
now, that the network type is 1 byte, and that if the byte after it is
0, the network type is an NDIS type - 1, and if it's 2, it's an NDIS type.

svn path=/trunk/; revision=7973
2003-07-07 21:08:49 +00:00
Guy Harris 98e7c94dc1 Use the "rx_frm_len" field from the trace packet data record header,
rathe than the record length minus the record header length, as the
number of available (captured) bytes in the packet.  Check to make sure
that value isn't bigger than the record length minus the header length.

Only subtract the 4-byte FCS length from the purported length of the
packet on the wire if that would leave the on-the-wire length >= the
number of captured bytes, so that we can better handle capture files
from programs that produce LANalyzer-format captures where the
on-the-wire length *doesn't* include the FCS.

svn path=/trunk/; revision=7948
2003-06-30 00:41:33 +00:00
Guy Harris 9fa514388c GCC 3.3 noticed that checking whether the length of the slice is > 65535
is pointless, as it's a 16-bit unsigned quantity.  Remove those checks -
but note in a comment that WTAP_MAX_PACKET_SIZE must be at least 65535
(as there might well be link-layer types with packets at least that
large).

svn path=/trunk/; revision=7934
2003-06-25 17:35:17 +00:00
Guy Harris 8178db4980 Define GLIB_LIBS and GTK_LIBS variables in config.nmake (based on
variables the user configures - the user isn't expected to change
GLIB_LIBS or GTK_LIBS, and there's a comment nothing that users
shouldn't have to do so), which contain the appropriate libraries for
building stuff that requires only GLib, and stuff that required GTK+ and
GLib, respectively, and use those macros in the Makefile.nmake files.

svn path=/trunk/; revision=7885
2003-06-14 20:45:29 +00:00
Guy Harris 71424053cd Define GLIB_CFLAGS and GTK_CFLAGS variables in config.nmake (based on
variables the user configures - the user isn't expected to change
GLIB_CFLAGS or GTK_CFLAGS, and there's a comment nothing that users
shouldn't have to do so), which contain the appropriate "/I" flags for
building stuff that requires only GLib, and stuff that required GTK+ and
GLib, respectively, and use those macros in the Makefile.nmake files.

svn path=/trunk/; revision=7884
2003-06-14 20:36:04 +00:00
Guy Harris 10e7b49b11 From Graeme Hewson: fix the declaration of "open_routines[]".
svn path=/trunk/; revision=7753
2003-05-27 10:42:22 +00:00
Guy Harris fdb0e20f13 Make "vms_check_file_type()" seek back to the beginning of the line that
matched if it succeeds, so that it gets re-read when we read the capture
file - it's a line containing a time stamp for a packet, so we need to
re-read it to get that time stamp.

svn path=/trunk/; revision=7752
2003-05-27 10:14:06 +00:00
Guy Harris e634bd0856 From Martin Warnes: fix to check the "XXXtrace" part of the per-packet
line, not the "RCV packet" part, so that we recognize files even if they
don't have an "RCV packet" line in the first 200 lines.

svn path=/trunk/; revision=7699
2003-05-20 20:17:03 +00:00
Guy Harris f921aee54d From Martin Warnes: support for VMS UCX$TRACE output in wiretap.
svn path=/trunk/; revision=7692
2003-05-19 20:58:18 +00:00
Guy Harris 11a979dd4c Fix a typo.
svn path=/trunk/; revision=7681
2003-05-16 00:34:33 +00:00
Guy Harris 86f3c38c4a From Can Erkin Acar: OpenBSD is now using tcpdump.org-assigned DLT_
value for DLT_PFLOG, and that goes along with a change to the link-layer
header for DLT_PFLOG - support both the old and new values and format.

svn path=/trunk/; revision=7676
2003-05-15 07:14:46 +00:00
Guy Harris fe42cc9dd8 From Mark C. Brown:
Following fixes for nettl (HP-UX):

	1) Fixed 11.X timestamp issue
	      there is no difference in 10.X/11.X timestamps, so no
	      need to shift 11.X timestamps
	2) Fixed NS_LS_DRIVER trace record handling
	      now works rather than throwing "...network type that
	      Ethereal doesn't support" error
	3) Fixed handling of traces with sliced packets (nettl -m xx)
	      now uses correct packet and capture lengths
	4) Additional ethernet card support
	      now handles btlan[1,3-6],gelan,igelan,intl100 driver
	      trace records

svn path=/trunk/; revision=7642
2003-05-05 01:01:36 +00:00
Jörg Mayer 1032b043e8 Newer build tools generate the following warning:
Makefile.am:99: `YFLAGS' is a user variable, you should not override it;
Makefile.am:99: use `AM_YFLAGS' instead.

Fix it in the proposed way.

svn path=/trunk/; revision=7582
2003-04-27 09:16:36 +00:00
Guy Harris 7e4d87a0d0 Add a new README.developer file for wiretap; it's currently just some
stuff I sent out in a mail message to somebody asking how to add support
for a new file format, but hopefully it'll get improved by various
contributors over time (hint hint).

svn path=/trunk/; revision=7397
2003-04-02 20:21:45 +00:00
Guy Harris 7ccb4234a0 The units, in non-whizzo-gigabit-pod captures, for hdr.timeunit = 2
aren't 1/1193000.0 second; the code used to use 1/1193180.0 second, but
at least one capture appears to have units of somewhere around
1/3579540.0 second.

svn path=/trunk/; revision=7388
2003-03-31 21:11:49 +00:00
Guy Harris 86518e40f5 Ian Schorr discovered that, for gigabit pod captures, if hdr.timeunit is
2 the time stamps are in units of 1/31250000 seconds rather than
nanoseconds - and, by generating Windows Sniffer captures with various
hdr.timeunit values, that for all the non-zero values he tested, the
time stamps for non-gigabit pod captures are in units of 1/1193000
second.

Instead of having a TpS array, just test for the exception value (0 for
non-gigabit pod captures, 2 for gigabit pod captures).

svn path=/trunk/; revision=7380
2003-03-28 21:59:12 +00:00
Guy Harris 2fecf91a17 AIX's BPF, and thus its tcpdump, appears to use 24 as the link-layer
type for loopback devices; map it to DLT_NULL when reading libpcap files
with a major version of 2 and a minor version of 2, and when capturing
from an "loN" device on AIX.

svn path=/trunk/; revision=7361
2003-03-25 06:04:54 +00:00
Guy Harris ad8856029b WTAP_ENCAP_ENC was, in fact, intended for use for DLT_ENC, so just
rename WTAP_ENCAP_ENC0 to WTAP_ENCAP_ENC.

un-#if 0 out the code to handle the value 109 for DLT_ENC, as I've just
checked in support for DLT_ENC in tcpdump.org libpcap and tcpdump, which
maps DLT_ENC to 109 in the file header.

Give packet-enc.c an RCS ID.

svn path=/trunk/; revision=7323
2003-03-08 09:11:53 +00:00
Gerald Combs 0b94d9a228 From Markus Friedl:
Add support for the OpenBSD enc(4) encapsulating interface.  Add
  support for Ethernet over IP (RFC 3378).

Fold Markus' .h files into their respective .c files, add a define to
ipproto.h and use it.

svn path=/trunk/; revision=7310
2003-03-07 16:52:46 +00:00
Guy Harris 3cc1053182 A captured length bigger than the actual length makes no sense; clip the
captured length so it's <= the actual length.

svn path=/trunk/; revision=7268
2003-03-04 02:38:02 +00:00
Guy Harris cdfc37b6b6 Handle the direction bit in SDLC and PPP Sniffer files.
svn path=/trunk/; revision=7267
2003-03-04 02:04:00 +00:00
Guy Harris 15eea3fbb6 Handle packet direction information for SDLC Sniffer captures.
Add a bunch of capture types discovered by stuffing them into Windows
Sniffer captures and seeing what a Sniffer thought they were.  Add
support for writing at least some of them.

svn path=/trunk/; revision=7265
2003-03-03 23:29:59 +00:00
Guy Harris a37b287a50 A "hdr.xxb[20]" value of 2 in a version 2 capture appears to mean that
it's a gigabit Ethernet capture, possibly, with special hardware, and
that time stamps have 1000 times the resolution that they have in other
captures (perhaps due to the special hardware having a higher-resolution
clock?).

svn path=/trunk/; revision=7240
2003-03-01 09:42:44 +00:00
Guy Harris 4632490ab1 From Pavel Roskin:
Get rid of acconfig.h, as it's an archaism; put descriptions
	into AC_DEFINE instead.  That squelches some warnings from
	later versions of autoconf.

	Fix an unquoted call to AC_MSG_ERROR.

	Move the stuff to define HAVE_SOME_SNMP into configure.in.

svn path=/trunk/; revision=7203
2003-02-26 20:08:33 +00:00
Guy Harris 7aceda45b5 Sigh. It appears that atmsnoop might, at least for some packets, put 4
bytes of padding into the packet (possibly more, as if it's putting
extra stuff in the padding as Shomiti/Finisar Surveyor does, it might be
up to 7).  Fortunately, Surveyor puts lots of stuff into the padding, so
we'll crank up the "snoop vs. Surveyor" check to look for 4 or more
bytes.

svn path=/trunk/; revision=7167
2003-02-18 19:59:00 +00:00
Guy Harris f88816e60f Add WTAP_ENCAP_FRELAY_WITH_PHDR for use with Frame Relay capture files
that have direction information.

Support writing WTAP_ENCAP_FRELAY_WITH_PHDR and WTAP_ENCAP_PPP_WITH_PHDR
captures out in libpcap format - we throw away the direction
information, but so it goes.

When reading/writing Windows Sniffer format, read and write the
direction flag.

svn path=/trunk/; revision=7052
2003-01-31 01:02:14 +00:00
Guy Harris 3f0e5dad19 Add support for writing Frame Relay files in NetXRay format 2.x.
svn path=/trunk/; revision=7048
2003-01-30 22:38:47 +00:00
Jörg Mayer 758685ca0d AC_ARG_ENABLE takes 4 argument: The 3rd specifies what to do in case a
configure option is given on the command line. The value of the arguement
is passwd in the enableval variable. The 4th argument tells what to do in
case no command line argument was given.
This causes --disable-gtk2 (which is the default) to behave differently
from the case when no option is given.
I do not really understand where the difference in the behaviour of the
generated codes comes from, but I definitely see a difference.

Fixed all occurrences where the 3rd arguement was empty.

svn path=/trunk/; revision=7044
2003-01-30 10:20:47 +00:00
Guy Harris 8e6518ea60 In the BSDs, ARCNET packets don't have an offset field between the
addresses and the protocol type, as supplied by BPF; on Linux, they *do*
have an offset field, as supplied by PF_PACKET sockets.  Add a new
WTAP_ENCAP_ARCNET_LINUX, with packets that include the offset field, and
don't dissect an offset in WTAP_ENCAP_ARCNET packets.

Map a libpcap link-layer type of 129 to WTAP_ENCAP_ARCNET_LINUX; that
value was recently assigned to Linux-style ARCNET.

Add some more ARCNET protocol IDs.

For most protocol IDs, dissect an ATA 878.2 fragmentation header; don't
do it for RFC 1051 IP and ARP, and Diagnose packets.  Set the length of
the ARCNET protocol tree item appropriately.

Dissect both the RFC 1051 and RFC 1201 styles of IP and ARP over ARCNET,
and dissect the RFC 1201 style of RARP as well.

svn path=/trunk/; revision=6981
2003-01-23 04:04:01 +00:00
Jörg Mayer 8adf7a08fd Check for pcap in before /usr/local and stop on first hit
svn path=/trunk/; revision=6962
2003-01-21 20:38:32 +00:00
Guy Harris eeb05c3b1c From Marc Milgram: e-mail address update.
svn path=/trunk/; revision=6936
2003-01-17 23:54:19 +00:00
Guy Harris 2955489887 We don't know what, in captures with a major version number of 3,
indicates the subtype of an "Internetwork analyzer" capture; we've seen
only one such capture, and it was a frame relay capture, so we just wire
it to frame relay for now.

svn path=/trunk/; revision=6923
2003-01-14 19:52:47 +00:00
Guy Harris 61e9a95dba If it doesn't begin with FF 00 it can't be LANE LE Control; if it's
LANE, claimed to be LE Control, but doesn't begin with FF 00, call it
802.3.

svn path=/trunk/; revision=6901
2003-01-11 05:54:52 +00:00
Guy Harris fabf144b83 Rename the "version" argument to "process_header_records()" "maj_vers",
as it's the major version number.

Try using the first word of "rsvd" to determine whether a capture is an
ISDN capture or not in version 1 captures.

Version 1 captures look as if they might also have a REC_HEADER2 record
- it's longer than the ones in version 4 and 5 captures, but it still
appears to have a network subtype in the 5th byte.

Get rid of the heuristic that checks for WTAP_ENCAP_ISDN by looking at
the packet data; if we fail to recognize an ISDN capture, we should look
for stuff in the headers to determine whether the capture is one or not.

svn path=/trunk/; revision=6894
2003-01-10 09:04:44 +00:00
Guy Harris fbec15f6f2 It looks as if a value of 0xfa in the second byte of a REC_HEADER2
record might indicate an ISDN capture; treat that as an indication that
a capture is an ISDN capture.

svn path=/trunk/; revision=6893
2003-01-10 05:53:00 +00:00
Guy Harris 50e696df81 The Sniffer file formats include a file to identify raw cells; export
that flag in the ATM pseudo-header, and use it to determine whether a
frame is a raw cell or a reassembled frame, rather than using the AAL,
as you can have raw AAL5 cells in a capture.

svn path=/trunk/; revision=6889
2003-01-10 04:04:42 +00:00
Guy Harris 7be2e513c5 The checksum in DOS ATM Sniffer files appears to be stored in big-endian
format.

svn path=/trunk/; revision=6885
2003-01-09 04:36:26 +00:00
Guy Harris a0c5cac89d It appears that a channel number of 0 means DTE->DCE, and a channel
number of 1 means DCE->DTE, in DOS Sniffer ATM captures.

svn path=/trunk/; revision=6881
2003-01-09 01:55:13 +00:00
Guy Harris 2b5eab973e It appears that ATM sniffer files with 4.x versions 4.95 and greater
have a bogus record length for type 4 records, but earlier 4.x versions,
and 5.x versions, don't.

svn path=/trunk/; revision=6880
2003-01-09 01:38:30 +00:00
Guy Harris 94800ef0fb From Chris Waters: support Tazmen Sniffer Protocol and DLT_TZSP captures
from network-based libpcaps that use that protocol.

svn path=/trunk/; revision=6875
2003-01-08 05:03:54 +00:00
Guy Harris 4ef5d24633 It appears that the first two bytes of "xxz" are, in fact, the actual
length of the packet, and the second two bytes are the captured length
of the packet.  The old "length" value appears to be the captured length
of the packet as well; perhaps it's to be interpreted as the number of
bytes of data following the packet header (just in case there's padding,
for example).

Treat "ATM/", as an encapsulation string, as RFC 1483 ATM.  (It may
actually be raw ATM, but the only capture I've seen had, in the parts I
saw, only RFC 1483 traffic LLC/SNAP traffic.)

There are 8 bytes in front of the LLC/SNAP header in ATM captures; skip
them, for now.  (Perhaps they're a pseudo-header, giving VPI/VCI
information and stuff such as that?  Or perhaps that's in the record
header?)

svn path=/trunk/; revision=6871
2003-01-07 08:41:23 +00:00
Guy Harris f8a7dc5ad3 PRI captures appear to be the ISDN captures with padding.
The Windows Sniffer does *not* appear to know the difference between
802.3 and 802.3 multicast LANE traffic.

svn path=/trunk/; revision=6870
2003-01-07 07:16:24 +00:00