Commit Graph

664 Commits

Author SHA1 Message Date
Guy Harris b32a5ee98c Don't add the wiretap directory to the list of include directories.
If you include something from the wiretap directory, always precede it
with wiretap/.

Fix some includes of files in the top-level directory to use a path
relative to the current directory, not relative to the wiretap
directory.

This makes it a bit clearer what's being included.

Change-Id: Ib99655a13c6006cf6c3112e9d4db6f47df9aff54
Reviewed-on: https://code.wireshark.org/review/13990
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>
2016-02-18 12:55:26 +00:00
Guy Harris 58d00bad1a Build the extcap programs in the extcap directory.
That lets the version of Wireshark built with autotools find the extcap
programs.

Don't install the extcap programs under ${datadir} - that puts it under
a share directory, and share directories are for platform-independent
files, which executable images aren't (they're instruction-set
dependent, hence platform-dependent).

Change-Id: I992eeb984bdbe6b3476777f7114628c83df6080f
Reviewed-on: https://code.wireshark.org/review/13943
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-02-15 08:31:06 +00:00
João Valverde b7a54039ac Use CMake conventional nomenclature for CXX_FLAGS
Change-Id: I2b67eed2bb04412b9d556e616fe3233176fac5bc
Reviewed-on: https://code.wireshark.org/review/13883
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-02-11 14:52:14 +00:00
João Valverde aa37baec70 CMake: Avoid unnecessary link dependency with SBC and fix debian warnings
Fixes dpkg warnings:

  dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/wireshark-qt/usr/bin/wireshark was not linked against libsbc.so.1 (it uses none of the library's symbols)
  dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/wireshark-gtk/usr/bin/wireshark-gtk was not linked against libsbc.so.1 (it uses none of the library's symbols)
  dpkg-shlibdeps: warning: symbol sbc_decode used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries
  dpkg-shlibdeps: warning: symbol sbc_init used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries
  dpkg-shlibdeps: warning: symbol sin used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries
  dpkg-shlibdeps: warning: symbol floorf used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries
  dpkg-shlibdeps: warning: symbol floor used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries
  dpkg-shlibdeps: warning: symbol sbc_finish used by debian/libwscodecs0/usr/lib/x86_64-linux-gnu/libwscodecs.so.0.0.0 found in none of the libraries

Change-Id: I71911513c348edd336cdc82ea358b6a05760b4b9
Reviewed-on: https://code.wireshark.org/review/13784
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
2016-02-06 11:06:35 +00:00
João Valverde eeafb47a12 Fix Qt4 moc option argument and add build parametrization
Change-Id: Ib758f0eabaf96f9c6010201e7e16147fcfa0daa2
Reviewed-on: https://code.wireshark.org/review/13671
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-02-03 09:10:20 +00:00
Gerald Combs 5cad2cd09b Add configure-time synchronous DNS warnings.
In CMake and Autotools, warn the user when neither c-ares nor ADNS is
present. Note that we might want to make asynchronous DNS a requirement.

Change-Id: Ia9cce56cc2286cdc72303fc1410f899f9c320d84
Reviewed-on: https://code.wireshark.org/review/13080
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-02-02 00:27:42 +00:00
Mike78 ef752689da Allow/Create an option to use "capture filter" labels defined in wireshark GUI from CLI
Move ui/filters.[ch] to filter_files.[ch] because dumpcap is using functionality.

Bug: 8091
Change-Id: I195c82fc023f97d6f331b8718c45a2d83d30faea
Reviewed-on: https://code.wireshark.org/review/5925
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-01-27 13:40:24 +00:00
Christian Tellefsen adb731c1cd Allow make-version.pl to use git when missing from path
This change allows make-version.pl to run correctly on Windows
without having the git binary dir in PATH. This prevents problems when
installing "Git for Windows" with default settings (git only available
via the bundled shell (bash).

Details:
* Add Git to the list of packages to be looked up by CMake.
* If Git is found by CMake, pass the full path to make-version.pl
* make-version.pl: Test whether git is available, and display a warning if git is missing.

On Unix-type systems this should have no impact.

Tested on Windows Server 2012 R2 and Ubuntu 15.04.

Change-Id: I7f7be2035c262658801586cb24c82b912848e31d
Reviewed-on: https://code.wireshark.org/review/13111
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-01-27 09:28:13 +00:00
Guy Harris 54e3b32027 Don't treat Visual Studio specially for linker flags.
Have CHECK_C_LINKER_FLAG pass /WX to the linker if we're using MSVC, to
force the link to fail if the linker doesn't recognize the flag.

Add flags to WIRESHARK_LD_FLAGS even with MSVC; let CHECK_C_LINKER_FLAG
figure out whether the flag should be used.

While we're at it, fix CHECK_C_LINKER_FLAG to save and restore
CMAKE_REQUIRED_LIBRARIES.

Change-Id: I7f73b4cc3a28eb14e46c2e1e9ad69f5303754f01
Reviewed-on: https://code.wireshark.org/review/13558
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>
2016-01-27 05:24:50 +00:00
Guy Harris 3cecda0246 Explain why we're still checking for MSVC.
Change-Id: I7d656eb5b38e8f7697b1414b6b3364a85ad132cf
Reviewed-on: https://code.wireshark.org/review/13557
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-27 01:13:36 +00:00
Michal Privoznik 8454f2a20e CMake: Produce correct plugindir for pkg-config
So far the plugindir variable in the pkg-config file is set like
this:

  set( plugindir "\${libdir}/${PLUGIN_INSTALL_DIR}" )

where libdir is set to:

  set( libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}" )

However, PLUGIN_INSTALL_DIR already contains
CMAKE_INSTALL_LIBDIR:

  set(PLUGIN_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/\
  ${CPACK_PACKAGE_NAME}/plugins/${CPACK_PACKAGE_VERSION}")

Therefore, if the pkg-config file is generated by cmake, the
resulting plugindir points to:

   plugindir=${libdir}/lib/wireshark/plugins/2.1.0
   libdir=${exec_prefix}/lib

This is obviously wrong as after variable substitution the
resulting path is /usr/lib/lib/wireshark/plugins/...

Change-Id: I448991284d8948434311b1c0828828fd93d0baf8
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-on: https://code.wireshark.org/review/13258
Tested-by: João Valverde <j@v6e.pt>
Reviewed-by: João Valverde <j@v6e.pt>
2016-01-23 15:55:08 +00:00
Gerald Combs 441c6d4e9c CMake: Fix an endif.
Fix

CMake Warning (dev) in CMakeLists.txt:
  A logical block opening on the line

    C:/Development/wireshark-w64/CMakeLists.txt:1649 (if)

  closes on the line

    C:/Development/wireshark-w64/CMakeLists.txt:1668 (endif)

  with mis-matching arguments.
This warning is for project developers.  Use -Wno-dev to suppress it.

Change-Id: I6b6060e4d88b385deb81111234e3229d104772f1
Reviewed-on: https://code.wireshark.org/review/13407
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-01-19 00:08:51 +00:00
Michal Labedzki 1cc4ac4619 Add Lua dependings only if LUA is enabled
Avoid build fail if found Lua but it is disabled.

Change-Id: If1cf0d650454d2844a1430135de1385c984e5ba4
Reviewed-on: https://code.wireshark.org/review/13394
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-01-18 16:09:05 +00:00
Michal Privoznik ea16a84ef5 Generate better pkg-config file
Firstly, when building with autogen.sh and configure script, the
wireshark.pc is not generated at all. Then, due to not matching
names some variables are not being replaced as they should be.

Bug: 11069
Change-Id: Iefa7a9b536f3fee7f9ad78803aaacc5bb64a9c8d
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-on: https://code.wireshark.org/review/13005
Reviewed-by: João Valverde <j@v6e.pt>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-01-04 08:15:29 +00:00
Peter Wu 408ea5d2fa cmake: do not fail if help/faq.txt already exists
The glob pattern should not catch the generated faq.txt file. Fix this
by explicitly listing all source .txt files.

Bug: 11896
Change-Id: I3904a0e094b5dba3808dacaaabd4db298a8f14cb
Reviewed-on: https://code.wireshark.org/review/12930
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
2015-12-30 00:44:25 +00:00
Michael Mann 5e4bbcda98 Refactor GUI dependencies out of color_filters.[ch] and move it to epan directory.
This also moved color.h into color_filters.h

Change-Id: Ic19e27aa1b3ec67e764aa7ee8bbef7b1187bb12e
Reviewed-on: https://code.wireshark.org/review/12831
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-28 18:33:41 +00:00
Guy Harris fd462af183 Fix a typo in a comment.
Change-Id: I4bde3d058c0602fe2a1f314a77fb62227d530666
Reviewed-on: https://code.wireshark.org/review/12834
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-23 03:49:36 +00:00
Dario Lombardo ac0eb6043b extcap: add randpktdump, a random packet generator.
This new extcap is for testing and educational purpose.
It relies on rankpkt-core functions to generate random packets.

Change-Id: If6890f0673545682995a2079458108edc0913b30
Reviewed-on: https://code.wireshark.org/review/11764
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-22 12:24:16 +00:00
Gerald Combs 6dfcbedde9 CMake: Make "install ... DESTINATION" paths relative.
Make sure we use relative destination paths in each install
command. Apparently many CPack generators don't support absolute paths,
particularly on Windows. This fixes the following error when running
`cpack -G WIX` here:

----
CPack: Create package using WIX
CPack: Install projects
CPack: - Install project: Wireshark
CMake Error at C:/Development/wireshark/cmbuild/cmake_install.cmake:206 (message):
  ABSOLUTE path INSTALL DESTINATION forbidden (by caller): C:/Program Files/Wireshark/lib/wireshark/extcap/androiddump.exe

CPack Error: Error when generating package: wireshark
----

Change-Id: Ifdcd40814df8163ea722a65ef55acc1a511b2f75
Reviewed-on: https://code.wireshark.org/review/12657
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
2015-12-18 17:05:12 +00:00
Guy Harris 54413c8594 Note why we do -Wno-variadic-macros.
Change-Id: Id57a6985eb37d9bf5246cf0f57cc24bb0ca153b9
Reviewed-on: https://code.wireshark.org/review/12639
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 22:27:01 +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
Guy Harris d7006cebbb Revert "Build Flex-generated files with "warnings are errors"."
This reverts commit b56f53884b.

Sadly, we *do* get warnings at this point with older versions of Flex,
such as the one on the 32-bit OS X buildbot.

Change-Id: I9aec1a16e9f2e1bbcfaac3dffdabdd89af5815e3
Reviewed-on: https://code.wireshark.org/review/12443
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-05 17:13:28 +00:00
Guy Harris b56f53884b Build Flex-generated files with "warnings are errors".
We shouldn't be getting warnings at this point.

Change-Id: I363a48546cb8d916425f42962ae1697d52ed9a29
Reviewed-on: https://code.wireshark.org/review/12436
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>
2015-12-05 12:08:52 +00:00
Gerald Combs 42333aa353 CMake+PortableApps: Include the VC runtime (second try).
Move the code that finds the Visual C++ redistributable DLLs to its
own module. Run it before we create our NSIS and PortableApps targets.
Add a PortableApps target that copies the redistributable

This reverts commit 403fa9fbe0cdba3f443ec4674cda40092525ffe4.

Bug: 11800
Change-Id: I081d8fd3f5f37dd590659ca8f2bd309642a9a9df
Reviewed-on: https://code.wireshark.org/review/12431
Reviewed-by: Gerald Combs <gerald@wireshark.org>
(cherry picked from commit 5b580834aeeee8477039bc099c49c21aeeb3b71f)
Reviewed-on: https://code.wireshark.org/review/12432
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
2015-12-04 22:32:32 +00:00
Guy Harris be04716601 More libcodecs -> libwscodecs.
Change-Id: I861c625a4bf36ec8bddebec483f43cf6b3cd7c09
Reviewed-on: https://code.wireshark.org/review/12421
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-04 01:47:54 +00:00
Pascal Quantin 651e0884b7 Change codecs from static to dynamic library
This allows to properly register codecs plugins.
See https://www.wireshark.org/lists/wireshark-dev/201511/msg00202.html for details.

Change-Id: Ibc13a19936abb7a2e81b86582a75fa424351565b
Reviewed-on: https://code.wireshark.org/review/12385
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>
2015-12-03 23:54:49 +00:00
Ryan Doyle be2e0996b1 CMake: Fix breakage with CMake 3
This fix was accidentally reverted in d6da952. Tested with CMake
2.8.12.2 and 3.3.2.

Change-Id: I05312eb9ec18be88be6155edb1ced67ea2ee2bba
Reviewed-on: https://code.wireshark.org/review/12301
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2015-11-30 08:43:07 +00:00
Peter Wu 98a50d8513 cmake: print the current CMAKE_C_FLAGS/CMAKE_CXX_FLAGS
It is misleading to print RelWithDebInfo flags if I am using Debug.

Change-Id: I575d5c950cbe9d59852799c28fd88426f20cdaab
Reviewed-on: https://code.wireshark.org/review/12133
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-26 05:48:42 +00:00
Peter Wu 12b2e3d4e2 cmake: fix dependencies for copy_data_files
Ensure that files from INSTALL_FILES depend on html_docs, not the parent
target copy_data_files (that would not help at all). Ensure that lua
scripts are generated before copying them (another moved dependency).
Explicitly track the help files that have to be textified for Windows
(this finalizes the addition of proper dependencies to copy_data_files
targets).

Since there is no compelling reason for the extra
copy_data_files_depends target now, remove it and move copy_data_files a
bit further in the file such that the dependencies can be set.

While at it, remove the unnecessary make_directory, the copy_data_files
target will create it automatically when copying a file into it.

Should fix the problem reported at https://code.wireshark.org/review/12028

Change-Id: I81e56c93ac0fc85e7385605b9c780a80b3d43c85
Reviewed-on: https://code.wireshark.org/review/12130
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-25 11:01:10 +00:00
AndersBroman 46f3fe48a3 [Custom plugins] CUSTOM_PLUGIN_IN_FILES is no longer required.
Change-Id: I329a26ece145d70221d47c728e11dca54416a5cf
Reviewed-on: https://code.wireshark.org/review/12092
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-24 12:01:33 +00:00
Pascal Quantin 8748a047bf Fix NSIS installer generation broken in gffb5b3d
Change-Id: Ife7595f1bdeba02d53ec558cd4f26288b26687e7
Reviewed-on: https://code.wireshark.org/review/12091
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-11-24 09:24:53 +00:00
Peter Wu ffb5b3d727 cmake: add dependency information for copy_data_files
Original problem: run/radius/ (and other files) would continuously be
copied over because the "copy_directory" command is always invoked,
resulting in a newer timestamp (observable via rsync output).

Fix 1: convert from "copy_directory" to copying individual files
(matched via a glob pattern).

Fix 2: add DEPENDS information to the commands, ensuring that the
copy commands are only invoked when the file is actually newer.
(copy_if_different does not respect timestamp, so use plain copy.)

Other visible changes:
 - radius/Custom.make (automake thingey) is not copied anymore because
   an explicit list is used with glob patterns.
 - Removed comment about "default.tt" (gone since
   v1.99.0-rc1-1684-g07b003a, Makefile.nmake is still untouched though).

Due to fix 1, the number of processes increase by about 300. Due to fix
2 however, less processes are executed for repetitive runs. This is
visible in the following build time comparison:

    patch/generator cmake  build1  build2   clean
    before/make     24.86  152.73    3.46    1.04
    after/make      24.78  153.08    3.40    1.03
    before/ninja    22.99  141.68    0.64    0.24
    after/ninja     22.89  141.66    0.10    0.25

cmake is "cmake -DCMAKE_BUILD_TYPE=None -GNinja" (-G"Unix Makefiles");
build1 is invocation of "make -j10"/"ninja" on v2.1.0rc0-668-g94b9907;
build2 is the second invocation with this patch;
clean is "make clean" or "ninja clean".

Numbers are in seconds over 3 runs. This patch has no significant
performance impact for the first build, but the second run has improved
because the more efficient Ninja generator executes less processes.

Change-Id: I7b62556393520044aaaad17dafb82ac137ae73bb
Reviewed-on: https://code.wireshark.org/review/12028
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-24 06:13:56 +00:00
Alexis La Goutte 073cfb33ec CMakeLists (root): fix indent (use tabs)
Change-Id: I14089fbdafa00280ff7b3148c2e0a880b925958e
Reviewed-on: https://code.wireshark.org/review/11872
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-23 12:25:10 +00:00
Guy Harris d69cec7cff Quote the path for the Windows setup script.
The path may contain a space (it does on my Windows 7 VM), so quote it
in the PowerShell command.

Change-Id: Ib130991b8c29cb327832f2fe51cb37828526448b
Reviewed-on: https://code.wireshark.org/review/12041
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-22 19:16:25 +00:00
Graham Bloice f1efeb1eba Fix Windows hardening check
The hardening check runs on all binaries and quite a few third party binaries
are not hardened, thus leading to a warning on the buildslave.
The change reduces the noise by not counting the binaries that are known to be
"soft".  They are still printed in the output though, for reference.

Also fixed the search directory passed to the script.

Change-Id: I1619066c687c9ba934ab38fccbbf2011108328e4
Reviewed-on: https://code.wireshark.org/review/12016
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
2015-11-21 18:20:55 +00:00
Dario Lombardo d6da95231e extcap: add sshdump.
sshdump is an extcap module that allows dumping from a remote host using an ssh connection.
It goes with the existing extcap plugin interface.

Change-Id: I8987614fdd817b8173a50130812bc643a4833bca
Reviewed-on: https://code.wireshark.org/review/11402
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-19 15:29:18 +00:00
Gerald Combs e3eb9f3208 CMake: Add Qt5Svg to PACKAGELIST.
...otherwise we won't copy it to ${CMAKE_BINARY_DIR}/run/Wireshark.app on
OS X, which means our flag icons won't be displayed.

Bug: 11697
Change-Id: I26cd6a2dd13be35f9a80fd93adc8248848df5978
Reviewed-on: https://code.wireshark.org/review/11923
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-11-17 22:45:44 +00:00
Peter Wu 442314e8b2 Revert "Override optimization and other flags for make based generators."
Some compiler flags may not be passed twice (such as -mllvm
-msan-keep-going), so avoid duplicating CMAKE_C(XX)_FLAGS.

When -DCMAKE_BUILD_TYPE=<type> is set, you can override the default
optimization and debug flags with -DCMAKE_C_FLAGS_<type>=....

This reverts commit 15a238a28d.

Change-Id: I4e1cf11c49eaf00ad4a2c430454a127b4be20d9e
Reviewed-on: https://code.wireshark.org/review/11597
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-11-16 08:36:01 +00:00
Guy Harris d66d379ac8 Try retroactively applying the Qt folks' fix for QTBUG-47942.
The current version of the fix only adds -fPIC under certain
circumstances; we check whether it was added and, if it was, and those
circumstances are *not* in effect, we remove it.

Bug: 11643
Change-Id: I75d0ff9b4781d7d4cd884a29bbce7d392939315c
Reviewed-on: https://code.wireshark.org/review/11849
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-15 22:04:26 +00:00
Pascal Quantin b20d5bbc0b CMake: set WinPcap version in top CMakeLists.txt file like for NMake
This allows displaying the WinPcap version in about dialog

Change-Id: Ic3f4256d81db68314a158fc55682dfd9dbf799a0
Reviewed-on: https://code.wireshark.org/review/11726
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-11-11 17:47:45 +00:00
Dario Lombardo f1ff6d62c4 randpkt: split into a core and an app.
This will allow other apps to use the random packet generation
features.

Change-Id: I7e9af58cbe39da4908242b5fbb292f473e03b4f2
Reviewed-on: https://code.wireshark.org/review/11579
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-11 13:22:05 +00:00
Evan Huus 4f01f3d806 Move -fno-delete-null-pointer-checks to optional
It is no longer supported on El Capitan's clang, which was causing my
cmake/osx/qt build to fail with:

    clang: error: optimization flag '-fno-delete-null-pointer-checks' is not
    supported

Change-Id: Idfac336758cdea9a34446d8281cd237ad3ee6823
Reviewed-on: https://code.wireshark.org/review/11571
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
2015-11-06 04:40:42 +00:00
Ryan Doyle 2014eb0ad3 CMake: Fix compatibility with CMake 3
The version of CMake I use (3.2.2) failed to parse the
CMakeLists.txt

Change-Id: I146c5a5ba8cd6fa6236b53039a31cc085bf5b460
Reviewed-on: https://code.wireshark.org/review/11392
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-29 20:59:50 +00:00
Gerald Combs 670475413a CMake: Use CMAKE_CL_64.
CMake sets CMAKE_CL_64 if we're using a 64-bit version of Visual Studio.
Use it.

Change-Id: I04595a0e703e39e428d853a506472f3881672a35
Reviewed-on: https://code.wireshark.org/review/11376
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-29 00:52:07 +00:00
Peter Wu fe1ab42f16 Require GnuTLS 2.12.0, add cmake version detection
Since v2.1.0rc0-17-g877fd03 and v2.0.0rc0-23-g263ff53 ("ssl-utils:
load RSA keys based on their modulus+exponent"), GnuTLS 2.12.0 is
needed.

Add a version check to cmake as well, tested on CentOS6 (with
pkg-config check disabled to verify the code path). Note that RHEL6
has GnuTLS 2.8.5 and thus SSL decryption with a RSA private key is no
longer supported on that version.

Change-Id: I99fdfe6790107f48629dd435794fe8880263063d
Reviewed-on: https://code.wireshark.org/review/11044
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-25 14:05:07 +00:00
Gerald Combs 1cecd985ab Pass --verbose to windeployqt.
Change-Id: I0adc2eb294c7165b9a327a70b2437916b228f044
Reviewed-on: https://code.wireshark.org/review/11219
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-22 21:11:32 +00:00
Peter Wu 1eba9d926b Avoid adding -pie on older cmake versions
Fixes building on Ubuntu 12.04 x86_64 which has cmake 2.8.7.

Bug: 11617
Change-Id: I253e9fda698d4b963d50516e483d8243231f056b
Reviewed-on: https://code.wireshark.org/review/11193
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
2015-10-22 06:16:24 +00:00
Peter Wu 82ec0bb0fc Require libgcrypt 1.4.2, add cmake version detection
libgcrypt 1.4.2 is required since since v1.11.0-rc1-2787-g23f9100
("Really add support for AEAD ciphers (GCM)") due to the use of
gcry_cipher_setctr. Bump the version in configure.ac too.

Add version check for gcrypt to cmake. Tested with CentOS 6 (cmake
2.8.12.2, libgcrypt 1.4.5).

Change-Id: I93c3ed902a764d9d14675779e866230d073c96d5
Reviewed-on: https://code.wireshark.org/review/11043
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-10-20 03:28:55 +00:00
Guy Harris 08a20705b4 Do -fPIC only if it's necessary.
Or, at least, undo the unconditional addition of -fPIC to
Qt5Widgets_EXECUTABLE_COMPILE_FLAGS, and add it back only if we need it
to compile a small test program that includes <QtCore>.

-fPIC still shows up for other reasons; perhaps we need to undo other
unconditional operations "helpfully" done by Qt5CoreConfigExtras.cmake.

Change-Id: I76c1b01b3dce7398e4115552bc4ff87bc775e027
Reviewed-on: https://code.wireshark.org/review/11079
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-19 21:17:52 +00:00
Joerg Mayer 94fee9e78f Move the static handling to a place where it is effective during package
discovery.
  More work needed to get static really working.

v2:
  - Rebase
  - Remove accidentally added macos-setup.sh changes

Change-Id: Ic3a68d2ab7064afffbf5dcfc90925699e8729780
Reviewed-on: https://code.wireshark.org/review/11082
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2015-10-17 10:40:44 +00:00
Gerald Combs b05803db4b CMake: Add /WX
Add "/WX" to the Visual C++ compiler flags if DISABLE_WERROR is off,
similar to config.nmake.

We haven't compiled C++ code with -Wshorten-64-to-32 for quite 
some time so there's no need to add -Wno-shorten-64-to-32 in
ui/qt/CMakeLists.txt.

Additionally, squelch

----
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3050) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data (.\rpc_service_response_time_dialog.cpp)
        C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3065) : see reference to function template instantiation 'void std::_Median<_RanIt,bool(__cdecl *)(const QString &,const QString &)>(_RanIt,_RanIt,_RanIt,_Pr)' being compiled
        with
        [
            _RanIt=QList<QString>::iterator
,            _Pr=bool (__cdecl *)(const QString &,const QString &)
        ]
        C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3127) : see reference to function template instantiation 'std::pair<_RanIt,_RanIt> std::_Unguarded_partition<_RanIt,bool(__cdecl *)(const QString &,const QString &)>(_RanIt,_RanIt,_Pr)' being compiled
        with
        [
            _RanIt=QList<QString>::iterator
,            _Pr=bool (__cdecl *)(const QString &,const QString &)
        ]
        C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3157) : see reference to function template instantiation 'void std::_Sort<_Iter,int,bool(__cdecl *)(const QString &,const QString &)>(_RanIt,_RanIt,_Diff,_Pr)' being compiled
        with
        [
            _Iter=QList<QString>::iterator
,            _RanIt=QList<QString>::iterator
,            _Diff=int
,            _Pr=bool (__cdecl *)(const QString &,const QString &)
        ]
        .\rpc_service_response_time_dialog.cpp(130) : see reference to function template instantiation 'void std::sort<QList<QString>::iterator,bool(__cdecl *)(const QString &,const QString &)>(_RanIt,_RanIt,_Pr)' being compiled
        with
        [
            _RanIt=QList<QString>::iterator
,            _Pr=bool (__cdecl *)(const QString &,const QString &)
        ]
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3051) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data (.\rpc_service_response_time_dialog.cpp)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3052) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data (.\rpc_service_response_time_dialog.cpp)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\INCLUDE\algorithm(3053) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data (.\rpc_service_response_time_dialog.cpp)
----

