Commit Graph

2434 Commits

Author SHA1 Message Date
Anders Broman 44784a9fe4 From Olivier Jacques,
Here is a patch that:
- Replaces the arrow labels by the beginning of the COLINFO column if available (usually containing message names/types).
- Change the comment area to be "protocol: colinfo_content"
From Anders
Added ID tag

Camel
Use col_set_str to remove TCAP info in col_info
 


svn path=/trunk/; revision=16975
2006-01-07 11:10:50 +00:00
Ulf Lamping 4e973150ea fix bug #660: we must alphabetically sort columns 0&1, not 0&2
svn path=/trunk/; revision=16974
2006-01-07 11:08:07 +00:00
Jörg Mayer deeb41e08b Olivier Jacques:
Here is a very small patch against current SVN for a mem free bug in
flow graph feature.


svn path=/trunk/; revision=16966
2006-01-06 10:37:56 +00:00
Jörg Mayer 7719a3b803 Jaap Keuter:
Browsing through the wishlist I came across this old one by Steve Brown:
------8<------
The GTK1 UI wordwraps assembled TCP streams, the GTK2 UI doesn't, but
should also. Not wrapping makes reading any protocol that lacks linebreaks
virtually impossible (XML, etc.) as it all ends up on one line. I'm tired
of having to install the GTK1 UI :P
------8<------
It seems like a simple request. The oneliner patch implements this wish.
Maybe someone feels the need to make it a preference or selectable.


svn path=/trunk/; revision=16939
2006-01-03 23:45:58 +00:00
Ulf Lamping b4471e0195 fix #152
set the read filter dialog modal and transient to the parent window if requested. This way, it will receive input signals (solving problems with GTK2's gtk_file_chooser).

To do this, add another construct_args flag, so it will be modal only if really needed ...

svn path=/trunk/; revision=16926
2005-12-31 17:09:27 +00:00
Jörg Mayer ca4722c47b Foil another of Ronnies attempts to make the repository properties free :-)
svn path=/trunk/; revision=16892
2005-12-24 03:13:16 +00:00
Guy Harris 56a87c2239 Clean up indentation.
"error_t" is defined elsewhere on at least some versions of Fedora Core,
so it collides with our usage; use "expert_comp_dlg_t" instead.

