Commit graph

682 commits

Author SHA1 Message Date
Jörg Mayer
2e0595ad63 Add back more string.h includes
svn path=/trunk/; revision=6205
2002-09-07 00:02:24 +00:00
Ronnie Sahlberg
429b24827b From Vassilii Khachaturov, cleanup of redundant code.
svn path=/trunk/; revision=6202
2002-09-06 22:45:44 +00:00
Guy Harris
ce6eb43912 Put needed include back in (<string.h>, to declare "memset()").
svn path=/trunk/; revision=6201
2002-09-06 21:27:57 +00:00
Jörg Mayer
e4a2e2cefe Include cleanups in gtk and gtk2:
Remove unneded includes
Add include wrappers where missing

svn path=/trunk/; revision=6191
2002-09-05 18:48:52 +00:00
Jörg Mayer
b147295e08 Remove redundant HAVE_LIBPCAP check (copied from gtk2)
svn path=/trunk/; revision=6158
2002-08-31 14:22:11 +00:00
Jörg Mayer
438370a48d Remove trailing whitespaces.
svn path=/trunk/; revision=6155
2002-08-31 10:58:18 +00:00
Gerald Combs
074cb0f6d2 Cast the Mbits/s calculation as a float, so that we display the value
correctly for large captures.

svn path=/trunk/; revision=6150
2002-08-31 00:40:46 +00:00
Guy Harris
25c3026203 Make the "start_time" argument to "delayed_create_progress_dlg()" a
pointer to const, to emphasize that it does *not* modify the time
pointed to by the argument.

Make the initial delay for delayed progress bars 1/10 second rather than
1/2 second, as a 1/2 second delay is noticeable, especially when loading
a file for the first time (as the main window looks a bit blank).  Even
at 1/10 second you can still notice it, but it's not *as* noticeable.

svn path=/trunk/; revision=6118
2002-08-28 22:28:43 +00:00
Jörg Mayer
7c4176d868 Removed trailing whitespaces from .h and .c files using the
winapi_cleanup tool written by Patrik Stridvall for the wine
project.

svn path=/trunk/; revision=6117
2002-08-28 21:04:11 +00:00
Guy Harris
abe6b6bcc8 From Ulf Lamping: extend the progress dialog box to give more progress
information.

Fix the types of some variables (make the file position in
"read_cap_file()" a "long", as Wiretap supports "long" offsets, and make
processed-packet counts in packet-processing loops "int"s, as the total
packet count in a "capture_file" structure is an "int").

svn path=/trunk/; revision=6112
2002-08-28 10:07:37 +00:00
Guy Harris
d6d0a33cf7 Give the routines that implement the "Match" and "Prepare" menu items
more meaningful names, indicating whether they look at something in the
protocol tree or the packet list.

svn path=/trunk/; revision=6077
2002-08-24 01:17:09 +00:00
Guy Harris
053891e609 On Win32:
don't show "Command" and "File" as printer options, show
	"Printer" and "File";

	don't show the command to be used for printing.

svn path=/trunk/; revision=5986
2002-08-13 07:54:37 +00:00
Jörg Mayer
96ab70e209 Replace the types from sys/types.h and netinet/in.h by their glib.h
equivalents for the gtk/ directory.

svn path=/trunk/; revision=5930
2002-08-02 22:34:54 +00:00
Jörg Mayer
9630bf353e Fix a few more memleaks found by valgrind (all deriving
from the get_persconffile_path mess).

svn path=/trunk/; revision=5927
2002-08-01 03:15:29 +00:00
Guy Harris
e04fc7ebfd From Graeme Hewson:
Ethereal sometimes creates a progress dialog bar and then, if
	the processing is fast, quickly destroys it.  The resulting
	"flash" can be disconcerting.  This set of patches ensures a
	progress bar is either not created or is displayed for a minimum
	time.

svn path=/trunk/; revision=5916
2002-07-30 10:13:16 +00:00
Guy Harris
b0de25272d #ifdef out some variables not used on Windows.
If printing a single packet to a file, don't use the "print to a
printer" code for Windows.

Only free "print_args.dest" *after* the last usage.

svn path=/trunk/; revision=5913
2002-07-30 07:04:08 +00:00
Guy Harris
3365355534 From Joerg Mayer:
gtk/colors.c: Fix a memleak found by valgrind
   (Note that there are similar bugs in other functions that
   use the same construct with path!)