in both rpc_service_response_time_dialog.cpp and wireshark_application.cpp
so that we'll compile successfully.

Change-Id: I457bcede99dcb1f3c1001f1f559c4901bb000357
Reviewed-on: https://code.wireshark.org/review/10533
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-16 21:32:22 +00:00
Gerald Combs 7682ae4887 Keep CMake from finding Cygwin's Python.
Try to find Python and set PYTHON_EXECUTABLE on Windows via the registry
prior to calling FindPythonInterp. This works around a bug in CMake that
prefers Cygwin's Python, which is a symlink, which by default is a text
file that contains a Cygwin-specific cookie, which is therefore useless
outside of Cygwin.

This is avoids the need to pass -DPYTHON_EXECUTABLE=... to CMake.

Change-Id: Ife37221b61d920682c20357b6d139a93067a5ad1
Reviewed-on: https://code.wireshark.org/review/11071
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-16 20:40:28 +00:00
Guy Harris b84b0315d3 Revert "Remove -fPIC with more than just MSVC."
This reverts commit 222de975c4.

I realized how to do it with a compile test.

Change-Id: I9468c50777e387c572f60411ca39ea86ba6ce520
Reviewed-on: https://code.wireshark.org/review/11078
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-16 02:31:27 +00:00
Guy Harris 1a94667cc3 Revert "+ OR OR OR OR OR"
This reverts commit 6bdfa95a1e.