svn path=/trunk/; revision=16889
2005-12-23 10:55:05 +00:00
Ronnie Sahlberg 6ca2431e06 add service response time statistics for smb2
svn path=/trunk/; revision=16887
2005-12-23 04:57:06 +00:00
Gerald Combs 0027278005 From Bill Meier:
After investigating the time-sequence graphs (Stevens and tcptrace) produced 
using an FTP capture file supplied by Eduardo Segura 
(see http://www.ethereal.com/lists/ethereal-users/200512/msg00153.html ) 
I've identified several problems in tcp_trace.c.

The problems mostly involve incorrect determination of the lower/upper 
sequence number bounds (for the Y axis) in certain cases (e.g. having to do
with 'partial' conversations).

I've reworked the '...get_bounds' code to handle cases such as:

1. out of order data segments (e.g.: the first segment in a captured
conversation has a higher sequence number than a later segment);

2. 'ack' sequence numbers for initial ack segments in a conversation lower
than the sequence numbers of the initial data segments;

3. maximum 'ack + win' sequence number in a conversation greater than the 
max data sequence number;

4. Stevens graph: only use data segment sequence numbers when 
determining bounds;

5. TCP RST packet without 'ack' flag: do not try to use the 'ack' seq num from
the packet in this case. (This was the specific cause of the originally reported
problem).


I've also reworked the tcptrace display code slightly to properly handle 
the initial ack packet of a sequence;

As an example of the some of the fixes the Ethereal tcptrace style graph 
of the following conversation fragment will now be similar to the graph 
produced by Tcptrace.

data:  seq 10000 len 100
data:  seq 10100 len 200
ack:   ack 5000  win 6000
ack:   ack 5400  win 5600 


svn path=/trunk/; revision=16874
2005-12-22 01:23:27 +00:00
Guy Harris c9b702ba1a Provide not only copyright information, but a GPL blurb, in all the
version/usage messages.

Put newlines at the end of various version strings.

svn path=/trunk/; revision=16870
2005-12-21 08:59:52 +00:00
Jörg Mayer dba7a99e1d warning: C++ style comments are not allowed in ISO C90
svn path=/trunk/; revision=16853
2005-12-18 23:22:47 +00:00
Ulf Lamping 5777e86158 use #ifdef SHOW_WELCOME_PAGE for the currently disabled welcome page instead of simply #if 0
svn path=/trunk/; revision=16843
2005-12-18 11:36:06 +00:00
Anders Broman 3e759db24c modify the tool tip "Nodes in the diagram are identified with network source and destination address (like SS7 point codes)" remove the section between parenthesis
svn path=/trunk/; revision=16829
2005-12-16 20:54:24 +00:00
Anders Broman e0bec8bb86 From Jacques, Olivier (OCBU-Test Infra)
> here is a small patch for the flow graph feature. It allows 
> to have SS7 nodes (network indicator/point codes) to be 
> recognized as nodes in the graphs.
> The patch consists in using "pinfo->net_src" or 
> "pinfo->net_dst" instead of "pinfo->src" or "pinfo->dst".
> I did some tests with other IP protocols and behavior was 
> still the same as before. But I do not guaranty that it 
> doesn't have some bad side effects for some protocols.

svn path=/trunk/; revision=16817
2005-12-16 07:20:13 +00:00
Ulf Lamping 0268ed5e2d remove a missplaced comment
svn path=/trunk/; revision=16806
2005-12-15 00:46:23 +00:00
Guy Harris eaee2b68c5 Constify a bunch of arguments and variables, to squelch compiler
warnings.

Include "wiretap/libpcap.h" in "capture_loop.h", to get its declarations
of data structures for headers in libpcap files.  This lets us remove
the includes of "wiretap/libpcap.h from files including
"capture_loop.h".

Make "log_func_ignore()" in "tethereal.c" static, and declare some of
its arguments unused.  Also get rid of an unused variable.

Include <pcap.h> before including "wiretap/wtap-capture.h", to declare
"struct pcap_pkthdr".

svn path=/trunk/; revision=16791
2005-12-14 07:29:38 +00:00
Ulf Lamping 1f5bf52d6b hmmm, the include sequence might be important too ...
svn path=/trunk/; revision=16790
2005-12-14 01:45:09 +00:00
Ulf Lamping 292fa7814d add missing include
svn path=/trunk/; revision=16789
2005-12-14 00:10:23 +00:00
Ulf Lamping 79217bab2e HUGE STEP (hopefully toward the right direction):
remove a lot of redundant code from tethereal and use (move) stuff from capture_loop.c instead.

concentrate common capture related code in capture_opts.c, e.g. trying to find the right interface to capture from (command line option, preference, first usable) instead of duplicating this code over several files.

remove redundant code from dumpcap.c

this also implements command line option -D (and indexed interfaces at -i) for Ethereal and Dumpcap (as we have it in Tethereal already for a while)

svn path=/trunk/; revision=16787
2005-12-13 22:48:58 +00:00
Ulf Lamping 1fe28ca017 We should really do quit Ethereal if user asked us to do so with the -Q option!
Update the window title, right after the fixed capture finished. This might be required if the loading of the capture file afterwards just fails, leaving the title unchanged.

svn path=/trunk/; revision=16772
2005-12-13 02:09:14 +00:00
Ulf Lamping 47ae9fa7bd add a short comment to cant_load_winpcap_err() and use it in gtk/capture_dlg.c
svn path=/trunk/; revision=16693
2005-12-06 01:04:55 +00:00
Ulf Lamping 7e3a24418c rename pcap-....c/.h files to capture-pcap-....c/.h
this way, the capture prefix will "logically" group the files together and file browsers will also group them

we may want to move the files into a subdir capture later

svn path=/trunk/; revision=16691
2005-12-06 00:07:13 +00:00
Ulf Lamping 8dab6be33c move some GTK only function declarations from ui_util.h to the appropriate header files in the gtk dir, as these declarations are obsolete and only confuses (at least me)
svn path=/trunk/; revision=16687
2005-12-05 22:45:54 +00:00
Ulf Lamping e1ee12bc71 add capture_opts_trim(), as this sequence is used three times now (will replace the other appearances later) ...
svn path=/trunk/; revision=16683
2005-12-05 21:26:01 +00:00
Guy Harris 46325167d9 Check for a null blurb pointer for a field, as is done in some other
locations, and initialize the blurb field to NULL for protocols, now
that we support the blurb being a null pointer.

svn path=/trunk/; revision=16672
2005-12-04 04:22:43 +00:00
Ulf Lamping e829856c0c move the complete functionality of the capture info dialog from capture_loop.c to capture_info.c and call it from capture.c (instead of capture_loop.c).
This way, the capture child don't need to now any of the packet_counter things (no epan/packet.h and all alike).

Currently the capture_info code will always open another wiretap file instance to build it's own counter values. This isn't optimized for now (next step: use data from cf_continue_tail() somehow).

svn path=/trunk/; revision=16669
2005-12-04 02:04:18 +00:00
Ulf Lamping f856dbafa8 split some parts of the packet counting functions into their own files capture_info(.c/.h),
so we can use it from the main program

svn path=/trunk/; revision=16668
2005-12-03 22:38:50 +00:00
Ulf Lamping d2a024af60 split capture.h into capture.h, capture_loop.h and capture_opts.h and place the parts into the corresponding files
svn path=/trunk/; revision=16664
2005-12-03 19:32:54 +00:00
Ulf Lamping ca14992672 fix alphabetical order of OPTINIT string, v seems to be a controversial character :-)
svn path=/trunk/; revision=16642
2005-12-01 20:04:55 +00:00
Michael Tüxen fd7caa4b84 Bug fixes from Irene.
svn path=/trunk/; revision=16639
2005-12-01 15:15:42 +00:00
Ulf Lamping 11a0eb4867 fix #568: disable event "activate" handler for the range entry field. see the added comment for details
svn path=/trunk/; revision=16604
2005-11-26 11:57:54 +00:00
Ulf Lamping b847af543d fix #358: instead of simply using tpmnam() for the Win32 print function, use the "official" function to create a temporary file
Well, we actually only need the filename here, so create a temp file with the "official" create_tempfile function, keep that tempfile name and then delete this file again, leaving only the name.

