Commit graph

473 commits

Author SHA1 Message Date
Guy Harris
b2622e1194 Move the "capture-comment" long option to LONGOPT_CAPTURE_COMMON.
Change-Id: I55884d48911de307cde52accfebbda69f2989526
Reviewed-on: https://code.wireshark.org/review/2505
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 23:43:41 +00:00
Guy Harris
b3885a9387 Fix builds without pcap.
Change-Id: I6c67f9ea9d115a8396af0904ef9a73d2c528dcaa
Reviewed-on: https://code.wireshark.org/review/2498
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:51:34 +00:00
Guy Harris
5537c53f37 "-d" isn't common to all capturing programs, it's dumpcap-specific.
Change-Id: I827615d45051c9d66407516b311d3de448de6d07
Reviewed-on: https://code.wireshark.org/review/2495
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:32:21 +00:00
Guy Harris
26bbee3fad Add some long options for capture short options.
The names match tcpdump trunk's names for the corresponding options.

Also have capture_opts.h provide a #define for the part of the short
option string that corresponds to the capture short options that all our
programs that take capture short options take (those are largely the
ones we have in common with tcpdump).

Change-Id: Ia209425959c801725850b56a7d63441ee99b5001
Reviewed-on: https://code.wireshark.org/review/2492
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:00:16 +00:00
Guy Harris
312ed10900 Add --help and --version long options.
Also, make the convention for long-only options be that their
case-statement values start at 128, so they avoid colliding with any
ASCII code points, including control characters.

Make the tables of long options "static const" while we're at it, and
get rid of unnecessary casts.

Change-Id: I55702a85e9bc078b1cd0f2803ebb68a710405bab
Reviewed-on: https://code.wireshark.org/review/2491
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 19:19:47 +00:00
AndersBroman
aa3a968eb6 Profiling show that g_log() takes a lot of CPU even when logging isn't
active.

Change-Id: I242f8e98a77861c0174e432c7026964babae7299
Reviewed-on: https://code.wireshark.org/review/1565
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-08 19:58:52 +00:00
Alexis La Goutte
296591399f Remove all $Id$ from top of file
(Using sed : sed -i '/^ \* \$Id\$/,+1 d')

Fix manually some typo (in export_object_dicom.c and crc16-plain.c)

Change-Id: I4c1ae68d1c4afeace8cb195b53c715cf9e1227a8
Reviewed-on: https://code.wireshark.org/review/497
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-04 14:27:33 +00:00
Hadriel Kaplan
c875dc8597 Fix dumpcap.c: Assigned value is garbage or undefined (clang analyzer)
Change-Id: I61dbf5e1e206b1c0d2e594bfba38e83e51e8f09c
Reviewed-on: https://code.wireshark.org/review/371
Reviewed-by: Evan Huus <eapache@gmail.com>
Tested-by: Evan Huus <eapache@gmail.com>
2014-02-27 17:57:02 +00:00
Gerald Combs
f966980937 Replace "svn" with "git" all over the place.
Rename "SVNPATH" to "GITBRANCH" since that seems more appropriate.
Rename "svnversion.h" to "version.h" as Evan suggested. Update some
URLs. In make-version.pl, make sure we don't set an improper upstream
branch name. Use the number of commits + short hash from `git describe`
for package names by default.

Change-Id: I922bba8d83eabdf49284a119f55b4076bc469b96
Reviewed-on: https://code.wireshark.org/review/139
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-02-07 23:03:03 +00:00
Martin Kaiser
c852f994ea From Toralf Förster
fix format strings for signed integers

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9637

svn path=/trunk/; revision=54835
2014-01-17 20:06:39 +00:00
Anders Broman
90ea235292 Fix [-Wmissing-prototypes]
svn path=/trunk/; revision=54834
2014-01-17 19:35:57 +00:00
Jakub Zawadzki
064082e68a Change G_GINT64_CONSTANT(xxxxU) to G_GUINT64_CONSTANT(xxxx)
svn path=/trunk/; revision=54314
2013-12-20 22:39:32 +00:00
Bill Meier
87e2aa3383 From "bd": Fix " Wireshark stops showing new packets but dumpcap keeps writing them to the temp file"
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9571

From me: Fixed in a slightly different manner than sugested in the patch attached to the bug.



svn path=/trunk/; revision=54181
2013-12-17 15:02:47 +00:00
Chris Maynard
93f15d640c Specify SI units for the max filesize autostop condition. For now, keep the capture buffer size in IEC units, but document it as such.
#BACKPORT(1.10, 1.8(?))

svn path=/trunk/; revision=53728
2013-12-02 19:17:12 +00:00
Jakub Zawadzki
d99fdfda63 Replace macros: BSWAP16, BSWAP32, BSWAP64 with glib-version.
XXX, people are not aware that expression of this macros might be evaluated multiple times, like:
 -  BSWAP16(tvb_get_letohs(tvb, off)) : \
 +  GUINT16_SWAP_LE_BE(tvb_get_letohs(tvb, off)) : \

Should be tvb_get_ntohs() called?


svn path=/trunk/; revision=53653
2013-11-29 19:21:20 +00:00
Guy Harris
b5e698553e Report the interface when an open or an attempt to set the link-layer
header type fails, as we might be capturing on more than one interface.

