Commit Graph

216 Commits

Author SHA1 Message Date
Guy Harris 6930ded24a Include <io.h> and <fcntl.h> for _setmode().
Change-Id: I1910275653ef4a985e9894f01cf5cb5fa33070d4
Reviewed-on: https://code.wireshark.org/review/18928
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-11-22 19:40:21 +00:00
Guy Harris f4d6c7abbc On Windows, put the standard output in binary mode if we're writing the capture file to it.
While we're at it, explicitly compare the restult of strcmp() against 0,
to make it clearer that it's testing for the argument *not* being equal
to "-".

Bug: 13165
Change-Id: Ic63085abb2de5f5c60d2101d19c1a269b7e0c9d7
Reviewed-on: https://code.wireshark.org/review/18924
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-11-22 18:39:35 +00:00
Guy Harris 10ca4c7527 More checks for localtime() and gmtime() returning NULL.
And some comments in the case where we're converting the result of
time() - if your machine's idea of time predates January 1, 1970,
00:00:00 UTC, it'll crash on Windows, but that's not a case where a
*file* can cause the problem due either to a bad file time stamp or bad
time stamps in the file.

Change-Id: I837a438e4b875dd8c4f3ec2137df7a16ee4e9498
Reviewed-on: https://code.wireshark.org/review/18369
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-10-22 02:27:32 +00:00
Peter Wu e5fef1d73e Fix version-string releated memleak for some CLI tools
These programs resulted on a memleak report on exit.

Change-Id: I630618f50d723b7af4cb00ba29671d4e7c6fcdc2
Reviewed-on: https://code.wireshark.org/review/17623
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2016-09-10 13:00:22 +00:00
João Valverde 3db13a7fc9 Link version code statically again
This allows keeping the code-sharing with the static linking.

This "fixes" a hypothetical ABI mismatch with wsutil and avoids pulling more
external dependencies to wsutil than strictly necessary.

A nice side-effect is that libwsutil no longer depends on version.h.

Follow up to f95976eefc.

Change-Id: I8f0d6a557ab3f7ce6f0e2c269124c89f29d6ad23
Reviewed-on: https://code.wireshark.org/review/15002
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
2016-04-21 18:59:56 +00:00
João Valverde ecb4dc396e Include ws_diag_control.h in config.h
Change-Id: Ia394071710ecda3b0e6686a51fbca45a8ff20317
Reviewed-on: https://code.wireshark.org/review/14749
Petri-Dish: João Valverde <j@v6e.pt>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
2016-04-04 23:05:31 +00:00
João Valverde f95976eefc Move zlib version check to wsutil
Change-Id: I0950f61e90af5bb21c0017204de0c0b509616e5c
Reviewed-on: https://code.wireshark.org/review/14747
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-04-03 02:58:04 +00:00
Guy Harris a4aa8930bb Put pcapio.c into a writecap library, and use it.
Change-Id: Ib89f345c072a38bc01f0513366a4bdae3bf6f08e
Reviewed-on: https://code.wireshark.org/review/14615
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-03-24 20:49:37 +00:00
João Valverde 8bee8bad81 Add inet_pton/inet_ntop interface to libwsutil
Change-Id: Ifc344ed33f2f7ca09a6912a5adb49dc35f07c81f
Reviewed-on: https://code.wireshark.org/review/13881
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
2016-02-19 15:55:09 +00:00
João Valverde 2e85975fee Just #include wsutil/inet_aton.h
No need for platform-specific system header boilerplate.

Change-Id: I5387a0005ddb0d7aab3c5b9f28d6282053c1b0fd
Reviewed-on: https://code.wireshark.org/review/13865
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
2016-02-13 23:51:53 +00:00
Joerg Mayer c0bdaf15e2 Fix an indentation to get rid of
text2pcap.c:1254:17: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]

