20 years agoNote that non-GNU "make"s appear not to be able to build Ethereal, and
Guy Harris [Sun, 4 Jul 1999 06:45:53 +0000 (06:45 -0000)]
Note that non-GNU "make"s appear not to be able to build Ethereal, and
that you need "flex" and either "bison" or Berkeley "yacc".  (XXX -
should notes such as this go in some other file, e.g. INSTALL?  I
discovered the "flex" and "bison"/byacc requirement on a Solaris 7
system, but it's probably a problem on other commercial UNIXes, as well,
so it probably doesn't belong in, say, "README.solaris".)

svn path=/trunk/; revision=337

20 years agoIn GTK+ 1.0[.x], "gtk_window_set_position()" was called
Guy Harris [Sun, 4 Jul 1999 06:41:19 +0000 (06:41 -0000)]
In GTK+ 1.0[.x], "gtk_window_set_position()" was called
"gtk_window_position()", so use "gtk_window_position()" if we're using
GTK+ 1.0[.x].

svn path=/trunk/; revision=336

20 years agoFixed a small problem that would have prevented Ethereal from compiling.
Richard Sharpe [Thu, 1 Jul 1999 04:04:38 +0000 (04:04 -0000)]
Fixed a small problem that would have prevented Ethereal from compiling.

svn path=/trunk/; revision=335

20 years agoAdded some more, auto-generated decoding to packet-smb.c.
Richard Sharpe [Mon, 28 Jun 1999 10:57:57 +0000 (10:57 -0000)]
Added some more, auto-generated decoding to packet-smb.c.

Hope it is all OK.

This is getting interesting.

svn path=/trunk/; revision=334

20 years agoWhen checking to see if a packet is of a given type by checking the
Guy Harris [Fri, 25 Jun 1999 07:15:02 +0000 (07:15 -0000)]
When checking to see if a packet is of a given type by checking the
source and destination port numbers, check both port numbers against the
specified port, rather than checking the lower of the two port numbers
against the specified port, just in case you happen to either have

1) the port number for that type being high enough that you can
   get client sockets using it


2) client sockets using it for some other reason.

svn path=/trunk/; revision=333

20 years agoIf WITH_WIRETAP is defined, don't define variables used only if
Guy Harris [Fri, 25 Jun 1999 06:49:46 +0000 (06:49 -0000)]
If WITH_WIRETAP is defined, don't define variables used only if
WITH_WIRETAP isn't defined.

svn path=/trunk/; revision=332

20 years agoIn my haste to get rid of the compilation warning, I converted the
Gilbert Ramirez [Fri, 25 Jun 1999 02:57:42 +0000 (02:57 -0000)]
In my haste to get rid of the compilation warning, I converted the
pointer to a signed int instead of an unsigned int. In my testing the
code still worked, but it's better to do the conversion correctly.

svn path=/trunk/; revision=331

20 years agoAdded Ashok's Match Selected functionality, and changes to move ethereal
Gilbert Ramirez [Thu, 24 Jun 1999 16:25:59 +0000 (16:25 -0000)]
Added Ashok's Match Selected functionality, and changes to move ethereal
to version 0.6.3.

svn path=/trunk/; revision=330

20 years ago If the "Cancel" button is clicked in the "Display Options"
Guy Harris [Thu, 24 Jun 1999 05:37:04 +0000 (05:37 -0000)]
If the "Cancel" button is clicked in the "Display Options"
window, revert the timestamp type display option to the value it
had before that window was popped up, undoing any changes
applied with the "Apply" button.

If "Display/Options" is selected while there's a "Display
Options" window active, don't pop up another "Display Options"
window (we really should, if that's done, switch the input focus
to the existing "Display Options" window, if possible).

svn path=/trunk/; revision=329

20 years agoFinally! Got rid of compilation warning about converting pointer to int
Gilbert Ramirez [Wed, 23 Jun 1999 20:09:58 +0000 (20:09 -0000)]
Finally! Got rid of compilation warning about converting pointer to int
in line 198.

svn path=/trunk/; revision=328

20 years agoAdded an "apply" button to the display option gui, so we can try new
Gilbert Ramirez [Tue, 22 Jun 1999 22:43:56 +0000 (22:43 -0000)]
Added an "apply" button to the display option gui, so we can try new
timestamp display w/o having the display option GUI disappear.

svn path=/trunk/; revision=327

20 years agoAdded Aaron Hillegass' summary dialogue. We're ignoring the problem with
Gilbert Ramirez [Tue, 22 Jun 1999 22:02:39 +0000 (22:02 -0000)]
Added Aaron Hillegass' summary dialogue. We're ignoring the problem with
NetMon statistic packets for now. We might fix that problem with wiretap,
either filtering out those packets, and/or providing the summary
information through a new wiretap API.

svn path=/trunk/; revision=326