Report the failing interface name in single quotes in some places where
we weren't doing so, for stylistic consistency.

svn path=/trunk/; revision=53593
2013-11-26 03:13:16 +00:00
Jakub Zawadzki
c9b2ee3768 include <wsutil/pint.h> only when needed.
svn path=/trunk/; revision=53196
2013-11-09 15:44:29 +00:00
Anders Broman
996b07a814 Print if_dropped
svn path=/trunk/; revision=53080
2013-11-04 19:38:20 +00:00
Guy Harris
b06876390d Rename routines that write pcap-ng files to "pcapng_xxx" rather than
"libpcap_xxx".

Rename the low-level write routine in pcapio.c to write_to_file(), as
it's used for both pcap and pcap-ng files.

svn path=/trunk/; revision=52275
2013-09-29 20:53:13 +00:00
Guy Harris
c42263f28a We always write to a FILE *, so:
make libpcap_write_to_file() static;

	don't pass it as an argument to write routines, just have them
	call it directly;

	make the handle argument a FILE *.

Make the data length argument to libpcap_write_to_file() a size_t, as
that's what, for example, fwrite() takes as a size argument.

svn path=/trunk/; revision=52274
2013-09-29 20:26:25 +00:00
Chris Maynard
bc654875f0 Handle the 2GiB boundary case of the max filesize autostop condition properly so that we avoid overflow conditions and so that we ensure we don't capture more than 2GiB. Also, document the max filesize autostop value of 2GIB as well as indicating that it's truly GiB and not GB.
This fixes the problem reported on ask: http://ask.wireshark.org/questions/23891/wireshark-wont-run-with-multiple-capture-files

#BACKPORT(1.10) ... not sure about 1.8?

svn path=/trunk/; revision=51576
2013-08-29 18:15:13 +00:00
Gerald Combs
a75499aae0 Check our recently-added signal pipe in statistics mode.
svn path=/trunk/; revision=51519
2013-08-25 22:41:54 +00:00
Anders Broman
71f7093cf3 Output a warning about kernel BPF JIT compiler beeing activated.
svn path=/trunk/; revision=51488
2013-08-23 05:25:30 +00:00
Anders Broman
f9aaaebdc8 Output a warning about kernel BPF JIT compiler beeing activated.
svn path=/trunk/; revision=51487
2013-08-23 05:21:25 +00:00
Martin Kaiser
9e7ce8b817 fix compiler warning on Debian wheezy (gcc 4.7.2)
dumpcap.c:193:10: error: ignoring return value of ‘write’, declared with
attribute warn_unused_result [-Werror=unused-result]

for some reason, using (void)write(fd, ...) did not do the trick

svn path=/trunk/; revision=51476
2013-08-22 18:49:31 +00:00
Guy Harris
347ea71bae Only enable the Linux kernel BPF JIT compiler if we're on Linux.
Unless we're going to do something if that fails, there's no point in
having enable_kernel_bpf_jit_compiler() return a success/failure
indication.

Fix indentation.

svn path=/trunk/; revision=51475
2013-08-22 17:36:30 +00:00
Anders Broman
5928ded2b4 Enable Kernel BPF JIT compiler from dumpcap.
svn path=/trunk/; revision=51472
2013-08-22 17:20:09 +00:00
Guy Harris
da7c920853 I guess Solaris's getopt_long() "struct option" declaration doesn't have
enough cowbell^wconst; throw in a comment to squelch warnings.

svn path=/trunk/; revision=51351
2013-08-14 01:21:13 +00:00
Alexis La Goutte
a1abe1540b Fix error when build with clang 3.0
dumpcap.c:3981:88: error: implicit conversion loses integer precision: 'const __suseconds_t'
      (aka 'const long') to 'guint32' (aka 'unsigned int') [-Werror,-Wshorten-64-to-32]
                                                             phdr->ts.tv_sec, phdr->ts.tv_usec,
                                                                              ~~~~~~~~~^~~~~~~
dumpcap.c:3989:73: error: implicit conversion loses integer precision: 'const __suseconds_t'
      (aka 'const long') to 'guint32' (aka 'unsigned int') [-Werror,-Wshorten-64-to-32]
                                              phdr->ts.tv_sec, phdr->ts.tv_usec,
                                                               ~~~~~~~~~^~~~~~~

svn path=/trunk/; revision=51250
2013-08-10 21:27:26 +00:00
Chris Maynard
1a0b16d176 Trivial: Wrap text at column 80.
svn path=/trunk/; revision=51012
2013-07-29 15:45:36 +00:00
Martin Kaiser
9e33a6bade if we capture on multiple interfaces, the output file will be pcapn-ng
even if we enforce pcap ouput format via -P
    
in such a case, we *can* write a capture comment to the output file

svn path=/trunk/; revision=50948
2013-07-27 16:48:06 +00:00
Martin Kaiser
82ea635aa6 command line option --capture-comment for dumpcap
svn path=/trunk/; revision=50945
2013-07-27 16:25:08 +00:00
Martin Kaiser
a585b45343 use capture_comment from the capture_options structure
when we write the SHB

svn path=/trunk/; revision=50944
2013-07-27 16:16:57 +00:00
Martin Kaiser
14c82477bf use getopt_long() in dumpcap
for now, there's no long options, this is just a first test to see if
things compile everywhere...

