Commit Graph

3180 Commits

Author SHA1 Message Date
Guy Harris 28aa29c12c Update the list of types, and fix some typos.
svn path=/trunk/; revision=3070
2001-02-23 07:24:21 +00:00
Guy Harris 3b5ef0b696 Update the documentation to correctly reflect the way tests on Boolean
fields work in display filters.

svn path=/trunk/; revision=3069
2001-02-23 07:17:07 +00:00
Guy Harris c1764ee28d Boolean fields are just like other fields - if you use the field name
without a comparison operator, it tests for the field's presence or
absence, not its value; to test whether a Boolean field is true, you
compare it with a non-zero value, and to test whether it's false, you
compare it with a zero value.

Make the filter expression construction dialog handle that correctly.

svn path=/trunk/; revision=3068
2001-02-23 07:09:39 +00:00
Guy Harris 52df3c73ec The text entry box that a filter construction dialog manipulates is
always attached to the dialog as the E_FILT_FILTER_TE_KEY data, but only
sometimes attached as the E_FILT_TE_KEY data.

Get rid of E_FILT_TE_KEY completely, as it's redundant, and use only
E_FILT_FILTER_TE_KEY; this keeps us from crashing as a result of trying
to manipulate the widget referred to by E_FILT_TE_KEY if E_FILT_TE_KEY
hasn't been set to refer to any widget.

svn path=/trunk/; revision=3067
2001-02-23 05:54:27 +00:00
Guy Harris 99ec31082e Etherpeek version 5, 6, and 7 support, from Daniel Thompson.
svn path=/trunk/; revision=3066
2001-02-22 22:03:31 +00:00
Guy Harris fdcd7c35b0 NFSv4 updates from Mike Frisch to fix some cosmetic issues when
displaying XDR arrays.

svn path=/trunk/; revision=3065
2001-02-21 23:53:25 +00:00
Gilbert Ramirez 68763b3e27 Initialize hf_ip_checksum_bad to -1 like all other fields.
svn path=/trunk/; revision=3064
2001-02-21 19:42:37 +00:00
Guy Harris 35d8c6cbb2 Change from James E. Flemer to add hidden Boolean fields that are set if
the IP or ICMP checksum is bad.

svn path=/trunk/; revision=3063
2001-02-21 19:35:50 +00:00
Guy Harris 81f6ce8b71 Make the "activate" signal on the text entry boxes in the filter editing
dialog activate the entire dialog box.

svn path=/trunk/; revision=3062
2001-02-20 20:25:08 +00:00
Guy Harris 16091b24f1 Catch the "destroy" signal on the filter-expression-construction dialog,
and, when it's being destroyed, disconnect from the "destroy" signal on
the text entry box to which it's attached, so that, when that text entry
box is destroyed, we don't try to get rid of the no-longer-extant
filter-expression-construction dialog.

svn path=/trunk/; revision=3061
2001-02-20 20:14:18 +00:00
Guy Harris 83a7e036fb Catch the "destroy" signal on the text entry box to which a
filter-expression-construction dialog box is attached; if the text entry
box is destroyed (which typically means the window it's in was
destroyed), get rid of the filter-expression-construction dialog box.

svn path=/trunk/; revision=3060
2001-02-20 20:06:04 +00:00
Guy Harris d1337c0481 The all-purpose answer to "this widget expands to fill the space
available for it and it looks ugly" is "throw an alignment around it".
(I *still* don't know why it's not required in other dialog boxes, e.g.
the filter-editing dialog box.)

svn path=/trunk/; revision=3059
2001-02-20 19:09:30 +00:00
Nathan Neulinger 4f2ef9c564 added support for dissecting SRV RRs
svn path=/trunk/; revision=3058
2001-02-20 16:25:52 +00:00
Guy Harris f49d4467fc Make the "activate" signal on the text entry boxes in the filter
expression construction dialog activate the entire dialog box.

