Commit Graph

2242 Commits

Author SHA1 Message Date
Guy Harris ab2dca9114 Move some headers for stuff defined by a dissector into epan/dissectors
- and rename smb.h to packet-smb.h, as it's packet-smb.c's header file.

svn path=/trunk/; revision=15845
2005-09-17 00:31:15 +00:00
Guy Harris b7b80d94be Move a pile of protocol-related headers from the top-level source
directory to the epan directory.  Some of them should perhaps ultimately
be moved to epan/dissectors, if they pertain only to stuff exported by a
particular dissector.

Fix Gerald's e-mail address in files we're moving.

svn path=/trunk/; revision=15844
2005-09-17 00:02:31 +00:00
Gerald Combs 33cfe1725a Sort each conversation column numerically. Fix up whitespace.
It looks like we can't put "COPYCMD=/Y" in config.nmake and expect nmake
to do the right thing.  Add a comment, and set COPYCMD explicitly in the
root Makefile.nmake.  The rest of the occurrences of xcopy will have to
be taken care of at some point.

svn path=/trunk/; revision=15840
2005-09-16 16:25:53 +00:00
Ulf Lamping 5c03646d3d fixing the fix, it's time to go to bed ...
svn path=/trunk/; revision=15830
2005-09-16 00:02:31 +00:00
Ulf Lamping c8360f8b58 bugfix: don't crash (assert), if jumping to the first packet and packet_list is currently empty. Can happen at capture start.
svn path=/trunk/; revision=15829
2005-09-15 23:44:07 +00:00
Luis Ontanon fd05837613 leak fix
svn path=/trunk/; revision=15825
2005-09-15 19:26:05 +00:00
Ulf Lamping 84cf7ce767 added compression support for capture file output. The Save/As dialog now has a checkbox "Compress with gzip"
currently limited to Ethereal and all the variants of libpcap filetypes only.

We might want to add output compression support to the other tools as well (tethereal, mergecap, ...).

We might also want to add support for the other filetypes, but this is only possible if the filetype functions doesn't use special output operations like fseek.

One bug is still left: if the input and output filetypes while saving are the same, Ethereal currently optimizes this by simply copy the binary file instead of using wiretap (so it will be faster but it will ignore the compress setting). 

Don't know a good workaround for this, as I don't know a way to find out if the input file is currently compressed or not. One idea might be to use a heuristic on the filesize (compared to the packet size summmary). Another workaround I see is to remove this optimization, which is of course not the way I like to do it ...

svn path=/trunk/; revision=15804
2005-09-14 21:57:30 +00:00
Guy Harris f34e1a97c6 Have cf_retap_packets() take an argument that indicates whether to
generate columns; use cf_retap_packets instead of cf_redissect_packets()
when running taps (the general flow graph stat uses the Info column).

svn path=/trunk/; revision=15793
2005-09-14 08:59:41 +00:00
Ulf Lamping 7900675ab5 Move "Expert Info" from "Statistics" to "Analyze" menu item.
*significantly* improve performance (100000 infos from ~5min to 25sec!)

Add a simple severity based filter mechanism.

replace // style comments by /**/

svn path=/trunk/; revision=15791
2005-09-13 23:46:42 +00:00
Ulf Lamping a656768170 implement a way to add menu items to the "Analyze" menu
svn path=/trunk/; revision=15788
2005-09-13 18:45:52 +00:00
Ulf Lamping f2712da215 don't crash with a NULL pointer exception, if "do not decode as" is used
svn path=/trunk/; revision=15787
2005-09-13 18:42:12 +00:00
Ulf Lamping 5ef6619fc1 use the same name for menu item and dialog box title, use the right capitalization for both
svn path=/trunk/; revision=15784
2005-09-13 18:38:19 +00:00
Anders Broman 06c1f4ad6c From Alejandro Vaquero.
svn path=/trunk/; revision=15778
2005-09-13 04:53:36 +00:00
Ulf Lamping 9e5a98abae When jumping (e.g. using menu item Go/Go to Packet...) to a new packet which is currently not displayed, this newly selected packet will become the first in the packet list.
This is inconvenient, as most of the time (at least) I'm interested not only in the packets behind the newly selected one, but also to have some history *before* it.

So this change will scroll the packet list to have the selected packet after the first third of the packet list.