svn path=/trunk/; revision=50877
2013-07-24 20:42:39 +00:00
Chris Maynard
91ecc2334f "man inet_pton" only says that it returns a negative value, zero or a postive value, and not specifically -1, 0, or 1, so even though we know that's what wsutil's inet_pton will return, we shouldn't test against those exact values.
svn path=/trunk/; revision=50670
2013-07-16 16:23:31 +00:00
Chris Maynard
42b09314b0 C++ style comments are not allowed in ISO C90. (Fixes the rest of them now that I noticed, "this will be reported only once per input file")
svn path=/trunk/; revision=50613
2013-07-15 15:51:45 +00:00
Chris Maynard
e7e260b4fc Trivial: C++ style comments are not allowed in ISO C90.
svn path=/trunk/; revision=50612
2013-07-15 15:48:10 +00:00
Luis Ontanon
0bdc0efc46 get main_window_update out of the way... pass an update_cb to the capture_sync stuff
... as per the XXX comment removed from tshark.c this was a mess to keep the linker
happy... I couldn't!

I did this without even understanding whether calling main_window_update was realy
necessary in most cases. I guess nothing or more specific update cbs would be best.


svn path=/trunk/; revision=50188
2013-06-27 17:10:50 +00:00
Jeff Morriss
bbf6a3766e Move tempfile.{h,c} into wsutil.
svn path=/trunk/; revision=50163
2013-06-26 01:14:35 +00:00
Anders Broman
78e334b845 From Mike Garratt:
Friendly Names support causing unnecessary delay when Wireshark starts.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8034

svn path=/trunk/; revision=49752
2013-06-04 04:36:19 +00:00
Guy Harris
8596d17d7f Pull the capture-session state information out of capture_opts and put
it into a separate capture_session structure.  capture_opts should
contain only user-specified option information (and stuff directly
derived from it, such as the "capturing from a pipe" flag).

svn path=/trunk/; revision=49493
2013-05-22 07:44:28 +00:00
Guy Harris
1ca63098ac Rename capture_opts_trim_iface() to
capture_opts_default_iface_if_necessary(), to reflect what it actually
does.

svn path=/trunk/; revision=49491
2013-05-22 04:49:31 +00:00
Guy Harris
c1d34d4be6 On OS X, get the interface type from the System Configuration framework.
svn path=/trunk/; revision=49486
2013-05-22 01:19:18 +00:00
Guy Harris
39779a7bee Send the output of the -D and -L options to the standard output rather
than the standard error.

In Wireshark on Windows, create a console before doing so and destroy it
before exiting.  Don't do that in TShark or dumpcap, as those are
console-mode programs on Windows.

This should fix bug 8609 and still allow "wireshark -D" and "wireshark
-L" to work when the standard output isn't redirected.

svn path=/trunk/; revision=49025
2013-04-25 05:47:11 +00:00
Anders Broman
26ddabf0d7 From Michal Labedzki:
Fix some compilation errors in dumpcap/plugins


https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8304

svn path=/trunk/; revision=48413
2013-03-19 05:09:37 +00:00
Michael Tüxen
da07699dd3 Make the memory limit (in bytes or packets) used for storing packets
configurable via command line options and print specific drop numbers
at the end. This allows to tune the buffering when using multiple
threads.
This also fixes a logic arrow in enforcing the limits.
The patch for the enhanced counters is from Anders Broman.


svn path=/trunk/; revision=48223
2013-03-10 11:57:40 +00:00
Anders Broman
85973068cc From beroset:
remove C++ incompatibilities

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416

svn path=/trunk/; revision=48038
2013-03-03 17:14:19 +00:00
Jeff Morriss
d0992bf8cd Add a #define for the default capture buffer size and use it.
svn path=/trunk/; revision=47942
2013-02-28 15:27:56 +00:00
Anders Broman
1a4fb17e13 Update the text of dumpcap -h, default buffer size should be 2 MB.
svn path=/trunk/; revision=47935
2013-02-28 06:37:41 +00:00
Bill Meier
4d9850f689 it's ==> its
svn path=/trunk/; revision=47894
2013-02-26 01:43:39 +00:00
Gerald Combs
bd4cffae58 When any of our executables start on Windows create or open a "Wireshark
is running" mutex. Have the NSIS installer check for this mutex and ask
the user to close Wireshark if it's found. While not perfect this makes
the WinSparkle update process much less annoying.

svn path=/trunk/; revision=47758
2013-02-20 01:19:42 +00:00
Anders Broman
e90f414a72 svn path=/trunk/; revision=47210 2013-01-22 08:28:46 +00:00
Guy Harris
05825b02cd Add some routines to wsutil to, at least on some platforms, add
information to crash dumps and the like.  (Currently, we only handle OS
X's CrashReporter, but we should do this on other platforms where this
information can be added and would be helpful.)

White space tweaks.

svn path=/trunk/; revision=47104
2013-01-15 21:54:41 +00:00
Michael Mann
18580d6703 Allow pcap/pcapng format to be written to more than just a file (FILE*). Gives more flexibility if needed.
WRITE_DATA macro replaced and applied consistently throughout pcapio.c