svn path=/trunk/; revision=5910
2002-07-29 06:30:01 +00:00
Guy Harris
77fa06b899 From Joerg Mayer:
dftest.c:
	     Remove #if-0-ed includes

	packet-ieee80211.c, packet-wtls.c, packet-afp.c, packet-wsp.c,
        packet-wtp.c, ethereal_gen.py:
	     Remove redundant include varargs (already in snprintf.h,
	     and required only for snprintf.h)

	Remove unused include of snprintf.h from files not using
	"snprintf()".

svn path=/trunk/; revision=5889
2002-07-17 00:43:03 +00:00
Guy Harris
ca6badc579 Get rid of some "unused variable" and "unused static function" warnings,
and some compile errors in Tethereal, when compiling without libpcap.

If libpcap is missing (whether that's detected at compile time or, as on
Windows, at run time), don't call any of the "capture_prefs" routines -
the routine to create the capture preferences page wasn't called, so the
other routines can try to refer to non-existent widgets and other items
and crash.

Get rid of the stub routines in "capture_prefs()" used when compiling
without libpcap, as they're no longer called.

svn path=/trunk/; revision=5888
2002-07-17 00:22:30 +00:00
Guy Harris
b083cf0b39 Fields can be up to 2^32-1 bytes long, as they may have come from a
reassembled packet and are thus not limited to the maximum frame size;
leave room for a Really Big number in the length item in the status bar,
and use "snprintf()" to format the length item Just To Be Sure.

svn path=/trunk/; revision=5839
2002-07-07 22:14:03 +00:00
Guy Harris
192749474f From Liviu Daia <Liviu.Daia[AT]imar.ro>: move "col_init()" call after
the command-line options are processed, so that we don't crash if you've
set the "column.format" preference from the command line.

Fix a grammaro in a comment.

svn path=/trunk/; revision=5838
2002-07-07 21:52:51 +00:00
Gerald Combs
0255b96a8f From a suggestion by PEN <codes [at] lycos.com>, add the length in bytes to
the status bar when a tree item is selected.

svn path=/trunk/; revision=5825
2002-07-06 16:47:17 +00:00
Guy Harris
e65f81cc5c Trim leading and trailing white space from the capture device in the
preference setting, and, if it's empty, treat that as an indication that
the user doesn't want to wire in a default device, and just wants the
first device in the list chosen.

svn path=/trunk/; revision=5773
2002-06-28 01:59:46 +00:00
Guy Harris
c2df675f3f From Anand V. Narwani: add in two missing files, so they're put into the
source tarball.

Update Gerald's e-mail address.

svn path=/trunk/; revision=5769
2002-06-27 19:08:43 +00:00
Guy Harris
e46414058e Update the URL for WinPcap.
svn path=/trunk/; revision=5759
2002-06-24 20:56:15 +00:00
Guy Harris
15509f46f4 As we've done with the hex dump output for printing, use as many digits
to display the offset as are necessary to show the largest offset -
which could be bigger than 65535, so there may be more than 4 digits.

svn path=/trunk/; revision=5751
2002-06-24 00:08:28 +00:00
Guy Harris
25a058a7b1 From Devin Heitmueller: give the user a warning if they click "New" in
the filter list editing code without having specified a filter name and
string.

svn path=/trunk/; revision=5737
2002-06-22 20:00:26 +00:00
Jeff Foster
d2f365249b Added MS Window printing to ethereal.
svn path=/trunk/; revision=5711
2002-06-19 20:44:05 +00:00
Guy Harris
3baa49d71d Handle the "bool" members the same way we handled the members for
enumerated values - "boolp" for pointers, "boolval" for values.

svn path=/trunk/; revision=5678
2002-06-16 00:58:38 +00:00
Guy Harris
3a407d9567 From Chris Waters: don't use "bool" as a variable name or structure
member, as it's a C++ keyword.

svn path=/trunk/; revision=5677
2002-06-16 00:53:20 +00:00
Guy Harris
f103a8a076 From Graeme Hewson: varargs code cleanup in "simple_dialog.c".
svn path=/trunk/; revision=5617
2002-06-04 11:24:35 +00:00
Guy Harris
117f95bb39 Clean up white space.
svn path=/trunk/; revision=5615
2002-06-04 07:48:57 +00:00
Guy Harris
392a7dfc04 Get rid of the "data_src" member of the "frame_data" structure; put it
in the "packet_info" structure instead, as we don't need a pointer for
every single frame in the capture file, just for each frame for which we
currently have an open "epan_dissect_t".