This change won't take effect if the new packet is already visible (only the selection is changed) or it's near the beginning or end of the packet list (so the whole beginning/end of the list is shown).

svn path=/trunk/; revision=15772
2005-09-12 20:10:44 +00:00
Guy Harris d8873511a7 Frame numbers are unsigned, and they start at 1; 0 is what's used for
"unknown" for frame numbers.  Note that in epan/frame_data.h, and make
the frame number in experts unsigned, and use 0 for "unknown", and
display it as an unsigned number - and, if it's 0, don't display it at
all.

Fix the signature of "expert_dlg_draw()" to match what a tap's draw
routine's signature is expected to be.

svn path=/trunk/; revision=15760
2005-09-11 22:25:33 +00:00
Ulf Lamping 57d099a0c2 some things fixed, leftover from code cleanup (thanks to the buggy MSVC dependencies)
svn path=/trunk/; revision=15755
2005-09-11 17:15:00 +00:00
Ulf Lamping 642467ad5c I'm adding the "Expert Info" prototype now, as it seems to be in a state where others might have a look and probably already find it useful :-). Anyway, we can easily disable it at one or two places in the code if it get's in our way of a new release.
Please see: http://wiki.ethereal.com/Development/ExpertInfo for a complete overview of the intended feature and it's current state of implementation.

While I'm working on this, I've also added some more status result codes to the DCE/RPC and DCOM dissectors.

svn path=/trunk/; revision=15754
2005-09-11 16:55:34 +00:00
Guy Harris dc7b533e41 Update new RSVP host list and conversation stats to match recent changes
to the way command-line arguments and menu items for stats are done.

svn path=/trunk/; revision=15737
2005-09-09 08:20:16 +00:00
Guy Harris 3766c03346 Don't handle the ETHEREAL_STOCK_CAPTURE_START button if we don't have
libpcap - ETHEREAL_STOCK_CAPTURE_START isn't defined, and we can't
capture in any case, so we don't need that button.

svn path=/trunk/; revision=15736
2005-09-09 08:11:47 +00:00
Ulf Lamping cd7b8f0f08 set the window title of the Win32 debug console
svn path=/trunk/; revision=15720
2005-09-08 09:19:46 +00:00
Ulf Lamping c5b67384a5 close the capture interfaces dialog if the user pressed "Capture" or "Prepare"
this dialog is live capturing from all "known" interfaces while it's open, so huge system load is generated, which is not preferred while doing a real capture.

svn path=/trunk/; revision=15719
2005-09-07 22:00:25 +00:00
Ulf Lamping 56c76e637e don't wait for a keypress if this is a capture child. This was very annoying, as stopping a capture seems to freeze Ethereal, but it simply waits for a keypress on the capture_child's console window.
svn path=/trunk/; revision=15718
2005-09-07 21:47:51 +00:00
Ronnie Sahlberg ac5f9b239f From Manu Pathak
Make RSVP tappable

add hostlist and conversation listing for RSVP conversations



svn path=/trunk/; revision=15714
2005-09-07 19:52:44 +00:00
Guy Harris f0b7251b34 Use the "svnversion" variable, exported by version_info.c, to print the
version number from SVN for non-release builds, just as Tethereal does. 
Fixes bug 408.

svn path=/trunk/; revision=15674
2005-09-03 18:21:48 +00:00
Ulf Lamping d9b789cc05 don't crash if the file_set dialog is opened and a "none fileset" file is already loaded. This bug was introduced by me after the 0.10.12 release
svn path=/trunk/; revision=15671
2005-09-02 19:08:25 +00:00
Ronnie Sahlberg b177f170eb convert to g_snprintf()
also make range_convert_range() return an emem allocated string


svn path=/trunk/; revision=15660
2005-09-01 19:05:00 +00:00
Ronnie Sahlberg 55add7077f convert one sprintf into g_snprintf()
at the same time, make proto_construct_dfilter_string() return an emem allocated string.
This fixes a tiny memleak in print.c that never freed the string returned by this function.


svn path=/trunk/; revision=15651
2005-09-01 09:03:29 +00:00
Anders Broman 42637ec84b From Tomer Shani:
Patch which will enable saving payload in raw (binary) format in addition to the existing au format.

We have found it very useful to be able to extract the RTP data for use with other tools (especially when dealing with proprietary/uncommon coders).