Change-Id: Ifa031f5faad3445bcd3ab893d83c5dc6386fe3a2
Reviewed-on: https://code.wireshark.org/review/13927
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2016-02-13 19:54:02 +00:00
Guy Harris 6f61a85267 Don't write out statistics if we don't have any.
We don't know when the capture started or ended (the time stamps of the
first and last packets aren't necessarily the time when the capture
started or ended), we don't know how many packets were dropped in the
capture process, and we don't know how many packets were seen in various
stages before they were received by whatever software dumped them out as
text, so we have no statistics to report.

Change-Id: Ia8bface63a95f925a6ccb19c32d188055809f203
Reviewed-on: https://code.wireshark.org/review/12812
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-21 22:01:52 +00:00
Alexis La Goutte 526dcce74d text2pcap: fix There are identical sub-expressions 'num_packets_written' to the left and to the right of the '-' operator found by PVS Studio (V501)
Change-Id: Ib3fb73f6cc3dba549bd3104e9227f4e4a6e3b08c
Reviewed-on: https://code.wireshark.org/review/12310
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-21 15:30:06 +00:00
João Valverde 2aab706c5a Remove -Wwrite-strings compiler flag
The "-Wwrite-strings" flag produces nuisance warnings. These warnings are
not useful, they're impossible to fix in a sane way and therefore are being
handled with casts of static strings to (char *).

This just moves the warning to [-Wcast-qual] and a compiler pragma is
in turn required (and used) to squelch that warning.

Remove the Wwrite-strings warning. Let that responsibility fall on the
programmer (as is done by casting).

Change-Id: I5a44dfd9decd6d80797a521a3373593074962fb5
Reviewed-on: https://code.wireshark.org/review/12162
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-12 16:21:19 +00:00
Pascal Quantin fb3d38225e Update user guide for development release
Change-Id: I9b4c5ab2e98ad6daa618bcda20b53a23467e16e0
Reviewed-on: https://code.wireshark.org/review/11734
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-11-11 17:31:31 +00:00
Guy Harris 0162e54075 Clean up includes of unistd.h, fcntl.h, and sys/stat.h.
Have wsutil/file_util.h include them on UN*X, just as it includes io.h
on Windows, so we can have a rule of "if you do file operations, include
<wsutil/file_util.h> and use the routines in it".

Remove includes of unistd.h, fcntl.h, and sys/stat.h that aren't
necessary (whether because of the addition of them to wsutil/file_util.h
or because they weren't needed in the first place).

Change-Id: Ie241dd74deff284e39a5f690a297dbb6e1dc485f
Reviewed-on: https://code.wireshark.org/review/11619
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-07 21:52:23 +00:00
Gerald Combs 95382c3afb Suppress a bunch of cast-qual warnings.
Squelch

    warning: cast discards ‘__attribute__((const))’ qualifier from pointer target type [-Wcast-qual]

similar to g630f54f.

Change strtod to g_ascii_strtod to squelch a checkAPIs error.

Change-Id: Ib2d26ef89f08827a5adc07e35eaf876cd7b8d14e
Reviewed-on: https://code.wireshark.org/review/7269
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-20 04:04:15 +00:00
Bill Meier e88a11f5c9 (Trivial) Fix printf-related 'Mismatch on sign' warnings
Found by MSVC2013 Code Analysis

Change-Id: I58063946dd558e98308c87b36eeac0ddbe1a6e79
Reviewed-on: https://code.wireshark.org/review/7045
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-02-09 18:57:14 +00:00
Guy Harris dfa50e6bd8 Use get_ws_vcs_version() to generate the version string.
That's what we do in, for example, dumpcap.

Also, use g_strdup_printf() for the strings, rather than using
fixed-length arrays.

Change-Id: I36ad201e3eda903ef3a089bafb09df0581efe512
Reviewed-on: https://code.wireshark.org/review/6284
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-03 21:36:47 +00:00
Pascal Quantin 7d943e11a4 Add back "version.h" inclusion
It got removed by the automatic include cleaning scripts
Also add it to text2pcap.c as it is used to get the version when writing a pcapng file

Change-Id: I3d56985fa1d04bcb066fe015a588c24cf3cb7267
Reviewed-on: https://code.wireshark.org/review/6248
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-01-02 18:24:55 +00:00
Guy Harris 27be466c9b Do the full string in get_{compiled,runtime}_version_info().
Have them start the string with "Compiled" or "Running on", and return
the string when done.

Change-Id: Ic4d290c963621fa0385dc5aab766fd4ad31d3810
Reviewed-on: https://code.wireshark.org/review/6155
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-31 06:29:11 +00:00
Guy Harris c1f30471ca Move the version_info.c stuff to wsutil/ws_version_info.c.
Change-Id: I3a5c7e219974bfb924819b43b4d445eaf00e5bde
Reviewed-on: https://code.wireshark.org/review/6153
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-31 03:41:02 +00:00
Guy Harris 120628e5f4 Don't check the same character twice in a row, check it and the next character.
Fixes Coverity CID 1260460.

Change-Id: Ic9ed109a863bcf20a5e67e4f52d628011f5e9ba5
Reviewed-on: https://code.wireshark.org/review/6087
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-28 10:19:27 +00:00
Guy Harris e08eba9b9e Only include <wsutil/os_version_info.h> if we need it.
Change-Id: Idee0e7205969ac2e7b33c4748a1463a0bfffe0a6
Reviewed-on: https://code.wireshark.org/review/6051
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-25 21:03:45 +00:00
Guy Harris 20503c7047 Check for getopt_long(), not getopt().
We support three types of platforms:

	1) UN*Xes that have both getopt() and getopt_long();

	2) UN*Xes that have getopt() but not getopt_long();

	3) Windows, which has neither.