svn path=/trunk/; revision=46891
2013-01-02 04:01:22 +00:00
Anders Broman
8106e33188 Make dumpcap build on Windows
svn path=/trunk/; revision=46788
2012-12-26 15:02:32 +00:00
Guy Harris
8ed7a73e22 Fix a bunch of warnings.
Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
sizeof.

Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
strtol() and strtoul().

Change some data types to avoid those implicit conversion warnings.

When assigning a constant to a float, make sure the constant isn't a
double, by appending "f" to the constant.

Constify a bunch of variables, parameters, and return values to
eliminate warnings due to strings being given const qualifiers.  Cast
away those warnings in some cases where an API we don't control forces
us to do so.

Enable a bunch of additional warnings by default.  Note why at least
some of the other warnings aren't enabled.

randpkt.c and text2pcap.c are used to build programs, so they don't need
to be in EXTRA_DIST.

If the user specifies --enable-warnings-as-errors, add -Werror *even if
the user specified --enable-extra-gcc-flags; assume they know what
they're doing and are willing to have the compile fail due to the extra
GCC warnings being treated as errors.

svn path=/trunk/; revision=46748
2012-12-26 05:57:06 +00:00
Guy Harris
e0ed1bddab More whitespace cleanups.
svn path=/trunk/; revision=46716
2012-12-23 09:54:05 +00:00
Michael Tüxen
644f8485da Add support for writing per packet comments when using pcapng.
Not actually used with this commit, which just brings in the
infrastructure.


svn path=/trunk/; revision=46715
2012-12-23 09:25:42 +00:00
Guy Harris
bb846842f8 Fix indentation.
svn path=/trunk/; revision=46712
2012-12-23 06:52:50 +00:00
Guy Harris
0ddce65214 fclose() and fflush() are standard C routines, so there's no need for
our own wrappers.  (pcapio.c isn't using wrappers around, for example,
fwrite().)

svn path=/trunk/; revision=46640
2012-12-20 20:00:06 +00:00
Michael Tüxen
9a2f4c8e9d Don't use an pcap structures in pcapio.[ch].
Currently, pcapio is only used by dumpcap, which is only compiled
if there is pcap support. However, making pcapio independent from
libpcap allows it also to be used from text2pcap, which does not
rely on libpcap.

svn path=/trunk/; revision=46637
2012-12-20 15:20:10 +00:00
Michael Tüxen
7e84abf005 Add ws_fclose(), ws_fflush(), and ws_fdopen() to the fileutils.
Retire libpcap_fdopen(), libpcap_dump_flush(), and libpcap_dump_close().

svn path=/trunk/; revision=46636
2012-12-20 14:53:09 +00:00
Michael Tüxen
10dbe80c65 Add support for writing the flags option in the enhanced
packet block (pcapng).

svn path=/trunk/; revision=46619
2012-12-19 20:27:12 +00:00
Anders Broman
2977bde9f1 - Make dumpcap build with the new bundle.
- Use the correct bundle id for GTK3

svn path=/trunk/; revision=46586
2012-12-18 11:58:22 +00:00
Jeff Morriss
20211340e5 Make the "-g" argument to tshark actually work (by passing it to dumpcap).
svn path=/trunk/; revision=46515
2012-12-12 03:25:35 +00:00
Jeff Morriss
05ee001d73 Document the "-g" option to dumpcap.
Add that option to tshark, too, and document it.

The option can't be given to Wireshark because the GUI already has a "-g"
(goto packet).

svn path=/trunk/; revision=46513
2012-12-12 02:07:08 +00:00
Stephen Fisher
0537be2e5e Change variable "devname" to "devicename" in numerous places to avoid
to avoid -Wshadow warnings about conflicting with BSD's devname()
function.


svn path=/trunk/; revision=46494
2012-12-10 23:53:09 +00:00
Bill Meier
552323e7fb Fix a number of [-Wshadow] warnings;
Also: Do some minor whitespace changes

svn path=/trunk/; revision=46182
2012-11-25 18:35:41 +00:00
Guy Harris
bd976ae6c0 On UN*X, if an interface has a description, use it as the "friendly
name".  If it doesn't have a description, on OS X, use the System
Configuration framework to attempt to get a "friendly name" for
interfaces.

If a loopback device doesn't have a friendly name, give it "Loopback" as
the friendly name.

Move the "turn a CFString into a mallocated C string" routine into
common code, as it's used in more than one place.

svn path=/trunk/; revision=46131
2012-11-22 06:02:49 +00:00
Guy Harris
d415d3d87c On error, have capture_opts_trim_iface() return the exit status that
should be used (on success, have it return 0).  Exit with that exit
status; if the problem is that we couldn't get the interface list or if
there are no interfaces in that list, return 2, as that's not a
command-line syntax error.

svn path=/trunk/; revision=46108
2012-11-21 17:14:54 +00:00
Guy Harris
03f4fa5223 Make the "Invalid capture filter" message resemble that of other programs.
svn path=/trunk/; revision=46107
2012-11-21 16:05:21 +00:00
Anders Broman
28474fe8ef From Mike Garratt:
Friendly Names for interfaces on Windows

