Commit Graph

118 Commits

Author SHA1 Message Date
Jeff Morriss 5a2a122942 Don't put a 65536 byte variable on the stack: instead, malloc/free it.
Coverity 760-761.

svn path=/trunk/; revision=36404
2011-03-29 21:39:15 +00:00
Stig Bjørlykke 03941b54ed Fixed second parameter to create_persconffile_profile.
svn path=/trunk/; revision=36291
2011-03-23 14:58:34 +00:00
Stig Bjørlykke 714c8c52b9 Ensure we create the "Default" personal configuration files directory before
creating a new profile.  This fixes a bug when trying to create a new profile
from a newly installed wireshark with no saved preferences.

svn path=/trunk/; revision=36290
2011-03-23 14:52:39 +00:00
Stig Bjørlykke d188988e83 Added functionality for handling global profiles.
Global profiles can be installed in a "profiles" directory in the
Global configuration directory, and a global profile will be copied
to the users profiles on first time usage.

svn path=/trunk/; revision=36077
2011-02-26 17:23:24 +00:00
Bill Meier 7f0107220d Fix various instances of "unreachable code".
svn path=/trunk/; revision=35713
2011-01-30 23:27:57 +00:00
Jeff Morriss ad47f04c94 Move getenv_utf8() to wsutil.
svn path=/trunk/; revision=35148
2010-12-07 20:24:57 +00:00
Gerald Combs 05c7f620e8 Use g_path_get_dirname in init_progfile_dir on Windows. Leave the
non-Windows code alone since it needs to check for a libtool-ized path.

svn path=/trunk/; revision=35012
2010-11-22 21:05:55 +00:00
Stig Bjørlykke 98f6aa9311 Add a new right-click popup menu for the statusbar profiles for easy functions
to create new, copy, delete and rename configuration profiles.

svn path=/trunk/; revision=34312
2010-10-01 16:29:37 +00:00
Gerald Combs 607b228df6 Add ws_load_library and ws_module_open, which respectively call
LoadLibrary and g_module_open only for the program directory and system
directory on Windows. Use them to replace a bunch of LoadLibrary and
g_module_open calls. Use the extension ".dll" for all the DLLs that we
load. Add comments about DLL loading in Python.

svn path=/trunk/; revision=33924
2010-08-25 20:30:59 +00:00
Anders Broman 26274eb701 From Cal Turney:
Remember folder of capture selected from Welcome screen file dialog.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5038

svn path=/trunk/; revision=33758
2010-08-10 11:36:18 +00:00
Guy Harris d4cc16d4a1 Handle WTAP_ERR_SHORT_WRITE in file_write_error_message().
In eo_save_entry(), don't assume you can write the entire object in a
single write call - if the object is big enough (which would require a
64-bit address space), and you're not lucky enough to be running on
UN*X (which means LP64, so size_t and ssize_t are big enough for the
entire object), you can't.

svn path=/trunk/; revision=33231
2010-06-16 01:30:29 +00:00
Guy Harris ba5564f32e Squelch some compiler warnings, clean up indentation, clean up a
comment.

svn path=/trunk/; revision=32076
2010-03-02 00:06:20 +00:00
Stig Bjørlykke 2ab6b0f8eb Small rewrite for glib < 2.14 to make it work more than once.
svn path=/trunk/; revision=31340
2009-12-21 17:39:37 +00:00
Stig Bjørlykke 1925a4f5eb Make copy_persconffile_profile work with glib < 2.14.
svn path=/trunk/; revision=31339
2009-12-21 17:28:47 +00:00
Stig Bjørlykke fe793ed781 Added Copy Profile functionality.
svn path=/trunk/; revision=31335
2009-12-21 12:32:31 +00:00
Stig Bjørlykke 3a5c9ec3b2 Load lua scripts in the plugins directory, both global and personal.
List loaded lua scripts in Help->About->Plugins.

svn path=/trunk/; revision=30675
2009-10-23 17:52:18 +00:00
Kovarththanan Rajaratnam 94ff940129 GetModuleFileName expects the size of the passed buffer to be expressed in TCHAR. We currently pass the size expressed in bytes. In other words, we incorrectly state that the buffer is twice as big as it really is.
svn path=/trunk/; revision=30344
2009-10-05 18:38:50 +00:00
Stig Bjørlykke fffe2fdf23 Fixed a typo in a comment.
svn path=/trunk/; revision=28566
2009-06-01 17:28:20 +00:00
Sebastien Tandel 52cc5fb1e8 python binding for wireshark (first commit)
* ability to write dissectors with python for wireshark.
        documentation (http://wiki.wireshark.org/Python)


svn path=/trunk/; revision=28529
2009-05-29 21:10:40 +00:00
Guy Harris 2f6fe511f3 Sigh.
dladdr() in GNU libc isn't available (<dlfcn.h> doesn't define Dl_info)
unless _GNU_SOURCE is defined.

