Commit graph

525 commits

Author SHA1 Message Date
Luis Ontanon
3e98d671fd From Graeme Hewson:
don't try to call register_all_plugin_tap_listeners() if configured without plugins.

svn path=/trunk/; revision=13737
2005-03-12 21:36:24 +00:00
Jörg Mayer
58d8f2f652 - pcap.h needs to be included before capture.h
- As capture.h is empty without libpcap defined, only include it in that
  case and don't protect the file internally against libpcap any more.

svn path=/trunk/; revision=13648
2005-03-07 10:19:33 +00:00
Ronnie Sahlberg
91a8ef6b5f from didier: bug fix for the menu,
if ethereal could not open the file   make us still be able to use the Open menu item to open a different file



svn path=/trunk/; revision=13589
2005-03-04 22:25:02 +00:00
Luis Ontanon
5319cabe88 Make sure that plugin tap listeners get registered before the non-plugin tap listeners
that's because stat trees are registered as tap listeners by either
gtk/stats_tree_stat.c or tap-stats_tree.c


svn path=/trunk/; revision=13545
2005-02-28 00:55:49 +00:00
Guy Harris
dd4b0b718b The stats tree stuff should ultimately allow us to have plugin taps, so
add infrastructure for them, and display the plugin type (which could be
both dissector *and* tap) in the list of plugins.

svn path=/trunk/; revision=13543
2005-02-27 22:04:48 +00:00
Guy Harris
343810d95a Move "get_natural_int()" and "get_positive_int()" from "capture_opts.c"
to "clopts_common.c", make them not static, and use them in "gtk/main.c".

svn path=/trunk/; revision=13541
2005-02-27 21:15:30 +00:00
Ulf Lamping
e7fafa28c6 some clarification of the capture child thing
svn path=/trunk/; revision=13535
2005-02-27 17:30:33 +00:00
Luis Ontanon
624d86fe0d abort early in main_filter_packets() if dftext is NULL
svn path=/trunk/; revision=13532
2005-02-27 14:01:12 +00:00
Guy Harris
b94c5514fe Don't include "../image/eicon3d64.xpm", as we're not using it for now.
svn path=/trunk/; revision=13491
2005-02-24 05:40:55 +00:00
Ulf Lamping
72547c8d02 use the applications name (currently "ethereal" or "tethereal") in capture_opts, instead of hardcoded "ethereal" for both.
svn path=/trunk/; revision=13476
2005-02-23 08:34:12 +00:00
Ulf Lamping
d643a55488 move capture_opts related things (init, command line, ...) from capture.c to a new file capture_opts.c and let both ethereal and tethereal use it.
svn path=/trunk/; revision=13474
2005-02-23 01:01:19 +00:00
Ulf Lamping
9677b33abf There seems to be some disagreement about if and how the welcome screen feature should be implemented.
As I currently don't have the time to continue this, I've temporarily disabled it.

svn path=/trunk/; revision=13472
2005-02-22 21:22:56 +00:00
Ulf Lamping
70b1e9f94f As we have a (two) WishList(s) in the Wiki now, this to do list doesn't make any sense
svn path=/trunk/; revision=13458
2005-02-21 19:49:38 +00:00
Ulf Lamping
179d4cca95 fix a capture bug if the capture filter wasn't valid to get back to "empty" state.
instead of already invoking cf_cb_live_capture_started in capture.c, I've introduced the new event cf_cb_live_capture_prepare which only has to set the main windows title and nothing more.

svn path=/trunk/; revision=13355
2005-02-08 19:57:16 +00:00
Guy Harris
802a3977bf Make Ethereal and Tethereal compile if we're building without libpcap.
svn path=/trunk/; revision=13346
2005-02-07 20:52:59 +00:00
Guy Harris
82908eac11 The welcome pane isn't scrollable, so add it to the scrolling window
with a viewport.

svn path=/trunk/; revision=13334
2005-02-07 03:35:51 +00:00
Guy Harris
79a39eddbc Move the code to set the title on a window when a capture is in progress
to the "start live capture" callback, and call that from "do_capture()".

When opening a capture file, don't pop up the "What do you want to do?"
pane when closing any existing file you have open, as we're just going
to put the regular view up right after that.

svn path=/trunk/; revision=13332
2005-02-07 02:09:30 +00:00
Ulf Lamping
1c6b2cf0e3 Instead of calling each single thing when doing/finish a file operation, file.c shouldn't call all the GUI related functions itself, instead throwing some kind of Events to it's caller(s).
I've implemented a very simple callback mechanism which provides exactly this. I've tried GHook from GLib before, but this doesn't seem to be the right thing, as it's too inflexible for the purpose here.