Notes on the changes the patch covers:
* if_info_t struct: addition of friendly_name
* Dumpcap Interface list format changes:
  + Win32: "dumpcap -D" shows friendly_name in place of descript if known
  + All: machine interface "dumpcap -D -Z none" includes friendly_name in the
list in addition to the existing parameters
* interface_options struct: addition of console_display_name
  + When an interface name is displayed in a console, it will typically be the
console_display_name (instead of name). 
  + console_display_name is used as the basis of the autogenerated temp
filenames
  + console_display_name is typically set to the friendly_name if known,
otherwise it is set to the interface name
* Enhancements to capture_opts_add_iface_opt() (the function which process -i
options).
  + Can now specify the interface using its name and friendly_name
  + Interface name matching is case insenstive
  + Name matching first attempts exact matching, then falls back to prefix
matching
    (e.g. dumpcap -i local)
  + Validates interface names, instead of blindly sending them off to
winpcap/libpcap
  + Interface specification by number is still supported.
* capture_opts_trim_iface() has been refactored:
  + Instead of repeating a decent chunk of the cost in
capture_opts_add_iface_opt(), it calls capture_opts_trim_iface() to specify the
interface.
* introduction of capture_win_ifnames.[ch] (windows only code)
  + Implements static function GetInterfaceFriendlyNameFromDeviceGuid() - a
windows version independant function to convert an interface guid into its
friendly name.  Uses published api functions on windows vista and higher, but
falls back to unpublished API functions on older windows releases.
  + void get_windows_interface_friendlyname(/* IN */ char
*interface_devicename, /* OUT */char **interface_friendlyname); - extracts the
GUID from the interface_devicename, then uses
GetInterfaceFriendlyNameFromDeviceGuid() to do the resolution
* Auto temp filename generation:
  + Now uses wireshark_pcapng_* or  wireshark_pcap_* depending on file format
  + Basis temp filename format on console_display_name
  + Win32: if console_display_name is a windows interface guid, extracts
numbers from GUID here (instead of in interface option processing) 

GUI CHANGES:
* Dialog that displays when you click the "Manage Interfaces" button (within
Capture Options dialog) has been renamed from "Add new interfaces" to
"Interface Management"
* ui/gtk/capture_dlg.c: new_interfaces_w variable renamed to
interface_management_w
* Win32: Local Interfaces tab on Interface Management dialog, shows includes
friendly name as far left column
* Interface Management dialog defaults to larger size on win32 - so it fits
without resizing local interfaces tab
* Interface Management dialog now saves preferences when you click the apply
button (local hidden interfaces was not persisting across restarts)
* Tweaks: "Interface Details" dialog (Interface list->Capture Interfaces ->
Details):
  + "Friendly Name" renamed to "NDIS Friendly Name"
  + Added "OS Friendly Name" to the top of the list
* Win32: The "Capture Interfaces" dialog now shows the friendly name instead of
device guid
* Welcome screen:
  + The height of the interface list scrollbox dynamically adjusts & updates to
the number visible interfaces.
    Up to 10 interfaces can be listed without a scroll bar, the minimum height
is for 2 interfaces. 
  + Win32: now shows just the Friendly Name if known - in place of
"Interfacename_Guid:(Description)"

svn path=/trunk/; revision=46083
2012-11-19 20:07:27 +00:00
Bill Meier
68aeb27b90 (Trivial): update a comment.
svn path=/trunk/; revision=45287
2012-10-03 15:42:41 +00:00
Jeff Morriss
3551a86c36 We always HAVE_CONFIG_H so don't bother checking whether we have it or not.
svn path=/trunk/; revision=45015
2012-09-20 01:29:52 +00:00
Evan Huus
bcf6e79573 Convert inpkts_to_sync_pipe and report_packet_count() to use unsigned ints
consistently. Cleans up some cppcheck warnings about signed/unsigned mismatches
in format strings.

svn path=/trunk/; revision=44818
2012-09-09 13:57:43 +00:00
Michael Tüxen
11c86ec476 Update recv/drop counters also when no threads are used.
This should fix
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7523

svn path=/trunk/; revision=43981
2012-07-25 07:08:20 +00:00
Jakub Zawadzki
bf81b42e1e Update Free Software Foundation address.
(COPYING will be updated in next commit)

svn path=/trunk/; revision=43536
2012-06-28 22:56:06 +00:00
Guy Harris
2851255f53 Don't supply a fallback error message for pcap_open() unless it actually
fails.

This may clear up the problem most recently reported in bug 7021 after
the crash was fixed, where the capture starts successfully but an error
dialog pops up.

svn path=/trunk/; revision=43501
2012-06-27 05:13:06 +00:00
Jörg Mayer
2b6b0656c2 Pontus Fuchs via bug 6973:
Add last piece of the wireless toolbar: Use dumpcap to actually set
the channel.