In addition, it's not guaranteed to return anything more useful than
argv[0]; just in case that changes at some point in the future, however,
we still use it, we just run it through the same machinery that we run
argv[0] through.  (On Mac OS X, for example, the path of the executable
is handed to the run-time linker by the kernel, so it *is* useful
there.)

svn path=/trunk/; revision=27821
2009-03-22 18:06:06 +00:00
Guy Harris c73ab7dff7 Change the signature of init_progfile_dir() so the casting of the
function pointer (to main) to an argument to dladdr() is done in
init_progfile_dir() rather than its callers.

svn path=/trunk/; revision=27814
2009-03-22 06:53:17 +00:00
Guy Harris 6f059e8cb7 In Solaris, the second argument to dladdr() is just a void *, not a
const void *.

svn path=/trunk/; revision=27813
2009-03-22 06:38:02 +00:00
Guy Harris 7c6e2155cc Attempt to use dladdr() to get the pathname of the executable image if
it's available and works.

svn path=/trunk/; revision=27812
2009-03-22 00:42:33 +00:00
Stig Bjørlykke 62f60df6b4 From Jakub Zawadzki (bug 3331):
g_free() is NULL safe, so we don't need check against it.

svn path=/trunk/; revision=27718
2009-03-13 22:06:48 +00:00
Guy Harris ace4af44fc Add a routine to report write errors to the list of failure-reporting
routines handled by epan/report_err.c.

Move copy_binary_file() in file.c to epan/filesystem.c, and rename it to
copy_file_binary_mode() (to clarify that it *can* copy text files;
arguably, *all* files are "binary" unless you're on, say, an IBM 1401
:-)).  Have it use the report_err.c routines, so it works in
console-mode programs.

Clean up some comments while we're at it.

svn path=/trunk/; revision=27456
2009-02-15 21:47:57 +00:00
Bill Meier b82ef98f4b Fix some indentation
svn path=/trunk/; revision=27280
2009-01-20 21:43:49 +00:00
Guy Harris d3f84a1af3 Umm, no. g_strdup() != g_strdup_printf(); the first argument to the
*former* should always be a format string, but the *only* argument to
the latter is a string to duplicate.

svn path=/trunk/; revision=27066
2008-12-20 00:12:54 +00:00
Gerald Combs 3bb0df12f5 From babi: Fix three overflows (bugs 3150 and 3151).
From me: Use a #define for the RTP analysis field name lengths.

svn path=/trunk/; revision=27064
2008-12-20 00:07:21 +00:00
Stig Bjørlykke 58e2d7a0d6 Fix some "format not a string literal and no format arguments" warnings.
svn path=/trunk/; revision=26649
2008-10-31 15:47:47 +00:00
Gerald Combs 09bf9e6946 ETH -> WS updates.
svn path=/trunk/; revision=26570
2008-10-27 04:47:57 +00:00
Bill Meier afd857957a Fix a few Emacs "file variables" to have "safe" values.
That is: indent-tabs-mode: tabs --> indent-tabs-mode: t
Also: fix a typo: set-tabs-mode --> indent-tabs-mode

svn path=/trunk/; revision=26113
2008-09-02 11:17:03 +00:00
Jeff Morriss 83f9ecf96f Move privileges.c and unicode-utils.c from epan to wsutil (so things like
capinfos and dumpcap don't need to depend on libwireshark nor directly pull
in those modules).  Because capinfos and editcap were only being linked with
privileges.c if we had plugins, this allows those programs to be linked when
someone is compiling --without-plugins.

svn path=/trunk/; revision=25640
2008-06-30 17:16:29 +00:00
Guy Harris 256552f6a3 Rename an argument to avoid collisions with a global variable name, as
noted by John Smith.

Fix indentation.

svn path=/trunk/; revision=25547
2008-06-23 20:31:21 +00:00
Jeff Morriss a5cee04fad Move the file utility functions from wiretap to libwsutil so that
libwireshark (and the plugins using those functions) do not depend on
wiretap on Windows.

While doing that, rename the eth_* functions to ws_*.

svn path=/trunk/; revision=25354
2008-05-22 15:46:27 +00:00
Stephen Fisher 726a1caaf1 - Remove GLIB1 code
- Change ugly GLIB version checking statements to GLIB_CHECK_VERSION
- Remove ws_strsplit files because we no longer need to borrow GLIB2's
  g_strsplit code for the no longer supported GLIB1 builds


svn path=/trunk/; revision=24829
2008-04-07 05:22:54 +00:00
Gerald Combs 46bcad885a Check in the OS X packaging patch from bug 2341, since I've had
confirmation that the OS X package works on at least one system
other than my laptop.