So I've implemented a callback function in main.c which receives all "events" and spreads them to menu, statusbar and itself.

I would see this implementation as a prototype which may need  improvements. Please comment the changes.

svn path=/trunk/; revision=13330
2005-02-07 00:54:46 +00:00
Guy Harris
7be4ff2a92 Clean up indentation.
svn path=/trunk/; revision=13329
2005-02-07 00:31:45 +00:00
Guy Harris
1041ccdbe5 Don't have "set_menus_for_captured_packets()" call
"main_set_for_capture_file()"; it should only deal with menus, not
anything else - and it gets called while the menus are being set up,
which is before the main window has been completely created, so
"main_widgets_show_or_hide()", which is called by
"main_set_for_capture_file()", gets errors trying to show or hide
widgets the pointers to which are null.

svn path=/trunk/; revision=13328
2005-02-06 23:16:05 +00:00
Ulf Lamping
3a63719e38 another two steps towards privilege seperation:
move another two capture related fields (iface and cfilter) from cfile to capture_opts

also move the handling of capture related command line options from main.c to capture.c, that way a future privilege seperated capture program can use the same code to parse it's command line than Ethereal. 
It might be even possible to share this parser code even with Tethereal, didn't took a closer look at this.

svn path=/trunk/; revision=13320
2005-02-06 21:20:35 +00:00
Ulf Lamping
3a9e847e27 some cleanup of the initial start sequence of Ethereal, filling in capture_opts and alike
svn path=/trunk/; revision=13317
2005-02-06 14:43:27 +00:00
Ulf Lamping
ba04a65a6a fix bugs regarding the capture child
svn path=/trunk/; revision=13316
2005-02-06 12:21:27 +00:00
Ulf Lamping
97866a968b instead of initializing the capture_options in main.c, use the new function capture_opts_init
svn path=/trunk/; revision=13315
2005-02-06 00:13:00 +00:00
Ulf Lamping
c8522d6dec begin a welcome page which is shown, if you don't have any capture data loaded.
This might be improved to have additional content and/or better layout of the elements.

svn path=/trunk/; revision=13313
2005-02-05 23:12:44 +00:00
Ulf Lamping
fe7e1ec13c completely hide the main window panes, if we currently don't have a capture file.
svn path=/trunk/; revision=13312
2005-02-05 17:53:39 +00:00
Ulf Lamping
a1a2ae3180 rename kill_capture_child to capture_kill_child to have a common prefix
split drag and drop support out of main.c into new file drag_and_drop.c, to reduce the size of main.c a bit.

Hopefully this won't break unix builds because of missing #include's, I will keep an eye on the buildbot

svn path=/trunk/; revision=13308
2005-02-05 15:35:25 +00:00
Guy Harris
fa3e5609ab Put "cf_status_t" back.
svn path=/trunk/; revision=13303
2005-02-05 12:50:47 +00:00
Guy Harris
2c89242aac Instead of having a single enumerated type for status return values from
cf_ functions, have separate ones for different classes of routines, and
use gboolean when the return value is just "success" or "failure" - that
way you don't get compiler warnings if a case statement isn't handling a
particular status value if the routine in question won't return it.

svn path=/trunk/; revision=13293
2005-02-04 20:54:12 +00:00
Ulf Lamping
0861927ce3 huge cleanup of capture file API (functions in file.c/file.h).
This includes: all functions in file.h now have a cf_ prefix, will have doxygen tags, will have the capture_file *cf as the first parameter and I tried to generalize the return values for non trivial functions.

Hopefully, I didn't introduced any new bugs, as I had to change a lot of files...

svn path=/trunk/; revision=13289
2005-02-04 18:44:44 +00:00
Ulf Lamping
dd71ad695f (some) redesign of capture data structures.
don't use global cfile at all but only an untpyed handle to call the cf_... functions in file.c
move the save_file member from capture_file to capture_opts, as it's only used while capturing and while preparing it

