Commit Graph

2373 Commits

Author SHA1 Message Date
Richard Sharpe bf98417be0 We have to free up the per-frame data when we rescan, because we have
called packet_init_proto, which blows away the items the list points to.

svn path=/trunk/; revision=2408
2000-09-11 07:33:56 +00:00
Guy Harris 332d5715e8 Compute and display negative relative and delta time stamps correctly,
just in case time goes backwards (yes, it sometimes does happen in
captures).

svn path=/trunk/; revision=2407
2000-09-10 06:44:39 +00:00
Laurent Deniel 6755d16641 Small changes in help windows:
- update overview.
- add a note if packet capture is not available.

svn path=/trunk/; revision=2406
2000-09-09 15:00:36 +00:00
Guy Harris c1b76aa400 In the callback for the "OK" button in the font selection dialog, check
to make sure we can load the font the user selected *and* the font that
would, in theory, be the boldface version of that font; if not, pop up
an error dialog, and don't nuke the font selection dialog (i.e., the
user either has to pick fonts that work, or give up in disgust and click
"Cancel").

Don't set "prefs.gui_font_name" until the "fetch" function is called -
stuff the name in a static variable when the user clicks "OK" in the
font selection dialog.

svn path=/trunk/; revision=2405
2000-09-09 10:35:53 +00:00
Guy Harris f0efbd1a02 "redraw_hex_dump()" can't use "cfile.pd" or "cfile.current_frame", as it
may be redrawing a packet window that displays a frame other than the
current frame; give it arguments to specify the raw frame data and
"frame_data" structure for the frame.

This requires that each packet window have, associated with it, a
pointer to the "frame_data" structure; that replaces the "cap_len" and
"encoding" fields in a "PacketWinData" structure, as those are just
copies of fields from the frame's "frame_data" structure.

"packet_hex_print()" needn't be passed both the start and length values
from a "field_info" structure - just pass it a pointer to that
structure, or NULL for "no field is selected in the packet".  It also
needn't, any longer, be passed the "cap_len" and "flags.encoding" fields
of a "frame_data" structure - just pass it a pointer to that structure.

In "redraw_hex_dump_all()", don't redraw the hex dump pane of the main
window if there is no current frame.

svn path=/trunk/; revision=2404
2000-09-09 10:26:58 +00:00
Guy Harris 6e04ac48f9 Explain why "stream_prefs_apply()" doesn't do anything.
svn path=/trunk/; revision=2403
2000-09-09 10:04:53 +00:00
Guy Harris a11b619f2a "#if 0" out the code that puts "Cut", "Copy", and "Paste" items into the
"Edit" menu, pending the implementation of cut/copy/paste, so that users
don't think that there's something they can do (other than implementing
cut/copy/paste :-)) to be able to use those functions.

svn path=/trunk/; revision=2402
2000-09-09 08:17:51 +00:00
Guy Harris e91341e3c3 Redraw:
the text in all "Follow TCP Stream" windows;

	the text in the help window if we have one up;

	all hex dump windows;

when GUI preference changes are to be applied, so that font changes and
"Follow TCP Stream" color changes show up.

Update both the Roman and bold font when the font is changed.

Don't decrement the reference counts on the old Roman and bold fonts
until that's all done.

svn path=/trunk/; revision=2401
2000-09-08 10:59:21 +00:00
Guy Harris 0caf526d01 Get rid of a debugging "fprintf()" call in "tvb_format_text()".
svn path=/trunk/; revision=2400
2000-09-08 09:54:20 +00:00
Guy Harris b85ddbe885 Graham Bloice's patch to support inverse video rather than boldface
highlighting of the bytes, in the hex dump window, corresponding to a
selected field.

Also, make "remember_ptree_widget()" static, as it's not used outside
"gtk/proto_draw.c".

svn path=/trunk/; revision=2399
2000-09-08 09:50:08 +00:00
Guy Harris 0653c5b18b Load "libsnmp.so.0", not "libsnmp.so":
on the systems that have the problem we're working around, the
	SNMP shared library is "libsnmp.so.0";

	on those systems, there's also no "libsnmp.so" unless the user
	has installed the UCD SNMP development package or has made a
	symlink from "libsnmp.so" to "libsnmp.so.0" by hand, and we
	don't want to force users to do that (some of them may be
	sufficiently new to UNIX that they don't know how to do that);

	the run-time linker, if told to load "libsnmp.so", won't
	necessarily realize that it's the same object as "libsnmp.so.0",
	and may load it again rather than using the already-loaded
	object, which might not be a good idea.

svn path=/trunk/; revision=2398
2000-09-08 07:14:01 +00:00
Richard Sharpe f0e7e26119 I have tvbuffified packet-bxxp.c and started on per-session and per-packet
state so I can dissect things correctly ...

Will have to clean out all the old non-tvbuff cruft as well.

Boy, I will be glad when we re-do Ethereal and have TCP segment re-assembly under control.