svn path=/trunk/; revision=43466
2012-06-24 19:45:49 +00:00
Jörg Mayer
3685b4db6f Remove some trailing whitespace
svn path=/trunk/; revision=43425
2012-06-21 13:23:45 +00:00
Michael Tüxen
1b0a5c58e2 Fix compilation on FreeBSD.
svn path=/trunk/; revision=43343
2012-06-18 21:50:59 +00:00
Chris Maynard
c3dadc73f3 Fix Coverity CID 708961: Resource leak, by closing the socket if the connect() fails. While there, print a human-readable error message on Windows like we do for other platforms. Lastly, be sure to specify FORMAT_MESSAGE_IGNORE_INSERTS in the dwFlags arg to all FormatMessage() calls where FORMAT_MESSAGE_FROM_SYSTEM is also specified. (Ref: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/28/6564257.aspx)
svn path=/trunk/; revision=43171
2012-06-09 03:36:15 +00:00
Chris Maynard
11204066a8 Some minimal documentation of remote capture interface formats for both rpcap and the new TCP feature from bug 2788.
svn path=/trunk/; revision=43156
2012-06-08 13:55:14 +00:00
Chris Maynard
74f85a07c0 Add another cast to make Windows buildbots happy.
svn path=/trunk/; revision=43155
2012-06-08 13:23:14 +00:00
Anders Broman
14c0648ce4 Add a cast.
svn path=/trunk/; revision=43154
2012-06-08 12:27:22 +00:00
Anders Broman
6a1f6be63b From Alexey Neyman Forward ported by Michael Mann:
Allow captures over TCP connections.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2788

svn path=/trunk/; revision=43153
2012-06-08 11:54:26 +00:00
Chris Maynard
6272bd1578 In cap_pipe_open_live(), be sure to call ws_close(fd) before returning due to a couple of error condtions. Fixes Coverity CID 702395 Resource leak.
svn path=/trunk/; revision=42844
2012-05-25 01:32:26 +00:00
Guy Harris
fb8054f131 Expand a comment.
Clear the struct sigaction *before* we fill in any fields in it.

svn path=/trunk/; revision=42706
2012-05-18 04:06:35 +00:00
Gerald Combs
bdb614e264 Fix a bunch of uninitialized variables found by Coverity Scan. CIDs
702403, 702404, 702405, 702406, 702407, 702408, 702409, 702410, 702411,
and 702412.

svn path=/trunk/; revision=42658
2012-05-16 16:29:12 +00:00
Bill Meier
9d4b7ad9fe From Evan Huus:
In get_capture_device_open_failure_messages() in dumpcap.c, there are some
 statements that should have been guarded by ifdefs, causing a little
 unnecessary work on some platforms, and a bunch of unused-variable warnings
 from static analyzers. The patch fixes the problem.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7228

svn path=/trunk/; revision=42454
2012-05-07 00:49:39 +00:00
Michael Tüxen
e08a45d705 Set also the pcap buffer, if the default of 1 MB is used. This bug was
reported by Guy.

svn path=/trunk/; revision=42246
2012-04-25 21:19:31 +00:00
Michael Tüxen
3c866b04d0 Report the packets captured and the packets dropped (either by libpcap or by dumpcap).
svn path=/trunk/; revision=42245
2012-04-25 21:09:33 +00:00
Michael Tüxen
8ea1984ddc Allow writing ISB with given recv/drop counters.
No functional change by this commit.

svn path=/trunk/; revision=42242
2012-04-25 20:50:38 +00:00
Michael Tüxen
d2526de5f8 Fix the packet counters.
This fixes the inconsistencies reported on the command line by dumpcap
as indicated by
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7191

svn path=/trunk/; revision=42236
2012-04-25 17:43:44 +00:00
Michael Tüxen
0fe7859ca4 Fix locking problem.
svn path=/trunk/; revision=42235
2012-04-25 16:05:29 +00:00
Guy Harris
04cd90e99e From Evan Huus: add a missing free. Fixes bug 7092.
svn path=/trunk/; revision=42070
2012-04-14 17:45:03 +00:00
Guy Harris
5ef71a27ff Fix tpo.
svn path=/trunk/; revision=41941
2012-04-04 19:46:45 +00:00
Guy Harris
43ca745bb9 Work around that WinPcap bug for another pcap_open() call.
svn path=/trunk/; revision=41938
2012-04-04 19:26:07 +00:00
Guy Harris
9c781b0939 Work around WinPcap bug wherein pcap_open() returns -1 without putting
an error message into errbuf (the bug has been reported to
winpcap-bugs).

Should fix bug 6922.

svn path=/trunk/; revision=41937
2012-04-04 19:13:39 +00:00
Anders Broman
ba7c0cb1b9 From Jose Pedro Oliveira:
dumpcap.c: code cleaning 
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6718

svn path=/trunk/; revision=41535
2012-03-13 15:27:22 +00:00
Anders Broman
cbde63643e From Jose Pedro Oliveira:
Enforce the modelines in dumpcap.c and in pcapio.c

svn path=/trunk/; revision=41505
2012-03-12 15:40:57 +00:00
Guy Harris
6486942282 Fix function name in debugging message.
svn path=/trunk/; revision=41488
2012-03-11 19:59:08 +00:00
Gerald Combs
7a8df2f485 In pcapng.c use the units per second value from the interface instead of
the default.

Add support for reading nseclibpcap files to dumpcap.