20 years agoUpdate the display if the "command-line-specified" time format is
Guy Harris [Tue, 22 Jun 1999 03:39:07 +0000 (03:39 -0000)]
Update the display if the "command-line-specified" time format is
changed by updating those columns showing the time in the
"command-line-specified" format, not by redoing the entire packet list
display; that way, the display continues to show the same packets and
any packet the user selected remains selected.  (It's also less work to
do that - you don't have to re-dissect the packet.)

Turn "redisplay_packets()" into "filter_packets()", and do some other

svn path=/trunk/; revision=325

20 years agoFound some erroneous usages of gtk_signal_connect_object. I always wondered
Gilbert Ramirez [Mon, 21 Jun 1999 19:04:35 +0000 (19:04 -0000)]
Found some erroneous usages of gtk_signal_connect_object. I always wondered
why I had to swap fields (data = w) in some of the callback functions when
I added support for gtk+-1.1. Because of the use of gtk_signal_connect_object,
the wrong value was being sent to the callback function. We were just lucky
that with gtk+-1.0 it worked.

gtk_signal_connect_object is for use with callbacks that take one argument.
gtk_signal_connect is for use with callbacks that take two arguments.

svn path=/trunk/; revision=324

20 years agoAdded "0x" to a couple of proto_tree_add_item printf-style labels that
Gilbert Ramirez [Mon, 21 Jun 1999 16:20:18 +0000 (16:20 -0000)]
Added "0x" to a couple of proto_tree_add_item printf-style labels that
were printing values in hex. The lack of "0x" in fron of the hex numbers
made me think the values were decimal, causing me to waste a bit of time
during debugging.

svn path=/trunk/; revision=323

20 years agoAdded a paragraph explaining that the SNMP decode in ethereal uses
Gilbert Ramirez [Mon, 21 Jun 1999 16:02:22 +0000 (16:02 -0000)]
Added a paragraph explaining that the SNMP decode in ethereal uses
either the UCD or CMU SNMP library. Also documented the fact that SNMP
support in ethereal can be disabled with the "--disable-snmp" option to

svn path=/trunk/; revision=322

20 years agoUpdate the man page to reflect the "Capture/Start" and "Display/Options"
Guy Harris [Sat, 19 Jun 1999 08:48:30 +0000 (08:48 -0000)]
Update the man page to reflect the "Capture/Start" and "Display/Options"
menu items.

svn path=/trunk/; revision=321

20 years agoUpdate a comment.
Guy Harris [Sat, 19 Jun 1999 03:22:46 +0000 (03:22 -0000)]
Update a comment.

svn path=/trunk/; revision=320

20 years agoUse "gtk_toggle_button_set_state()" rather than
Guy Harris [Sat, 19 Jun 1999 03:14:32 +0000 (03:14 -0000)]
Use "gtk_toggle_button_set_state()" rather than
"gtk_toggle_button_set_active()" to set the state of radio buttions;
"gtk_toggle_button_set_active()" doesn't exist in GTK+ 1.0[.x], and
"gtk_toggle_button_set_state()" is an alias for it in GTK+ 1.2[.x].

Compute the column widths in the summary display based on the longest
string in the column; recompute it whenever we update the columns.

svn path=/trunk/; revision=319

20 years agoUpdate the column widths if we change the time stamp format from the
Guy Harris [Sat, 19 Jun 1999 01:47:43 +0000 (01:47 -0000)]
Update the column widths if we change the time stamp format from the
"Display/Options" dialog box.

"get_column_width()" should check "timestamp_type" against ABSOLUTE, not
against COL_ABS_TIME.

Clean up the code to check the state of the time stamp radio buttons in
the "Display/Options" dialog box.

Check in "timestamp.h", which we failed to check in on the previous

svn path=/trunk/; revision=318

20 years agoAdded "Capture" and "Display" menus; "Capture" has a "Start" item, which
Guy Harris [Sat, 19 Jun 1999 01:14:51 +0000 (01:14 -0000)]
Added "Capture" and "Display" menus; "Capture" has a "Start" item, which
is the same as "Tools/Capture", and "Display" has an "Options" item,
which pops up a dialog box to let you change the "default" time-stamp
column display format on the fly (the "default" is what the "-t"
command-line option sets), and have the display change when you do that.

Made infrastructure changes to make the immediate display update work.

Removed some unused functions, declared some functions used only in the
file in which they're defined "static", and removed some unnecessary

svn path=/trunk/; revision=317

20 years agoFound a small bug in how the Token-Ring code tried to be smart and looked
Gilbert Ramirez [Wed, 16 Jun 1999 20:14:51 +0000 (20:14 -0000)]
Found a small bug in how the Token-Ring code tried to be smart and looked
for RIF bytes w/o the source-route bit being set.

svn path=/trunk/; revision=316

20 years agoPut "..." after menu items that will cause a dialog box to be popped up
Guy Harris [Tue, 15 Jun 1999 04:48:57 +0000 (04:48 -0000)]
Put "..." after menu items that will cause a dialog box to be popped up
(standard convention in many GUIs).

Make "Save as" be "Save As", and make "A" be the menu mnemonic for it in
the "File" menu, with GTK 1.2.

svn path=/trunk/; revision=315

20 years agoGet rid of an extra line in the author credits (Brad Robel-Forrest
Guy Harris [Tue, 15 Jun 1999 03:58:42 +0000 (03:58 -0000)]
Get rid of an extra line in the author credits (Brad Robel-Forrest
already appears in the list; the extra line is probably leftover from
cutting-and-pasting the author list from the AUTHORS file).

svn path=/trunk/; revision=314

20 years agoDon't load the capture file in "main_realize_cb()", load it after the
Guy Harris [Tue, 15 Jun 1999 03:46:46 +0000 (03:46 -0000)]
Don't load the capture file in "main_realize_cb()", load it after the
"gtk_widget_show()" of the main window; that way:

1) any alert box popped up because a capture file specified with
   the "-r" flag can't be read shows up after the main window
   shows up, and is more likely to end up on top of the main
   window, rather than behind it;

2) as the main window is up before we start reading a capture
   file specified with the "-r" flag, the progress bar can show
   our progress reading that file.