svn path=/trunk/; revision=5614
2002-06-04 07:03:57 +00:00
Guy Harris
b5f0786318 Don't assume that just because a purported font name begins with "-"
it's an XLFD font name.

svn path=/trunk/; revision=5596
2002-05-30 00:44:50 +00:00
Guy Harris
7d85ca00df Clean up the data structures for the color filter code a bit. The old
"colfilter" structure contained items of use only when the colorizing
dialog was up, so make the items in it private to "gtk/color_dlg.c".
Make the "Edit" and "Delete" buttons sensitive only when a row is
selected, and make the "Up" and "Down" buttons sensitive only when a row
is selected *and* that row has somewhere to move in the specified
direction.

svn path=/trunk/; revision=5575
2002-05-27 22:00:37 +00:00
Guy Harris
ad6e52bd25 Get rid of an unused variable.
svn path=/trunk/; revision=5540
2002-05-24 07:05:44 +00:00
Gerald Combs
ae64e9539c Save the whole capture device name in the preferences file. Under
Windows, this saves the description + device name.

svn path=/trunk/; revision=5534
2002-05-23 15:56:05 +00:00
Guy Harris
e2630eed79 Command-line interface cleanups, from Graeme Hewson:
- Exit if an error is found in the options or arguments.

	- In print_usage(), improve the visibility of any getopt() error
	  message by suppressing the version information when -h is not
	  specified, and by adding an empty line.

	Ethereal:

	- If the -k option is specified, use the interface in the preferences
	  file, if present.

	- Prevent the user from specifying any hidden options which are used
	  internally in -S mode.

	Tethereal:

	- Fix a memory leak in the processing of the -f option.

	- In print_usage(), change "capture file type" to "output file type",
	  which I think is clearer; move the -q flag from the non-libpcap case
	  to the libpcap case.

svn path=/trunk/; revision=5525
2002-05-22 23:22:56 +00:00
Gerald Combs
0bc4c2d329 In the Windows capture dialog, place the interface description before the
interface name.

svn path=/trunk/; revision=5499
2002-05-18 02:41:46 +00:00
Guy Harris
976a82b06a Use "-G fields" rather than "-G" in Makefiles.
Print an error and exit if an invalid option is given for the "-G" flag.

svn path=/trunk/; revision=5466
2002-05-14 18:27:28 +00:00
Guy Harris
e390d7e0cc Make the "-G" flag take an argument. If no arugment is specified, or if
the argument is "fields", dump out a table of the fields, as we
currently do; if the argument is "protocols", dump out a table of the
protocols.

svn path=/trunk/; revision=5462
2002-05-14 10:15:12 +00:00
Guy Harris
71f8208bf9 From Didieer Gautheron:
Don't show progress bar for quick "Find Frame" searches
	Add "Find Next" and "Find Previous" to repeat searches

Add documentation for "Find Next" and "Find Previous".

svn path=/trunk/; revision=5378
2002-05-03 21:55:15 +00:00
Guy Harris
4df4388b91 Make the filter list combo box case-sensitive, as filter expressions are
case-sensitive.

Squelch a compiler complaint.

svn path=/trunk/; revision=5369
2002-05-03 03:30:15 +00:00
Guy Harris
433e8801a1 Clean up the handling of filter strings:
have "filter_packets()" make a copy of the filter string handed
	to it, as it may save the filter string in the "capture_file"
	structure, and the caller of "filter_packets()" shouldn't have
	to worry about the string it passed to "filter_packets()" being
	stashed away somewhere so that it can't just free that string or
	change it;

	have callers of "filter_packets()" free up the string they
	handed to it, if the string was allocated and they're done with
	it;

	plug some memory leaks in "match_selected_cb_do()".

Check for an illegal "action" argument being passed to
"match_selected_cb_do()".

Move some keys out of "keys.h" into "gtk/main.c", as they're only used
in "gtk/main.c".

Make the pointer to the filter list a data item for the combo box, as
it's a copy of the list of strings for the combo box, rather than
attaching it to the widgets that activate the filter (a pointer to the
combo box *itself* is a data item for those widgets).