svn path=/trunk/; revision=41455
2012-03-10 00:24:42 +00:00
Anders Broman
bb71a9c96a Forward interface_opts.descr (currently empty) when writing IDB:s
svn path=/trunk/; revision=41454
2012-03-09 15:29:35 +00:00
Anders Broman
9d03324d91 From Jose Pedro Oliveira: Make dumpcap write the if_tsresol option (using the default value) https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6718
svn path=/trunk/; revision=41444
2012-03-09 05:02:27 +00:00
Gerald Combs
57eeea4b20 Add a note about using GetSystemTimePreciseAsFileTime.
svn path=/trunk/; revision=41382
2012-03-06 21:11:31 +00:00
Guy Harris
26f694ddee Fix comment.
svn path=/trunk/; revision=41347
2012-03-05 06:43:44 +00:00
Anders Broman
ad6640344f From Jose Pedro Oliveira: Fix typos
svn path=/trunk/; revision=41330
2012-03-03 16:17:20 +00:00
Gerald Combs
8334ec2b43 Another small commit to test migration.
svn path=/trunk/; revision=41251
2012-03-01 02:18:35 +00:00
Gerald Combs
380f3f54a7 Add a comment noting that we need to add support for files with
nanosecond timestamps. (Also test the recent anonymous repository
migration.)

svn path=/trunk/; revision=41248
2012-02-29 20:32:12 +00:00
Michael Tüxen
050c0a14c9 Don't use deprecated API on glib 2.31.18 and higher.
This should fix
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6884

svn path=/trunk/; revision=41247
2012-02-29 18:04:23 +00:00
Michael Tüxen
412c5a903c As discussed with Anders: Only write a single ISB at the end. Proivde
start/end time in the ISBs.

svn path=/trunk/; revision=41160
2012-02-23 12:57:17 +00:00
Anders Broman
8fff390455 - Write ISB(s) at start and end of capture.
- Read all options.
- Prepare to write ISB.

svn path=/trunk/; revision=41137
2012-02-22 14:41:02 +00:00
Anders Broman
af2100d4c3 Expand the API for ISB:s
svn path=/trunk/; revision=41136
2012-02-22 10:01:16 +00:00
Michael Tüxen
f7dc80cb18 Whitespace changes.
svn path=/trunk/; revision=41124
2012-02-21 18:01:01 +00:00
Michael Tüxen
41df09c92a Whitespace changes.
svn path=/trunk/; revision=41115
2012-02-21 16:28:42 +00:00
Anders Broman
1cf19ea95f From Jose Pedro Oliveira:
dumpcap: only free os_version_str after the
libpcap_write_interface_description_block() calls.

svn path=/trunk/; revision=41114
2012-02-21 16:14:57 +00:00
Anders Broman
5df11d41bb Extend libpcap_write_interface_description_block() wiyh more options
all exept os curently unused.

svn path=/trunk/; revision=41108
2012-02-21 13:35:04 +00:00
Anders Broman
ce86c08b58 From Jose Pedro Oliveira shb_os value: get_os_version_info() instead of get_runtime_version_info()
svn path=/trunk/; revision=41095
2012-02-21 05:52:50 +00:00
Anders Broman
29a14da188 Jose Pedro Oliveira: get_os_version_info() is more apropriate for shb_os
svn path=/trunk/; revision=41086
2012-02-20 21:17:43 +00:00
Michael Tüxen
68204c94a4 From Anders: Add support for options in the SHB.
From me: Some whitespace changes.

svn path=/trunk/; revision=41026
2012-02-14 17:07:52 +00:00
Anders Broman
e553c70fe8 From Michael Mann:
help page update (pcapng is now the default file format).

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6551

svn path=/trunk/; revision=40658
2012-01-23 07:48:53 +00:00
Guy Harris
3864d5d19d Add an additional DONT_HAVE_PCAP return value from get_interface_list()
and capture_interface_list().  Return it if, on Windows, we ask for the
interface list but don't have WinPcap installed.  Handle it like
CANT_GET_INTERFACE_LIST.

svn path=/trunk/; revision=40334
2011-12-29 22:49:49 +00:00
Guy Harris
21f5ea24e4 Just hard-code the error for "can't load WinPcap"; the one that
cant_load_winpcap_err() has some redundant gunk in it.

svn path=/trunk/; revision=40333
2011-12-29 22:06:22 +00:00
Guy Harris
71c7f43d37 On Windows, if we can't open a capture device, check whether WinPcap is
loaded and, if not, report that as the problem, rather than suggesting
that you didn't specify the proper interface.

svn path=/trunk/; revision=40332
2011-12-29 21:59:24 +00:00
Guy Harris
d892f00916 Show a "Capturing on ..." message similar to TShark.
svn path=/trunk/; revision=39989
2011-11-22 19:07:49 +00:00
Guy Harris
939feef06f If we're not running as a child process, report the interfaces on which
we're capturing.  (We do not require a -i flag; the message could be
useful if you don't specify the interface, as it lets you know which
interface was chosen, which might not be the interface you'd think it
would be.  Yes, that's arguably a libpcap bug, which I plan to look at;
it should probably try to figure out which interfaces are "active" if
possible, and prefer those.)

Use cmdarg_err() for invalid capture filters and other capture errors.

svn path=/trunk/; revision=39983
2011-11-22 10:08:26 +00:00
Guy Harris
46575653fd Don't set variables if we don't look at them later. All praise Clang
Cat.