svn path=/trunk/; revision=24640
2008-03-15 18:31:52 +00:00
Jeff Morriss 9fdc3e961d get_datafile_path() and get_persconffile_path() return malloc'd memory. Note that in the comments.
svn path=/trunk/; revision=24476
2008-02-26 18:58:12 +00:00
Stig Bjørlykke b715bd28d2 Ups, fix a typo from last checkin.
svn path=/trunk/; revision=24259
2008-02-03 15:49:22 +00:00
Stig Bjørlykke 47d744b59d More rewrite of prohibited APIs (sprintf, strcpy, strcat).
svn path=/trunk/; revision=24258
2008-02-03 15:38:20 +00:00
Stig Bjørlykke 45572b611c Do not change profile if directory creation failed, and change to default
profile if existing profile was deleted.

svn path=/trunk/; revision=24208
2008-01-27 14:45:31 +00:00
Stig Bjørlykke 6a31f43f8b Always return a valid profile name from get_profile_name().
svn path=/trunk/; revision=24175
2008-01-24 17:06:22 +00:00
Jeff Morriss fdfaebccd1 Include dirent.h if we have it (to fix glib-1 compile: it needed DIR).
svn path=/trunk/; revision=24100
2008-01-15 19:39:31 +00:00
Stig Bjørlykke a2d1e9005d This patch adds support for configuration profiles, which can be used to
configure and use more than one set of preferences and configuration files.

This can be found in the "Configuration Profiles..." menu item from the Edit
menu, or by pressing Shift-Ctrl-A.  It's also possible to start wireshark
and tshark with a named profile by using the "-C ProfileName" option.
A new status pane in the main window will show the current profile.

The configuration files currently stored in the Profiles are:
- Preferences
- Capture Filters
- Display Filters
- Coloring Rules
- Disabled Protocols
- User Accessible Tables

The recent data are by design not added to the profile.

Planned future enhancements:
- make a more convenient function to switch between profiles
- add a "clone profile" button to copy an existing profile
- make the profiles list active and accept return as OK
- save users "Decode as" in the profile
- make new, clone and deletion of profiles more secure
- make some of the recent values available in the profile

This patch also fixes:
- setting default status pane sizes
- a bug setting status pane for packets when not having main lower pane.

svn path=/trunk/; revision=24089
2008-01-14 16:40:23 +00:00
Richard van der Hoff 58b39bde74 Don't build in init_plugin_dir if HAVE_PLUGINS is not defined, which
means that we aren't reliant on PLUGIN_DIR having a sensible value.

svn path=/trunk/; revision=22616
2007-08-24 00:03:02 +00:00
Bill Meier a6dab6d644 (Minor) Use _WIN32 (instead of WIN32) like the rest of Wireshark
svn path=/trunk/; revision=22030
2007-06-03 16:07:07 +00:00
Guy Harris ab5a09f4de No need to call init_plugin_dir() - it gets called, if necessary, by
get_plugin_dir().

Add checks for the success or failure of init_progfile_dir() in dftest.

svn path=/trunk/; revision=21942
2007-05-25 20:03:26 +00:00
Luis Ontanon 11f06217ce Have editcap and capinfos loading the wiretap plugins.
epan/filesystem.c
   have get_plugin_dir() calling init_plugin_dir() if necessary

epan/epan.c and epan/report_err.c
   move the report_failure family into the new report_err.c file, have epan_init() calling the initializer

epan/plugins.h and epan/proto.c
   do not have init_plugins() calling the proto_reg functions instead do it in init_proto()

gtk/main.c and tshark.c
   init_plugin_dir() has become suprefluous

capinfos.c and editcap.c
   load the wiretap plugins

Makefiles
   do what's needed to build withe the above changes.




svn path=/trunk/; revision=21935
2007-05-25 17:22:32 +00:00
Guy Harris a3d3282e64 Have init_progfile_dir() also check whether
WIRESHARK_RUN_FROM_BUILD_DIRECTORY is set and, if so and we weren't run
with special privileges, set the running_in_build_directory_flag.  Have
it do the same if it finds ".libs" in the pathname of the program and we
weren't run with special privileges, as that means it was probably run
from the libtool wrapper script and presumably thus isn't an installed
binary.

This means that get_credential_info() has to be called before
init_progfile_dir().

Clean up some indentation.

svn path=/trunk/; revision=21866
2007-05-21 20:31:45 +00:00
Stephen Fisher 46b8669566 Fix a bunch more warnings. Add -Werror when using --with-warnings-as-errors
under gcc to tools/lemon, plugins/mate and epan/


svn path=/trunk/; revision=21204
2007-03-26 06:10:52 +00:00
Guy Harris 2e8fa7557e Include <ctype.h> to define "isspace()".
Clean up indentation.

svn path=/trunk/; revision=21028
2007-03-14 18:22:28 +00:00