svn path=/trunk/; revision=13276
2005-02-04 01:29:29 +00:00
Ulf Lamping
9ff19a4c94 move capture_file_fd field from capture_file to capture_opts type, as this is the place where it should be
svn path=/trunk/; revision=13268
2005-02-03 22:48:20 +00:00
Guy Harris
91e606b7dd Fix a problem with building with libpcap disabled.
svn path=/trunk/; revision=13181
2005-01-27 10:47:27 +00:00
Ulf Lamping
5b84b7e764 while I'm at it, add another packet details context menu item, which will link to the specific display filter reference page (just try it out :-)
svn path=/trunk/; revision=13117
2005-01-19 01:12:45 +00:00
Ulf Lamping
5a36a73d25 added the "Online Protocol Info" to the packet details context menu with a simple_dialog doing some explanation.
svn path=/trunk/; revision=13115
2005-01-18 22:24:07 +00:00
Guy Harris
71e8b5bf1f Squelch compiler warnings about unused parameters.
svn path=/trunk/; revision=13096
2005-01-17 22:25:16 +00:00
Ulf Lamping
421737d210 add first implementation of context relevant calls to the protocol specific wiki pages. I've commented out the items in menu.c, so this (hopefully) won't break the current release run. We might think about further steps after the release is out.
However, if someone (already) want's to try out right now, you simply have to remove the comments in menu.c around line 430

svn path=/trunk/; revision=13091
2005-01-17 21:48:51 +00:00
Guy Harris
6e622fd24e "gtk_entry_get_text()" returns a "const char *" - assign the result to
one.

"get_basename()" doesn't modify its argument, and its callers don't
modify the substring pointed to by the result, so make it take a "const
char *" as an argument and return a "const char *". 

"find_last_pathname_separator()" doesn't modify its argument, so make it
a "const char *" - but some of its callers pass a non-"const" "char *"
and modify the result, so don't make its return value a "const char *".
And, as none of its callers are outside "filesystem.c", make it static.

In "about_folders_page_new()", have separate variables for pathnames
returned as "const char *" (which are cached by the routine that returns
them, so you can't modify them - and can't free them, so get rid of the
commented-out "g_free()" calls for them) and pathnames returned as "char
*" (which are allocated anew for each call, and can be modified, but
have to be freed).

Clean up white space.

svn path=/trunk/; revision=12881
2004-12-31 00:26:36 +00:00
Ulf Lamping
d9be4670a7 move global capture_child flag into capture_options
svn path=/trunk/; revision=12855
2004-12-29 12:37:06 +00:00
Ulf Lamping
2ed93e96bd Don't use a global capture_opts in the capturing engine (this isn't a good idea). Do some more "housekeeping" in the capturing part.
Hopefully the unspecified forward declaration of capture_options_t in main.h is portable, but buildbot will tell me. This way I need the internals of that struct only at the places I really use it.

svn path=/trunk/; revision=12853
2004-12-29 09:09:35 +00:00
Guy Harris
f1deabed56 Make the tone of the error messages a bit less formal, by using
contractions.  (Safari does, at least when you're trying to open a file
to which you don't have read access.)

svn path=/trunk/; revision=12852
2004-12-29 01:08:20 +00:00
Guy Harris
716ff427ce Don't start up a splash screen if "-G" is specified, even if we weren't
configured with libpcap support.

svn path=/trunk/; revision=12764
2004-12-17 10:09:32 +00:00
Lars Roland
221a66734e Don't ethclist.h in main.c, when we don't need it.
svn path=/trunk/; revision=12659
2004-12-02 19:41:56 +00:00
Guy Harris
27957c4c0d We don't use our own clist for GTK+ 1.3[.x], either.
svn path=/trunk/; revision=12658
2004-12-02 19:17:40 +00:00
Guy Harris
395bb21901 From Nathan Jennings: add a preference that supplies a prefix for window
titles.

svn path=/trunk/; revision=12657
2004-12-02 11:30:24 +00:00
Guy Harris
89cfc75ba2 We're not using our own clist for GTK+ 2.x, so call
"init_eth_clist_type()" only for GTK+ 1.2[.x].

svn path=/trunk/; revision=12654
2004-12-02 07:53:59 +00:00
Ronnie Sahlberg
e2e3b87c73 performance enhancement:
in some profiling runs   eth_clist_get_type() took ~6%   change this to just a variable and initialize it explicitely from main.c



svn path=/trunk/; revision=12653
2004-12-02 03:12:24 +00:00
Ronnie Sahlberg
2e61f4d4c7 make ethereal compile with --without-pcap configuration option
svn path=/trunk/; revision=12652
2004-12-02 00:12:54 +00:00
Ulf Lamping
7445ecfd05 split capture_loop from capture.c, some more code cleanup
svn path=/trunk/; revision=12451
2004-10-30 17:50:51 +00:00
Ulf Lamping
bdfe1d7fc8 move quit_after_cap into capture_opts
svn path=/trunk/; revision=12449
2004-10-30 14:30:52 +00:00