Make a desperate but failed attempt to bludgeon GTK+, The Toolkit That
Knows Better Than You Do How Big Buttons Should Be Made, Even If It
Looks Butt-Ugly, And Which Appears To Randomly Decide Whether To Make It
Look Ugly Or Not, into making the "Cancel" button as tall as the inside
of the "Accept" button, not as tall as the "Accept" button plus its
"this is the default button" surround.

svn path=/trunk/; revision=3057
2001-02-20 09:53:48 +00:00
Guy Harris ef2d72eaf8 Call the test for a protocol "is present", just like the test for other
fields.

Show a relational operator on a field if the field supports it *or* if
the field can be sliced and the type generated by a range (FT_BYTES)
supports it.  (This lets you do a comparison on a protocol, not just on
a range of a protocol - e.g., "arp == 2", not just "arp[0:1] == 2" - but
the alternative would be to show only the "is present" test, as if you
don't offer the other tests, you can't turn on the range text box when
they select a comparison expression if you don't show comparison
expresions...).

svn path=/trunk/; revision=3056
2001-02-20 09:28:28 +00:00
Guy Harris f0798c6011 In the DIAMETER dissector, clear the Info column before fetching
anything from the packet, so that if we throw an exception before
setting the Info column, it doesn't have stuff left over from the
previous dissector.

Tvbuffify the RADIUS dissector.

svn path=/trunk/; revision=3055
2001-02-20 08:10:14 +00:00
Guy Harris 60e9ef8f05 Temporarily bring "packet-diameter.h" back from the dead; changing it
and deleting it might've confused the stuff that generates the anonymous
CVS tree, as it didn't propagate the deletion.  I'll delete it again
after this checkin shows up in the anonymous CVS tree.

svn path=/trunk/; revision=3054
2001-02-20 07:48:44 +00:00
Jun-ichiro itojun Hagino 4176e85440 correct TSIG decoding (specifically offset/length in dump list).
svn path=/trunk/; revision=3053
2001-02-20 07:17:20 +00:00
Guy Harris 0db0d3d438 On Win32, if Ethereal started as a GUI rather than a console
application, catch what GLib message-logging calls we can, and create a
console and make it the standard input, output, and error if such a call
is made, so those messages show up in a console window.  Create the
console for the output of "ethereal -v" as well.

svn path=/trunk/; revision=3052
2001-02-20 04:09:37 +00:00
Guy Harris 3787d34ade Don't do anything with 64-bit integral types if G_HAVE_GINT64 isn't
defined.

Use "gint64" and "guint64", not "long long int", for 64-bit integral
types, so that this code works with compilers (such as Microsoft Visual
C++) that have 64-bit integral types but that don't call them "long
long".

Use "pntohll()" to extract 64-bit integral types from a field.

Put a "break;" into a "default:" clause - MSVC++ doesn't like

	switch (XXX) {

		...

	default:
	}

svn path=/trunk/; revision=3051
2001-02-20 01:20:24 +00:00
Guy Harris e917aa9088 As "dissect_diameter()" is now static to "packet-diameter.c", there's no
need to declare it in "packet-diameter.h" - and no need for
"packet-diameter.h".

svn path=/trunk/; revision=3050
2001-02-19 23:16:36 +00:00
Guy Harris 6c655bb1c5 New tvbuffified DIAMETER dissector, from David Frascone.
It doesn't do DIAMETER-over-UDP, so the RADIUS dissector no longer
checks for DIAMETER packets and calls the DIAMETER dissector if it finds
one.

svn path=/trunk/; revision=3049
2001-02-19 23:14:02 +00:00
Guy Harris 1574eec2f4 Updates from Alexandre P. Ferreira.
svn path=/trunk/; revision=3048
2001-02-19 21:02:33 +00:00
Guy Harris fd6cd6f9bc In the MSVC++ 6.0 C library, "line-buffered" doesn't mean what one might
expect - it means "same as fully-buffered".  This means that the "-l"
flag is a no-op on Windows.

