Allow the user to reset the changes done. This can be done
at any time, as long as the dialog has not been closed
Change-Id: I0d72a7972b4ea94b53fbed4c84ea952fd6f71b01
Reviewed-on: https://code.wireshark.org/review/34825
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Make them anonymous as they are not related to any attribute
Change-Id: I697ce1c04196e035bf5d394b0785826d251fb8cf
Reviewed-on: https://code.wireshark.org/review/34821
Reviewed-by: Roland Knall <rknall@gmail.com>
Filter on columns being hidden or not
Change-Id: Ia41f556e00c7de471b1d4b7f9b5f6c099b7ddcf3
Reviewed-on: https://code.wireshark.org/review/34820
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The current implementation has some serious bugs. e.g. if an added
column is moved, existing columns disappear. Also, if new columns
are being added, existing columns may disappear. This moves the column
preferences to a Movel/View concept and implements necessary checks
to ensure, that such an issue cannot occur
Change-Id: I73810812180e2fbed4d2fe67316f190aba82c719
Reviewed-on: https://code.wireshark.org/review/34819
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
There's no need to perform redissection as we are sorting data already
present in PacketListRecord.
This change is not only improving performance, but prevents a crash
related to "event interruptions". As wsApp->processEvents() is called
with QEventLoop::AllEvents, it is possible for user to trigger any
action. If the user decided to close the file while packets are being
redissected inside PacketListModel::sort(), Wireshark would crash.
Ping-Bug: 16097
Change-Id: I82eee0efc789a1102e5fbe3670ed79039a18b8be
Reviewed-on: https://code.wireshark.org/review/34679
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
clang complains, gcc doesn't.
Error:
In file included from ../ui/qt/enabled_protocols_dialog.cpp:10:
In file included from ../ui/qt/enabled_protocols_dialog.h:15:
../ui/qt/models/enabled_protocols_model.h:121:18: error: 'filterAcceptsRow' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
Change-Id: Ifbba736158a841752da27349925a3b55556728ca
Reviewed-on: https://code.wireshark.org/review/34447
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Allow a selection of the list based on the protocol type. That way
one can easily enable/disable for instance just heuristic protocols
Change-Id: I1ee8df5d9887c764272ec55b33703855c0c91f5a
Reviewed-on: https://code.wireshark.org/review/34442
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This is a refactoring/redesign of the "Resolved Addresses" dialog,
allowing for sorting/filtering and searching within the addresses
and ports.
Change-Id: I5071e92ff699323b6c93fc533eeaf92e0db334de
Reviewed-on: https://code.wireshark.org/review/34398
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Using a simple (type *) cast on g_list_next results in a warning
with modern compilers "old-style cast"
Adding a warning for g_list_next and data access to avoid the warning
A good overview why reinterpret_cast has been used can be found here:
https://stackoverflow.com/questions/332030/when-should-static-cast-dynamic-cast-const-cast-and-reinterpret-cast-be-used
It is a 1:1 replacement in this case, but does not use any of the new
cast styles and therefore should be used with caution.
Change-Id: I989f237afc39aaf40133a788b1c0bbd7a51bf974
Reviewed-on: https://code.wireshark.org/review/34284
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Also, put the search field on top, as this is the default for search
fields and apply the change of enable/disable and invert-all only to
the selected items, instead of all items.
Bug: 16013
Change-Id: If4ef1c5ce63eef6fa72db679cdcbf52dcb0e8fb6
Reviewed-on: https://code.wireshark.org/review/34393
Reviewed-by: Roland Knall <rknall@gmail.com>
Change-Id: I4a0ccaebe7ab821a22b86ce1155328fd714caf50
Reviewed-on: https://code.wireshark.org/review/34376
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Michael Mann <mmann78@netscape.net>
The default profile was available to be selected, even if it
was the active profile.
Bug: 16021
Change-Id: If08a563f243f18f32e17cb2169180ec0b1274a9a
Reviewed-on: https://code.wireshark.org/review/34366
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The last parameter to beginRemoveRows() is the last row index, not the
number of rows. The QAbstractItemModel::beginRemoveRows() source code
expliticly checks if the value is smaller than row count.
Do not emit beginRemoveRows() if the model is empty as it does not make
sense and it is impossible to pass the QAbstractItemModel assertions
in such case.
Emit endRemoveRows() when finished instead of endInsertRows().
Change-Id: I93be4820b1ea0fbb5c0f3cd28edca329b4017814
Reviewed-on: https://code.wireshark.org/review/34318
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
The default value for skippedCnt is Q_NULLPTR. Do not dereference
skippedCnt unconditionally.
Change-Id: Ice33a7f9034507f39f16406cc365f39f4e543da5
Reviewed-on: https://code.wireshark.org/review/34271
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Change-Id: I566cb963b919f6de91a809661856beadd1d4a14a
Reviewed-on: https://code.wireshark.org/review/34264
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
If a profile import contains illegal path names inside the zip
container, the illegal names are being filtered out and replaced with an
underscore
Change-Id: I4e1bc495156b8c1cd3f4dfca69604e880647f74e
Reviewed-on: https://code.wireshark.org/review/34220
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Correctly mark the active profile in the list and identify
it by making it bold, even if it has been renamed
Change-Id: I8c5c8215b924735f460c5bd0bb4d4c21632d494b
Reviewed-on: https://code.wireshark.org/review/34211
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Roland Knall <rknall@gmail.com>
This prevents the case, where there are two profiles, and one is
renamed, after which the second one is renamed to the firsts original
name. This could lead to undefined behavior in the underlying data
structure.
Fixes an issue as well, where deleting the identical named duplicate
would delete the original one
Bug: 15975
Change-Id: Ia7112779f2c2ef926c3ea915852b6d7b4497f777
Reviewed-on: https://code.wireshark.org/review/34189
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The title names of each section are not presented correctly
Bug: 15977
Change-Id: I68ab0fb6fc7131f9d2af67fa38c509ed6808c7d3
Reviewed-on: https://code.wireshark.org/review/34218
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Various issues rose during restructuring which are now being
fixed with the help of unittests. Mainly also renaming new
profiles and createing copies from them, as well as deleting
profiles and keeping copies names
Change-Id: I39e1772c7be586fe07ea0613fa9e23d40d864012
Reviewed-on: https://code.wireshark.org/review/34214
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Restructures dataPath for PROF_STAT_COPY to ensure correct labeling of
the hintLabel
Bug: 15974
Change-Id: I69f61f4f8db74ca52c3b72d32af2b2bb8b19957d
Reviewed-on: https://code.wireshark.org/review/34202
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Improve text for translation in the profile model
Change-Id: If1cb7f4e83c9a45729391ce8a69029d6bc95d87b
Reviewed-on: https://code.wireshark.org/review/34188
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Before the unzipped files are being copied from the temp directory,
they are checked against the stored list of profile names, to ensure,
that only allowed files are being imported.
Also ensures, that no empty directory exists for the skipped one
Bug: 15969
Change-Id: I6ae8c9fb5f63d089d42fc0ef18dbe84baec515a2
Reviewed-on: https://code.wireshark.org/review/34184
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
The selected profile may have unsaved recent settings when exported,
so write the recent file before exporting to ensure that we save
the latest changes.
A side effect is that it's now possible to export a newly created
profile even if it has only default configuration.
Bug: 15965
Change-Id: I7bb6428283789894bd2863e9ddbd130ca56b1219
Reviewed-on: https://code.wireshark.org/review/34172
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This patchset ensures a 1:1 replacement of the old 3.0 version of the profiles
dialog. It is a major bugfix for the new version in case of handling creating/
deleting and adding profiles.
Delete can be performed on multiple profiles now, by selecting the profiles
which need to be deleted.
Import/Export functionality has been overhauled to follow these rules:
* No imports while changes are pending, due to datamodel sanity
* Export for Default Profile and Global Profiles is not possible
* Either all personal profiles can be selected or individually choosen ones
* Use last directory and store it properly
* Imports can be cancelled
* Only one import is allowed at a time (but it can contain as many profiles as needed)
Change-Id: Ie2fccd397202ec06976d764734437284f464409a
Reviewed-on: https://code.wireshark.org/review/34123
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Rework the context menu to have same functions behave the same
way and just create the menu while it is needed. Also, add switch
for setting the time of day to the context menu
Change-Id: Id813ff39431f6fad15887856f246d03f209e438d
Reviewed-on: https://code.wireshark.org/review/34165
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Check for NULL pointer before using profile->reference in strcmp()
because this will give a crash. Doing a copy profile from a new profile
will set the reference to NULL in get_profile_parent().
Use an unambiguously profile reference value NULL as profile->reference
when creating a new profile to align with when copy from a new profile.
Change-Id: Ib27a1a309776e9c2ec44677f2d22f9a5635dd38a
Reviewed-on: https://code.wireshark.org/review/34137
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Change the Profile types from User/System to Personal/Global in UI
to match the terminology used in About Wireshark -> Folders.
This reverts commit 40af4aa93e.
This reverts commit f0cde7ca34.
This reverts commit c37cabe900.
Change-Id: I9012db6385707754e26a2dadb57f6003f8112f9b
Reviewed-on: https://code.wireshark.org/review/34134
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
While documentation for g_build_filename suggests the use of NULL as
terminator, the C++ standard permits NULL to be defined as integer 0.
This potentially has a different size than a void pointer and can cause
crashes if this is the case. Instead of using (void*)0 as terminator,
let's just rewrite this piece to avoid the problem in its entirely.
Fixes "missing sentinel" warning in GCC with musl due to NULL being 0L.
Change-Id: I6a7911887eaeeaa56fdb03d14ee8b70a42c8a05b
Reviewed-on: https://code.wireshark.org/review/34107
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Dario Lombardo <lomato@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
The pointer from get_persconffile_path(), get_profiles_dir() and
get_system_profiles_dir() is malloc'ed so ensure this is freed when done.
Change-Id: Id836643a4209f0f9ec570a18f62a8c58cf2b67a7
Reviewed-on: https://code.wireshark.org/review/34119
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
It's called system profiles in UI so update function names and
variables to use the same name. This will increase code readability.
Change-Id: I048e9ea85bd6ebab4a2c3ed1c685487ac8f7e40e
Reviewed-on: https://code.wireshark.org/review/34116
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Microsoft reshuffled their documentation - almost all of it moved from
msdn.microsoft.com to docs.microsoft.com. Some blogs moved to
devblogs.microsoft.com; the comments *didn't* move, so in one case we go
to the Wayback Machine - the link isn't dead, but it formats horribly,
at least on my browser, but the archived version formats OK.
Use the Wayback Machine for some URLs, and update others.
Update the sections for MS-ADTS.
Point to the HTML versions of some RFCs and I-Ds.
Change-Id: I344b20f880de63f1ae2a4e3f9ff98af78a7fe139
Reviewed-on: https://code.wireshark.org/review/34101
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Allow for the export of profiles. The currently selected profile may be
selected, as well as all user-defined profiles
Fixes: Bug, where invalid data has been written into the profiles not
present inside the original file
Change-Id: I7c6310920a1f3a064cfcedc7774b742ff01c9b9e
Reviewed-on: https://code.wireshark.org/review/34077
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
If a profile has been created as a copy from a user profile,
and a global profile exists with the same name as the parent user
profile, deleting the parent user profile mistakenly indicates,
that the copy has been cerated with the parent global profile
not the then deleted user profile
Change-Id: I4d4c91de64b623a8553a3c51ad449988dfe8eec5
Reviewed-on: https://code.wireshark.org/review/34079
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Correct the text for delete and copy profiles, which better
display if they have been copied from a system-profile or
if the original entry has been deleted
Move Import button into the button box, as this seems
to be the consensus with applications and gives the info
label more room
Tooltips now behave the same way as they did before the
refactoring and copying from a new element creates the
correct names
Only one element could be deleted any given time, if the
default element was to be resetted
Change-Id: Ieb902b68627cb9bda5d2483b39de6479ff8d4533
Reviewed-on: https://code.wireshark.org/review/34070
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The only backslashes in invalid_dir_chars on Windows should be the one
escaping " and the one escaping \ itself; there's no need for one to
escape | and, in fact, MSVC warns about that.
Change-Id: I7622f5123df7da3049352dc0e86322b11f8c4150
Reviewed-on: https://code.wireshark.org/review/34068
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot
Reviewed-by: Guy Harris <guy@alum.mit.edu>
When a reset/delete/add/rename action is pending, profiles
cannot be imported.
Change-Id: I4521b8a265ec4346b7028bc5a7173fd531be24c2
Reviewed-on: https://code.wireshark.org/review/34057
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Interface resembles the old interface
Change-Id: I7301f8bb6e00d30c20d7e5fdc9252a6a1765ff97
Reviewed-on: https://code.wireshark.org/review/34054
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Only show the message "No profiles found for import" when no profiles
actually found, not when found but all are skipped.
Add correct numerus translation for imported and skipped counts.
Change-Id: I0425aafb09fc4722cc765ae4f20ce8248b767c44
Reviewed-on: https://code.wireshark.org/review/34050
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
- If a profile, based on a system default, is being deleted the
selected profile should switch back to the default
- The default profile is not a system profile
Change-Id: I267a0e14b9f974fdabe5a9b21187ad0673265b01
Reviewed-on: https://code.wireshark.org/review/34051
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>