If the "-k" flag was specified, make sure "-i" and "-w" were specified
as well, rather than just dropping core trying to dereference NULL
"cf.iface" or "cf.save_file" pointers.

svn path=/trunk/; revision=313

20 years agoAdd our own "strerror()", which we use on platforms that don't have it
Guy Harris [Mon, 14 Jun 1999 21:46:36 +0000 (21:46 -0000)]
Add our own "strerror()", which we use on platforms that don't have it
in the standard libraries (such as SunOS 4.x).

svn path=/trunk/; revision=312

20 years agoChanged the Access Control and Frame Control fields in the Token-Ring header
Gilbert Ramirez [Mon, 14 Jun 1999 20:30:06 +0000 (20:30 -0000)]
Changed the Access Control and Frame Control fields in the Token-Ring header
to use the decode_*_bitfield() routines. This needed to happen anyway, but
I finally made the change so that I can figure out how I'm going to handle
bitfield fields in my experiment of changing the implementation of the
protocol tree in ethereal.

svn path=/trunk/; revision=311

20 years agoImprove the alert boxes put up for file open/read/write errors. (Some
Guy Harris [Sat, 12 Jun 1999 09:10:20 +0000 (09:10 -0000)]
Improve the alert boxes put up for file open/read/write errors.  (Some
influence came from

which has a section on dialog box and alert box messages.  However,
we're largely dealing with technoids, not with The Rest Of Us, so I
didn't go as far as one perhaps should.)

Unfortunately, it looks like it's a bit more work to arrange that, if
you give a bad file name to the "-r" flag, the dialog box pop up only
*after* the main window pops up - it has the annoying habit of popping
up *before* the main window pops up, and sometimes getting *obscured* by
it, when I do that.  The removal of the dialog box stuff from
"load_cap_file()" was intended to facilitate that work.  (It might also
be nice if, when an open from the "File/Open" menu item fails, we keep
the file selection box open, and give the user a chance to correct
typos, choose another file name, etc.)

svn path=/trunk/; revision=310

20 years agoInclude "snprintf.h" if necessary - we use "snprintf()".
Guy Harris [Sat, 12 Jun 1999 09:02:12 +0000 (09:02 -0000)]
Include "snprintf.h" if necessary - we use "snprintf()".

svn path=/trunk/; revision=309

20 years agoDon't pop up the "Can't open preferences file" dialog until *after*
Guy Harris [Sat, 12 Jun 1999 07:04:35 +0000 (07:04 -0000)]
Don't pop up the "Can't open preferences file" dialog until *after*
we've shown the top-level window, because we want it to pop up on *top*
of the top-level window, rather than being hidden behind it.

Put a "strerror()"-based reason *why* the open failed in that dialog.

svn path=/trunk/; revision=308

20 years agoMove the comment from the GTK 1.0 tutorial just before the GTK 1.0
Guy Harris [Sat, 12 Jun 1999 06:22:47 +0000 (06:22 -0000)]
Move the comment from the GTK 1.0 tutorial just before the GTK 1.0
GtkMenuEntry table, and add the comment from the equivalent part of the
GTK 1.2 tutorial before the GTK 1.2 GtkItemFactoryEntry table.

svn path=/trunk/; revision=307

20 years agoMake the string argument to "col_add_str()" a "const gchar *" - it
Guy Harris [Sat, 12 Jun 1999 04:21:09 +0000 (04:21 -0000)]
Make the string argument to "col_add_str()" a "const gchar *" - it
doesn't modify anything pointed to by that argument, and that keeps us
from getting complaints if we pass a "const gchar *" to it.

svn path=/trunk/; revision=306

20 years agoUse "val_to_str()", rather than "get_XXX()" routines, to map SNMP
Guy Harris [Sat, 12 Jun 1999 04:17:19 +0000 (04:17 -0000)]
Use "val_to_str()", rather than "get_XXX()" routines, to map SNMP
versions, PDU types, error statuses, and trap types to strings.

Set the protocol column to "SNMP", and set the info column to an error
message if the parse fails (rather than printing a message to the
standard error) and to the PDU type if it succeeds.

svn path=/trunk/; revision=305

20 years agoAdded RSVP protocol dissector.
Gilbert Ramirez [Fri, 11 Jun 1999 16:45:02 +0000 (16:45 -0000)]
Added RSVP protocol dissector.

svn path=/trunk/; revision=304

20 years agoAdded PPPoE, PPTP, GRE, and ISAKMP dissectors.
Gilbert Ramirez [Fri, 11 Jun 1999 15:30:55 +0000 (15:30 -0000)]
Added PPPoE, PPTP, GRE, and ISAKMP dissectors.

svn path=/trunk/; revision=303

20 years agoDon't "g_strdup()" what "gtk_entry_get_text()" returns as the contents
Guy Harris [Sat, 5 Jun 1999 01:44:11 +0000 (01:44 -0000)]
Don't "g_strdup()" what "gtk_entry_get_text()" returns as the contents
of the packet count combo box; there's no need to do so (we don't
remember the string, just its value when converted to a number), and, as
we don't free what "g_strdup()" returns, and don't remember it to save
it later, we leak memory.

svn path=/trunk/; revision=302

20 years agoWhen checking to see if a packet is of a given type by checking the
Guy Harris [Wed, 2 Jun 1999 01:28:47 +0000 (01:28 -0000)]
When checking to see if a packet is of a given type by checking the
source and destination port numbers, check both port numbers against the
specified port, rather than checking the lower of the two port numbers
against the specified port, just in case you happen to either have

1) the port number for that type being high enough that you can
   get client sockets using it