Instead of setting line-buffered mode with "setvbuf()", set a flag and,
if that flag is set, flush the standard output after the information for
ever packet is printed; this isn't "line-buffered", either, but, as the
reason for doing line-buffering is to allow the output of Tethereal to
be piped to a program and to have that program see the output for a
packet as soon as the packet is seen and dissected, it should be just as
good as line-buffered.

svn path=/trunk/; revision=3047
2001-02-18 03:38:44 +00:00
Gilbert Ramirez 9be2e1df55 3rd time's a charm.
Check against the *correct* buffer size.

svn path=/trunk/; revision=3046
2001-02-16 22:53:07 +00:00
Gilbert Ramirez 4d63c20e59 Off-by-a-little-bit in adjusting the offset.
svn path=/trunk/; revision=3045
2001-02-16 21:44:54 +00:00
Gilbert Ramirez 87b6e2dd62 Don't trust avp_length, which is taken directly from the packet data.
svn path=/trunk/; revision=3044
2001-02-16 21:41:00 +00:00
Gilbert Ramirez 728ec7f581 Actually, this works better.
svn path=/trunk/; revision=3043
2001-02-16 19:45:38 +00:00
Gilbert Ramirez 9bf1a2e8d0 Use the proper way to denote that a single operation
produces 2 files. (grammar.lemon --> grammar.c grammar.h)

svn path=/trunk/; revision=3042
2001-02-16 19:44:16 +00:00
Guy Harris 843dbe1e82 Updates from Alexandre P. Ferreira.
svn path=/trunk/; revision=3041
2001-02-15 19:46:41 +00:00
Guy Harris 7a47c7ef24 Don't cast the function argument to "qsort()" to the expected type, make
the function have the expected type.

Make the arguments to comparison functions used by the merge sort be
"const void *", not "void *", just as the arguments to the comparison
functions used by "qsort()" are "const void *".

svn path=/trunk/; revision=3040
2001-02-15 09:25:38 +00:00
Guy Harris 352eec3037 More prototype fun - make the Lemon parser allocate and free routines
take fully-prototyped function arguments with types appropriate to
"g_malloc()" and "g_free()", and change the calls to the functions
pointed to by those arguments not pass the extra __FILE__ and __LINE__
arguments.

svn path=/trunk/; revision=3039
2001-02-15 06:22:46 +00:00
Guy Harris 6eaa148b30 More paranoia - when compiling with GCC 2.x, do checks of the format
string argument and subsequent arguments to "ErrorMsg()".

Fix up the bugs the checks in question found.

svn path=/trunk/; revision=3038
2001-02-15 06:08:23 +00:00
Guy Harris efabd03215 Change "lemon" *NOT* to cast pointers to "int", as that doesn't work on
LP64 platforms.

Change "lemon" to use function prototypes and the official ANSI C style
of variable-argument-list functions, and to include various system
header files rather than to use non-prototype declaration of various
system functions, to do a lot more type checking.

svn path=/trunk/; revision=3037
2001-02-15 06:01:23 +00:00
Guy Harris 737add8165 Get rid of the "CHECK_DISPLAY_AS_DATA()" call and the setting of
"pinfo->current_proto" - this routine is called only through a dissector
table, and the code to call through a dissector table does that stuff
for you.

Clear the Info column before doing anything that could throw an
execption, so that if an exception is thrown the display doesn't show
junk left over from the protocol above us.

Get rid of the GCCism "case N ... M".

svn path=/trunk/; revision=3036
2001-02-14 20:03:05 +00:00
Gilbert Ramirez bd0e066445 Add MIP extensions. Re-work some of the tvbuff-handling logic.
Update Stefan's e-mail address.

svn path=/trunk/; revision=3035
2001-02-14 17:01:44 +00:00
Guy Harris 4dee072069 Rename "SP_ERROR" to "SP_ERROR_MSG" to avoid a #define collision with
yet another Windows #define.

svn path=/trunk/; revision=3034
2001-02-14 09:40:20 +00:00
Guy Harris 33ca70bed1 Sigh. Microsoft Visual C++ 6.0 won't convert a "guint64" to a "double"
- it only allows you to convert a *signed* 64-bit integer to a "double".
Cast the result of "pletohll()" to "gint64" before returning it from a
function that returns a "double".