svn path=/trunk/; revision=39876
2011-11-16 02:18:30 +00:00
Gerald Combs
aa0c9c965c Try to fix the GLib thread API deprecations listed in bug 6552.
svn path=/trunk/; revision=39776
2011-11-09 23:43:50 +00:00
Stig Bjørlykke
612dcc3c6b As reported by Michael Speck:
Removed last occurrences of USE_THREADS.

svn path=/trunk/; revision=39775
2011-11-09 20:45:06 +00:00
Gerald Combs
7d442f4c22 Change the use of threads from "mostly always, depending on your
configure options and Gtk+ and GLib versions" to "always".

svn path=/trunk/; revision=39751
2011-11-07 23:42:53 +00:00
Chris Maynard
367cb50bd3 Minor formatting changes to the dumpcap -h output.
svn path=/trunk/; revision=39166
2011-09-27 18:19:23 +00:00
Bill Meier
a58121db53 Fix vi "modeline" so it works;
See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5748


svn path=/trunk/; revision=39076
2011-09-21 16:44:10 +00:00
Bill Meier
9c6aca43f2 Windows: GetTickCount() returns a DWORD (not a time_t);
Fixes a problem on Windows wherein specifying a capture file
time duration for autostop or file-switching would stop
working after some period of time.

The reason:
GetTickCount returns DWORD (unsigned int) which
 wraps "every 49.7 days";

and: The GetTickCount() return value was being stored in a time_t which is
 int64 on Windows;

thus:
 The test for elapsed time (using signed integers) didn't work correctly after
 the time had wrapped.

Fixes Bug #6280: https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6280


svn path=/trunk/; revision=38921
2011-09-07 18:25:54 +00:00
Stephen Fisher
dc3c5c8b63 Attempt to fix coverity id 1212: MISSING_BREAK by inserting "FALLTHROUGH"
comment.


svn path=/trunk/; revision=38785
2011-08-29 21:36:48 +00:00
Jeff Morriss
bf95c7b5e4 Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5608 :
getopt() can/should normally be found in unistd.h, so:

- When testing for getopt(), define that we HAVE_GETOPT instead of
  HAVE_GETOPT_H (to avoid confusion).
- Don't attempt to include getopt.h: not all OS's have it (for example,
  Solaris 9 does not).
- (All the places which need getopt already include unistd.h (if we have it).)

If this breaks things on some OS, we might need (a real) HAVE_GETOPT_H check.

svn path=/trunk/; revision=38437
2011-08-09 21:02:10 +00:00
Jörg Mayer
c15ff441c6 Replace deprecated glib functions.
In order to compile the whole project with -DG_DISABLE_DEPRECATED
the mate plugin needs to replace its usage of GMemChunk.
All other places should be clean.

svn path=/trunk/; revision=38392
2011-08-07 18:15:45 +00:00
Michael Tüxen
52f555d857 Use the threads based workaround only on windows (with thread support enabled),
since the workaround is only intended to work on windows.

svn path=/trunk/; revision=38059
2011-07-16 12:45:47 +00:00
Michael Tüxen
c481dda78c Fix compilation on non-windows platforms defining USE_THREADS.
svn path=/trunk/; revision=38044
2011-07-15 14:31:27 +00:00
Michael Tüxen
c51aafc3aa Handle the case where dumpcap is compiled without thread support, which
is the default.

svn path=/trunk/; revision=38043
2011-07-15 12:20:00 +00:00
Gerald Combs
a533d70be0 On Windows enable threads everywhere instead of just in dumpcap. If
threads are enabled use them to check the recent file list. Fixes bug
3810.

svn path=/trunk/; revision=38033
2011-07-14 23:18:02 +00:00
Guy Harris
da461f18ad Alas, the libpcap API didn't use "void *" where it should have; squelch
some warnings from Clang.

svn path=/trunk/; revision=37934
2011-07-08 02:02:37 +00:00
Chris Maynard
91f30ab64f From Jakub Zawadzki via bug 6002: Don't set state to STATE_EXPECT_DATA if there's no data to read.
Reference: https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6002


svn path=/trunk/; revision=37924
2011-07-06 16:22:11 +00:00
Gerald Combs
9661c3fdde Disable DEBUG_CHILD_DUMPCAP.
svn path=/trunk/; revision=37864
2011-07-02 15:44:17 +00:00
Jakub Zawadzki
5c801f3820 Revert r37857, r37861
svn path=/trunk/; revision=37862
2011-07-01 22:26:02 +00:00
Jakub Zawadzki
fafa84d23e Try to get more information about AV.
svn path=/trunk/; revision=37861
2011-07-01 22:00:59 +00:00
Jakub Zawadzki
aeb81605de Catch system exceptions from pcap_open_live() :)
svn path=/trunk/; revision=37857
2011-07-01 20:07:34 +00:00
Michael Tüxen
be3a756582 Add paranoid debug output in open_capture_device().
svn path=/trunk/; revision=37847
2011-06-30 21:02:11 +00:00
Gerald Combs
031a28f65e Log the success or failure of pcap_open/pcap_create/pcap_open_live.
svn path=/trunk/; revision=37846
2011-06-30 20:17:26 +00:00
Gerald Combs
f04a525e79 Temporarily enable dumpcap debugging.
svn path=/trunk/; revision=37844
2011-06-30 17:41:46 +00:00