Commit Graph

137 Commits

Author SHA1 Message Date
Graham Bloice 97546165fa Modify includes of config.h so that out-of-tree builds, i.e. CMake
don't pick up the in-tree copy.

Change-Id: I7ec473876cdba1a025c52362d7f6adc62d24ce71
Reviewed-on: https://code.wireshark.org/review/3798
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-08-24 08:04:08 +00:00
Bill Meier f3dd7fe1eb Fix whitespace/indentation to match editor modelines.
Change-Id: I3445ae22f10584582d465bf632942e016f5f70ca
Reviewed-on: https://code.wireshark.org/review/3452
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-08-05 20:42:21 +00:00
Evan Huus 005fd7eefd Rename variable to avoid -Wshadow on mac buildbots
Change-Id: I13d591248718fcc36cd300bf28f779e2d9e0265a
Reviewed-on: https://code.wireshark.org/review/3339
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-08-02 01:12:50 +00:00
Guy Harris 5bfc21cf9e Clean up handling of missing functions.
With autotools, CMake, and nmake, if we have a function, #define
HAVE_{function_name_in_all_caps}, otherwise don't #define it.

If we provide our own version of a function in libwsutil, make sure we
have a header that declares it, and *ONLY* include that header if
HAVE_{function_name_in_all_caps} is *NOT* defined, so that we don't have
the system declaration and our declaration colliding.

Check for inet_aton, strncasecmp, and strptime with CMake, just as we do
with autotools.

Simplify the addition of {function_name_in_all_caps}_LO to libwsutil in
autotools.

Change-Id: Id5be5c73f79f81919a3a865324e400eca7b88889
Reviewed-on: https://code.wireshark.org/review/2903
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-06 21:03:09 +00:00
Guy Harris b4ce352539 Make --help and --version information a bit more uniform.
Have --version print the version number, the copyright information, the
"compiled with" information, the "running on/with" information, and the
compiler information.

Have --help print the version number, a one-line summary of what the
program does, a reference to http://www.wireshark.org for more
information, a Usage: line, and a list of command-line options.

This means programs doing that don't need to include version.h; that's
left up to get_ws_vcs_version_info() to do.

Change-Id: Idac641bc10e4dfd04c9914d379b3a3e0cc5ca8cb
Reviewed-on: https://code.wireshark.org/review/2794
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 08:46:01 +00:00
Guy Harris 8afe331369 More getopt_long, to add --help and --version support.
Change-Id: I946067b972a70154f02ab561bc0fd029a7a5abc4
Reviewed-on: https://code.wireshark.org/review/2791
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 04:51:20 +00:00
Jeff Morriss 3773a7561c Add command-line argument to request the version to a number of the utilities.
In some cases "-v" was already used so "-V" is the option.
Note that the version information in these utilities is much shorter than what
is presented by the big programs.

As requested by https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5804

Bug: 5804
Change-Id: I35db35a4eace2797afd895f9be7322ef39928480
Reviewed-on: https://code.wireshark.org/review/2489
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-21 01:05:02 +00:00
Alexis La Goutte 2414d9df46 Fix Argument with 'nonnull' attribute passed null found by Clang
Change-Id: If1c907308a7c776a6198530663f8dce03839d43b
Reviewed-on: https://code.wireshark.org/review/1098
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-04-14 11:52:35 +00:00
Graham Bloice 93d996ba38 Enhanced text2pcap so that if direction is specified on the command line, "-D",
and a direction indicator added to the start of each packet in the text file,
"I" or "O", then the ip source and destination addresses and udp, tcp and sctp
ports are swapped for an inbound packet.
Tcp sequence numbers and ack sequence numbers are updated accordingly.

Change-Id: Iec2c0fd68d80aad8842b7513fdd30bae6806b96a
Reviewed-on: https://code.wireshark.org/review/801
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-03-24 15:52:16 +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 9c62ea46cd Fix text2pcap.c: Argument with 'nonnull' attribute passed null (clang analyzer)
Clang scan analysis reports API error for text2pcap.c.