svn path=/trunk/; revision=3033
2001-02-14 09:38:10 +00:00
Guy Harris f6f6aa6424 "Decode As" UI cleanups, and documentation, from David Hampton.
svn path=/trunk/; revision=3032
2001-02-14 07:15:39 +00:00
Guy Harris 7fa0ba0a11 Updates from Yaniv Kaul to show the certificate encoding and type
symbolically.

svn path=/trunk/; revision=3031
2001-02-13 20:47:17 +00:00
Guy Harris bea00e22cf In a display filter expression, make a field name refer to any of the
fields with that name.

svn path=/trunk/; revision=3030
2001-02-13 18:34:51 +00:00
Guy Harris cb58c92d1d Updates from Mike Frisch.
svn path=/trunk/; revision=3029
2001-02-13 18:28:29 +00:00
Guy Harris 2833a57f09 You have to define "htolell()" on little-endian platforms, too....
svn path=/trunk/; revision=3028
2001-02-13 07:07:17 +00:00
Guy Harris b3f35be74a Changes from Chris Jepeway to
in some places use "guint64", on plaforms where it's available,
	rather than floating point (we don't yet use it universally, as
	we'd have to provide code to do 64-bit arithmetic on
	platforms/compilers where 64-bit integral types aren't
	supported);

	use .838096 microseconds rather than 1 microseconds as the time
	stamp units for NetXRay 2.x format, as those capture files seem
	to use that time stamp (that's the Sniffer "PC" time stamp;
	perhaps when Network Associates assimilated Cinco, they changed
	the time stamp units).

svn path=/trunk/; revision=3027
2001-02-13 00:50:05 +00:00
Guy Harris 35dfa54307 Updates from Neil Hunter.
svn path=/trunk/; revision=3026
2001-02-13 00:17:55 +00:00
Guy Harris 30d13244eb Changes to correctly decode BOOTP option 82, from Greg Kilfoyle.
svn path=/trunk/; revision=3025
2001-02-13 00:01:08 +00:00
Guy Harris 0196634a17 If there are multiple fields with the same name, list only one of them
in the output of "{ethereal,tethereal} -G", so that it appears only once
in the documentation.

Expand some comments to give more details.

svn path=/trunk/; revision=3024
2001-02-12 10:06:51 +00:00
Guy Harris 32a7b693f9 If you register more than one field with the same name, the dfilter code
can now handle that; this allows us to register both the modulo-8 and
the modulo-128 versions of various X.25 bitfields with "x.25.XXX" names,
which lets us get rid of the "ex.25" protocol stuff completely and use
"x.25" for both modulo-8 and modulo-128 X.25.  Do so.  (Also, fix up
some cases where we appeared to be using the modulo-8 fields when
dissecting modulo-128 X.25.)

This, in turn, allows us to register the X.25 dissector, as there's now
only one protocol with which it's associated, and make it static and
have it called only through a handle, and to, when registering it with
the "llc.dsap" dissector table, associate it with "proto_x25".

That, in turn, allows us to get rid of the "CHECK_DISPLAY_AS_DATA()"
calls, and the code to set "pinfo->current_proto", in the X.25
dissector.

The code for the display filter expression dialog would, if there are
two fields with the same name registered under a protocol, list both of
them; have it list only one of them - the fields should have the same
type, the same radix, and the same value_string/true_false_string table
if any (if they don't, they're really not the same field...).

svn path=/trunk/; revision=3023
2001-02-12 09:06:19 +00:00
Guy Harris 076c614cfb Display Ethernet protocol types in hex, not decimal (that's how they're
generally shown), and display port numbers and IP protocol numbers as
unsigned.

svn path=/trunk/; revision=3022
2001-02-12 01:17:23 +00:00
Guy Harris 6e250ba730 "Off-hoke"? What had I been smoking when I typed that?
svn path=/trunk/; revision=3021
2001-02-11 23:19:00 +00:00