Next I'll revert my change, as I realized how I *can* do it with a compile test, instead.

Change-Id: I75335ef4522af23340fdc9e5d68634cb5a5835d8
Reviewed-on: https://code.wireshark.org/review/11077
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-16 02:30:52 +00:00
Joerg Mayer 6bdfa95a1e + OR OR OR OR OR
Change-Id: I2e6480a519bd01a924a7145bc1e4e899e3fa1c1c
Reviewed-on: https://code.wireshark.org/review/11073
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2015-10-15 22:39:14 +00:00
Guy Harris 222de975c4 Remove -fPIC with more than just MSVC.
There are other compilers that won't like it or even that may not like
it.

Change-Id: I0d50e4217994bc930914c0fbcf1c5d2fc18a0e3a
Reviewed-on: https://code.wireshark.org/review/11072
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-15 22:04:11 +00:00
Gerald Combs 6ea71d9ad2 CMake: Don't feed -fPIC to Visual C++, second try.
Qt5CoreConfigExtras.cmake in Qt 5.5.0 sets -fPIC unconditionally.

Change-Id: Idf88b0f34b7cec40530702350b417ce1924db9f1
Reviewed-on: https://code.wireshark.org/review/11050
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-15 18:26:31 +00:00
Peter Wu 95804d94e8 cmake: avoid adding -fPIE to libraries (fixes gcc 4.7)
On Debian Wheezy, the cmake build would fail with:

    /usr/bin/ld: CMakeFiles/wsutil.dir/privileges.c.o: relocation
    R_X86_64_PC32 against symbol `started_with_special_privs' can not be
    used when making a shared object; recompile with -fPIC

Issue was introduced with v1.99.10rc0-222-g3fb1d68 ("cmake: Enable PIE
when it is available by default").

Bug: 11587
Change-Id: I62eec8d1db020128eeeb77b38e3316abf71e6e6a
Reviewed-on: https://code.wireshark.org/review/10916
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-14 22:49:47 +00:00
Peter Wu e059e45886 cmake: always enable -Qunused-arguments for clang
"argument unused during compilation" warnings suggest that some options
do not make sense (such as passing the -gsplit-dwarf option to the
linking command while it is only valid during compilation).

For now we do not care about these warnings, the option is accepted by
clang and whether it used in a particular step or not is uninteresting.

Change-Id: I3b6efa0dccd33c7f351c5938a29adef64ac1706d
Reviewed-on: https://code.wireshark.org/review/10893
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-14 16:53:21 +00:00
Guy Harris 9a702e41b0 If we have QtMultimedia with Qt4, add its libraries to the Qt libraries.
Change-Id: I41208287b87fba59d188e0db3bee36ee17cf3b18
Reviewed-on: https://code.wireshark.org/review/11006
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-14 09:10:56 +00:00
Guy Harris 4b73a29093 Add the directory for QtMultimedia to the list of include directories.
Change-Id: I670b42fcb3b8068ac9ac2809ae4445879444f554
Reviewed-on: https://code.wireshark.org/review/11000
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-14 07:50:17 +00:00
Guy Harris 66526f60c4 Set QT_MULTIMEDIA_LIB if we're using Qt 4 and have QtMultimedia.
Change-Id: Iee13fe86c0d8cacc71ab1cae25f4c735c5fe7b1d
Reviewed-on: https://code.wireshark.org/review/10993
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-14 04:07:58 +00:00
Peter Wu 01f82ee84c cmake: fix kerberos library lookup, support Heimdal
A build with the gold linker broke with:

    run/libwireshark.so.0.0.0: error: undefined reference to 'krb5_c_decrypt'

Fix this my restructuring the FindKERBEROS module to use the libraries
found by pkg-config.

While at it, check for MIT and Heimdal instead of assuming MIT. Remove
HAVE_KEYTYPE_ARCFOUR_56 as this macro is not used.

Change-Id: Iab23d79bc3f25e9c0fd7203b6f050f875fb4a2b5
Reviewed-on: https://code.wireshark.org/review/10907
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-13 07:36:30 +00:00
Guy Harris 177cf492dc Back out the verbose Makefile stuff.
I give up.  I don't know whether this all means our build mechanism is
too fragile, our code is to fragile, autotools are too fragile, the
compilers we're using are too fragile, Qt is too fragile, or C++ is too
fragile, but if the build breaks that easily, maybe we should just give
up on Leopard.

Change-Id: If700d928da95d09ed5173b976261e4ddd236d654
Reviewed-on: https://code.wireshark.org/review/10946
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-11 23:44:07 +00:00
Guy Harris 3d9f0db88a Temporarily make cmake builds verbose, for debugging purposes.
Try to figure out why CMake builds work on the 32-bit OS X buildbot but
autotools builds don't; either the compiler commands are different in
ways that break the autotools build, or the config.h files are different
in ways that break the autotools build, or magic pixies affect the
builds in different ways that only break the autotools build.

Change-Id: Id24bad04ff8ef755e4966e28fd445c2ab05c6913
Reviewed-on: https://code.wireshark.org/review/10931
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-11 04:59:07 +00:00
Gerald Combs 047c47e9a6 Initialize 2.1.
Change-Id: I515c53bb56cf82d1911b58f2cb2103afd0e597a5
Reviewed-on: https://code.wireshark.org/review/10810
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-05 20:11:12 +00:00
Peter Wu 6d7b29592a Allow use of variadic macros
Remove variadic macros restriction (c99, c++11 feature) from
README.developer. GCC, Clang, MSVC 2005 all support it.

Enable -Wno-variadic-macros in configure.ac and CMakeLists.txt when
-Wpedantic is enabled (which would enable -Wvariadic-macros).

For all files matching 'define\s*\w+[0-9]\(', replace "FOO[0-9]" by
"FOO" and adjust the macro definition accordingly. The nbap dissector
was regenerated after adjusting its template and .cnf file. The
generated code is the same since all files disabled the debug macros.

Discussed at:
https://www.wireshark.org/lists/wireshark-dev/201209/msg00142.html
https://www.wireshark.org/lists/wireshark-dev/201510/msg00012.html

Change-Id: I3b2e22487db817cbbaac774a592669a4f44314b2
Reviewed-on: https://code.wireshark.org/review/10781
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>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-10-05 07:57:14 +00:00
Gerald Combs 835cfa50cb Revert "CMake: Don't feed -fPIC to Visual C++."
This doesn't appear to fix the issue unfortunately.

This reverts commit fd5eafa50a.

Change-Id: Ida25881fca0a667c7d47692465b8f1fc9d335697
Reviewed-on: https://code.wireshark.org/review/10753
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-02 20:50:20 +00:00
Gerald Combs 3687d39304 Qt: Initial RTP playback.
Note the "initial". This is woefully incomplete.  See the "to do" lists
below and in the code.

This differs a bit from the GTK+ version in that you specify one or more
streams to be decoded.

Instead of showing waveforms in individual widgets, add them all to a
single QCustomPlot. This conserves screen real estate and lets us more
easily take advantage of the QCP API. It also looks better IMHO.

Change a bunch of checks for QtMultimediaWidgets to QtMultimedia. We
probably won't use the widgets until we make 5.0 our minimum Qt
version and plain old QtMultimedia lets us support Qt 4 more easily
(in theory at least).

Add resampling code from libspeex. I initially used this to resample
each packet to match the preferred rate of our output device, but this
resulted in poorer audio quality than expected. Leave it in and use to
create visual samples for QCP and to match rates any time the rate
changes. The latter is currently untested.

Add some debugging macros.

Note that both the RTP player and RTP analysis dialogs decode audio data
using different code.

Note that voip_calls_packet and voip_calls_init_tap appear to be dead
code.

To do:

- Add silence frames where needed.
- Implement the jitter buffer.
- Implement the playback timing controls.
- Tapping / scanning streams might be too slow.

Change-Id: I20dd3b66d3df53c9b1f3501262dc01458849f6b4
Bug: 9007
Reviewed-on: https://code.wireshark.org/review/10458
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-02 18:26:05 +00:00
Gerald Combs fd5eafa50a CMake: Don't feed -fPIC to Visual C++.
Change-Id: If6dd0619052b7735d7c5eb84aadc191545df7bee
Reviewed-on: https://code.wireshark.org/review/10735
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-02 15:52:24 +00:00
Gerald Combs 8976b78392 CMake: Fix the dmg_package target.
We don't have Wireshark.pkgproj so don't try to copy it.

Change-Id: I649fce27e53cbd45ffc50e4095252a665c49165d
Reviewed-on: https://code.wireshark.org/review/10739
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-02 01:25:30 +00:00
Gerald Combs cc9de69b49 Set the minimum Qt version to 4.7.
We've been using QElapsedTimer for a while now with no complaints. It
was introduced in Qt 4.7, which was first released in September 2010.

Change-Id: I21ca768c6a7bab8a08626957583d81fd771c64b4
Reviewed-on: https://code.wireshark.org/review/10732
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-01 22:28:51 +00:00
Gerald Combs cf3d279e04 CMake: OS X packaging updates.
Add a dmg_package_prep target as an alias to app_bundle. Rename the
osx-dmg target to dmg_package. This matches the Windows packaging
target names.

In osx-app.sh, make sure we rpathify the bundle plugin directory.

Change-Id: If41195c9d405ad6bff865625500a8227b77e8092
Reviewed-on: https://code.wireshark.org/review/10734
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-01 21:04:26 +00:00
Gerald Combs 7199fc7cab OS X: Integrate CMake and osx-dmg.sh
Change-Id: Ide608f5e73ecd40c67a6b1c0e16f11233cd49c9d
Reviewed-on: https://code.wireshark.org/review/10694
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-10-01 16:26:25 +00:00
Gerald Combs ff1dbba6ec CMake: Add a hardening-check target.
On Windows, add a hardening-check target which checks for DYNAMICBASE
and NXCOMPAT using the PowerShell script Get-HardenFlags.ps1.
For a Visual Studio solution, run the check by calling:

    msbuild /m /p:Configuration=RelWithDebInfo hardening-check.vcxproj

using the config as appropriate for your build.

Otherwise if we find the Debian/Fedora hardening-check script add a
target which runs it for each of our executables.

Change-Id: I62263e81d155c66e8c8edc751ffab535bf9f3b96
Reviewed-on: https://code.wireshark.org/review/10641
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-09-25 20:04:42 +00:00
Balint Reczey 3fb1d6853d cmake: Enable PIE when it is available by default
Change-Id: I88930b8a9de596f93677052b2046c1b85cc34c6b
Reviewed-on: https://code.wireshark.org/review/10635
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
2015-09-25 14:12:41 +00:00
Jeff Morriss 5eee0b9e44 Don't use any -fsanitize options unless we're using ASAN.
This lets cmake users configure without installing libusan.

A better or more final fix awaits a decision in bug 11009.

Change-Id: Iea6c4e2ce31817c17931a448f0c72da2a31a2e6d
Ping-Bug: 11009
Reviewed-on: https://code.wireshark.org/review/10454
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2015-09-10 11:59:56 +00:00
Bill Meier 7abd84216a Update comment about use of "/Zo" with MSVC2015
Change-Id: Ifb20e62a5e0719e1df2f7f6aba7a3935c7212c5b
Reviewed-on: https://code.wireshark.org/review/10364
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-09-02 19:08:52 +00:00
Gerald Combs c8bdb95d21 1.99.9 → 1.99.10.
Change-Id: I924be5b0e3c73a0bb8ae1361fa518ec10139e13d
Reviewed-on: https://code.wireshark.org/review/10363
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-09-02 18:29:10 +00:00
Joerg Mayer 57b2b77022 cmake: rework version.h handling to treat it like config.h
It wasn't working on my system: I kept seeing the old git revision
in '...shark -v' even after deleting version.h

Change-Id: I75f41a7afcee4b9384f33a56014e4af6b527fec5
Reviewed-on: https://code.wireshark.org/review/10265
Petri-Dish: Jörg Mayer <jmayer@loplof.de>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2015-08-26 07:37:02 +00:00
Anders 738cf424d6 Make building with MSVC2015 work
TODO:

- LUA is commented out probably needs to be built with MSVC 2015.
- GeoIP is commented out, causes packet-ip* to not build.
- Qt not built, needs Qt with MSVC 2015

Change-Id: I1658077931b89b9a22ee32e5ed7de38e07fb6a55
Reviewed-on: https://code.wireshark.org/review/8683
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-08-13 12:03:53 +00:00
Gerald Combs 4d673b24cd Convert Camel tap stats to new "generic stat API".
Migrate the Camel stats similar to the recent BOOTP and H.225
migrations.

Change-Id: If82617068ff4b8fa186899f66dc34a08585f66cb
Reviewed-on: https://code.wireshark.org/review/9865
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-04 19:12:00 +00:00
Gerald Combs 3e6b527114 Remove the CLI H.225 counter.
Stats were moved to the dissector in g03802cc.

Change-Id: I1aaf43789695ba3aae54cfaf201263cd0aed74ea
Reviewed-on: https://code.wireshark.org/review/9867
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-04 18:55:50 +00:00
Gerald Combs efefdbbd76 1.99.8 → 1.99.9.
Change-Id: I014399c332136a10b1c560d4c68be5b8bab97552
Reviewed-on: https://code.wireshark.org/review/9780
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-07-24 19:06:50 +00:00
Guy Harris 2e215db532 Revert "On OS X, add the Qt -Wl,-rpath hack in CMake, as we do with autotools."
This reverts commit 4a39706272.

At least in one quick check, CMake 2.8.12.2 added that already with Qt 5.5.0.

Change-Id: Iabf0e4aa0aa34b380f981f7d039fb3d95847041e
Reviewed-on: https://code.wireshark.org/review/9654
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-15 23:46:58 +00:00
Guy Harris 4a39706272 On OS X, add the Qt -Wl,-rpath hack in CMake, as we do with autotools.
Change-Id: I281e1bf790b7eefbbd43a3406622262cfe8b36df
Reviewed-on: https://code.wireshark.org/review/9651
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-15 23:05:26 +00:00
Guy Harris cab4450935 The toolkit is called "Qt", not "QT".
Change-Id: If6c0c66bc429a041b3454f1f2355d4659cb17bbf
Reviewed-on: https://code.wireshark.org/review/9630
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 23:22:06 +00:00
Guy Harris c6aa2b5b2c Don't add rpaths with CMake, either; osx-app.sh will do so.
Change-Id: Ie8f39e5e89ed8dc21c66ee7f1235c406c3028304
Reviewed-on: https://code.wireshark.org/review/9613
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-13 02:55:01 +00:00
Graham Bloice c00e4697e2 Fix Windows CMake generated installer to include snmp mibs
Wireshark.nsi requires SMI_DIR to point to the base of the SMI directory
but FindSMI.cmake doesn't set it.  Set it in the main CMakeLists.txt

Change-Id: Id667341273d6abb0d2d64ef91cc62d1ce3f42a83
Reviewed-on: https://code.wireshark.org/review/9499
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-07-05 16:36:53 +00:00
Michael Mann 7fdc534cf9 Convert BOOTP/DHCP tap stats to new "generic stat API".
Change-Id: I0edc3909516452e6497a050b4617f9aafcea2688
Reviewed-on: https://code.wireshark.org/review/9112
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-07-03 23:08:51 +00:00
Michael Mann a8ff1e2778 Create very basic "generic" stat tap API to create a "GUI" independent table.
A few sample tap/dissectors (ANSI/A, ANSI MAP) are also included to test the API.  The "GUI output" is a bit raw and could use some "prettying up", but all the basic hooks are there.

Telephony "stat grouping" needs to be better alphabetized to properly populate menu (on GTK, probably Qt)

Change-Id: I98514171f69c4ab3a304dccb26c71d629703c9ab
Reviewed-on: https://code.wireshark.org/review/9110
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-07-03 23:08:28 +00:00
Michael Mann 6fe3f2c693 Use RTD functionality for H.225
This got missed in the initial refactoring.

Change-Id: I98dcc0816e065efab9b497f753c8d2d388349ff3
Reviewed-on: https://code.wireshark.org/review/9044
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-06-23 13:08:57 +00:00
Michael Mann 8f390d4975 Refactor RTD stats.
Very similar to the refactoring of SRT stats, it provides more commonality of the stats for all GUI interfaces.  Currently implemented for TShark and GTK.  Affected dissectors: MEGACO, MGCP, Radius

Change-Id: Icb73a7e603dc3502b39bf696227fcaae37d4ed21
Reviewed-on: https://code.wireshark.org/review/8998
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-06-22 15:13:39 +00:00
Michael Mann 6de6f7f0f8 Further refactor SRT stats.
Create "common" SRT tap data collection intended for all GUIs.   Refactor/merge functionality of existing dissectors that have SRT support (AFP, DCERPC, Diameter, FC, GTP, LDAP, NCP, RPC, SCIS, SMB, and SMB2) for both TShark and GTK.

SMB and DCERPC "tap packet filtering" were different between TShark and GTK, so I went with GTK filter logic.
CAMEL "tap packet filtering" was different between TShark and GTK, so GTK filtering logic was pushed to the dissector and the TShark tap was left alone.

Change-Id: I7d6eaad0673fe628ef337f9165d7ed94f4a5e1cc
Reviewed-on: https://code.wireshark.org/review/8894
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-06-21 03:35:13 +00:00
Gerald Combs f00e6fbefe 1.99.7 → 1.99.8
Change-Id: I3423fd2959b1031480f15504ce38336ce3475b17
Reviewed-on: https://code.wireshark.org/review/8979
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-06-18 20:04:03 +00:00
Graham Bloice 678c5d5da6 Fix the CMake windows installer to pickup the locally built zlib1.dll
Change-Id: I8880a760d9817dd038694e96b4a3d9b8d2db3c2c
Reviewed-on: https://code.wireshark.org/review/8931
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-06-15 20:30:31 +00:00
Graham Bloice aeb6419145 Separate Windows CMake compiler definitions and flags
Change-Id: I70af6d43f45e2110ee7707ff5747b5e990ba7238
Reviewed-on: https://code.wireshark.org/review/8926
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-06-15 14:34:41 +00:00
Graham Bloice a57398dacb Fix some CMake compiler tests for Win64
Change-Id: I03244b48e6593d1fe5f4d139fa5d171debeb9fd7
Reviewed-on: https://code.wireshark.org/review/8909
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-06-12 20:36:37 +00:00
Graham Bloice 2adeb9969f Fix OSX CMake warnings
Set the CMake policy for CMP0042 to old

Change-Id: I2b71e1d8d9b9b90ede11df1a7874a2360c3032c5
Reviewed-on: https://code.wireshark.org/review/8740
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-06-03 08:00:10 +00:00
Graham Bloice 7780159c03 Fix zlib cmake
Add support for the locally modified version of zlib to suppress
a CMake warning and disable building of the zlib examples.

Change-Id: I9ae08b49d149951e8626d506f69f1757a1ec7e23
Reviewed-on: https://code.wireshark.org/review/8706
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-05-31 18:15:06 +00:00