Avoids absolute paths when using cmake and doing an in-tree build.
Before (source directory is /tmp/wireshark):
/*--- Included file: /tmp/wireshark/asn1/t38/packet-t38-exp.h ---*/
After:
/*--- Included file: packet-t38-exp.h ---*/
Change-Id: Id5c98bff7b97447479e1a09751701f2f52132b20
Reviewed-on: https://code.wireshark.org/review/12118
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
In the Capture Interfaces dialog, the default dialog action was
non-existing. Fix Extcap while at it (searched for "YesRole").
Reported on #wireshark at Freenode.
Change-Id: I7920b806a855acc20dcd2081f6b0d58e993b4ac1
Reviewed-on: https://code.wireshark.org/review/12136
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
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: Peter Wu <peter@lekensteyn.nl>
Valgrind reports leaks like these:
384 bytes in 8 blocks are definitely lost in loss record 43,909 of 46,703
at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0xD6A055F: __vasprintf_chk (vasprintf_chk.c:80)
by 0xA5FD0FB: g_vasprintf (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0xA5D8C7F: g_strdup_vprintf (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0xA5D8D1B: g_strdup_printf (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0x6854FA6: write_prefs (prefs.c:4941)
by 0x733A9A: prefs_main_write (preference_utils.c:266)
by 0x5F8A5C: CaptureInterfacesDialog::saveOptionsToPreferences() (capture_interfaces_dialog.cpp:851)
by 0x5F93CD: CaptureInterfacesDialog::on_manage_clicked() (capture_interfaces_dialog.cpp:858)
by 0x7182AC: CaptureInterfacesDialog::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (capture_interfaces_dialog.moc.cpp:316)
by 0x718822: CaptureInterfacesDialog::qt_metacall(QMetaObject::Call, int, void**) (capture_interfaces_dialog.moc.cpp:413)
by 0xBEBE36C: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1)
When storing user preferences the constructed pathname of user's
preferences file is not freed properly.
Change-Id: I5cdc53ca836503af048e1d06e4614d83ef8921ac
Reviewed-on: https://code.wireshark.org/review/12114
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
This finalizes the transformation for dissectors.
Change-Id: Ie5986b72bb69a6e8779ca3f5e20a80357c9e6fea
Reviewed-on: https://code.wireshark.org/review/12122
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Valgrind reports memory leaks like these:
154 bytes in 10 blocks are possibly lost in loss record 8,660 of 11,855
at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0xBD9EA38: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
by 0xBDB3358: g_strndup (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
by 0xBDB49AD: g_strsplit (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4)
by 0x502291: capture_get_if_capabilities (capture_ifinfo.c:269)
by 0x50A4CC: scan_local_interfaces (iface_lists.c:186)
by 0x4C4BBD: refresh_local_interface_lists (capture_dlg.c:6117)
by 0x504EC8: iface_mon_handler2 (iface_monitor.c:113)
by 0xC9ADF1D: ??? (in /lib/libnl-3.so.200.3.0)
by 0xC56DF19: ??? (in /usr/lib/libnl-route-3.so.200.3.0)
by 0xC9ABE5E: nl_cache_parse (in /lib/libnl-3.so.200.3.0)
by 0xC9AF5CA: nl_msg_parse (in /lib/libnl-3.so.200.3.0)
Under certain conditions raw_list variable was not freed properly.
Change-Id: Ibbaf0d67d983ee6912cfc9dc1a3169bc773b03c9
Reviewed-on: https://code.wireshark.org/review/12112
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: Michael Mann <mmann78@netscape.net>
After updating next_in (to remove the gzip header), avail_in must also
be updated. Failing to do makes zlib read past the input buffer. In
theory this would resukt in a buffer overrun of at most double the input
length, in practice zlib returns as soon as the compression fails (after
reading a few bytes).
Bug: 11548
Change-Id: If71691a2846338f46d866964a77cc4e74a9b61dd
Reviewed-on: https://code.wireshark.org/review/12038
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Valgrind report leaks like these:
6 bytes in 6 blocks are definitely lost in loss record 2,197 of 46,703
at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0xA5C1610: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0xA5D8B0E: g_strdup (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0x69A211: ManageInterfacesDialog::localAccepted() (manage_interfaces_dialog.cpp:454)
by 0x69A500: ManageInterfacesDialog::on_buttonBox_accepted() (manage_interfaces_dialog.cpp:211)
by 0x71DB32: ManageInterfacesDialog::qt_metacall(QMetaObject::Call, int, void**) (manage_interfaces_dialog.moc.cpp:245)
by 0xBEBE36C: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1)
by 0xBEBE2A5: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1)
by 0xAF87E41: QAbstractButton::clicked(bool) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
by 0xAD11095: ??? (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
by 0xAD11BAD: ??? (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
by 0xAD11D23: QAbstractButton::mouseReleaseEvent(QMouseEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
96 bytes in 4 blocks are definitely lost in loss record 42,458 of 52,779
at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0xA5C1610: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0xA5D722D: g_slice_alloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0xA5B84F3: g_list_append (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.4002.0)
by 0x731F9A: hide_interface (iface_lists.c:426)
by 0x69A211: ManageInterfacesDialog::localAccepted() (manage_interfaces_dialog.cpp:454)
by 0x69A4F0: ManageInterfacesDialog::on_buttonBox_accepted() (manage_interfaces_dialog.cpp:211)
by 0x71DB22: ManageInterfacesDialog::qt_metacall(QMetaObject::Call, int, void**) (manage_interfaces_dialog.moc.cpp:245)
by 0xBEBE36C: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1)
by 0xBEBE2A5: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1)
by 0xAF87E41: QAbstractButton::clicked(bool) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
by 0xAD11095: ??? (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1)
These are caused by leaks inside hide_interface function and among
its users. Fixed by letting hide_interface function free its
resources properly and making sure the users follow the pattern.
Change-Id: I91527b83d36dc38b402d0f4a1db4b7db40fd83f9
Reviewed-on: https://code.wireshark.org/review/12113
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 they will be long's, and thus no guarantee
that they can be printed with "%lu".
Change-Id: I5c2ff844a1024332f01dec58489a2d304ba4e7ce
Reviewed-on: https://code.wireshark.org/review/12135
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
The Lua reference has been moved from User's Guide to Developer's Guide.
Change-Id: I3489d774e54310ce49997e33d5318adf5e0bb2bc
Reviewed-on: https://code.wireshark.org/review/12128
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Presumably the intent was to check for either of the two "CRC dropped"
event types.
(CID 1340186.)
Change-Id: Ieea8f5ab80bebbdbb683998a6747e5130d46b92d
Reviewed-on: https://code.wireshark.org/review/12127
Reviewed-by: Guy Harris <guy@alum.mit.edu>
In PDevData/PDirSubframeData/SubframeBlock, not all SubframeData elements are decoded/shown.
However, all bytes of the SubframeBlock are highlighted in the binary stream correctly.
Change-Id: Ic69999dff524e2e0c48a619def111c4bf9cca5e1
Reviewed-on: https://code.wireshark.org/review/12100
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>
That's a much cleaner way of determining whether you found no matchin
bluetooth_uuid_vals_ext than checking whether val_to_str_ext_const()
returned the "use this if unknown" value.
It also lets us avoid a wmem_strdup().
Make print_numeric_uuid() and print_uuid() return const gchar *; there's
no reason for them *not* to be const, and that means we don't have to
throw away constness.
Change-Id: I62fb0b81c64c107dfea6c16ca8c5b9593f8f2a9d
Reviewed-on: https://code.wireshark.org/review/12126
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Convert the if-chain to a switch() statement while we're at it; if it
had been one originally, the compiler would have reported that there
were duplicate cases and failed.
(CID 1340190.)
Change-Id: I297ab32c51842af889bd6bebe764c0e45d57cea0
Reviewed-on: https://code.wireshark.org/review/12125
Reviewed-by: Guy Harris <guy@alum.mit.edu>
New ARProperties has a bit that contains if usage of Combined Object Container is required or not.
Change-Id: Ia4420cdf161d79933fcc0d8ffb411c02bfe26f3b
Reviewed-on: https://code.wireshark.org/review/12098
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Thanks and a tip of the Hatlo hat to Coverity for finding this.
Change-Id: Ie9d4089443e52ef427e0cc8ae6e90a9d9787134e
Reviewed-on: https://code.wireshark.org/review/12123
Reviewed-by: Guy Harris <guy@alum.mit.edu>
We crank up pedantic warnings enough that this provokes "warning: ISO
C90 forbids mixed declarations and code" on the OS X 10.5 buildbot.
Change-Id: Ic3962f20d85e3ed003b84b298f83d12c3ae25ea1
Reviewed-on: https://code.wireshark.org/review/12120
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Most of it wasn't used in current Wireshark source anyway.
Change-Id: If395e4e940adc76a2701d226ba4f7c9b17cb795d
Reviewed-on: https://code.wireshark.org/review/12108
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Interval trees (wmem_itree_t) are implemented as an extension of wmem_tree with a
guint64-based range as the key.
This is useful for instance in MPTCP analysis, to look for packets
matching a range defined by a mapping across TCP subflows.
Change-Id: Iea706d44fe975e390a4191ad0257ef37d5c71525
Reviewed-on: https://code.wireshark.org/review/11714
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
To preserve the hide/show column settings between switching profiles
the settings have to be saved.
Change-Id: I6f72b2980be149676e1c1099a604c8c6d0d995bf
Reviewed-on: https://code.wireshark.org/review/12109
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Rather than trying to retrieve frame_data from the packet number row (while it could be filtered) let's use pinfo.
Bug: 11596
Change-Id: I53966bfdfbeb0c5918c3524f4b9748ea425fe8a5
Reviewed-on: https://code.wireshark.org/review/12103
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
new_register_dissector will eventually take its place, but that search/replace should be done when all "old style" APIs have been removed.
Change-Id: Ic3fdec67d5761fd72beeca7355f9de617562bb77
Reviewed-on: https://code.wireshark.org/review/12095
Reviewed-by: Michael Mann <mmann78@netscape.net>
Change-Id: I307ee31562a5a84bc62691f367e3b8df3cb3f244
Reviewed-on: https://code.wireshark.org/review/12097
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This seems like an unnecessary encapsulation of registering a dissector, but it can be used at runtime and not just a handoff function.
Change-Id: Ic13e34b5cecf493115f27a984bb886f2f76bc7de
Reviewed-on: https://code.wireshark.org/review/12096
Reviewed-by: Michael Mann <mmann78@netscape.net>
Wasn't sure if the absence/disabling of the XML dissector should prevent this dissector from doing anything, but left the current implementation that allows it mostly because XMPP has an IANA registered TCP port.
Change-Id: Ie08b262d611e4d9add9566f440e3d825d6b0b55c
Reviewed-on: https://code.wireshark.org/review/12094
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Also add some expert info and don't stop dissection based on version.
Change-Id: Ia471cb3d517008a486ec9ad8aaf11d06fa55a72d
Reviewed-on: https://code.wireshark.org/review/12082
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Also convert packet-mp4ves.c to use only "new style" dissectors.
Change-Id: I949dd1300a66039906abffef5cc019f2b49cf414
Reviewed-on: https://code.wireshark.org/review/12074
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>
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>
Remove references to nmake, add references to CMake.
Change-Id: Iea2d2b2fbdbab131bae823d5d6a5306630a70347
Reviewed-on: https://code.wireshark.org/review/12079
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
* Added support for TLV 20
* Added support for TLV 21
* Added support for TLV 22
* exceptions.h not needed compared to packet-ucd.c
and packet-type29ucd.c
* value_string iuc_vals3 became static const compared
to packet-ucd.c and packet-type29ucd.c
* if(tree) was removed to allow usage of expert on TLV length
* HEX crafted packet capture in Bug 11745
Bug: 11745
Change-Id: If21a44cf26941468747772cefffe29bafacb1c7c
Reviewed-on: https://code.wireshark.org/review/11956
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
Wrong variable (display field max) is updated when set max recent files
Change-Id: Ie995192ffbf56cbf6bd9cea5b029ab16ff547d2f
Ping-Bug:11748
Reviewed-on: https://code.wireshark.org/review/12046
Reviewed-by: Michael Mann <mmann78@netscape.net>
The D-Bus Specifications states that all basic types have alignment
constraints. Padding must be added before the value and not after.
Bug: 11758
Change-Id: I3c56689f47e1e385880dcea04506fe33b60670d3
Reviewed-on: https://code.wireshark.org/review/11994
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
https://tools.ietf.org/html/draft-ietf-dnsop-edns-chain-query
Bug:11759
Change-Id: I631bf381dbfed956285855083a00a91f54a3c39c
Reviewed-on: https://code.wireshark.org/review/12064
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>
BGP: add the ability to decode Opaque extented community and in particular tunnel type
Change-Id: Ife53a267a2311397123a4e670924c673904bccbd
Ping-Bug: 11650
Reviewed-on: https://code.wireshark.org/review/12076
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reset columns when resolve names column menu item is toggled,
and save preferences to preserve the setting.
We should probably have functions to redraw only one column.
Change-Id: I52dce8d104ab9bedd11edc5d200ab85154243cb5
Reviewed-on: https://code.wireshark.org/review/12077
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
When changing profile without a loaded capture file we have to rebuild
cap_file_->cinfo when a capture is loaded.
Bug: 11493
Change-Id: I9b561a360236056c104cfdb478b855fa550325e2
Reviewed-on: https://code.wireshark.org/review/12068
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>