Change-Id: Ie0861d75888e258d9fd928d5d7441e1e3a8279ba
Reviewed-on: https://code.wireshark.org/review/367
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-02 02:56:17 +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
Bill Meier 1b180b3f47 Use the normal convention for exit status and output file descriptors:
Changes:
 - exit(1) if error (not exit(-1));
 - for -h: output to stdout & exit(0);

Also:
 - editor modelines: set tab-width=8;
 - use a consistent whitespace & formatting style;

svn path=/trunk/; revision=54512
2013-12-31 15:10:51 +00:00
Bill Meier 523abb73f8 'L' constant modifier not needed.
svn path=/trunk/; revision=54362
2013-12-22 15:31:42 +00:00
Bill Meier 6a0b02c26b 'guint32 crc_c[256]' array initializer constants should be unsigned 32bit; Replace 'L' by 'U'.
(not that it makes any difference in this case).

(I note that in https://tools.ietf.org/id/draft-ietf-tsvwg-sctpcsum-01.txt
the definition was 'unsigned long crc_c[256] = {0x...L, ...} presumably from
the days when LP32 was still in use.



svn path=/trunk/; revision=54308
2013-12-20 16:42:06 +00:00
Jörg Mayer 07a5c7442f Invert NEED_INET_ATON_H to HAVE_INET_ATON_H
Remove unused NEED_G_ASCII_STRTOULL_H

svn path=/trunk/; revision=52385
2013-10-05 21:56:23 +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 faad753c65 The 'a' option doesn't take an argument. Fix bug introduced by r49964.
svn path=/trunk/; revision=51803
2013-09-06 20:40:54 +00:00
Guy Harris 2bf78ceca9 In the comments for pcap_link_type, point to
http://www.tcpdump.org/linktypes.html for the details, rather than to
some particular OS's net/bpf.h (assuming it even has one), and speak of
it as a LINKTYPE_ value rather than a DLT_ value (in those cases where
the LINKTYPE_ value for a given link-layer header type is different from
the DLT_ value, it's the LINKTYPE_ value that should be passed to
text2pcap, as it's what gets written to the file, and those should be
the always-platform-independent LINKTYPE_ values rather than the
possibly-platform-dependent DLT_ values).

svn path=/trunk/; revision=51008
2013-07-29 08:37:18 +00:00
Gerald Combs 03febfc819 From Dirk Jagdmann: Use a guint32 for IPv4 addresses. Fixes compilation
on OS X + Cmake.

svn path=/trunk/; revision=50139
2013-06-25 13:31:19 +00:00
Stephen Fisher eeaba530ac AF_INET and AF_INET6 undefined in textpcap.c when compiling on FreeBSD
9.1-RELEASE with non-standard gcc 4.6, so pull in sys/socket.h when available.


svn path=/trunk/; revision=50110
2013-06-21 22:43:24 +00:00
Jörg Mayer 99e1ad5443 Fix compile error:
[ 79%] Building C object CMakeFiles/text2pcap.dir/text2pcap.c.o
In file included from /usr/include/glib-2.0/glib/galloca.h:34:0,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /home/jmayer/work/wireshark/svn/trunk/wsutil/file_util.h:34,
                 from /home/jmayer/work/wireshark/svn/trunk/text2pcap.c:116:
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c: In function ‘write_current_packet’:
/usr/include/glib-2.0/glib/gtypes.h:186:22: error: declaration of ‘__v’ shadows a previous local [-Werror=shadow]
  ({ register guint16 __v, __x = ((guint16) (val)); \
                      ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:359:23: note: in expansion of macro ‘GUINT16_TO_BE’
 #define g_htons(val) (GUINT16_TO_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:35: note: in expansion of macro ‘g_htons’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                   ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:327:31: note: in expansion of macro ‘GUINT16_TO_BE’
 #define GUINT16_FROM_BE(val) (GUINT16_TO_BE (val))
                               ^
/usr/include/glib-2.0/glib/gtypes.h:357:23: note: in expansion of macro ‘GUINT16_FROM_BE’
 #define g_ntohs(val) (GUINT16_FROM_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:52: note: in expansion of macro ‘g_ntohs’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                                    ^
/usr/include/glib-2.0/glib/gtypes.h:186:22: error: shadowed declaration is here [-Werror=shadow]
  ({ register guint16 __v, __x = ((guint16) (val)); \
                      ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:359:23: note: in expansion of macro ‘GUINT16_TO_BE’
 #define g_htons(val) (GUINT16_TO_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:35: note: in expansion of macro ‘g_htons’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                   ^
/usr/include/glib-2.0/glib/gtypes.h:186:27: error: declaration of ‘__x’ shadows a previous local [-Werror=shadow]
  ({ register guint16 __v, __x = ((guint16) (val)); \
                           ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:359:23: note: in expansion of macro ‘GUINT16_TO_BE’
 #define g_htons(val) (GUINT16_TO_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:35: note: in expansion of macro ‘g_htons’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                   ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:327:31: note: in expansion of macro ‘GUINT16_TO_BE’
 #define GUINT16_FROM_BE(val) (GUINT16_TO_BE (val))
                               ^
/usr/include/glib-2.0/glib/gtypes.h:357:23: note: in expansion of macro ‘GUINT16_FROM_BE’
 #define g_ntohs(val) (GUINT16_FROM_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:52: note: in expansion of macro ‘g_ntohs’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                                    ^
/usr/include/glib-2.0/glib/gtypes.h:186:27: error: shadowed declaration is here [-Werror=shadow]
  ({ register guint16 __v, __x = ((guint16) (val)); \
                           ^
/usr/include/glib-2.0/glib/gtypes.h:237:38: note: in expansion of macro ‘GUINT16_SWAP_LE_BE_IA32’
 #    define GUINT16_SWAP_LE_BE(val) (GUINT16_SWAP_LE_BE_IA32 (val))
                                      ^
/usr/lib/glib-2.0/include/glibconfig.h:192:29: note: in expansion of macro ‘GUINT16_SWAP_LE_BE’
 #define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
                             ^
/usr/include/glib-2.0/glib/gtypes.h:359:23: note: in expansion of macro ‘GUINT16_TO_BE’
 #define g_htons(val) (GUINT16_TO_BE (val))
                       ^
/home/jmayer/work/wireshark/svn/trunk/text2pcap.c:705:35: note: in expansion of macro ‘g_htons’
             pseudoh.length      = g_htons(length - g_ntohs(HDR_IPv6.ip6_ctlun.ip6_un1.ip6_un1_plen) + sizeof(HDR_UDP));
                                   ^
cc1: all warnings being treated as errors
make[2]: *** [CMakeFiles/text2pcap.dir/text2pcap.c.o] Error 1


Feel free to choose a less offensive variable name

svn path=/trunk/; revision=50005
2013-06-18 12:22:40 +00:00
Michael Mann 75420f4ab2 Prepend custom Destination IP and Source IP (ipv4 or ipv6) in the pcap. Bug 5650 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5650)
svn path=/trunk/; revision=49964
2013-06-16 16:50:17 +00:00
Michael Tüxen a88e677724 Don't forget to move the trailing '\0'.
svn path=/trunk/; revision=48746
2013-04-05 09:56:11 +00:00
Chris Maynard 2239e7618d As forewarned at http://www.wireshark.org/lists/wireshark-dev/201304/msg00009.html, change the default snaplen to 65KiB-1. While we're at it, push the max packet size to that value as well.
Also: convert the few tabs to spaces and add modelines.


svn path=/trunk/; revision=48738
2013-04-04 19:48:20 +00:00
Anders Broman f92bd64966 [-Wmissing-prototypes]
Use explicit casts.

svn path=/trunk/; revision=48439
2013-03-20 05:59:22 +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
Chris Maynard 619c6e20a0 Usage formatting changes:
-> Wrap all text at column 80
-> Reference http://www.tcpdump.org/linktypes.html instead of net/bpf.h
-> Other misc. wording changes.

svn path=/trunk/; revision=47234
2013-01-23 21:16:42 +00:00
Michael Tüxen 674567df8a Cleanup error handling when processing preamble.
svn path=/trunk/; revision=46911
2013-01-03 09:51:51 +00:00
Michael Tüxen 441b5b1bb5 Don't try to process timestamp without the format being
specified.

svn path=/trunk/; revision=46910
2013-01-03 09:23:43 +00:00
Michael Tüxen 6e77aef946 Fix indentation.
svn path=/trunk/; revision=46901
2013-01-02 17:43:28 +00:00
Michael Tüxen c2fb93c0de Also print number of bytes written.
svn path=/trunk/; revision=46900
2013-01-02 17:42:16 +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
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
Michael Tüxen 22df071cef Add support for -D option. The preamble will start with
an I or O indicating the direction of the packet. This
will be stored in the generated file if the pcap-ng
format is used.
Thanks to Jaap for suggesting to integrate this into
the preamble!

svn path=/trunk/; revision=46744
2012-12-25 22:37:40 +00:00
Michael Tüxen 6329407d9a Remove current version of -D option, because:
* it is off by default
* not documented
* makes text2pcap to coredump when used
* its goal is not clear (to me).
I'm willing to reimplement it under a different option name
if I understand what it should do. Then I can fix and test it.


svn path=/trunk/; revision=46741
2012-12-25 19:53:04 +00:00
Michael Tüxen 05827f38ab Add some debug output regarding preamble processing.
svn path=/trunk/; revision=46740
2012-12-25 19:16:28 +00:00
Michael Tüxen 4abfc13149 Clear preamble if no timespec is given.
svn path=/trunk/; revision=46738
2012-12-25 17:45:04 +00:00
Michael Tüxen f8d48662c8 Add support of -m option for SCTP.
svn path=/trunk/; revision=46737
2012-12-25 17:32:30 +00:00
Michael Tüxen dcd2b0614b Fix SCTP packet generation if DATA chunk headers need
to be generated.

svn path=/trunk/; revision=46736
2012-12-25 14:34:24 +00:00
Michael Tüxen 4aa19ce98f Fix bugs I introduced. Now
od -Ax -tx1 -v stream | text2pcap -m1460 -T1234,1234 - stream.pcap
does work again.

svn path=/trunk/; revision=46734
2012-12-25 12:02:39 +00:00
Michael Tüxen d6a70b809e Improve description.
svn path=/trunk/; revision=46731
2012-12-25 10:31:21 +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
Michael Tüxen b70c24ca79 When using pcapng, provide input file name as comment.
svn path=/trunk/; revision=46714
2012-12-23 09:00:55 +00:00
Michael Tüxen dcadf85feb Specifiy time resolution explicitly.
svn path=/trunk/; revision=46693
2012-12-22 12:35:01 +00:00
Michael Tüxen 91534394cc Fix timestamp computation when using pcapng.
svn path=/trunk/; revision=46692
2012-12-22 12:09:38 +00:00
Michael Tüxen a52b0de406 Add support for writing pcap-ng files by specifying -n as an option.
Leave pcap the default file format for now. The is should be reconsidered
before the next release as it might make sense to use pcapgn as
the default as we do for dumpcap. (We can use the -P option to allow
switching back to pcap).

svn path=/trunk/; revision=46691
2012-12-22 09:43:17 +00:00
Michael Tüxen 3039785ecb Fix a warning on Windows.
svn path=/trunk/; revision=46674
2012-12-21 14:38:00 +00:00
Michael Tüxen 2440176cab Use pcapio routines. This concludes the preperation for
adding pcapng support.

svn path=/trunk/; revision=46673
2012-12-21 14:34:26 +00:00