I know that's a bit uncommon, but should work and uses the same mechanisms as with other temporary files. So if there are still problems with the official function, we only have one place to fix :-)

svn path=/trunk/; revision=16597
2005-11-26 01:56:22 +00:00
Ulf Lamping 6244dc8ec9 fix a simple GTK1 warning
svn path=/trunk/; revision=16595
2005-11-25 23:54:19 +00:00
Ulf Lamping 5d66658184 from Greg Morris:
Composite Expert statistics, see: 
http://www.ethereal.com/lists/ethereal-dev/200511/msg00002.html
and the following discussions

svn path=/trunk/; revision=16593
2005-11-25 23:42:52 +00:00
Jörg Mayer eff40f65db Trivial warning fixes
svn path=/trunk/; revision=16561
2005-11-22 12:51:14 +00:00
Guy Harris 2f7fd680e2 Handle "-G" only in Tethereal - it doesn't work in Ethereal, and isn't
necessary there.

Add a "cmdarg_err()" routine to report command-line option errors; it
creates a console if necessary, and prints the command name and the
trailing newline.  Also add "cmdarg_err_cont()", which also creates a
console if necessary, and prints a trailing newline but no command name;
it's used to continue the message.  Use those, rather than
"g_warning()", for errors.

That means that we no longer need to pass the command name to various
command-line argument parsing routines.

svn path=/trunk/; revision=16526
2005-11-17 05:59:21 +00:00
Guy Harris ff10d1c217 Don't list "-B" on UN*X - it's not available there.
On Windows, show it using the same usage-message syntax as other
options.

Clean up the usage message.

When doing the "pre-scan" of command-line arguments, suppress error
messages - that suppresses bogus messages for GTK+ command-line flags,
and gets rid of double messages for other errors.

svn path=/trunk/; revision=16521
2005-11-17 04:10:31 +00:00
Ulf Lamping 32b71d9b7e hmmm, buggy bugfix
capture_child isn't initialized already here, so remove the whole error reaction check for now