In "filter_activate_cb()", make a copy of the text from the text entry
field as soon as we fetch it, and use that copy.  Free that copy if
we didn't add the filter to the filter list.

Don't make a copy of the entire filter list and use that to set the
combo box's list of items - just use the list itself.  Also, when the
list is changed, make the new value the data for the combo box (the list
pointer will actually not be changed, because we happen to be using
"g_list_append()", but let's not rely on that).

svn path=/trunk/; revision=5368
2002-05-03 03:24:47 +00:00
Guy Harris
0705d7ff0b Remove some no-longer-applicable XXX comments.
When you click "OK" on the dialog box, destroy the dialog box *before*
activating any text widget into which we've stuffed the filter
expression, so we don't get the dialog box destroyed out from under us
before we try to destroy it ourselves.

svn path=/trunk/; revision=5367
2002-05-02 23:49:21 +00:00
Guy Harris
9a80f0a521 Removal (or, at least, #ifdeffing out) of unused variables and
functions, from David Frascone.

svn path=/trunk/; revision=5288
2002-04-29 08:20:18 +00:00
Guy Harris
1f7177270d Use the value of "bv_size" as the size of a byte view notebook when
creating it.

svn path=/trunk/; revision=5229
2002-04-23 06:42:05 +00:00
Guy Harris
3a47e97c26 Get rid of unused variables, and mark unused arguments as such.
svn path=/trunk/; revision=5228
2002-04-23 06:25:37 +00:00
Guy Harris
432ad02810 Eliminate some unused variables.
svn path=/trunk/; revision=5224
2002-04-22 09:50:54 +00:00
Gerald Combs
c64fb4b223 Polish the column prefs a bit. Make the column tile entry and format
menu modify the currently-selected item directly.  Remove the "Change"
button since it's no longer needed.  Make the column list a clist, and
add a column which shows the format.  Make the format option menu not
fill the entire table cell.  Update the man page accordingly.

svn path=/trunk/; revision=5214
2002-04-22 02:03:53 +00:00
Guy Harris
d40820124b On Windows, include "capture-wpcap.h", to define "has_wpcap".
svn path=/trunk/; revision=5209
2002-04-20 20:29:28 +00:00
Guy Harris
3e35c8a9b1 On Windows, don't put the capture preferences item into the
"Preferences" dialog box if we couldn't load WinPcap.

svn path=/trunk/; revision=5204
2002-04-19 20:49:28 +00:00
Gerald Combs
b6b2aa4906 Update wiretapped mirror links.
svn path=/trunk/; revision=5156
2002-04-14 20:06:04 +00:00
Gerald Combs
67250b71cc Change "http://netgroup-mirror.ethereal.com/winpcap" URLs to
"http://winpcap.mirror.ethereal.com/", since that's how we're mirroring
the Politecnico di Torino sites now.

svn path=/trunk/; revision=5155
2002-04-14 19:24:26 +00:00
Gilbert Ramirez
5c10ad55a8 More static-ization.
svn path=/trunk/; revision=5131
2002-04-08 20:30:56 +00:00
Guy Harris
4072fc2120 "expand_tree()" and "collapse_tree()" can be called on leaf nodes, so
don't blow up if "finfo->tree_type" is -1, just don't expand anything.

svn path=/trunk/; revision=5127
2002-04-08 19:10:09 +00:00
Guy Harris
5de2533f2d Start assigning ett_ values at 0, rather than 1; get rid of the reserved
ETT_NONE entry.

Initialize the "tree_type" field of a "field_info" structure to -1,
meaning "this has not been given a subtree".  Add checks before using
that field that it's in range.  That way, you have to create a subtree
before putting protocol tree items under another item.

We allocate the "tree_is_expanded" array when we've registered all
dissectors; there's no need to allocate it while we're registering
dissectors and, in fact, doing so means we leak memory (the memory for
the version we allocated while registering dissectors).

svn path=/trunk/; revision=5068
2002-04-01 02:00:53 +00:00
Guy Harris
f5c5669291 Get rid of unused arguments.
Use the "nb" argument to "redraw_hex_dump()", so we redraw the specified
byte view pane, rather than always redrawing the main window's byte view
pane (and never redrawing the byte view pane of additional packet
windows, so that the font for them doesn't change if you change the font
preference).

svn path=/trunk/; revision=5066
2002-03-31 23:11:04 +00:00
Guy Harris
48214be46f Get rid of an unused argument to "set_active_all()".
Mark as unused arguments that are now unused as a result of not passing
them to "set_active_all()".

svn path=/trunk/; revision=5065
2002-03-31 22:58:27 +00:00
Guy Harris
63e8447614 From Joerg Mayer: get rid of unused arguments, and mark those that can't
be eliminated (because the function is called through a pointer, and
other functions called through the same pointer *do* use the argument)
as unused.

svn path=/trunk/; revision=5050
2002-03-31 20:57:02 +00:00
Guy Harris
d5cd7aca15 A double-click in a filter name in the list-of-filters dialog box should
activate the text widget into which the filter text is put only if
clicking "OK" in the list-of-filters dialog box does so.  Make it so.

svn path=/trunk/; revision=4955
2002-03-16 22:02:55 +00:00
Guy Harris
6327b456db Get rid of the "--enable-snmp" option; instead, use "--with-ucdsnmp".
Make the directory option to "--with-ucdsnmp" optional.  Handle
"--with-ucdsnmp" similar to the way "--with-pcap" is handled.

Get rid of unnecessary #defines in "packet-cops.c".

Get rid of no-longer-necessary include of "dlfcn.h" in "packet-snmp.c".

svn path=/trunk/; revision=4930
2002-03-12 10:37:04 +00:00
Guy Harris
37dd5f340c Remove code to show the presence, and version number, of the CMU SNMP
library, as we no longer support linking with that library.

svn path=/trunk/; revision=4917
2002-03-10 23:19:44 +00:00
Guy Harris
43ca2567dc Don't say "without SNMP"; that can confuse people into thinking it means
Ethereal doesn't dissect SNMP if not linked with an SNMP library (and
*did* confuse at least one person into thinking that).  Say "without
SNMP MIB support", instead, as you only lose the ability to read SNMP
MIBs and interpret OIDs and variable bindings according to those MIBs.

svn path=/trunk/; revision=4894
2002-03-06 23:37:12 +00:00
Guy Harris
e28f56867d From Joerg Mayer: remove unused variables.
svn path=/trunk/; revision=4879
2002-03-05 12:03:27 +00:00
Guy Harris
5fe414c555 From Joerg Mayer: use _U_ to flag unused arguments.
svn path=/trunk/; revision=4878
2002-03-05 11:56:00 +00:00
Guy Harris
e300f4db52 Have "wtap_seek_read()" return 0 on success and -1 on failure, and take
an "err" argument that points to an "int" into which to put an error
code if it fails.

Check for errors in one call to it, and note that we should do so in
other places.

In the "wtap_seek_read()" call in the TCP graphing code, don't overwrite
"cfile.pseudo_header", and make the buffer into which we read the data
WTAP_MAX_PACKET_SIZE bytes, as it should be.

In some of the file readers for text files, check for errors from the
"parse the record header" and "parse the hex dump" routines when reading
sequentially.

In "csids_seek_read()", fix some calls to "file_error()" to check the
error on the random stream (that being what we're reading).

svn path=/trunk/; revision=4874
2002-03-05 05:58:41 +00:00
Guy Harris
2a2df000a5 Cut down the vertical spacing in the "Capture Options" dialog box.
svn path=/trunk/; revision=4870
2002-03-05 02:25:09 +00:00
Gilbert Ramirez
d96747f550 In follow.c, initialize data_out_file to NULL, as it used to
be initialized in gtk/follow_dlg.c

In gtk/follow_dlg.c, declare data_out_file as 'extern'.

In tethereal.c, no longer define 'data_out_file', as the storage
for it is now in follow.c.

svn path=/trunk/; revision=4830
2002-02-28 19:35:09 +00:00
Guy Harris
b4971b39bf From Joerg Mayer:
In the "configure.in" files, add

		-D_U_="__attribute__((unused))"

	to CFLAGS if we're using GCC, and add

		-D_U_=""

	otherwise, so _U_ can be used to mark arguments as unused.

Add -D_U_="" arguments to the Makefile.nmake files as well, so _U_ works
with Microsoft Visual C++ as well.

Add comments and RCS IDs to the Makefile.nmake files that don't already
have them.

svn path=/trunk/; revision=4824
2002-02-27 09:42:52 +00:00
Guy Harris
541c654ff0 Put all the capture options into a structure.
Move the ringbuffer capture options from the "capture_file" structure to
the structure for capture options, as they're a property of an
in-progress capture, not a property of a particular capture file.

svn path=/trunk/; revision=4799
2002-02-24 09:25:36 +00:00
Guy Harris
b767826991 Have "get_positive_int()" really check for positive integers, not just
non-negative integers.

Get rid of unused "get_positive_int()" routine in "gtk/capture_dlg.c".

svn path=/trunk/; revision=4796
2002-02-24 06:01:03 +00:00
Guy Harris
8bd63530ed "autostop_filesize" and "autostop_duration" don't need to be in the
"capture_file" structure - they're a property of an in-progress capture,
not a property of an open capture file.  Make them just variables.

The maximum number of packets to be captured should be a variable
separate from the "count" field in the "capture_file" structure - the
latter is a count of the packets in the capture file in question.

Have Boolean variables indicating whether a maximum packet count,
maximum capture file size, and maximum capture duration were specified.
If an option isn't set, and we're doing an "update list of packets in
real time" capture, don't pass the option to the child process with a
command-line argument.

Don't create "stop when the capture file reaches this size" or "stop
when the capture's run for this long" conditions if a maximum capture
file size or a maximum capture duration, respectively, haven't been
specified.  Don't test or free a condition if it wasn't created.

Don't allow a 0 argument to the "-c" flag - the absence of a "-c" flag
is the way you specify "no limit on the number of packets".

Initialize the check boxes and spin buttons for the "maximum packets to
capture", "maximum capture size", and "maximum capture duration" options
to the values they had in the last capture.  If an option wasn't
specified, don't read its value from the dialog box and set the
variable.

svn path=/trunk/; revision=4795
2002-02-24 03:33:05 +00:00
Guy Harris
309e86246e From Peter Valchev: fix editcap to assign the result of "getopt()" to an
"int" and to check "getopt()"s return value with -1 rather than EOF.

Fix other "getopt()" loops to check against -1 as well (EOF is -1 on
most if not all platforms, but the Single UNIX Specification says
"getopt()" returns -1, so we should check against -1, not EOF).

svn path=/trunk/; revision=4793
2002-02-24 01:26:45 +00:00
Guy Harris
fb5688bb93 Set "snaplen", not "has_snaplen", to the snapshot length specified in
the capture preferences dialog box.

svn path=/trunk/; revision=4783
2002-02-22 11:41:22 +00:00
Guy Harris
6a21dc7e44 Don't give tvbuffs names; instead, give data sources names, where a
"data source" has a name and a top-level tvbuff, and frames can have a
list of data sources associated with them.

Use the tvbuff pointer to determine which data source is the data source
for a given field; this means we don't have to worry about multiple data
sources with the same name - the only thing the name does is label the
notebook tab for the display of the data source, and label the hex dump
of the data source in print/Tethereal output.

Clean up a bunch of things discovered in the process of doing the above.

svn path=/trunk/; revision=4749
2002-02-18 01:08:44 +00:00
Gilbert Ramirez
756707ac0d FIRST_PROTO_PREFS_PAGE needs to be incremented by 2 in order for
the "Protocol Preferences" pop-up menu option to work properly.

svn path=/trunk/; revision=4735
2002-02-14 10:58:49 +00:00
Guy Harris
89a4acb438 Have Wiretap set the snapshot length to 0 if it can't be derived from
reading the capture file.  Have callers of "wtap_snapshot_length()"
treat a value of 0 as "unknown", and default to WTAP_MAX_PACKET_SIZE (so
that, when writing a capture file in a format that *does* store the
snapshot length, we can at least put *something* in the file).

If we don't know the snapshot length of the current capture file, don't
display a value in the summary window.

Don't use "cfile.snap" as the snapshot length option when capturing -
doing so causes Ethereal to default, when capturing, to the snapshot
length of the last capture file that you read in, rather than to the
snapshot length of the last capture you did (or the initial default of
"no snapshot length").

Redo the "Capture Options" dialog box to group options into sections
with frames around them, and add units to the snapshot length, maximum
file size, and capture duration options, as per a suggestion by Ulf
Lamping.  Also add units to the capture count option.

Make the snapshot length, capture count, maximum file size, and capture
duration options into a combination of a check box and a spin button.
If the check box is not checked, the limit in question is inactive
(snapshot length of 65535, no max packet count, no max file size, no max
capture duration); if it's checked, the spinbox specifies the limit.
Default all of the check boxes to "not checked" and all of the spin
boxes to small values.

Use "gtk_toggle_button_get_active()" rather than directly fetching the
state of a check box.

svn path=/trunk/; revision=4709
2002-02-08 10:07:41 +00:00
Guy Harris
c2136d0735 Include <string.h> to declare various string functions.
Include "snprintf.h", when needed, to declare "snprintf()" on platforms
that don't have it.

Fix some formats and arguments to various printing routines.

Fix "diameter_time_to_string()" to properly fetch the time value from
the data buffer handed to it.

svn path=/trunk/; revision=4639
2002-01-30 23:08:27 +00:00
Guy Harris
ee5ca25d31 Include files from the "epan" directory and subdirectories thereof with
"epan/..." pathnames, so as to avoid collisions with header files in any
of the directories in which we look (e.g., "proto.h", as some other
package has its own "proto.h" file which it installs in the top-level
include directory).

Don't add "-I" flags to search "epan", as that's no longer necessary
(and we want includes of "epan" headers to fail if the "epan/" is left
out, so that we don't re-introduce includes lacking "epan/").

svn path=/trunk/; revision=4586
2002-01-21 07:37:49 +00:00
Guy Harris
a0d7e90519 Make the blurbs for protocol preference items into tooltips. (This also
lets us add tooltips to other preference items whose widgets are created
with the "create_preference_XXX()" routines - just pass in a tooltip
text string rather than a null pointer.)

svn path=/trunk/; revision=4577
2002-01-20 20:05:18 +00:00
Guy Harris
4d81335d28 Squelch a valid compiler warning (passing a "char" to the "is..." macros
can give the wrong answer if the 8th bit of the "char" is set).

svn path=/trunk/; revision=4567
2002-01-18 19:46:19 +00:00
Guy Harris
7fbd9f378f Memory freeing fix, from Jirka Novak.
svn path=/trunk/; revision=4565
2002-01-18 07:29:40 +00:00
Guy Harris
b4867007ca Support for hex dump mode in "Follow TCP Stream" window showing hex and
ASCII data, from Jirka Novak.

svn path=/trunk/; revision=4564
2002-01-18 07:25:22 +00:00
Guy Harris
32d7eac1ce Get the current value of Boolean preferences before adding widgets for
them (by putting back a line that got accidentally deleted in a previous
checkin).

svn path=/trunk/; revision=4537
2002-01-14 01:14:52 +00:00
Guy Harris
0a03b0f73e Add a preferences page for the name resolution flags.
Separate the preferences value for those flags and the name resolution
code's value into separate variables; this means that the resolution
code no longer depends on the preferences code, and may let us
eventually have the current setting and the preference setting differ
(so that a user can temporarily override the preference setting without
causing subsequent saves of the preferences to save the temporary
value).

Add routines to create various types of widgets for preferences, and to
fetch the values for "enumerated" preferences, and use them both in the
code to handle hardwired preference pages and table-driven preference
pages.

svn path=/trunk/; revision=4536
2002-01-13 20:35:12 +00:00
Guy Harris
649cc279d6 Put the labels of check boxes to the left of the checkboxes,
right-aligned, and give all of them a colon at the end, to match the
style of other preferences.

svn path=/trunk/; revision=4535
2002-01-12 11:09:09 +00:00
Guy Harris
6437001da6 Get rid of unused variables.
Put the labels of check boxes to the left of the checkboxes,
right-aligned, and give all of them a colon at the end, to match the
style of module preferences.

svn path=/trunk/; revision=4534
2002-01-12 11:02:47 +00:00
Guy Harris
ea02d23f06 While you're at it, use the key for the auto scroll option checkbox for
the pointer to the auto scroll options checkbox....

svn path=/trunk/; revision=4532
2002-01-12 09:19:59 +00:00
Guy Harris
0ad27ce8a7 Make the key for the capture preference window's pointer to the auto
scroll option checkbox distinct from the key for the pointer to the
real-time capture option checkbox, so thee auto scroll option checkbox
can be fetched.

svn path=/trunk/; revision=4531
2002-01-12 09:13:50 +00:00
Guy Harris
1aadf9cfc2 Label the window popped up by "Capture->Start" "Capture Options", not
"Capture Preferences", to avoid confusion with the "Capture" item in the
"Preferences" dialog (which sets the initial default values for the
"Capture Options" dialog).

svn path=/trunk/; revision=4523
2002-01-11 08:55:02 +00:00
Guy Harris
30a043931e From Jirka Novak:
Support for generating filter expressions based on packet list
	    column values
	Support for adding filter expressions generated from column or
	    protocol tree field values to the current expression rather
	    than replacing the current expression

svn path=/trunk/; revision=4522
2002-01-11 08:21:02 +00:00
Guy Harris
feb5791d6a Have a routine to create a scrolled window, set its vertical scrollbar
preference, and add it to the list of scrolled windows; call that
routine to create scrolled windows, rather than creating it and calling
other routines to do the other two operations.

As "set_scrollbar_placement_all()" and "set_ctree_styles_all()" always
set the styles to match the user's preference, don't have them take an
argument, have them just use the user's preference settings.

Get rid of unnecessary includes of "prefs_dlg.h", replacing them with
includes of "prefs.h" if necessary.  Don't have "prefs_dlg.h" include
"prefs.h" - its sole purpose is to declare routines defined in
"prefs_dlg.c" - and add any additional includes of "prefs.h" this
requires.

Get rid of unnecessary includes of "prefs.h" and "gtkglobals.h".

Fix up white space.

svn path=/trunk/; revision=4521
2002-01-11 07:40:32 +00:00
Guy Harris
e592fa4a6b Have routines to create GtkCTrees, set their line and expander style
based on the user's UI preferences, and add them to a list of GtkCTrees.
Use those routines to create all GtkCTrees.

Have a routine to update the preferences for all of those GtkCTrees.
Call that routine whenever the preferences change.

Label the line and expander style preferences as "Tree line style" and
"Tree expander style", as they no longer apply only to protocol trees.

Move the routines to maintain a list of scrolled windows, and to update
scrollbar placement for scrolled windows, to "ui_util.c".

svn path=/trunk/; revision=4520
2002-01-11 06:43:18 +00:00
Guy Harris
b3f81eb30c Separate the promiscuous mode, "Update list of packets in real time",
and "Automatic scrolling in live capture" options from the preference
settings for them, so that the preference settings affect the initial
values of those options, but changing those values in a capture don't
affect the preferences, and don't automatically get saved when you save
the preferences.

If we're building without libpcap, don't have an "Automatic scrolling in
live capture" option anywhere.

svn path=/trunk/; revision=4514
2002-01-10 11:05:50 +00:00
Guy Harris
d663cdb4a1 Fix some problems with building Ethereal/Tethereal without libpcap.
Get rid of a #include I'd #if 0'ed out.

svn path=/trunk/; revision=4513
2002-01-10 09:51:23 +00:00
Guy Harris
9357047df5 Add a preferences page for capture preferences, so that the user can
directly edit the capture preferences, rather than only being able to
set them implicitly from the values for the most recent capture.

Add a preferences item for the interface on which to capture.

Get rid of some unused variables.

svn path=/trunk/; revision=4510
2002-01-10 07:43:39 +00:00
Guy Harris
3ecfaeedb5 Don't process a color filter if there's no filter associated with it.
Don't put a color filter into the list of color filters if we can't
allocate the colors for the filter.

Clean up white space.

svn path=/trunk/; revision=4502
2002-01-08 21:35:17 +00:00
Guy Harris
12d566c0ac Add a routine to kill a capture child if it exists, so that if we exit
(by deleting the main window or selecting File->Quit or typing ^Q) while
an "Update list of packets in real time" capture is in progress, we can
abort the capture.

Arrange that "fork_child" is -1 when there is no capture child, so said
routine knows when it can kill the child.

When we exit, kill off any capture child, using that routine, and, if
we're exiting due to a request to delete the main window and, if a read
is in progress (from an "Update list of packets in real time" capture),
don't delete the main window - just set the "Read aborted" flag, so that
the code doing the read will see that flag (it will be called because
the pipe to the capture child is closed due to the child exiting) will
see that and clean up and exit itself.

svn path=/trunk/; revision=4498
2002-01-08 09:32:15 +00:00
Guy Harris
6b2ee38ad3 From Albert Chin: eliminate a GCCism.
svn path=/trunk/; revision=4467
2002-01-03 20:01:07 +00:00