2) client sockets using it for some other reason.

svn path=/trunk/; revision=301

20 years agoWhen constructing the list for the "Count" combo box in the "Capture"
Guy Harris [Tue, 1 Jun 1999 22:24:05 +0000 (22:24 -0000)]
When constructing the list for the "Count" combo box in the "Capture"
dialog box, put "0 (Infinite)" first, so that we default to that rather
than to the number of packets in the last capture we read.

svn path=/trunk/; revision=300

20 years agoAs we may return an error message, rather than a NetBIOS name, from
Guy Harris [Tue, 1 Jun 1999 20:40:34 +0000 (20:40 -0000)]
As we may return an error message, rather than a NetBIOS name, from
"get_nbns_name()", make sure the array into which you put the name is
"big enough" - MAXDNAME+4 is more than big enough for those error

svn path=/trunk/; revision=299

20 years agoUnfortunately, as the "cap_len" field in a "frame_data" is unsigned,
Guy Harris [Tue, 1 Jun 1999 20:39:20 +0000 (20:39 -0000)]
Unfortunately, as the "cap_len" field in a "frame_data" is unsigned,
"fd->cap_len - offset", i.e. END_OF_FRAME, is unsigned, so

while (END_OF_FRAME > 0) {

doesn't keep you out of the loop if "offset" is already beyond
"fd->cap_len", so you can try processing stuff past the end of the
captured data in the packet.

svn path=/trunk/; revision=298

20 years agoCorrectly handle the case of the root showing up as a name in a DNS
Guy Harris [Thu, 27 May 1999 05:35:08 +0000 (05:35 -0000)]
Correctly handle the case of the root showing up as a name in a DNS
request or reply.  (Redid "get_dns_name()" along the lines of the code
in the BSD resolver.)

Add code to dissect SOA RRs.

svn path=/trunk/; revision=297

20 years agoRemoved segfault if NCP completion code was decoded for an uknown NCP reply type.
Gilbert Ramirez [Wed, 26 May 1999 21:46:07 +0000 (21:46 -0000)]
Removed segfault if NCP completion code was decoded for an uknown NCP reply type.

svn path=/trunk/; revision=296

20 years agoDissect ICMP Router Discovery packets (router advertisements and router
Guy Harris [Thu, 20 May 1999 02:41:22 +0000 (02:41 -0000)]
Dissect ICMP Router Discovery packets (router advertisements and router

svn path=/trunk/; revision=295

20 years agoPackaging changes for version 0.6.2
Gilbert Ramirez [Wed, 19 May 1999 23:16:43 +0000 (23:16 -0000)]
Packaging changes for version 0.6.2

svn path=/trunk/; revision=293

20 years agoMade BPF disassembly in wiretap.c a bit easier to read.
Gilbert Ramirez [Wed, 19 May 1999 13:49:35 +0000 (13:49 -0000)]
Made BPF disassembly in wiretap.c a bit easier to read.

svn path=/trunk/; revision=292

20 years agoAdded more functionality to the completion-code parsing routine.
Gilbert Ramirez [Sun, 16 May 1999 05:12:11 +0000 (05:12 -0000)]
Added more functionality to the completion-code parsing routine.

svn path=/trunk/; revision=291

20 years agoRemoved ethereal.1 and copied make rule from doc/Makefile to top-level
Gilbert Ramirez [Sun, 16 May 1999 04:27:08 +0000 (04:27 -0000)]
Removed ethereal.1 and copied make rule from doc/Makefile to top-level
Makefile so that manpage can be made from pod file during packaging.

svn path=/trunk/; revision=290

20 years agoFixed to actually compile with CMU SNMP library (at least on Linux).
Gilbert Ramirez [Sun, 16 May 1999 04:13:29 +0000 (04:13 -0000)]
Fixed to actually compile with CMU SNMP library (at least on Linux).

svn path=/trunk/; revision=289

20 years agoFurther refined NCP fix, and added translation of NCP Completion Code.
Gilbert Ramirez [Fri, 14 May 1999 21:30:13 +0000 (21:30 -0000)]
Further refined NCP fix, and added translation of NCP Completion Code.

svn path=/trunk/; revision=288

20 years agoFixed some serious bugs in the NCP hash routines. I also simplified
Gilbert Ramirez [Thu, 13 May 1999 16:42:43 +0000 (16:42 -0000)]
Fixed some serious bugs in the NCP hash routines. I also simplified
the NCP field table structure so that it is easier to add new request/reply
types. I even added a new type myself. There's still more work to be done;
so for now ignore the warnings that gcc emits.

svn path=/trunk/; revision=287

20 years agoGet rid of the include of <arpa/tftp.h>; put the #defines for packet
Guy Harris [Thu, 13 May 1999 05:46:04 +0000 (05:46 -0000)]
Get rid of the include of <arpa/tftp.h>; put the #defines for packet
types in "packet-tftp.c", and grab the opcode directly from the first 2
bytes of the packet, using "pntohs()" (which will also keep us from
crashing, on processors that require strict alignment, if the UDP
payload isn't aligned on a 2-byte boundary).

Also use "pntohs()" to grab the block number in data and acknowledgment
packets, for the same reason we use it to grab the opcode.

svn path=/trunk/; revision=286

20 years agoRemoving some includes of tftp.h from places it should not be
Richard Sharpe [Thu, 13 May 1999 01:05:11 +0000 (01:05 -0000)]
Removing some includes of tftp.h from places it should not be

Would like to remove it from packet-tftp.c as well to remove our
dependence on that file as well.

svn path=/trunk/; revision=285

20 years agoAdd support for Network Monitor 2.0 files, thanks to information
Guy Harris [Wed, 12 May 1999 21:40:07 +0000 (21:40 -0000)]
Add support for Network Monitor 2.0 files, thanks to information
supplied by Tim Farley.

Tim also indicated that the Network Monitor network types may be NDIS
network types+1.  It also appears that NetXRay/Windows Sniffer network
types may be NDIS network types as well.

svn path=/trunk/; revision=284

20 years agoMinor performance improvement and TCP option decoding fixed (when no tree).
Laurent Deniel [Wed, 12 May 1999 20:44:59 +0000 (20:44 -0000)]
Minor performance improvement and TCP option decoding fixed (when no tree).

svn path=/trunk/; revision=283

20 years agoCredited John McDermott <> for his pseudo-real-time
Gilbert Ramirez [Wed, 12 May 1999 06:04:47 +0000 (06:04 -0000)]
Credited John McDermott <> for his pseudo-real-time
capture patch.

svn path=/trunk/; revision=282

20 years agoAdded Didier Jorand's dissect_snmp routine. This is only compiled in
Gilbert Ramirez [Wed, 12 May 1999 05:56:42 +0000 (05:56 -0000)]
Added Didier Jorand's dissect_snmp routine. This is only compiled in
if you have the UCD or CMU SNMP library available. If you have the SNMP
library but do not with to have SNMP support, use the
./configure --disable-snmp
option. Otherwise 'configure' finds the SNMP library and uses it.

svn path=/trunk/; revision=281

20 years agoChanged wiretap rules so that ordinary user doesn't need bison and flex
Gilbert Ramirez [Wed, 12 May 1999 04:56:10 +0000 (04:56 -0000)]
Changed wiretap rules so that ordinary user doesn't need bison and flex
if they just compile the source and don't modify any source files.

svn path=/trunk/; revision=280

20 years agoAdd "SMB support" to the list of Richard Sharpe's contributions.
Guy Harris [Tue, 11 May 1999 20:32:11 +0000 (20:32 -0000)]
Add "SMB support" to the list of Richard Sharpe's contributions.

svn path=/trunk/; revision=279

20 years agoFixed problem where filename of capture file would not be displayed in
Gilbert Ramirez [Tue, 11 May 1999 20:07:47 +0000 (20:07 -0000)]
Fixed problem where filename of capture file would not be displayed in
status bar if invoked by "ethereal -r filename".

svn path=/trunk/; revision=278

20 years agoLive data capture and display enhancement that allows network capture and
Laurent Deniel [Tue, 11 May 1999 20:07:12 +0000 (20:07 -0000)]
Live data capture and display enhancement that allows network capture and
display of fully decoded packets at the same time.
Options added:
-F : fork capture process
-S : sync mode ala tail -f (implies -F)
-f : filter expression
-Q : exit after capture (implies -k)

svn path=/trunk/; revision=277

20 years agoLive data capture and display enhancement that allows network capture and
Laurent Deniel [Tue, 11 May 1999 18:51:10 +0000 (18:51 -0000)]
Live data capture and display enhancement that allows network capture and
display of fully decoded packets at the same time.
Options added:
-F : fork capture process
-S : sync mode ala tail -f (implies -F)
-f : filter expression
-Q : exit after capture (implies -k)

svn path=/trunk/; revision=276

20 years agoTurn "arpaddr_to_str()" into "bytes_to_str()", and make it public, so it
Guy Harris [Tue, 11 May 1999 08:21:39 +0000 (08:21 -0000)]
Turn "arpaddr_to_str()" into "bytes_to_str()", and make it public, so it
can be used by dissectors other than ARP to display byte arrays as
strings of hex digits.

Add a routine to extract a null-terminated Unicode string and turn it
into an ISO 8859-1 string for display.  (Ultimately, we should determine
what character sets the X server or printer or whatever can handle, and
turn it into the appropriate character set.)

Display the challenge in "core-to-LANMAN-2.1" Negotiate Protocol
responses as a string of hex digits - but only if the length is
non-zero.  (It's a counted array, not a null-terminated string.)

Display some additional security mode bits in an NT LM 0.12 Negotiate
Protocol response.

Display some additional bits in the "capabilities" field of the
Negotiate Protocol response.

Display the challenge in an NT LM 0.12 Negotiate Protocol response as a
string of hex digits (it's a counted array, not a null-terminated

Display the domain name as Unicode in an NT LM 0.12 Negotiate Protocol
response if the capabilities field has the "supports Unicode" bit set
(no, not the "Unicode" bit in the "flags2" field - NT doesn't set that
in the response, even though it sends the domain name over in Unicode!).

Display some additional bits in the "flags2" field of an SMB.

svn path=/trunk/; revision=275

20 years agoAdd some SMB codes and error codes from the
Guy Harris [Tue, 11 May 1999 07:22:31 +0000 (07:22 -0000)]
Add some SMB codes and error codes from the
"draft-leach-cifs-v1-spec-01.txt" CIFS Internet draft.

svn path=/trunk/; revision=274

20 years agoAdd decoding of DOS-format dates and times (one of the N different
Guy Harris [Tue, 11 May 1999 01:18:30 +0000 (01:18 -0000)]
Add decoding of DOS-format dates and times (one of the N different
date/time formats used in SMB...).

svn path=/trunk/; revision=273

20 years agoSome of my fixes did get lost - put 'em back.
Guy Harris [Tue, 11 May 1999 00:28:18 +0000 (00:28 -0000)]
Some of my fixes did get lost - put 'em back.

Fix the "proto_tree_add_item()" used when the server didn't support any
of the dialects the client offered not to print the dialect index.

In the "Core to LANMAN 2.1" "negotiate protocol" decode, show the time
zone as minutes from UTC, just as is done for the "post-LANMAN 2.1"

svn path=/trunk/; revision=272

20 years agoSome clean-ups. I hope I have not disturbed any of Guy's
Richard Sharpe [Tue, 11 May 1999 00:00:40 +0000 (00:00 -0000)]
Some clean-ups. I hope I have not disturbed any of Guy's
fixes, as I had to manually apply his fixes. It is a long story,
but my development environment is, umm, interesting.

Thanks to Guy for spotting the problems in my Core Proto to LanMan 2.0
decode probs.

I did not spot them and I do not have any such traces to check

svn path=/trunk/; revision=271

20 years agoPass NBDS packets on to SMB even if we're only generating a summary
Guy Harris [Mon, 10 May 1999 22:07:09 +0000 (22:07 -0000)]
Pass NBDS packets on to SMB even if we're only generating a summary
line, so that they show up as SMB packets, rather than NBDS packets, in
the summary display.

Put SMB at the top level of the decode tree for NBDS packets, as is done
for NBSS packets.

svn path=/trunk/; revision=270

20 years agoDecode SMB requests inside NetBIOS Datagram Service packets.
Guy Harris [Mon, 10 May 1999 21:50:13 +0000 (21:50 -0000)]
Decode SMB requests inside NetBIOS Datagram Service packets.

svn path=/trunk/; revision=269

20 years agoFix up the decode of "greater than core and up to and including LANMAN
Guy Harris [Mon, 10 May 1999 21:36:40 +0000 (21:36 -0000)]
Fix up the decode of "greater than core and up to and including LANMAN
2.1" "negotiate protocol" responses.

Display unsigned fields in "negotiate protocol" as unsigned, rather than
signed, values.

svn path=/trunk/; revision=268

20 years agoFixed the number of parameters for the other super-IPX protocols so that
Gilbert Ramirez [Mon, 10 May 1999 20:51:36 +0000 (20:51 -0000)]
Fixed the number of parameters for the other super-IPX protocols so that
the table of dissect functions that IPX needs only needs to store pointers to
on type of function. Now all super-IPX protocols have an 'int max_data' argument.

svn path=/trunk/; revision=267

20 years agoDecode the "flags2" field in the SMB header.
Guy Harris [Mon, 10 May 1999 20:30:27 +0000 (20:30 -0000)]
Decode the "flags2" field in the SMB header.

Squelch another "variable may be used without being initialized"
complaint (also due to insufficiently sophisticated dataflow analysis by
EGCS 1.1), and a number of "unused variable" complaints, as well as
"assigning a 'const XXX *' to an 'XXX *'" complaints.

svn path=/trunk/; revision=266

20 years agoGet rid of the "P*" macros, as we're not using them (Ethereal only reads
Guy Harris [Mon, 10 May 1999 20:17:36 +0000 (20:17 -0000)]
Get rid of the "P*" macros, as we're not using them (Ethereal only reads
packets, it doesn't store into them), and make the "G*" macros use
"pletohs()" and "pletohl()", making them platform-independent.

svn path=/trunk/; revision=265

20 years agoEGCS 1.1's dataflow analysis (and probably that of other versions of
Guy Harris [Mon, 10 May 1999 20:02:57 +0000 (20:02 -0000)]
EGCS 1.1's dataflow analysis (and probably that of other versions of
GCC) isn't sophisticated enough to figure out that "nbss_tree" isn't
used if "tree" is null (or doesn't trust it not to change out from under
it), so we have to initialize "nbss_tree" to NULL to squelch complaints
about it being used but uninitialized.

svn path=/trunk/; revision=264

20 years agoCheck in updated version, reflecting the changes to "".
Guy Harris [Mon, 10 May 1999 19:26:48 +0000 (19:26 -0000)]
Check in updated version, reflecting the changes to "".

svn path=/trunk/; revision=263

20 years agoThis small change lets me read SMBtrans packets that come over NBIPX.
Gilbert Ramirez [Mon, 10 May 1999 19:01:32 +0000 (19:01 -0000)]
This small change lets me read SMBtrans packets that come over NBIPX.

svn path=/trunk/; revision=262

20 years agoMode decoded SMBs ... Now decode part of a TCONX request,
Richard Sharpe [Mon, 10 May 1999 00:27:32 +0000 (00:27 -0000)]
Mode decoded SMBs ... Now decode part of a TCONX request,
but not the responses, and do not handle the ANDX part yet,
but I have a Linux course to develop, so that is enough for

svn path=/trunk/; revision=261

20 years agoMinor changes to check if log info is working
Richard Sharpe [Sun, 9 May 1999 12:56:12 +0000 (12:56 -0000)]
Minor changes to check if log info is working

svn path=/trunk/; revision=260

20 years agoAdded new files for SMB decode: packet-smb.c, alignment.h, smb.h
Richard Sharpe [Sun, 9 May 1999 04:20:59 +0000 (04:20 -0000)]
Added new files for SMB decode: packet-smb.c, alignment.h, smb.h

svn path=/trunk/; revision=259

20 years agoAdded initial support for SMB plus most of negprot decode ..
Richard Sharpe [Sun, 9 May 1999 04:16:36 +0000 (04:16 -0000)]
Added initial support for SMB plus most of negprot decode ..

svn path=/trunk/; revision=258

20 years agoMade the executable portable; it will now work on machines other than my
Gilbert Ramirez [Fri, 7 May 1999 03:33:42 +0000 (03:33 -0000)]
Made the executable portable; it will now work on machines other than my
own. It allocates and fills in its own wtap struct.

svn path=/trunk/; revision=257

20 years agoDefault the capture size to the maximum capture size, rather than the
Guy Harris [Thu, 6 May 1999 05:45:58 +0000 (05:45 -0000)]
Default the capture size to the maximum capture size, rather than the
minimum capture size.

svn path=/trunk/; revision=256

20 years agoUpdate it to note that GTK+ has stable 1.2.x versions now.
Guy Harris [Tue, 4 May 1999 18:26:22 +0000 (18:26 -0000)]
Update it to note that GTK+ has stable 1.2.x versions now.

Add a note warning that if you installed GTK+ from a binary package, it
may be a "user's" package, and you may also have to install the
"developer's" package.

svn path=/trunk/; revision=255

20 years agoChanged variable type of argument 'pd' in hex printing routine to match
Gilbert Ramirez [Sat, 1 May 1999 05:39:06 +0000 (05:39 -0000)]
Changed variable type of argument 'pd' in hex printing routine to match

svn path=/trunk/; revision=254

20 years agoFixed 0.6.0 packaging problems.
Gilbert Ramirez [Sat, 1 May 1999 05:19:25 +0000 (05:19 -0000)]
Fixed 0.6.0 packaging problems.

svn path=/trunk/; revision=252

20 years agoAdd "gtkpacket.h" and "packet-ip.h" to the list of source files, so they
Guy Harris [Sat, 1 May 1999 04:38:42 +0000 (04:38 -0000)]
Add "gtkpacket.h" and "packet-ip.h" to the list of source files, so they
get put into the tarball by "make dist".

svn path=/trunk/; revision=251

20 years agoMiscellaneous updates of README and README.tru64 created.
Laurent Deniel [Fri, 30 Apr 1999 21:16:31 +0000 (21:16 -0000)]
Miscellaneous updates of README and README.tru64 created.

svn path=/trunk/; revision=250

20 years agoDocs updated for ethereal-0.6.0
Gilbert Ramirez [Fri, 30 Apr 1999 20:31:56 +0000 (20:31 -0000)]
Docs updated for ethereal-0.6.0

svn path=/trunk/; revision=248

20 years agoAdd support for the NetBIOS Session Service.
Guy Harris [Fri, 30 Apr 1999 03:16:03 +0000 (03:16 -0000)]
Add support for the NetBIOS Session Service.

Improve the descriptions of the NetBIOS Name Service errors a bit.

svn path=/trunk/; revision=247

20 years agoSeparate the 16-byte view into 2 8-byte views in the hex dump. Patch from
Gilbert Ramirez [Fri, 16 Apr 1999 18:39:07 +0000 (18:39 -0000)]
Separate the 16-byte view into 2 8-byte views in the hex dump. Patch from
"Mattia Cazzola" <>

svn path=/trunk/; revision=246

20 years agoChanged the flowinfo field in the ipv6 header to flow info + traffic class, as
Gilbert Ramirez [Fri, 9 Apr 1999 13:32:31 +0000 (13:32 -0000)]
Changed the flowinfo field in the ipv6 header to flow info + traffic class, as
per RFC2460. Thanks to Jun-ichiro for the patch.

svn path=/trunk/; revision=245

20 years agoRemoved 2 blocks of code that if #ifdef'ed out. They're just not needed.
Gilbert Ramirez [Fri, 9 Apr 1999 13:31:15 +0000 (13:31 -0000)]
Removed 2 blocks of code that if #ifdef'ed out. They're just not needed.

svn path=/trunk/; revision=244

20 years agoTouch-up fixes to my previous fix of making the packet-capture facility save
Gilbert Ramirez [Tue, 6 Apr 1999 16:35:47 +0000 (16:35 -0000)]
Touch-up fixes to my previous fix of making the packet-capture facility save
to a file unknown to the user first. The manpage has now been updated to reflect
the ability of the user to use the TMPDIR environment variable to change the
location of this capture file. And now the capture file is deleted when
ethereal exits, if the user has not saved the trace file.

svn path=/trunk/; revision=243

20 years agoCapturing packets from ethereal now saves the capture in an "anonymous" buffer. That...
Gilbert Ramirez [Tue, 6 Apr 1999 16:24:50 +0000 (16:24 -0000)]
Capturing packets from ethereal now saves the capture in an "anonymous" buffer. That is, it's
a random name chosen by tempnam(), unknown to the user. If the user decides to save that
trace, he then uses File | Save to save it to a file. File | Save As lets him make a copy
of his named trace file as well. I also updated my e-mail address in the various credit

svn path=/trunk/; revision=242

20 years agoAdd NNTP support.
Guy Harris [Tue, 6 Apr 1999 02:02:12 +0000 (02:02 -0000)]
Add NNTP support.

svn path=/trunk/; revision=241

20 years agoAdd an RCS ID.
Guy Harris [Mon, 5 Apr 1999 23:39:51 +0000 (23:39 -0000)]
Add an RCS ID.

svn path=/trunk/; revision=240

20 years agoGet rid of include of <strings.h> from "util.c", as it's not needed, and
Guy Harris [Mon, 5 Apr 1999 22:51:44 +0000 (22:51 -0000)]
Get rid of include of <strings.h> from "util.c", as it's not needed, and
change include of <strings.h> in "menu.c" to include <string.h>, the
latter being the ANSI standard include file for string functions; that
eliminates all use of <strings.h< so get rid of test for its existence
in "" as well.

svn path=/trunk/; revision=239

20 years agoThe joys of "automake" being run in different environments - undo the
Guy Harris [Mon, 5 Apr 1999 22:25:00 +0000 (22:25 -0000)]
The joys of "automake" being run in different environments - undo the
change my local environment inserted, setting TAR to "gtar" rather than

svn path=/trunk/; revision=238

20 years agoFTP, POP, and Telnet support from Richard Sharpe.
Guy Harris [Mon, 5 Apr 1999 21:54:41 +0000 (21:54 -0000)]
FTP, POP, and Telnet support from Richard Sharpe.

svn path=/trunk/; revision=237

20 years agoMake the AUTHORS list and the contributors list in the "Help/About
Guy Harris [Sun, 4 Apr 1999 02:49:23 +0000 (02:49 -0000)]
Make the AUTHORS list and the contributors list in the "Help/About
Ethereal" dialog match.

svn path=/trunk/; revision=236

20 years agoMove the bitfield-decoding routines to "packet.h", along with other
Guy Harris [Wed, 31 Mar 1999 08:20:28 +0000 (08:20 -0000)]
Move the bitfield-decoding routines to "packet.h", along with other
helper routines for packet dissecting, and away from "util.c", which is
now all GUI-related.  (Among other things, this makes life more pleasant
for Gilbert Ramirez's "tethereal" stuff, although a lot more separation
of GUI from other stuff needs to be done to make that - or a
"curses"-based variant of Ethereal, or a variant using some other GUI
toolkit - work smoothly.)

svn path=/trunk/; revision=235