Checking for getopt_long() lets us distinguish between 1) and 2) and
build getopt_long() for them.

Change-Id: Iaf0f142f9bebaa2eed2128d544ec9786711def45
Reviewed-on: https://code.wireshark.org/review/6045
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-25 01:11:10 +00:00
Stephen Fisher 2d8ec49ffa Move twelve show_version() functions from the varoius programs and
Wireshark UI files into a single one in wsutil.

Change-Id: I0a64f0cc8106bd681bd185289c36272c4c43baad
Reviewed-on: https://code.wireshark.org/review/6026
Reviewed-by: Stephen Fisher <sfisher@sdf.org>
2014-12-24 16:51:45 +00:00
Guy Harris a91799ebfa Don't use ctype.h routines.
That avoids locale dependency and handles possibly-signed chars(which
we weren't always doing before).

Change-Id: I89e50678abb8c3e535081c92ca25bc1bab672c68
Reviewed-on: https://code.wireshark.org/review/4798
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-17 23:43:09 +00:00
Guy Harris 34fc1145d4 Support nanosecond-resolution time stamps when writing pcap-ng files.
Pcap-ng files have supported variable time stamp resolutions since Day
One, and any code that reads those files but can't handle
nanosecond-resolution time stamps is broken.

Pcap files got a separate magic number for nanosecond-resolution files
relatively recently, and not all code that reads pcap files handles that
magic number, so we don't support it for pcap files.

Based on https://code.wireshark.org/review/#/c/4304/ from Peter Hatina.

Change-Id: I4f4e3b5ca0ba4fe9394765edb54bb77a4a776237
Reviewed-on: https://code.wireshark.org/review/4358
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-28 23:54:32 +00:00
Guy Harris f415e1c348 Remove some unnecessary definitions.
text2pcap.c uses pcapio.c to write pcap files, so it doesn't itself need
to know what those files look like.

Change-Id: I013d0c094c27515af91f352b565bc9a8bad3e842
Reviewed-on: https://code.wireshark.org/review/3927
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-30 23:21:37 +00:00
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
Michael Tüxen edc47dbf88 This should make the Linux buildbot happy.
svn path=/trunk/; revision=46670
2012-12-21 13:53:21 +00:00
Michael Tüxen 67f86530b1 Address a build issue on Windows.
svn path=/trunk/; revision=46669
2012-12-21 13:17:20 +00:00
Michael Tüxen 2dcbad6126 Build the packet to be sent completely in the buffer and
then send it out at once.
This allows the usage of routines from pcapio.

svn path=/trunk/; revision=46668
2012-12-21 13:05:43 +00:00
Michael Tüxen e8d6a3a627 Make handling of inconsistent transport layer parameters more consistent.
svn path=/trunk/; revision=46599
2012-12-18 22:29:44 +00:00
Michael Tüxen 0ba722d3bf Whitespace changes. Use consistent 4 space indent.
svn path=/trunk/; revision=46597
2012-12-18 21:52:08 +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
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 2d6301dd90 There's no __solaris__ predefine for Solaris; just use __sun.
svn path=/trunk/; revision=42012
2012-04-10 19:05:20 +00:00
Jeff Morriss bc465f37fc Revisit https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3161
and r39501:

Setting _XOPEN_SOURCE to 600 is only allowed on Solaris 10 if the compiler is
set to C99 mode.  Conversely (and as reported in the bug), simply defining it
(but with no value) is not allowed if the compiler *is* compiling to C99.

So, don't define _XOPEN_SOURCE at all on Solaris.  Keep defining it as 600 on
other OS's as (also) requested in that bug.

Maybe there's a cleaner way to do this but all of this is a "trickery" mess
anyway...

svn path=/trunk/; revision=41182
2012-02-24 20:33:19 +00:00
Jeff Morriss e925843f90 Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3161 :
Solaris doesn't like _XOPEN_SOURCE being defined but with no value, at least
when being compiled in C99-mode.  So set it to 600 (XPG6); hopefully this
won't break any other systems.

svn path=/trunk/; revision=39501
2011-10-21 01:03:48 +00:00
Stig Bjørlykke d7f7889f0c From Peter Fales via bug 6424:
Corrected IP address with text2pcap -i option on big endian machines.

svn path=/trunk/; revision=39215
2011-10-02 13:43:57 +00:00
Stig Bjørlykke c8a187390d From Pascal Quantin via bug 1723:
Make ASCII text dump identification optional.

svn path=/trunk/; revision=38886
2011-09-05 20:03:03 +00:00
Stig Bjørlykke f27f459195 Change malloc -> g_malloc and free -> g_free.
svn path=/trunk/; revision=38884
2011-09-05 19:12:31 +00:00
Stig Bjørlykke d0f83e0d8d Yet another cast.
svn path=/trunk/; revision=38703
2011-08-24 06:57:14 +00:00
Stig Bjørlykke cf114c1124 Fix a warning by changing a pointer type.
text2pcap.c: In function ‘parse_token’:
text2pcap.c:1076: warning: cast from pointer to integer of different size
text2pcap.c:1076: warning: cast from pointer to integer of different size

svn path=/trunk/; revision=38702
2011-08-24 06:42:40 +00:00
Anders Broman 1f23674191 From Jack Yu modified by Chris Maynard:
Enhancement of text2cap for parsing flexibility.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=1723

svn path=/trunk/; revision=38679
2011-08-23 04:36:37 +00:00
Bill Meier e74fe5c6ea Test return value from fwrite(); If an error occurred then exit with a message.
svn path=/trunk/; revision=38449
2011-08-10 17:15:08 +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
Stig Bjørlykke 8443bbbf75 Replace all strerror() with g_strerror().
Remove our local strerror implementation.
Mark strerror as locale unsafe API.

This fixes bug 5715.

svn path=/trunk/; revision=37812
2011-06-28 09:00:11 +00:00
Gerald Combs a24687ce8e Move the Windows argument list conversion code to a common routine.
svn path=/trunk/; revision=37372
2011-05-24 00:07:56 +00:00
Michael Tüxen cbcc0f287a Fix a typo in the help message.
Reported by Matthias Wellmeyer.

svn path=/trunk/; revision=36471
2011-04-05 14:28:33 +00:00