svn path=/trunk/; revision=16517
2005-11-16 22:08:50 +00:00
Ulf Lamping 8b24e8d8f0 the "pre-scan" of the command line parameters shouldn't stop the capture child. The child uses a slightly different parameter pattern, so this isn't an error here. Fixes the reported capture problem
svn path=/trunk/; revision=16516
2005-11-16 21:46:24 +00:00
Guy Harris 0dbf17b690 Allow a progress dialog to have "Stop" or "Cancel" as the "terminate
button"; "Stop" should be used for operations that can only be stopped
(meaning that what it's already done isn't undone), not cancelled
(meaning that whatever it's already done *is* undone), for which
"Cancel" is used.

Allow the merging process to be cancelled.

Clean up indentation.

Update some comments.

svn path=/trunk/; revision=16489
2005-11-12 11:05:02 +00:00
Guy Harris 177dc6902c Skip some toolbar #includes if we're not using GTK+ 2.x.
svn path=/trunk/; revision=16454
2005-11-10 03:00:43 +00:00
Guy Harris 03ac44a500 Remove comment that no longer applies.
If we get a getopt() error in the pre-scanning, quit - don't do all the
GUI stuff and re-scan the arguments (and print the error message twice).

svn path=/trunk/; revision=16443
2005-11-09 08:46:24 +00:00
Ulf Lamping c3187174bf replace *a lot* of file related calls by their GLib counterparts. This is necessary for the switch to GTK 2.6 (at least on WIN32).
to do this, I've added file_util.h to wiretap (would file_compat.h be a better name?), and provide compat_macros like eth_open() instead of open(). While at it, move other file related things there, like #include <io.h>, definition of O_BINARY and alike, so it's all in one place.

deleted related things from config.h.win32

As of these massive changes, I'm almost certain that this will break the Unix build. I'll keep an eye on the buildbot so hopefully everything is working again soon.

svn path=/trunk/; revision=16403
2005-11-06 22:43:25 +00:00
Anders Broman 2916d12d76 Packet-amr Register as "AMR" not "amr".
Add Dynamic PT:s mimestring  to rtp_info if avalable.
Use Dynamic PT:s mime string to find clock rate.

svn path=/trunk/; revision=16397
2005-11-05 21:38:22 +00:00
Guy Harris 542381825f Get rid of no-longer-used code (the list of plugins is now just a tab in
Help->About, not a separate dialog from Help->About Plugins).

svn path=/trunk/; revision=16385
2005-11-03 04:32:11 +00:00
Anders Broman bd8e72aa0a From Jaap Keuter
Improvments to PCMA and PCMU handling-

svn path=/trunk/; revision=16356
2005-10-29 15:34:16 +00:00
Guy Harris eb7e8111c6 Fix uninitialized variable errors.
Rename some variables to make the names used in progress bars more
common.  (Should more of that functionality be moved into common
progress bar code?)

svn path=/trunk/; revision=16347
2005-10-27 20:18:50 +00:00
Guy Harris 6ed8c9a07b Make the processing of "-z" arguments in the Tethereal I/O stat tap more
like that of the Ethereal I/O stat tap.  Improve error messages in both
taps.

Use nstime() routines and structure assignment to do operations on
nstime_t values.

svn path=/trunk/; revision=16346
2005-10-27 19:42:24 +00:00
Guy Harris 0203c65739 Check on every iteration of a loop whether to pop up a dialog box,
rather than checking only on every progress bar update quantum, so that
if the update quantum is *very* large, we don't end up waiting longer
than the standard time for a dialog box before checking.

svn path=/trunk/; revision=16327
2005-10-27 06:45:37 +00:00
Ulf Lamping fe17843002 bugfix: don't crash the file open dialog, if the preview gets confused by "invalid" timestamps.
The localtime call will return NULL on invalid input which results in a NULL pointer exception. Simply print '?' if localtime returned NULL.

svn path=/trunk/; revision=16317
2005-10-26 08:32:21 +00:00
Gilbert Ramirez 0b3c9ad5ce Revert 16279.
svn path=/trunk/; revision=16281
2005-10-21 13:11:04 +00:00
Gilbert Ramirez 385fb3eea2 From Greg Morris.
Expert data must perform a re-dissection to trigger the NCP dissector.
Change the call cf_retap_packets() to cf_redissect_packets().

svn path=/trunk/; revision=16279
2005-10-20 18:07:03 +00:00
Gilbert Ramirez c5db51da2d From Greg Morris, patch to allow proper search/filtering of
NCP conversations.

svn path=/trunk/; revision=16278
2005-10-20 18:04:11 +00:00
Gilbert Ramirez 05bdac4d3a From Greg Morris.
Adds NCP data to conversations and SRT.

svn path=/trunk/; revision=16269
2005-10-19 14:45:24 +00:00
Ulf Lamping fab07a94e0 don't show the "stopping currently running capture" dialog, as the packet list seems to have problems updating the screen, so some ugly artefacts remain on the screen.
after I've fixed a bug in the Win32 capture stop mechanism some days(?) before (which speeds up that stopping a lot), this dialog isn't really needed

svn path=/trunk/; revision=16257
2005-10-17 19:46:29 +00:00
Ulf Lamping fafdf68095 from Richard van der Hoff:
Attached is a patch which makes the console log level (warning/message/debug etc) a configurable preference. There's no gui for setting it, but since it's pretty much only going to be useful for developers, I'm sure you'll cope...
----
I've added a small comment to the file output that it has no dialog output

svn path=/trunk/; revision=16205
2005-10-12 21:26:27 +00:00
Ulf Lamping 9759510199 fix the link to the online users-guide
svn path=/trunk/; revision=16169
2005-10-09 00:01:13 +00:00
Ulf Lamping e01a43a9bf minor bugfix: while closing a capture file, update the packets statusbar *after* closing the file
svn path=/trunk/; revision=16150
2005-10-07 04:26:29 +00:00
Ulf Lamping 4443681a9e fix Ethereal so command line capture parameter will work with kilobytes (again)
remove Byte(s) from the dropdown list of filesizes, this doesn't make sense
replace 1000 with 1024, as all (modern?) file managers are based on 1024 bytes for a kilobyte (the old KB vs. KiB controversy)

svn path=/trunk/; revision=16149
2005-10-07 03:34:27 +00:00
Ulf Lamping bb5e5d6ce1 fix a packet_list_freeze / thaw pair, if a return comes in it's way
add a g_warning() call if an error occured while reading from capture file (while doing a live update), usually shouldn't happen but is difficult to debug *if* it happens
add a new log domain LOG_DOMAIN_MAIN and the standard log handler for it
add some (partly commented out) g_log() calls, useful for GUI sequence debugging

svn path=/trunk/; revision=16136
2005-10-06 00:55:21 +00:00
Ulf Lamping ec98957e13 fix 369: we must do some more GUI stuff in capture_update_started(),
as GUI state get's cleared while switching to the next "multiple file" because of a call to cf_close()

svn path=/trunk/; revision=16134
2005-10-05 23:56:36 +00:00
Ulf Lamping aa7a238a42 fix cant_load_winpcap_err() parameter
svn path=/trunk/; revision=16123
2005-10-05 06:05:35 +00:00
Guy Harris bfcbcfb4ea Add a "capture_errs.c" routine to cough up error messages for capture
problems, and use the first routine in it in multiple places.

Get rid of DISSECTOR_SUPPORT_INCLUDES - just add its contents to
ETHEREAL_COMMON_INCLUDES.

svn path=/trunk/; revision=16109
2005-10-04 06:25:01 +00:00
Guy Harris 62948d4d6b Properly terminate some value_string tables.
svn path=/trunk/; revision=16098
2005-10-03 22:26:32 +00:00
Guy Harris 7ff9b98428 Include "gui_stat_menu.h" to declare "register_stat_menu_item()".
Fix the type of "t38_analysis_init()" to match what
"register_stat_cmd_arg()" expects.

svn path=/trunk/; revision=16097
2005-10-03 22:23:04 +00:00
Ulf Lamping 8b696f70b8 Win32: don't crash if Capture/Start is clicked and WinPcap is not installed.
svn path=/trunk/; revision=16093
2005-10-03 20:04:06 +00:00
Ulf Lamping e0e8cb76a3 move the list down to the latest message while new messages rush in. We might want to have a checkbox or alike to en/disable this (as discussed for the Statistics) lately.
svn path=/trunk/; revision=16092
2005-10-03 19:37:17 +00:00
Ulf Lamping d24ce3d4ad major Win32 bugfix: when getting messages from the capture slave, only one message was processed every 200ms (UNIX handles this differently). If more messages were initiated from the slave, they stacked up. This slowed down the display update and slowed down stopping the capture as a lot of messages had to be processed before the close really finished ...
Now the timer callback function will call the pipe read function up to 5 times to avoid this, but won't do this more often to prevent "endless blocking".

svn path=/trunk/; revision=16091
2005-10-03 19:34:58 +00:00
Ulf Lamping 5851cd1694 minor bugfix: hide main widgets, if command line file couldn't be loaded
svn path=/trunk/; revision=16090
2005-10-03 19:11:57 +00:00
Luis Ontanon ee804fcb5a This one was missing from the checkin...
svn path=/trunk/; revision=16077
2005-10-03 11:36:24 +00:00
Anders Broman 15a08ae521 From Alejandro Vaquero:
New "Fax T38 Analysis" added to the "Statistics" menu to:

- Reassemble the HDLC t30 frames and dissect the header.
- Analyze the UPDTLPacket seq num for packet lost
- Stats of V.x Data:
    - Count the Data bytes
    - Duration
    - Wrong seq num
    - Max Burst of packet lost

svn path=/trunk/; revision=16073
2005-10-03 05:55:26 +00:00
Ulf Lamping 347398ee6f code cleanup: use the prefix packet_list_ for every function mentioned in packet_list.h
svn path=/trunk/; revision=16027
2005-09-27 21:51:08 +00:00
Ulf Lamping d415c719ae fix #322, 2nd try: don't pass NULL to gtk_tree_iter_free(), this seems to cause an assert on some GTK versions
svn path=/trunk/; revision=16011
2005-09-26 19:24:06 +00:00
Ulf Lamping d3d18948b5 compiler warning removed
svn path=/trunk/; revision=16006
2005-09-26 07:08:42 +00:00
Ulf Lamping fa1647d9a6 fix #322: packet detail window -> Protocol Preferences: tree not expanded
also removed global notebook value

svn path=/trunk/; revision=16004
2005-09-25 22:46:49 +00:00
Ulf Lamping e34467a28c disable gzip output compression for now, as it won't work in some cases (see source commment for details)
svn path=/trunk/; revision=15981
2005-09-23 18:50:07 +00:00
Ulf Lamping ba1c5f49d5 do freeze/thaw in packet_list_set_selected_row only, if the list must be moved. This avoids some screen flickering.
svn path=/trunk/; revision=15965
2005-09-22 21:14:39 +00:00
Luis Ontanon 35bd5bd854 Instead of checking if this is a new packet at every call to avoid recounting the packets at every rerun remove the tap listener of this stats tree.
fixes bug 474

svn path=/trunk/; revision=15960
2005-09-22 17:01:06 +00:00
Ulf Lamping a7a1077bb5 fix 467: when using -k command line option, convert interface name display string ("user_description: devicename" from Preferences) into device name. Hopefully this won't break the UNIX version.
svn path=/trunk/; revision=15943
2005-09-21 20:33:12 +00:00
Ulf Lamping 8efa36ee51 fix #465: replace all fprintf(stderr, ...) with g_warning(...) calls
svn path=/trunk/; revision=15942
2005-09-21 20:27:32 +00:00
Ulf Lamping a8ef1df32b fix/add doxygen comments
svn path=/trunk/; revision=15941
2005-09-21 20:11:55 +00:00
Ulf Lamping 512a4983c0 fix a copy/paste error inside of a comment
svn path=/trunk/; revision=15940
2005-09-21 20:08:32 +00:00
Gerald Combs 551b9bc61d Free our flow graph strings when we're done with them. Add a note about
flow graphs to the release notes, along with other stuff.

svn path=/trunk/; revision=15928
2005-09-21 14:20:43 +00:00
Gerald Combs ad99e218ca In an attempt to fix bug 396, switch over to GStrings. There still appears
to be a problem with formatting, but we don't crash any more.

svn path=/trunk/; revision=15923
2005-09-21 03:28:22 +00:00
Guy Harris 5e5c735525 Squelch a compiler warning (the argument might be used later).
Clean up indentation.

svn path=/trunk/; revision=15917
2005-09-21 01:34:04 +00:00
Ulf Lamping 831c54c4f5 add two new callbacks:
cf_cb_file_closing (called before closing a capture file) cf_cb_file_closed will be called afterwards, but both only if a file is really closed as cf_close is called more often ...

If we are closing large capture files (~20MB), the screen looks ugly while the file is closed. Change this so the screen will immediately go back to initial state and a dialog (without buttons) is shown that the file is currently closed. As the operation which takes most of the time to close the file is a single eth_clist_clear call, we can't use a progress bar here.

cf_cb_live_capture_stopping: called when the user wants to stop the capture (toolbar or menu clicked). At least on Win32, the time between this and the actual stop completed can be noticeable (1-2 seconds), so the user doesn't know if the button press did anything at all. Do something similar as above, show a dialog box without buttons to inform that the close is in progress.

svn path=/trunk/; revision=15891
2005-09-20 08:42:35 +00:00
Ulf Lamping f14ccc2f63 if the capture child pops up it's own console, title it as such
svn path=/trunk/; revision=15889
2005-09-20 08:18:41 +00:00
Guy Harris 2bccfcd3c4 Squelch a compiler warning.
svn path=/trunk/; revision=15888
2005-09-20 08:01:00 +00:00
Ulf Lamping d0bf73d13d the buildbot has a problem not knowing sa_family_t, define eth_sa_family_t and use it here (ok, this *is* a dirty hack)
don't know why the last commit compiled on my machine and not on the buildbot.

svn path=/trunk/; revision=15887
2005-09-20 02:10:48 +00:00
Ulf Lamping 81e9a70a96 enhance simple dialog: add the possibility to use no buttons at all and add a stop icon (similar to the splash_window, but with a slightly different layout and a way to choose the icon shown)
svn path=/trunk/; revision=15886
2005-09-20 01:53:38 +00:00
Ulf Lamping 692ae2c6cb fix #340: define the missing sockaddr_storage struct to be able to use Packet32.h even with WinPcap 3.1 and without the platform SDK
svn path=/trunk/; revision=15878
2005-09-19 20:59:50 +00:00
Guy Harris 52ebbfd1ab Mark some unused and unremovable arguments as unused.
svn path=/trunk/; revision=15846
2005-09-17 00:39:52 +00:00
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
Jörg Mayer 0edcc8920e - Declare some functions static
- Add plugins_dlg.h
- Include .h files in their respective .c files
- Include .h and remove extern declarations in .c files
- set eol-style and keywords on gui_utils.[hc]

svn path=/trunk/; revision=15471
2005-08-20 14:02:00 +00:00
Jörg Mayer b55266d3c0 - Include ../ui_util.h into files that implement functions declard in
ui_util.h
- Replace one instance of ui_util.h by gui_utils.h

svn path=/trunk/; revision=15468
2005-08-20 12:57:52 +00:00
Ulf Lamping eafbbbcabb renamed ui_util.c/.h to gui_utils.c/.h to prevent confusion with identical named ui_util.h in / dir
svn path=/trunk/; revision=15465
2005-08-20 12:09:48 +00:00
Guy Harris 2028488827 For AFP requests, add in the frame with the (last part of the) reply, if
possible, and, for AFP replies, add in the frame with the request and
the time between those two frames.

Have AFP per-request-type RTT statistics, similar to SMB's statistics.

svn path=/trunk/; revision=15456
2005-08-20 02:19:37 +00:00
Ronnie Sahlberg aff31978c1 remove sprintf from mtp3
svn path=/trunk/; revision=15451
2005-08-20 01:24:23 +00:00
Guy Harris 38ec1644e6 Add APIs to Wiretap to return the file of the size as supplied by the OS
(so if the file's gzipped, it's *NOT* the size of the file after
uncompressing), and an approximation of the amount of that data read
sequentially so far.

Use those for various progress bars and the like.

Make the fstat() in the Ascend trace reader directly use wth->fd, as
it's inside Wiretap; that gets rid of the last caller of wtap_fd() (as
we're no longer directly using fstat() or lseek() in Ethereal), so get
rid of wtap_fd().

svn path=/trunk/; revision=15437
2005-08-19 19:40:00 +00:00
Guy Harris 4ddd504bb4 Move the stats.[ch] stuff into epan, so plugins can use it.
svn path=/trunk/; revision=15429
2005-08-19 10:00:14 +00:00
Guy Harris b2807e2ab6 Move the APIs for registering and processing "-z" command-line arguments
and "Statistics" menu items into "stat.h" and "stat.c", to separate them
from the core tapping APIs.  A tap could conceivably not register as a
"-z" command-line argument or "Statistics" menu item, and a stat could
conceivably not be implemented as a tap, and dissectors that implement
tapping points don't need the UI-related stuff from "stat.h", they just
want the tap-related stuff in <epan/tap.h>.

svn path=/trunk/; revision=15427
2005-08-19 09:29:41 +00:00