Changes:

rtp_packet_save_payload: no longer transforms packet to linear coding, payload is saved in raw format 
copy_file: will perform the needed transcoding and save to needed format (au or raw)

svn path=/trunk/; revision=15648
2005-09-01 05:41:59 +00:00
Ulf Lamping 723c80ea90 timestamp display precision:
- automatic adjustment depending on file format
- manual adjustment through menu items

save the setting in the recent file

svn path=/trunk/; revision=15534
2005-08-25 21:29:54 +00:00
Luis Ontanon f1ba6f515f http://bugs.ethereal.com/bugzilla/show_bug.cgi?id=377
svn path=/trunk/; revision=15530
2005-08-25 15:48:28 +00:00
Gerald Combs 1b8f8ffcb3 Fix sorting in the "Ports" columns. Add a comment about address sorting.
Remove unused code.

svn path=/trunk/; revision=15529
2005-08-25 13:58:34 +00:00
Guy Harris 16e2c6605d The "secs" field of a "struct wtap_nstime" is a time_t, so it could be
an int or it could be a long; print stuff computed from it with %lu, and
cast the arguments to "long" so that it works on platforms where time_t
*isn't* a long and where "long int" and "int" have different sizes.

svn path=/trunk/; revision=15523
2005-08-25 01:16:40 +00:00
Ulf Lamping 6f43fbb2f0 EVERYTHING IN THE BUILDBOT IS GOING TO BE RED!!! Sorry!
I've done more than a day to change the timestamp resolution from microseconds to nanoseconds. As I really don't want to loose those changes, I'm going to check in the changes I've done so far. Hopefully someone else will give me a helping hand with the things left ...

What's done: I've changed the timestamp resolution from usec to nsec in almost any place in the sources. I've changed parts of the implementation in nstime.s/.h and a lot of places elsewhere.

As I don't understand the editcap source (well, I'm maybe just too tired right now), hopefully someone else might be able to fix this soon.

Doing all those changes, we get native nanosecond timestamp resolution in Ethereal. After fixing all the remaining issues, I'll take a look how to display this in a convenient way...

As I've also changed the wiretap timestamp resolution from usec to nsec we might want to change the wiretap version number...

svn path=/trunk/; revision=15520
2005-08-24 21:31:56 +00:00
Ronnie Sahlberg 6d5d4f8bec From Graeme Hewson
Fix for infinite loop of configure events that were present for early GTK 2.4 in addition to 2.2



svn path=/trunk/; revision=15517
2005-08-24 07:28:28 +00:00
Guy Harris 86ea8b88f3 Add a "time_stat_init()" routine to initialize the fields of a
"timestat_t".

Move "nstime_to_msec()" to "epan/nstime.c", as it has nothing to do with
a "timestat_t".

Use structure assignment when possible.

Fix the "addtime()" macro and use it in "time_stat_update()".

Use "timestat_t"s, and the routines to manipulate them, in the service
response time table code.

svn path=/trunk/; revision=15509
2005-08-22 07:12:20 +00:00
Guy Harris 50ed5c9159 Use "g_strdup_printf()" rather than formatting into a fixed-length
buffer and "g_strdup()"ing it.

Use the nstime.c routines to compute time deltas and to add up times.

