Linking with liblua requires libdl on Linux; if the test link with liblua
fails try including libdl.
Fixes the problem reported in:
https://www.wireshark.org/lists/wireshark-dev/201711/msg00102.html
Change-Id: I8561f15f8d9adbab52d668d102811fb821b45034
Reviewed-on: https://code.wireshark.org/review/24678
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
In autotools, if we find pcap_open(), define HAVE_PCAP_REMOTE, so we
build the remote capture support.
In both autotools and CMake, only check for pcap_setsampling() if we
have pcap_open(), as the compile fails if we have pcap_setsampling() but
don't have remote capture.
Change-Id: I0e7b78a2d372ea658a19ed2f6493532928c36872
Reviewed-on: https://code.wireshark.org/review/24680
Reviewed-by: Guy Harris <guy@alum.mit.edu>
No need to make it an option; it's not an option in CMake.
Change-Id: I43dd25b9b73e6f372bd6612aea6372b950b0ca74
Reviewed-on: https://code.wireshark.org/review/24635
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Also remove XXX comment (answer: no, using package flags is preferable).
Change-Id: I05e7c0a40db9f1e1931b0fc585fed49cd7409526
Reviewed-on: https://code.wireshark.org/review/23901
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Red Hat, at one point, provided a /usr/include/pcap/pcap.h without
bothering to also provide a /usr/include/pcap.h that linked to it or
included it, breaking source compatibility. That's what we're working
around when we search in both the top-level include directories and, if
they exist, pcap subdirectories of those directories.
libpcap 1.0 and later also put pcap.h in a pcap subdirectory, but also
provided a pcap.h in the top-level include directory that included
pcap/pcap.h, preserving source compatibility, so that's not the reason
we're searching in the top-level include directories and their pcap
subdirectories.
Change-Id: I8f427d46ce8293d278be9005ee623cda1ea5d691
Reviewed-on: https://code.wireshark.org/review/23902
Reviewed-by: Guy Harris <guy@alum.mit.edu>
pcap provides a pcap_set_tstamp_type function, which can be used to request
hardware timestamps from a supporting kernel.
This patch adds support for aforementioned function as well as two new
command line options to dumpcap, wireshark and tshark:
--list-time-stamp-types
List time stamp types supported for the interface
--time-stamp-type <type>
Change the interface's timestamp method
Name choice mimics those used by tcpdump(1), which already supports this
feature. However, unlike tcpdump, we provide both options unconditionally.
If Wireshark was configured without pcap_set_tstamp_type being available,
--list-time-stamp-types reports an empty list.
Change-Id: I418a4b2b84cb01949cd262aad0ad8427f5ac0652
Signed-off-by: Ahmad Fatoum <ahmad.fatoum@siemens.com>
Reviewed-on: https://code.wireshark.org/review/23113
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
That way, if you have an older version, we fail at configure time, with
what should be a message indicating that your c-ares is too old, rather
than at compile time, with what might provoke users to ask "what am I
doing wrong?" or "what do I need to fix?" or "why is my compile
failing?" or....
Change-Id: I911574c4d90174b6bd074c5ef537557d47b199dc
Reviewed-on: https://code.wireshark.org/review/22752
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
For example, on at least some versions of Fedora, if you have a 64-bit
machine, have both the 32-bit and 64-bit versions of the run-time zlib
package installed, and have only the *32-bit* version of the zlib
development package installed, it'll find the header, and think it can
use zlib, and will use it in subsequent tests, but it'll try and link
64-bit test programs with the 32-bit library, causing those tests to
falsely fail. Hilarity ensues.
Change-Id: Ic2536e8a652ef96e2a3923c1faa61f6c8c06bf58
Reviewed-on: https://code.wireshark.org/review/22417
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This reverts commit 8cd1fd0c99.
Making HAVE_REMOTE a config.h #define is a really horrible idea. It's *NOT* a configuration option.
Instead, HAVE_REMOTE should be defined by other mechanisms, as was done in 79eab8ca07.
Change-Id: I4632b63bd73a25a27c5f4686d2baf3e0beddecb3
Reviewed-on: https://code.wireshark.org/review/21604
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This reverts commit d13b8ea13c.
This will only work with git HEAD of libpcap, but not with any release versions of libpcap or winpcap (the *pcap includes require the define, not Wireshark).
Change-Id: I08e5ec66e3642dc02f793c83ffc4363bb348202c
Reviewed-on: https://code.wireshark.org/review/21603
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
We never test for it - we test for HAVE_PCAP_REMOTE - so there's no need
to set it in config.h.
While we're at it, note that "PCAP" in "HAVE_PCAP_REMOTE" can refer to
libpcap as well as WinPcap, given that, at least in the tip of the
master branch, you can configure remote support in libpcap, although
it's not enabled by default (it needs to be vetted for security, as it
increases the attack surface of a machine running the server *and* of an
application using libpcap with remote support).
Change-Id: I3c96cf16bbda19ec7c085f74cffc6f125198d45b
Reviewed-on: https://code.wireshark.org/review/21589
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This solves a crash occurring when trying to free memory allocated by
GeoIP (cross-compiled with mingw(32|64)) with MSVC function
Bug: 13598
Change-Id: I757cff13660bd485d7ea91d10660e9bf86404728
Reviewed-on: https://code.wireshark.org/review/21090
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
The -Wimplicit error covers two warnings, trying to catch these cases:
Setting a global variable without declaring its type (-Wimplicit-int):
undeclared_type = 1;
More importantly, -Wimplicit-function-declaration catches the case where
a function is not declared (missing header, programming error, etc.).
Turn these warnings into errors, most likely it will be a programming
error that results in a link failure anyway. See also
https://fedoraproject.org/wiki/Changes/Fedora26CFlags
Also fix autotools checks not to trigger -Wimplicit-int and
-Wimplicit-function-declaration (in krb5 check due to missing include).
Tested on Ubuntu 16.04 (autotools & cmake) and Arch Linux (cmake),
configure/cmake output and config.h are identical.
Change-Id: I137284263f3b1223df6e6a893111c3640802631f
Reviewed-on: https://code.wireshark.org/review/19331
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
There is *NO* guarantee that sed will do anything useful with input that
doesn't have a newline and, in fact, the default sed in Solaris 11
doesn't produce *any* output if you hand it input with no newline.
Furthermore, doing xxx=`yyy` will, if the output of yyy has newlines at
the end, strip them; to quote section 2.6.3 "Command Substitution" of
the Single UNIX Specification:
The shell shall expand the command substitution by executing
command in a subshell environment (see Shell Execution
Environment) and replacing the command substitution (the text of
command plus the enclosing "$()" or backquotes) with the
standard output of the command, removing sequences of one or
more <newline> characters at the end of the substitution.
so there's no need to strip the newline.
Change-Id: Ia710f67a42739c1e218eb9fec53a54bde6e010da
Reviewed-on: https://code.wireshark.org/review/19016
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
We do not use the STARTUP negotiation since a stream
can be captured in its middle but try to decompress
if the flag is present and fallback if it fails.
Change-Id: Iecbf49a45220b04be7808869c9884548eb1e7694
Signed-off-by: Benoît Canet <benoit@scylladb.com>
Reviewed-on: https://code.wireshark.org/review/17952
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
The qtchooser package in many (all?) distros installs executable symlinks to
qtchooser that can mislead AC_PROG_PATH if the corresponding Qt linguist
tools package is missing.
Bug: 12570
Change-Id: I98795a3a7b8a05214c56a0c7b50829ea3b2976fa
Reviewed-on: https://code.wireshark.org/review/16316
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Adrian Simionov <daniel.simionov@gmail.com>
Reviewed-by: João Valverde <j@v6e.pt>
sshdump and ciscodump require libssh >= 0.6.0. Check for this version and
only build them if a sufficient version is present. (The other checks
stay; in particular, ssh_userauth_agent doesn't exist on Windows and
must be checked separately.)
Bug: 12507
Change-Id: Ibe42b0cbb597cd9c4aab51f44d48185940ad954b
Reviewed-on: https://code.wireshark.org/review/15882
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Dario Lombardo <lomato@gmail.com>
Tested-by: Dario Lombardo <lomato@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Add SOCKET_LIBS and NSL_LIBS to global LIBS variables on platforms
where it is required.
Make configure checks for getaddrinfo/gethostname unconditional,
that is handled with #ifdefs if necessary.
Change-Id: Ia874038454fb9cf3bdbf8e6fd829f319e331837e
Reviewed-on: https://code.wireshark.org/review/14560
Reviewed-by: João Valverde <j@v6e.pt>
Let the compiler and linker handle the system default search path.
Generally give priority to /usr/local when doing "manual" searches.
Change-Id: I3bde7af1226305d94ddb4bc96cefe9ef91e26769
Reviewed-on: https://code.wireshark.org/review/14564
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
(When cross-compiling, this is *not* the compiler used to build wireshark itself).
Macro ax_prog_cc_for_build.m4 retrieved from http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git
Change-Id: I035059d9315e0081dcf1ffbafd9ce6d7ad46700c
Reviewed-on: https://code.wireshark.org/review/4503
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Eric Anderson <andersoe@cs.cmu.edu>
Reviewed-by: João Valverde <j@v6e.pt>
Use pkg-config if a zlib.pc file is available.
Remove the now redundant AC_TRY_LINK_FUNC test (there are no linker flags
for GTK+ here).
Change-Id: I7de744749eba7231ae0097b975144b76ffcf1bdb
Reviewed-on: https://code.wireshark.org/review/14263
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>
Use PKG_WIRESHARK_CHECK_SYSTEM_MODULES for consistency with other
system dependencies.
Give slightly more informative configure messages other than multiple
'checking for LUA'.
Check for headers using pkg-config to avoid undefined symbols in
config.h.
Change-Id: I8d3df9ccf6f718d7d055da4f713af60d46d89e33
Reviewed-on: https://code.wireshark.org/review/14173
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>
GNU coding standards recommend against it and automake is designed
around it.
This allows overriding the global build flags using AM_CFLAGS, etc.,
or per object flags, something that is difficult or impossible currently
because of automake precedence rules.
Change-Id: I3f1ea12e560af5a46b2f04b342b1882bbf123f12
Reviewed-on: https://code.wireshark.org/review/13455
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>
This reverts commit 67c5849744.
It's not *guaranteed* to be there in *every* UN*X, but it's in at least
the Single UNIX Specification V3, as well as in shells commonly used in
non-UNIX UN*Xes :-), so it'll be there in the UN*Xes we'll be run on.
Change-Id: I541f7607055a24d6933d10244f85eea60052a3d8
Reviewed-on: https://code.wireshark.org/review/13325
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Fixes false "-Wvariadic-macros" because "-Wpedantic" came after
"-Wno-variadic-macros". While at it, avoid (unintentionally?) adding
-fPIE to all C++ programs (via CXXFLAGS).
Availability of flags is checked by appending a flag (in case the user
has something like CFLAGS=-Wno-error).
This removes a -fPIE check for CXXFLAGS and removes 5
-Woverlength-strings and 9 -Wvariadic-macros warnings from make with
Clang 3.7.0. configure and compile times were equal. (A diff between the
configure outputs showed no other changes.)
This reverts commit cf0d762d73 and applies
a different approach.
Ping-Bug: 10791
Change-Id: Ic7b4137e2d98b06bc7625091be9bc7dd69182586
Reviewed-on: https://code.wireshark.org/review/12175
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
If we didn't find a C++ compiler, we can't check whether the
non-existent C++ compiler supports a flag, so don't do so.
Change-Id: I3d3232acae2dfc40deb0b01f35656ef53c4f1640
Reviewed-on: https://code.wireshark.org/review/12132
Reviewed-by: Guy Harris <guy@alum.mit.edu>