Guy Harris [Tue, 14 Mar 2000 08:26:19 +0000 (08:26 -0000)]
On Windows, when getting the user's home directory, don't look at the
HOME environment variable; instead, look at HOMEDRIVE and HOMEPATH.
svn path=/trunk/; revision=1718
Gilbert Ramirez [Tue, 14 Mar 2000 07:12:23 +0000 (07:12 -0000)]
Convert two instances of proto_tree_add_uint_format() to
proto_tree_add_protocol_format(). I had converted them incorrectly
when I changed them from their original proto_tree_add_item_format().
svn path=/trunk/; revision=1717
Guy Harris [Tue, 14 Mar 2000 06:03:26 +0000 (06:03 -0000)]
Fix some errors discovered by making GCC do format string/argument
cross-checking, and by replacing "proto_tree_add_item_format()" by
multiple routines to add items of various types.
Make the arguments of "proto_tree_add_bytes_format()" and
"proto_tree_add_string_format()" that specify the bytes or the string be
"const" pointers, so that one can pass a "const" pointer without
complaints from the compiler.
Squelch a (bogus, but the compiler isn't in a position to know that)
complaint about an uninitialized variable.
svn path=/trunk/; revision=1716
Gilbert Ramirez [Mon, 13 Mar 2000 16:36:31 +0000 (16:36 -0000)]
Remove the proto_tree_add_text() and proto_tree_add_item_hidden() calls
for mpls.label and replace them with proto_tree_add_uint_format() and
proto_tree_add_item(). In the mpls proto_registration, associated
the val_string with mpls.label.
svn path=/trunk/; revision=1715
Ashok Narayanan [Mon, 13 Mar 2000 05:19:50 +0000 (05:19 -0000)]
New workaround for not using (ulong *) to dereference memory in RSVP.
Here's the email I wrote to Guy with info on this:
Subject: Re: [ethereal-dev] Checked in support for MPLS
From: Ashok Narayanan <ashokn@cisco.com>
To: gharris@flashcom.net
Cc: ethereal-dev@zing.org
Date: Mon, 13 Mar 2000 00:10:38 -0500
X-Mailer: Mew version 1.94.1 on XEmacs 21.1 (Biscayne)
Guy,
> The code in that was fetching some fields by casting pointers into the
> packet to "ulong *" and dereferencing the resulting pointer - this is
> bad for three reasons:
>
> "ulong" is not a system-declared data type on all platforms
> (it's not on FreeBSD 3.4, at least, for example);
>
> casting an arbitrary pointer into a frame to point to something
> longer than 1 byte, and dereferencing it, is dangerous, as
> there's no guarantee that said pointer is properly aligned on
> machines that require alignment (such as SPARC, Alpha, and MIPS,
> and possibly at least some other RISC processors);
I agree with both these points.
> the data in an RSVP packet is presumably big-endian in any case,
> so you should use "pntohl()" to access it, rather than just
> blithely dereferencing it;
This is the exact problem which a direct cast attempts to work
around. A tree of type FT_IPv4 apparently has a network-to-host
conversion built into the proto_tree_add_item call. When you added the
pntohl, you inserted a second network-to-host conversion - the result
is that all the IP addresses are reversed. Here's an excerpt from
tethereal....
1) ~/sniffer/test/ethereal> ./tethereal -n -r ../../sniffs/mpls_te.cap -R 'rsvp.path'
3 8.024159 17.3.3.3 -> 16.2.2.2 RSVP PATH Message
15 31.589751 17.3.3.3 -> 16.2.2.2 RSVP PATH Message
22 47.072205 17.3.3.3 -> 16.2.2.2 RSVP PATH Message
<snip>
2) ~/sniffer/test/ethereal> ./tethereal -n -r ../../sniffs/mpls_te.cap -R 'rsvp.path' -V
Frame 3 (306 on wire, 306 captured)
<snip>
Ethernet II
<snip>
Internet Protocol
<snip>
Source: 17.3.3.3 (17.3.3.3)
Destination: 16.2.2.2 (16.2.2.2) <======== Destination is 16.2.2.2
Options: (4 bytes)
Unknown (0x94) (4 bytes)
Resource ReserVation Protocol (RSVP)
RSVP Header
RSVP Version: 1
Flags: 00
Message Type: PATH Message (1)
Message Checksum
Sending TTL: 254
Message length: 264
SESSION: 1
Length: 16
Class number: 1 - SESSION object
C-type: 7 - IPv4 LSP
Destination address: 2.2.2.16 (2.2.2.16) <======== Destination is reversed
Tunnel ID: 1
Extended tunnel ID:
285410051
I'm looking around in the filtering code (which I don't really
understand), to see if I can find a quick fix to the problem. If you
or Gilbert knows what's happening, you may want to fix it. But as it
stands now, using pntohl() in a proto_tree_add_item() call is broken.
A slightly better workaround is to do something like this:
memcpy(&ip_addr, pd[offset2], 4);
proto_tree_add_item(....., ip_addr);
but this is still ugly. I'll implement this workaround and check in
the code (since as it stands now, RSVP decoding is broken). However,
the underlying issue needs to be resolved.
-Ashok
svn path=/trunk/; revision=1714
Gilbert Ramirez [Sun, 12 Mar 2000 04:48:32 +0000 (04:48 -0000)]
Break proto_tree_add_item_format() into multiple functions:
proto_tree_add_protocol_format()
proto_tree_add_uint_format()
proto_tree_add_ipxnet_format()
proto_tree_add_ipv4_format()
proto_tree_add_ipv6_format()
proto_tree_add_bytes_format()
proto_tree_add_string_format()
proto_tree_add_ether_format()
proto_tree_add_time_format()
proto_tree_add_double_format()
proto_tree_add_boolean_format()
If using GCC 2.x, we can check the print-format against the variable args
passed in. Regardless of compiler, we can now check at run-time that the
field type passed into the function corresponds to what that function
expects (FT_UINT, FT_BOOLEAN, etc.)
Note that proto_tree_add_protocol_format() does not require a value field,
since the value of a protocol is always NULL. It's more intuitive w/o the
vestigial argument.
Fixed a proto_tree_add_item_format-related bug in packet-isis-hello.c
Fixed a variable usage bug in packet-v120.c. (ett_* was used instead of hf_*)
Checked in Guy's fix for the function declearation for proto_tree_add_text()
and proto_tree_add_notext().
svn path=/trunk/; revision=1713
Guy Harris [Sun, 12 Mar 2000 04:26:35 +0000 (04:26 -0000)]
In the TCP stream following code, we don't use the time stamp field in
the stuff we write to the temporary file, so don't bother writing it.
Keep track of the two sides of the TCP stream by keeping track of the
source address *and* port, so that we correctly handle connections
between two ports on the same machine.
svn path=/trunk/; revision=1712
Guy Harris [Sun, 12 Mar 2000 03:13:58 +0000 (03:13 -0000)]
Making the "frame_data" structure for a frame the data associated with
the row for that frame, and using that to get the frame for the selected
row in "select_packet()", revives the crash caused by the GtkCList
selecting the first row added to the list as it's added, i.e. before we
get a chance to set the data for that row, in this case.
Introduce a workaround for this instance of that crash.
svn path=/trunk/; revision=1711
Guy Harris [Fri, 10 Mar 2000 08:57:05 +0000 (08:57 -0000)]
Fix some typos.
Get rid of the paragraph about C++-style comments at the beginning of
the document, as it also appears in section 1.1.1 "Comments".
Add a section on how to extract data from packets, which explains the
"pd" and "offset" arguments to a dissector, and notes that you should
not just blithely cast pointers into the packet data to 2-byte or 4-byte
integral types and dereference them, as the pointer may not be aligned,
and the field may not have the same byte order as the processor on which
Ethereal is running (in fact, it's probably *guaranteed* not to on at
least one machine, as Ethereal runs on both big-endian and little-endian
platforms...).
svn path=/trunk/; revision=1710
Guy Harris [Fri, 10 Mar 2000 08:41:02 +0000 (08:41 -0000)]
"ulong" is not a system-declared data type on all platforms;
casting an arbitrary pointer into a frame to point to something
longer than 1 byte, and dereferencing it, is dangerous, as
there's no guarantee that said pointer is properly aligned on
machines that require alignment;
the data in an RSVP packet is presumably big-endian in any case,
so you should use "pntohl()" to access it, rather than just
blithely dereferencing it;
so use "pntohl()" to extract fields from an RSVP packet rather than
casting pointers to "ulong *" and dereferencing them.
svn path=/trunk/; revision=1709
Olivier Abad [Thu, 9 Mar 2000 19:32:31 +0000 (19:32 -0000)]
- Jeff Foster's documentation for conversations and coding style
- Documentation for plugins.
svn path=/trunk/; revision=1708
Ashok Narayanan [Thu, 9 Mar 2000 18:31:51 +0000 (18:31 -0000)]
Support for MultiProtocol Label Switching (MPLS). The following support
is being added
- MPLS Traffic Engineering extensions for RSVP
- MPLS-encapsulated IP packets on Ethernet
- OSPF Extensions for MPLS (including generic opaque LSA
support for OSPF)
THe following features will be committed at a later date (if I get around
to writing them :-)
- Label Distribution Protocol (LDP)
- IS-IS Extensions for MPLS
svn path=/trunk/; revision=1707
Uwe Girlich [Thu, 9 Mar 2000 12:13:20 +0000 (12:13 -0000)]
New dissector functions for mount DUMP and EXPORT replies.
svn path=/trunk/; revision=1706
Uwe Girlich [Thu, 9 Mar 2000 12:09:53 +0000 (12:09 -0000)]
New generic function dissect_rpc_list() for variable length RPC lists.
svn path=/trunk/; revision=1705
Uwe Girlich [Thu, 9 Mar 2000 12:05:32 +0000 (12:05 -0000)]
Prototype for new dissect_rpc_list() function.
svn path=/trunk/; revision=1704
Guy Harris [Wed, 8 Mar 2000 06:48:01 +0000 (06:48 -0000)]
We already set the foreground and background color for every frame,
which means we're already doing a "do something to the last row in the
packet list" operation on every frame we add to the list, so adding a
call to "gtk_clist_set_row_data()" won't make matters worse.
In addition, we already set one column in a row on a "change time
format" operation, so finding the row for a frame by calling
"gtk_clist_find_row_from_data()" doesn't turn a constant-time operation
into a linear-time operation, it just cranks the proportionality
constant up - it was quadratic before, alas, and it's still quadratic.
Adding calls to "gtk_clist_find_row_from_data()" to the "Find Frame" and
"Go To Frame" code does add an extra linear operation there, but those
operations shouldn't be common - and "Go To Frame", going to the last
frame on an ~100,000-frame big capture file, was quick, at least on my
450 MHz Pentium II machine, so maybe it won't be too bad.
And "select_packet()" either has to search the frame table for the frame
with the specified row number, or has to call "gtk_clist_get_row_data()"
to do that - the first is linear in the position of the frame in the
frame table, and the latter is linear in its position in the CList, and
the latter is less than or equal to the former, so the only thing making
it worse would be a change in the proportionality constant.
So it probably won't hurt performance by much.
Furthermore, if we add the ability to sort the display on an arbitrary
column, or to delete frames from the display - both of which are in the
wish list - storing the row number of the frame in the "frame_data"
structure won't necessarily work, as the row number can change out from
under us.
Therefore, reinstate the old way of doing things, where we associate
with each row a pointer to the "frame_data" structure for the row, using
"gtk_clist_set_row_data()".
svn path=/trunk/; revision=1703
Guy Harris [Tue, 7 Mar 2000 23:50:32 +0000 (23:50 -0000)]
Note that the "-T" flag doesn't cause "editcap" to translate link-layer
headers, it just causes it to force the encapsulation type of the output
file to the specified type.
svn path=/trunk/; revision=1702
Guy Harris [Tue, 7 Mar 2000 06:32:37 +0000 (06:32 -0000)]
Fix some "proto_tree_add_text()" calls.
svn path=/trunk/; revision=1701
Guy Harris [Tue, 7 Mar 2000 06:28:47 +0000 (06:28 -0000)]
Make "name_length" and "value_length" universally "int"s - the values
they get from the packets are 16-bit unsigned quantities, which fit
comfortable within an "int" on all platforms we support. That
eliminates the some additional format/argument mismatches.
svn path=/trunk/; revision=1700
Guy Harris [Tue, 7 Mar 2000 05:57:13 +0000 (05:57 -0000)]
Fix some "proto_tree_add_text()" calls.
Use "proto_tree_add_notext()" and "proto_tree_set_text()" for some
resource records.
svn path=/trunk/; revision=1699
Guy Harris [Tue, 7 Mar 2000 05:54:52 +0000 (05:54 -0000)]
Declare "proto_item_set_text()" in such a fashion as to make GCC 2.x and
later check the format string against the arguments.
svn path=/trunk/; revision=1698
Guy Harris [Tue, 7 Mar 2000 05:30:37 +0000 (05:30 -0000)]
Fix some "proto_tree_add_text()" calls.
Reorganize "icqv5_cmd_send_text_code()" a bit so that it only puts an
item into the tree if it's present in the packet.
svn path=/trunk/; revision=1697
Guy Harris [Tue, 7 Mar 2000 05:28:39 +0000 (05:28 -0000)]
Fix some "proto_tree_add_text()" calls.
svn path=/trunk/; revision=1696
Guy Harris [Mon, 6 Mar 2000 20:04:53 +0000 (20:04 -0000)]
Fix some "proto_tree_add_text()" calls.
svn path=/trunk/; revision=1695
Guy Harris [Mon, 6 Mar 2000 19:53:44 +0000 (19:53 -0000)]
Correctly dissect integer values, using the correct offset.
svn path=/trunk/; revision=1694
Guy Harris [Mon, 6 Mar 2000 19:41:06 +0000 (19:41 -0000)]
Fix a call to "proto_tree_add_text()", and declare "name_length" in such
a fashion as not to cause GCC to whine about format/argument mismatches
if "proto.h" is tweaked to declare "proto_tree_add_text()" with an
"__attribute__((format (printf, ...))" clause.
svn path=/trunk/; revision=1693
Gilbert Ramirez [Sat, 4 Mar 2000 14:22:29 +0000 (14:22 -0000)]
Fix for reading toshiba trace files that were created by using the
"save session" feature in many Windows-based telnet apps. CRT, by VanDyke,
in particular, will put in newlines at 80 columns.
svn path=/trunk/; revision=1692
Gilbert Ramirez [Fri, 3 Mar 2000 12:01:22 +0000 (12:01 -0000)]
Add config.nmake and two Makefile.nmake's to the list of deliverables.
svn path=/trunk/; revision=1690
Guy Harris [Fri, 3 Mar 2000 07:06:13 +0000 (07:06 -0000)]
Fix a typo.
svn path=/trunk/; revision=1689
Guy Harris [Fri, 3 Mar 2000 06:58:28 +0000 (06:58 -0000)]
Document "proto_tree_add_notext()", "proto_item_set_len()", and
"proto_item_set_text()".
svn path=/trunk/; revision=1688
Guy Harris [Fri, 3 Mar 2000 06:39:10 +0000 (06:39 -0000)]
Put in a discussion of "check_col()", "col_add_[f]str()", and
"col_append_[f]str()".
svn path=/trunk/; revision=1687
Guy Harris [Fri, 3 Mar 2000 06:20:49 +0000 (06:20 -0000)]
The developer's README now includes the stuff in Gilbert's "proto_tree"
document.
svn path=/trunk/; revision=1686
Guy Harris [Fri, 3 Mar 2000 06:19:50 +0000 (06:19 -0000)]
Put in a note on updating "Makefile.am" and "Makefile.nmake".
svn path=/trunk/; revision=1685
Guy Harris [Fri, 3 Mar 2000 06:13:23 +0000 (06:13 -0000)]
Merge in Gilbert's "proto_tree" document.
svn path=/trunk/; revision=1684
Guy Harris [Fri, 3 Mar 2000 05:40:15 +0000 (05:40 -0000)]
Assorted fixes to the news items.
svn path=/trunk/; revision=1683
Gilbert Ramirez [Fri, 3 Mar 2000 03:53:08 +0000 (03:53 -0000)]
Move to version 0.8.4.
svn path=/trunk/; revision=1682
Guy Harris [Thu, 2 Mar 2000 08:59:36 +0000 (08:59 -0000)]
GCC doesn't mind
switch (xxx) {
...
default:
}
but Microsoft Visual C++ 6.0 insists that there be a statement following
the "default:" label, and other compilers may do the same - put in a
"break;" statement.
svn path=/trunk/; revision=1681
Guy Harris [Thu, 2 Mar 2000 07:47:20 +0000 (07:47 -0000)]
Note that C++-style comments shouldn't be used in dissectors.
svn path=/trunk/; revision=1680
Guy Harris [Thu, 2 Mar 2000 07:38:02 +0000 (07:38 -0000)]
Get rid of C++-style comments, as they peeve some C compilers.
svn path=/trunk/; revision=1679
Guy Harris [Thu, 2 Mar 2000 07:27:56 +0000 (07:27 -0000)]
Oops, forgot to include "packet-h1.h".
svn path=/trunk/; revision=1678
Guy Harris [Thu, 2 Mar 2000 07:27:05 +0000 (07:27 -0000)]
Gerrit Gehnen's dissector for the Sinec H1 protocol (Siemens Industrial
Ethernet; used for communication with Siemens S5 PLC's over Ethernet),
and his changes to display OSI COTP TSAPs that consist solely of
printable characters as text rather than as hex data and to decode the
version number resource in COTP.
svn path=/trunk/; revision=1677
Guy Harris [Thu, 2 Mar 2000 07:05:57 +0000 (07:05 -0000)]
Use GtkScrolledWindows to add scrollbars to the hex/ASCII panes and to
the "Follow TCP Stream" displays; that means we can use the same GTK+
calls to set the scrollbar placement on them that is used to set it on
other widgets.
Keep a list of all the GtkScrolledWindows whose scrollbar placement we
control with the GUI preference item for that, and change them all when
the GUI preference item is changed (which means that the GUI preference
item now applies to the "Follow TCP Stream" window as well as to the
hex/ASCII panes).
svn path=/trunk/; revision=1676
Olivier Abad [Wed, 1 Mar 2000 10:25:14 +0000 (10:25 -0000)]
The frame header in HP-UX 11 trace files is 4 octets longer (than HP-UX 9
and 10 files). Add OS version detection to handle this.
svn path=/trunk/; revision=1675
Guy Harris [Wed, 1 Mar 2000 08:05:49 +0000 (08:05 -0000)]
Merge in some information from Jeff Foster's developer's notes.
svn path=/trunk/; revision=1674
Guy Harris [Wed, 1 Mar 2000 07:48:03 +0000 (07:48 -0000)]
James Coe's developer HOWTO.
svn path=/trunk/; revision=1673
Guy Harris [Wed, 1 Mar 2000 06:50:18 +0000 (06:50 -0000)]
Use the "destroy" signal on a packet popup window to find out when to
destroy the data structure for that window, rather than doing so when
the "tree-unselect-row" signal catcher is unhooked from the tree view.
svn path=/trunk/; revision=1672
Guy Harris [Tue, 29 Feb 2000 09:00:36 +0000 (09:00 -0000)]
Add "packet-dhis.obj" to the list of things to compile.
svn path=/trunk/; revision=1671
Guy Harris [Tue, 29 Feb 2000 06:24:41 +0000 (06:24 -0000)]
Jeff Foster's changes, with my additions, to allow the user to pop up a
window showing the protocol tree and hex/ASCII data for the currently
selected packet.
svn path=/trunk/; revision=1670
Guy Harris [Mon, 28 Feb 2000 08:17:39 +0000 (08:17 -0000)]
Fred Reimer's patch to put the TCP segment length in the TCP packet
summary.
svn path=/trunk/; revision=1669
Olivier Abad [Wed, 23 Feb 2000 22:41:15 +0000 (22:41 -0000)]
Add an RCS Id.
svn path=/trunk/; revision=1668
Olivier Abad [Wed, 23 Feb 2000 22:28:50 +0000 (22:28 -0000)]
New dissector for DHIS (Dynamic Host Information Services) protocol.
This protocol is UDP based and uses ports 58800 and 58801.
svn path=/trunk/; revision=1667
Guy Harris [Wed, 23 Feb 2000 20:55:33 +0000 (20:55 -0000)]
"http_tree" doesn't need to be static; make it local to
"dissect_http()".
svn path=/trunk/; revision=1666
Laurent Deniel [Wed, 23 Feb 2000 19:47:14 +0000 (19:47 -0000)]
Fix HTTP request & response.
svn path=/trunk/; revision=1665
Guy Harris [Tue, 22 Feb 2000 07:42:50 +0000 (07:42 -0000)]
Make "reinit_x25_hashtable()" static (it's not explicitly called from
outside "packet-x25.c", it's only registered as a protocol init
routine), and explicitly declare it as taking no arguments (GCC doesn't
complain about passing a pointer to a routine with an unspecified
argument list to "register_init_routine()", which expects a pointer to a
routine with no arguments, but Microsoft Visual C{++} 6.0 does complain
about it).
svn path=/trunk/; revision=1664
Guy Harris [Tue, 22 Feb 2000 07:07:55 +0000 (07:07 -0000)]
In Tethereal, allow capture filters and read filters either to be
specifies with "-f" and "-R" flags, respectively, or specified with
non-flag command-line arguments, as tcpdump and snoop allow.
svn path=/trunk/; revision=1663
Richard Sharpe [Mon, 21 Feb 2000 23:50:15 +0000 (23:50 -0000)]
Small fix for Jeff Foster
svn path=/trunk/; revision=1662
Richard Sharpe [Mon, 21 Feb 2000 23:40:33 +0000 (23:40 -0000)]
Fixing the GetDC response handling so it understands the short ones that
are sent in response to Win9X requests as well as the longer ones that
are sent to WinNT and above requests.
svn path=/trunk/; revision=1661
Guy Harris [Mon, 21 Feb 2000 20:41:01 +0000 (20:41 -0000)]
Add a bunch of notes from various "comp.sys.hp.hpux" threads about
tweaking HP-UX so that DLPI (and thus Ethereal/Tethereal and tcpdump)
can see, when capturing on a given machine, packets sent by that
machine.
svn path=/trunk/; revision=1660
Guy Harris [Mon, 21 Feb 2000 08:18:00 +0000 (08:18 -0000)]
Don't use a fixed-size line buffer for summary lines in the print code;
mallocate the buffer and grow it as necessary.
svn path=/trunk/; revision=1659
Laurent Deniel [Sun, 20 Feb 2000 14:52:28 +0000 (14:52 -0000)]
Add "Resolve Name" item in detailed tree popup.
svn path=/trunk/; revision=1658
Guy Harris [Sun, 20 Feb 2000 03:32:29 +0000 (03:32 -0000)]
UCD SNMP 4.1[.x] makes "snmp_set_full_objid()" a macro that calls
"ds_set_boolean()" with the first two arguments being DS_LIBRARY_ID and
DS_LIB_PRINT_FULL_OID; this means that, when building with 4.1[.x]
(which we assume is the case if "snmp_set_full_objid" is defined, we
need to include <ucd-snmp/default_store.h>, to define those two values
and to declare "ds_set_boolean()".
svn path=/trunk/; revision=1657
Guy Harris [Sat, 19 Feb 2000 22:01:26 +0000 (22:01 -0000)]
Give it an RCS ID.
svn path=/trunk/; revision=1656
Guy Harris [Sat, 19 Feb 2000 22:00:25 +0000 (22:00 -0000)]
Give some README.<os> files RCS IDs; the other ones already have them.
svn path=/trunk/; revision=1655
Guy Harris [Sat, 19 Feb 2000 21:58:39 +0000 (21:58 -0000)]
Add an RCS ID.
Note that the configure-script changes to make GLib buildable on AIX are
in GLib 1.2.7.
svn path=/trunk/; revision=1654
Guy Harris [Sat, 19 Feb 2000 21:54:07 +0000 (21:54 -0000)]
Add a "README.bsd", which currently only explains how to enable BPF in
your kernel, but which could hold other notes about Ethereal on
{Free,Net,Open}BSD and/or BSD/OS.
svn path=/trunk/; revision=1653
Guy Harris [Sat, 19 Feb 2000 21:44:13 +0000 (21:44 -0000)]
Put in a note about enabling the Packet protocol; if it's not enabled on
a Linux kernel, network analysis programs such as tcpdump or
Ethereal/Tethereal won't be able to capture packets.
svn path=/trunk/; revision=1652
Olivier Abad [Sat, 19 Feb 2000 14:00:35 +0000 (14:00 -0000)]
Used register_init_routine() to register "reinit_x25_hashtable()" as a
routine to be called every time a new capture file is opened instead of
calling it in read_cap_file() and do_capture().
svn path=/trunk/; revision=1651
Richard Sharpe [Sat, 19 Feb 2000 12:13:52 +0000 (12:13 -0000)]
Small fix to the LanMan stuff ...
svn path=/trunk/; revision=1650
Guy Harris [Sat, 19 Feb 2000 08:50:11 +0000 (08:50 -0000)]
Note that one can probably symbolically request that nettl log incoming
and outgoing PDUs, rather than specifying a numerical mask with pduin
and pduout (0x30000000).
svn path=/trunk/; revision=1649
Guy Harris [Sat, 19 Feb 2000 08:06:27 +0000 (08:06 -0000)]
If we see a file with an unknown network type, report the type in a
"g_message()" message, as other capture-file readers do.
svn path=/trunk/; revision=1648
Guy Harris [Sat, 19 Feb 2000 08:00:08 +0000 (08:00 -0000)]
Use WTAP_ERR_UNSUPPORTED_ENCAP for all attempts to open or read a
capture file for an unsupported link-layer encapsulation type (as the
nettl reader does), and report it correctly if it occurs on an open or
read attempt rather than a save attempt.
svn path=/trunk/; revision=1647
Guy Harris [Sat, 19 Feb 2000 00:18:45 +0000 (00:18 -0000)]
Note that the read filter specified with the "-R" flag applies only to a
file read in as a result of a "-r" flag specified on the command line.
svn path=/trunk/; revision=1646
Guy Harris [Fri, 18 Feb 2000 19:13:27 +0000 (19:13 -0000)]
Move the notes on nettl support above the notes on libpcap; the notes on
libpcap are somewhat long, and if somebody doesn't look at the table of
contents, but just scrolls through the file, they may get bored and give
up before they get to the notes on nettl.
svn path=/trunk/; revision=1645
Olivier Abad [Fri, 18 Feb 2000 13:41:26 +0000 (13:41 -0000)]
Renamed init_dissect_x25() to reinit_x25_hashtable() and actually used it !
This function is used to re-initialize the hash table used by the X.25
dissector to record the upper layer protocol used by each VC. The hash
table should be re-initialized each time we read / start a new capture.
I moved the definition of the function from packet.h to packet-x25.h, and
added calls to reinit_x25_hashtable() in read_cap_file (file.c) and
do_capture (capture.c).
svn path=/trunk/; revision=1644
Olivier Abad [Fri, 18 Feb 2000 09:15:22 +0000 (09:15 -0000)]
Add comments about nettl support.
svn path=/trunk/; revision=1643
Olivier Abad [Thu, 17 Feb 2000 21:08:15 +0000 (21:08 -0000)]
Add support for raw IP nettl captures.
Update the nettl section in wiretap/README, and give sample commands to
make captures on HP-UX.
svn path=/trunk/; revision=1642
Gilbert Ramirez [Thu, 17 Feb 2000 18:27:04 +0000 (18:27 -0000)]
Add GTK+-1.2.7 fixes to gtkclist.c, w/o removing our speed enhancements.
svn path=/trunk/; revision=1641
Gilbert Ramirez [Wed, 16 Feb 2000 01:38:56 +0000 (01:38 -0000)]
Allow for non-"struct timeval" ts's in phdr just like we did
in capture.c. Copy the members of the struct instead of the entire struct.
svn path=/trunk/; revision=1640
Richard Sharpe [Wed, 16 Feb 2000 00:44:45 +0000 (00:44 -0000)]
Fix NetBIOS name types as per my understanding and the MS Knowledge base
article ...
svn path=/trunk/; revision=1639
Gilbert Ramirez [Tue, 15 Feb 2000 21:17:57 +0000 (21:17 -0000)]
Build/packaging fix. We have to include an install-exec-hook target
for non-setuid builds, simply because of the way automake works. Automake
makes install-exec-hook a dependency of install-exec-am because it sees it
in Makefile.am, without taking into account the ifdef.
svn path=/trunk/; revision=1638
Gilbert Ramirez [Tue, 15 Feb 2000 21:06:58 +0000 (21:06 -0000)]
Create a header file for every packet-*.c file. Prune the packet.h file.
This change allows you to add a new packet-*.c file and not cause a
recompilation of everything that #include's packet.h
Add the plugin_api.[ch] files ot the plugins/Makefile.am packaging list.
Add #define YY_NO_UNPUT 1 to the lex source so that the yyunput symbol
is not defined, squelching a compiler complaint when compiling the generated
C file.
svn path=/trunk/; revision=1637
Guy Harris [Mon, 14 Feb 2000 18:15:29 +0000 (18:15 -0000)]
Fix from Dietmar Petras to the BOOTP dissector - entries for BOOTP
options 62 and 63 were missing, and the table from which they were
missing was an array indexed by the option number, so options 62 and
above were decoded incorrectly.
svn path=/trunk/; revision=1636
Guy Harris [Mon, 14 Feb 2000 04:57:30 +0000 (04:57 -0000)]
Get rid of redundant include of <stdio.h> - one is enough.
svn path=/trunk/; revision=1635
Guy Harris [Mon, 14 Feb 2000 04:22:22 +0000 (04:22 -0000)]
In "display_flags()", panic if the size handed to it is neither 1, 2,
nor 4, as we currently don't handle that.
svn path=/trunk/; revision=1634
Guy Harris [Mon, 14 Feb 2000 04:21:04 +0000 (04:21 -0000)]
Protocol abbreviations should be all lower case, as they're used in
filter expressions, and names in those expressions are currently
case-sensitive, and obliging people to type "Mailslot" to filter for
SMB mailslot packets is overkill.
svn path=/trunk/; revision=1633
Guy Harris [Mon, 14 Feb 2000 04:18:57 +0000 (04:18 -0000)]
Protocol abbreviations should be all lower case, as they're used in
filter expressions, and names in those expressions are currently
case-sensitive, and obliging people to type "Lanman" to filter for
Lanman packets is overkill.
Get rid of the comment saying that the routines for mailslot and pipe
dissecting should perhaps be migrated to another file, as this and
"packet-smb-mailslot.c" are the other files to which they were migrated.
svn path=/trunk/; revision=1632
Guy Harris [Mon, 14 Feb 2000 04:11:06 +0000 (04:11 -0000)]
Use "SMB", not "Smb"; it stands for "Server Message Block".
svn path=/trunk/; revision=1631
Guy Harris [Mon, 14 Feb 2000 04:05:53 +0000 (04:05 -0000)]
Fix the comment at the beginning of the file.
svn path=/trunk/; revision=1630
Guy Harris [Mon, 14 Feb 2000 04:02:21 +0000 (04:02 -0000)]
Jeff Foster's SMB Mailslot and Netlogin dissectors; he split
"packet-smb.c" up into several files.
svn path=/trunk/; revision=1629
Guy Harris [Sun, 13 Feb 2000 10:36:06 +0000 (10:36 -0000)]
When exiting Ethereal, don't just unlink any temporary capture file,
call "close_cap_file()", which will unlink the current capture file if
it's a temporary file - but will do so after closing it; certain OSes
whose names begin with "W" don't let you remove a file if it's currently
open, so if you exit Ethereal, without closing the capture first, after
doing a capture on one of those OSes, the temporary file won't be
removed.
svn path=/trunk/; revision=1628
Guy Harris [Sat, 12 Feb 2000 11:24:24 +0000 (11:24 -0000)]
"proto_add_item_subtree()" returns a value; its wrapper should return
the value that the real function returns.
svn path=/trunk/; revision=1627
Guy Harris [Sat, 12 Feb 2000 11:22:26 +0000 (11:22 -0000)]
Squelch a complaint from Visual C++ 6.0 (the code was OK beforehand, at
least as I remember the ANSI C standard, but I guess they're warning you
that you might've intended to return the return value of a function but
forgot to put a parameter list after the function name).
svn path=/trunk/; revision=1626
Guy Harris [Sat, 12 Feb 2000 08:54:32 +0000 (08:54 -0000)]
Get rid of the check for NetBSD in the Wiretap "configure.in"; we
eliminated the check in the top-level "configure.in", and leaving it in
the Wiretap one means that, on NetBSD, Ethereal gets built with zlib
support if zlib is present, but Wiretap doesn't - now they both get
built with zlib support. Thanks to Itojun for catching this one.
Put into the Wiretap "configure.in" code to note that, if the test for
"gzgets()" in zlib fails, we're disabling compressed capture file
support, as is done in the top-level "configure.in".
svn path=/trunk/; revision=1625
Guy Harris [Sat, 12 Feb 2000 08:44:43 +0000 (08:44 -0000)]
Update the Win32 Nmakefiles to reflect the move of the color code into
the "gtk" directory and the split of that code into "colors.c" and
"color_dlg.c".
svn path=/trunk/; revision=1624
Guy Harris [Sat, 12 Feb 2000 08:42:28 +0000 (08:42 -0000)]
Remove some unnecessary includes from "gtk/color_dlg.c" and
"gtk/colors.c", and make "gtk/color_dlg.c" include "gtk/color_dlg.h" to
make sure compilation checks the declaration of the routines with their
definitions.
svn path=/trunk/; revision=1623
Guy Harris [Sat, 12 Feb 2000 08:31:49 +0000 (08:31 -0000)]
Split the color manipulation stuff into "color_dlg.[ch]", containing the
dialog boxes for editing color filtes, and "colors.[ch]", containing the
toolkit-dependent code to manipulate colors.
svn path=/trunk/; revision=1622
Guy Harris [Sat, 12 Feb 2000 08:15:31 +0000 (08:15 -0000)]
The color stuff is almost completely toolkit-dependent (this isn't just
the color-selection and color-filter-editing GUI stuff; different
toolkits, and different windows systems, have their own notions of color
objects - they may have nothing in common other than the notion that
colors have red, green, and blue values); move it all to the "gtk"
subdirectory for now, and, as we discover stuff stuff that can be made
platform-independent, drag it up to the top-level directory.
svn path=/trunk/; revision=1621
Guy Harris [Sat, 12 Feb 2000 06:58:42 +0000 (06:58 -0000)]
Move the declarations of the routines in "gtk/file_dlg.c" out of
"gtk/main.h" and into a new "gtk/file_dlg.h" file.
svn path=/trunk/; revision=1620
Guy Harris [Sat, 12 Feb 2000 06:46:54 +0000 (06:46 -0000)]
Make the routines internal to the filter-editing dialog box static.
Declare the one routine exported by "gtk/filter_prefs.c" in
"gtk/filter_prefs.h" rather than in "gtk/main.h". Declare
"E_FILT_TE_PTR_KEY" there, as well, rather than in "prefs_dlg.h", as the
filter-editing dialog box is no longer a preference tab.
Don't include "prefs_dlg.h" unless the stuff declared therein is of
interest.
Fix "gtk/find_dlg.c" to fire up the filter-editing dialog box, not the
no-longer-extant preferences tab for filters, if the "Filter:" button is
clicked.
svn path=/trunk/; revision=1619
Guy Harris [Fri, 11 Feb 2000 22:35:49 +0000 (22:35 -0000)]
Fix from Nick Amato for a typo - "Link", in "Link State", shouldn't have
an "e" in it.
svn path=/trunk/; revision=1618