Don't add rows to the CList until a procedure gets a non-zero call
count, so only the ones with non-zero call counts are displayed (and
especially so that procedure numbers not corresponding to real
procedures aren't displayed!).

Ethereal requires 64-bit integer support, so don't bother checking
whether we have it.

Use the right format for 64-bit integers.

svn path=/trunk/; revision=15506
2005-08-21 21:50:49 +00:00
Guy Harris 1bd66768de Use the tap_dfilter_dlg mechanism.
svn path=/trunk/; revision=15504
2005-08-21 20:24:59 +00:00
Guy Harris 06a670ae9b Use the tap_dfilter_dlg code.
svn path=/trunk/; revision=15503
2005-08-21 20:16:12 +00:00
Guy Harris 13e0b409cf As per a suggestion by Ulf Lamping, rename gtk_*.[ch] to gui_*.[ch], so
that it doesn't appear to be part of GTK+.

svn path=/trunk/; revision=15501
2005-08-21 19:24:11 +00:00
Ulf Lamping 06c86303e7 The protocol item in the protocol tree will have a gray background now, which makes it much better visible.
Add some more optional flags to the protocol items, so more "special cases" can be marked in the protocol tree.

New flags:
/** The protocol field has a bad checksum */
FI_CHECKSUM_ERROR
/** The protocol field has an unusual sequence (e.g. TCP window is zero) */
FI_SEQUENCE_WARNING
/** The protocol field has a bad sequence (e.g. TCP segment is lost) */
FI_SEQUENCE_ERROR

svn path=/trunk/; revision=15499
2005-08-21 15:23:48 +00:00
Guy Harris b3562ac040 "gtk_tap_dfilter_dlg_cb()" is no longer used outside
gtk/tap_dfilter_dlg.c; don't export it.

That means that gtk/tap_dfilter_dlg.h is no longer useful; get rid of
it.

Rename "gtk_tap_dfilter_dlg_cb()" to "tap_dfilter_dlg_cb()", as it's
inside GTK+-specific code, so there's no need to distinguish it from
non-GTK+ callbacks.

Update some comments to reflect the name change and the new API for
registering tap_dfilter_dlg stats.

Make the AFP and SMB stats use the gtk/tap_dfilter_dlg.c stuff.

svn path=/trunk/; revision=15496
2005-08-21 11:09:36 +00:00
Guy Harris 195c549d1a Have "register_dfilter_stat()" add "..." to the menu item, as all menu
items registered with it pop up a dialog box before displaying the stat.
Don't pass a name with "..." to it.

Put "..." into other menu items that pop up a dialog box before
displaying the stat; remove "..." from other menu items that don't.

svn path=/trunk/; revision=15495
2005-08-21 10:29:47 +00:00
Guy Harris a0e68da918 Add a "register_dfilter_stat()", to register stats that take a display
filter as an argument on the command line and have a dialog box to enter
the display filter through the GUI.  Use it for all stats using
"gtk_tap_dfilter_dlg_cb()".

Add a top-level "stat_menu.h" file to declare "REGISTER_STAT_GROUP_E"
for the benefit of the declaration of "register_dfilter_stat()" in the
top-level "tap_dfilter_dlg.h".  Rename the "stat_menu.h" in the gtk
directory to "gtk_stat_menu.h", so as not to have two headers with the
same name.

Get rid of headers not declaring any functions not being used in the
module.

svn path=/trunk/; revision=15493
2005-08-21 09:48:27 +00:00
Guy Harris ce8ac34225 The routines registered with "register_stat_cmd_arg()" *are* called if
you use the "-z" command-line options for them; make them pop up the
appropriate windows.

Move the calls to "register_stat_cmd_arg()" after the code to register
the tap, just as the calls to "register_stat_menu_item()" are done after
registering the tap.

Use "g_strdup_printf()" rather than formatting into a fixed-length
buffer and "g_strdup()"ing that buffer.

svn path=/trunk/; revision=15489
2005-08-20 22:28:49 +00:00
Guy Harris 65064719d3 We already have a tap that registers as a command-line stat under the
name "rtp"; we don't need another one, especially given that
"rtp_stream.c" doesn't directly implement a stat (note that it doesn't
register a menu item).

svn path=/trunk/; revision=15488
2005-08-20 22:26:32 +00:00
Guy Harris 50d77b113c Rename epan/stat.[ch] to epan/stat_cmd_args.[ch] - it only deals with
implementing the "-z" command-line arguments, it doesn't deal with *all*
issues for stats.

svn path=/trunk/; revision=15483
2005-08-20 20:06:05 +00:00
Guy Harris b387fe837d Explain in more detail the split between the stuff in ui_util.h and in
gtk/gui_utils.h.

svn path=/trunk/; revision=15482
2005-08-20 19:49:22 +00:00
Jörg Mayer bb5c2b1f7a And if we add a file, add it to Makefile.am as well
svn path=/trunk/; revision=15477
2005-08-20 16:30:23 +00:00
Jörg Mayer 96adc5f4a1 - Include the .h files in their .c files.
- Remove epan/dissectors/packet-sna.h, it isn't used anywhere.

svn path=/trunk/; revision=15475
2005-08-20 16:19:22 +00:00
Jörg Mayer b77737650f One file missed in last checkin
svn path=/trunk/; revision=15472
2005-08-20 14:08:53 +00:00