svn path=/trunk/; revision=2397
2000-09-08 06:19:37 +00:00
Richard Sharpe df7def4025 Added tvb_format_text
svn path=/trunk/; revision=2396
2000-09-08 06:16:58 +00:00
Gilbert Ramirez a5b6e4ed65 Add return type for tvb_strneql() and add prototype in tvbuff.h
svn path=/trunk/; revision=2395
2000-09-07 15:29:40 +00:00
Richard Sharpe 9b2144f9bf Add tvb_strneql routine for checking if a string is present in the
tvb at the current offset.

svn path=/trunk/; revision=2394
2000-09-07 13:00:12 +00:00
Guy Harris a708cd140f Always use "g_free()" to free "ifc.ifc_buf"; it's set to a value
allocated by "g_malloc()", and one should always use "g_free()" to free
stuff allocated with "g_malloc()" (using "free()" works if GLib isn't
compiled with any special memory allocator debugging/profiling options,
but doesn't work if it is compiled with those options).

svn path=/trunk/; revision=2393
2000-09-07 09:57:39 +00:00
Gilbert Ramirez f52ffba407 Change wtap_read() API so that the data offset is set via a pointer, and
a "keep reading" boolean value is returned from the function.
This avoids having to hack around the fact that some file formats truly
do have records that start at offset 0. (i4btrace and csids have no
file header. Neither does the pppdump-style file that I'm looking at right now).

svn path=/trunk/; revision=2392
2000-09-07 05:34:23 +00:00
Gilbert Ramirez e1f3604b37 Change variable from 'char*' to 'const char*' to avoid compiler warning.
svn path=/trunk/; revision=2391
2000-09-07 05:08:19 +00:00
Gilbert Ramirez c50091ed92 Check that columns are enabled and that COL_INFO exists before adding
to it (in the *_OR_DIE macros).

svn path=/trunk/; revision=2390
2000-09-06 19:05:41 +00:00
Gilbert Ramirez 066c4e8df9 Fix offset bug in func 0x1737, and added code to automatically check
offsets. Bug found by Marcel Cox <marcel.cox@myrealbox.com>

svn path=/trunk/; revision=2389
2000-09-06 04:50:51 +00:00
Laurent Deniel 7acf24b370 Fix help display (random character displayed in tab).
svn path=/trunk/; revision=2388
2000-09-05 19:07:06 +00:00
Gilbert Ramirez 49f6383e0e Fix labelling of endianness. Error reported by
Ken A. Rederg�rd <kenr@trustix.com>

svn path=/trunk/; revision=2387
2000-09-01 16:02:36 +00:00
Gilbert Ramirez 14a6294e69 Re-arrange size and nmemb arguments in fread() (file_read()) calls so
that these calls work on Win32. I still don't have a good reason as to
why this is necessary, but it fixes the problem. I'll continue looking
for a reason.

svn path=/trunk/; revision=2386
2000-08-31 16:44:47 +00:00
Uwe Girlich 3ab7bc9761 The interface list will now be get into an dynamic growing buffer and not
the (too big) buffer for 1024 network cards.
The code comes directly after the ideas in Steven's book (UNIX network
programming).

svn path=/trunk/; revision=2385
2000-08-31 11:12:19 +00:00
Richard Sharpe 8d0ca23802 Initial BXXP dissector ...
Lots more work to be done.

svn path=/trunk/; revision=2384
2000-08-30 12:42:31 +00:00
Gilbert Ramirez 8afa787b0e List pint.h as a source file.
svn path=/trunk/; revision=2383
2000-08-30 02:58:24 +00:00
Gilbert Ramirez 0e3cb70212 Add FT_STRINGZ type. NCP dissector is only one that uses it right now.
Remove tvb_get_stringz from quake dissector and add tvb_get_nstringz,
tvb_get_nstringz0, and tvb_strnlen to tvbuff.c.

Remove multiple definitions of pntohl and friends from various places
(except for wiretap) and put into pint.h

Consolidate duplicate code for turning FT_* enums into strings (ala the
glossary).

svn path=/trunk/; revision=2382
2000-08-30 02:50:18 +00:00
Jun-ichiro itojun Hagino 1a06c6a7ea correct nodeinfo (node addresses). it returns address (16byte) + ttl (4byte),
not just addresses.  KAME kernel currently uses old format, so ethereal
does not work with current KAME kernel (KAME kernel will be corrected).

svn path=/trunk/; revision=2381
2000-08-29 14:17:12 +00:00
Guy Harris 6dc7a7ac4f Don't set the text on a V2 READDIR entry if there's no entry.
svn path=/trunk/; revision=2380
2000-08-27 02:03:31 +00:00
Richard Sharpe 1dfb66bc67 Fix a minor spelling mistake ...
svn path=/trunk/; revision=2379
2000-08-26 11:25:28 +00:00
Gilbert Ramirez 4a3b77ba46 Move #include <time.h> into wtap-int.h instead of requiring it in
every C file. I noticed this because of a build break of csids.obj on
Win32.

svn path=/trunk/; revision=2378
2000-08-25 21:25:43 +00:00
Guy Harris 5429a55be3 Attach my name to the "GtkClist replacement" item; it's a work in
progress, but the beginnings of one exist (it's far from ready for prime
time, but it does read in capture files a lot quicker and consumes a
fair bit less memory).

Get rid of the item about a line-mode capture program - that's
Tethereal.

Get rid of the "Make lines in GTK Tree (proto_tree GUI) user-selectable"
item, as they're now user-selectable.

Put back the item about Kerberos V4 - we hae a V5 dissector, but no V4
dissector yet.

svn path=/trunk/; revision=2377
2000-08-25 20:50:31 +00:00
Laurent Deniel ca825e0ea5 Remove some items which are now available.
svn path=/trunk/; revision=2376
2000-08-25 19:43:28 +00:00
Gilbert Ramirez 3bdcd15cb4 Note GTK+ distribution version for 0.8.11 binary release.
I finally have working tools, so a 0.8.11 win32 binary release we be
available soon.

svn path=/trunk/; revision=2375
2000-08-25 19:21:24 +00:00
Laurent Deniel 9310d96221 - add protocol registration
- add some missing Vines IP header fields in protocol tree
- add protocol type as display filter
- miscellaneous code cleaning

svn path=/trunk/; revision=2374
2000-08-25 18:46:11 +00:00
Laurent Deniel 465895fcab Fix comment.
svn path=/trunk/; revision=2373
2000-08-25 13:05:32 +00:00
Laurent Deniel 250b9e7a99 Fix comment and add reference to RFC.
svn path=/trunk/; revision=2372
2000-08-25 13:00:05 +00:00
Laurent Deniel f5a09a3f31 Add protocol registration (pptp).
Add OLD_CHECK_DISPLAY_AS_DATA().

Add display filters.

Check the magic cookie to see if the decoding or frame is correct
(in most cases, we probably need TCP reassembly).

svn path=/trunk/; revision=2371
2000-08-25 12:30:30 +00:00
Guy Harris 9cc45a4a10 Include the control-field information in the Info column for LLC frames.
svn path=/trunk/; revision=2370
2000-08-25 06:31:25 +00:00
Guy Harris 5e52e98926 Redo the way we map between libpcap encapsulation type codes and Wiretap
encapsulation type codes - for those libpcap type codes whose numerical
value is interpreted differently by different versions of libpcap,
include <pcap.h> if you can and, if you can, use what it defines to
control which Wiretap code we map those type codes to.

Also, map the new libpcap type codes introduced by libpcap 0.5.

svn path=/trunk/; revision=2369
2000-08-25 06:25:21 +00:00
Guy Harris 49d075c4b3 Include bus errors and aborts, as well as segmentation violations, as
examples of errors that generate core dumps, and suggest that a stack
trace from the debugger could be useful for *all* failures that produce
core dumps.

Note that the core dump file may be named "ethereal.core", and note that
"tethereal" rather than "ethereal" should be used in file names if it's
Tethereal that blew up.

svn path=/trunk/; revision=2368
2000-08-24 23:33:09 +00:00
Guy Harris 2cbf5c4a15 Give the RFC number of the spec for the portmapper/rpcbind protocols.
svn path=/trunk/; revision=2367
2000-08-24 23:16:16 +00:00
Guy Harris 381eb6bf29 Add a comment giving the RFC numbers of specs for ONC RPC.
svn path=/trunk/; revision=2366
2000-08-24 23:09:37 +00:00
Guy Harris c0aac1e720 Name updates to stuff in GSS authentication for ONC RPC, from Dug Song.
svn path=/trunk/; revision=2365
2000-08-24 22:58:56 +00:00
Laurent Deniel 99421f72f4 Do not malloc a TCP fragment for a packet that does not contain data.
svn path=/trunk/; revision=2364
2000-08-24 21:05:16 +00:00
Laurent Deniel c691739727 Add some dlg_set_cancel().
Reduce a bit the button sizes for homogeneousness.

(still need some work on filter color selection, in progress ...)

svn path=/trunk/; revision=2363
2000-08-24 13:21:29 +00:00
Richard Sharpe 18a3495d64 Fixes to add state keeping and properly decode SMTP.
svn path=/trunk/; revision=2362
2000-08-24 11:32:09 +00:00
Guy Harris 781eb21d46 If we've thrown away saved state before a rescan of the frames in a
capture, clear the per-frame data pointers of all frames in the capture,
as those pointers now refer to data that's been freed.

Do that to all frames even if the user stops the rescan in the middle -
and clear the "visited" flag for all frames as well.

svn path=/trunk/; revision=2361
2000-08-24 09:16:39 +00:00
Guy Harris 5765a6e587 Use 0, rather that 0xffffffff, as the "no reply frame number known yet"
- frame numbers are 1-origin, so 0 can be used as an "exception" value.

In the protocol tree for a reply, don't say that the reply is to frame
N, just say that it's to a request starting in frame N - a frame can
contain more than one request, and a request may take more than one
frame.

svn path=/trunk/; revision=2360
2000-08-24 08:55:30 +00:00
Guy Harris 8d8d351d02 Actually, we do have to clear all the dissector information if we're
redissecting the packets due to some preference changing, as the
preference may affect what state information gets constructed as a
result of some particular frame being dissected.

We don't have to do it when filtering the packets, or colorizing them,
however.

svn path=/trunk/; revision=2359
2000-08-24 06:45:37 +00:00