Avoid crash in GUI when using Edit Column widget.
Bug: 16245
Change-Id: Ic98be3f98144dcfa9796fadd142180e3aaf84a9e
Reviewed-on: https://code.wireshark.org/review/35301
Petri-Dish: Jim Young <jim.young.ws@gmail.com>
Reviewed-by: Jim Young <jim.young.ws@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Craig Jackson <cejackson51@gmail.com>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
PreferencesDialog::setPane takes a preference module name. Fix a
comparison in PrefModuleTreeView::setPane and update some variable names
in order to make things a bit more obvious.
Modernize some related code while we're here.
Bug: 16250
Change-Id: I8f4c7e5261a219e3f32e6e9a71574d81b1852219
Reviewed-on: https://code.wireshark.org/review/35304
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Bug: 15360
Change-Id: Iceaa5c2336cfb58966ef12f4267fcd09ae48bfe7
Reviewed-on: https://code.wireshark.org/review/31234
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Rename Capture Interfaces to Capture Options to match its main menu
item. "Options" also more closely matches what the dialog actually does.
Fixup a help item URL while we're here.
Change-Id: Iec8bdfc9f7ae6fc4fd9e97bb366b63cff139f3a6
Reviewed-on: https://code.wireshark.org/review/35294
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
ByteViewText and ProtoTree only use mono_font_ in setMonospaceFont, so
there's not much use in declaring it private in each case.
Change-Id: I3ad986052f6e013988ce851420f7f6e7b47b7ea8
Reviewed-on: https://code.wireshark.org/review/35255
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
This is no longer needed, as it is handled by setMonospaceFont
Change-Id: I9834bcd1a188cd6f1cb8ad1abe568a9a50d831bc
Reviewed-on: https://code.wireshark.org/review/35253
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
ProtoTree::setRootNode() is designed to update the model with the new
packet tree, and additionally expand tree items in its view. When the
current selected packet is changed, it must use this method to ensure
that collapsed trees are properly expanded. Fix this regression.
It was not entirely clear that framesSelected can no longer use previous
state, so document it explicitly. Remove the call to QTreeView::reset(),
it ends up calling QAbstractItemView::reset() which touches the
selection model that refers invalidated proto_node memory. The reset
function of the view is automatically called the model is reset, so the
call was not needed anyway.
Test: open test/captures/tls13-rfc8446.pcap, expand TLS, TLS Record, and
select "Content Type". Change from frame 1 to 2, and then 3. Observe
that the expanded state remains constant with no flickering. In frame 3,
observe that the tree remains expanded even if no item is selected.
Change-Id: I0c820711f1a62aa51ac100f8ac5c89265c51eb18
Fixes: v3.3.0rc0-6-gcfee0f8082 ("Qt: Remove frameSelect signal")
Reviewed-on: https://code.wireshark.org/review/35230
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Instead of just visually marking a field after switching packets, make
sure that it is also focused such that arrow up/down keys select the
expected fields instead of the root node (the Frame layer).
Change-Id: Ic16462198fb2189496f0cceeb5a5e885673636d2
Reviewed-on: https://code.wireshark.org/review/35236
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
/Volumes is hidden on macOS, which means that it doesn't show up in Qt's
non-native file dialog. Add a constructor to WiresharkFileDialog that
adds /Volumes to the file dialog sidebar. Make CaptureFileDialog and
ExportDissectionDialog subclasses of WiresharkFileDialog.
Bug: 13840
Change-Id: I4d7da3948b203eb11fb64fa056eb42a448edf914
Reviewed-on: https://code.wireshark.org/review/35201
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
When the Conversation Shortcut (Ctrl-1) was pressed, the current packet
suddenly became deselected. Similarly for Go to First Packet (Ctrl-Home)
and Go To Next Packet (Ctrl-.).
Changing the selection mode to ExtendedSelection has as side-effect that
setCurrentIndex is affected by modifiers such as Ctrl and Shift. Since
Ctrl acts as a toggle, the current selection becomes empty and no
packets are selected. Fix this by explicitly requesting the selection to
be replaced.
Tested as follows:
1. wireshark -r test/captures/dhcp.pcap
2. Select packet 3.
3. Press Ctrl-1, Ctrl-2. (Colors change, the packet remains selected.)
4. Press Ctrl-Home, Ctrl-Down, Ctrl-.
5. Observe that the packet details list is populated.
Change-Id: I17f00e7fbc6e63ad52b6a0543fd850b473e506a2
Fixes: v3.1.1rc0-762-gb3f240dbf8 ("Qt: Multiselection in PacketList")
Reviewed-on: https://code.wireshark.org/review/35203
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Roland Knall <rknall@gmail.com>
Show all column types in the column context menu to improve usability
even more when show/hide columns. This is a follow-up to the improvement
to show custom column field names.
Change-Id: I0838c7ae6eec59960a0a70b485c372855e242dc0
Reviewed-on: https://code.wireshark.org/review/35206
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Commit v3.1.0rc0-1170-ga854811c4a replaced the deprecated
`setAutoCompletion(false)` call by `setCompleter(0)`. However, the
former has as side-effect that it prevents setLineEdit from creating a
custom completer. setCompleter on the other hand had no effect since
there was no existing completer.
To fix the issue, remove the completer after it is set by setLineEdit.
This has no effect on the completer from CaptureFilterEdit and
DisplayFilterEdit instances since they override the completer from
QLineEdit. To avoid any confusion, SyntaxLineEdit::setCompleter (and
completer) should probably be renamed, these are not used by QComboBox
since it is not marked as virtual method.
Bug: 16132
Change-Id: Iad619122eddb43eb4963347982bf65dacd29629b
Fixes: v3.1.0rc0-1170-ga854811c4a ("Qt: fix more more Qt 5.13 deprecation warnings")
Reviewed-on: https://code.wireshark.org/review/35198
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Roland Knall <rknall@gmail.com>
Protect against a NULL edt pointer. That can occur when the packet
details view is empty, e.g. when no packet is selected.
Bug: 16228
Change-Id: Ie9621db4b84b504e4d9cee2add5004df2e383970
Reviewed-on: https://code.wireshark.org/review/35204
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
If 1) the recent filters menu has less than 10 entries and 2) the cursor
position is not at the end of the filter, then completion would fail.
Additionally, pressing Enter on filters with syntax errors would also
end up being saved, unintentionally.
Fix these by disabling automatic addition of entries by Qt.
Change-Id: I612c6cb8f317beb5459919b5c65b837db6150d07
Reviewed-on: https://code.wireshark.org/review/35150
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Add the following features:
- search now operates live (enter text changes the list live)
- filter by content-types
- Preview certain content types directly from the dialog
Change-Id: If47b64d475dd3e77485a28e8443a3e139e9bd1a4
Reviewed-on: https://code.wireshark.org/review/35182
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>
Change improves Wireshark ability to save rtp streams. It allows a user
to save any supported codec with 8 kHz rate. In real, it means G.711 and
G.729 for now.
There is no hardcoded codec limitation during save anymore. If code detects
unsupported codec or rate during save, it replaces samples with silence and
reports it. Therefore any added codec in future will be supported.
Note to RTP saving:
RTP streams (there can be up to two of them for save) can contain multiple
codecs in each direction - some of it can be supported and some
unsupported. What should be exported then?
Till my patch save do not run and a user received nothing even part of stream
was OK/encoded with supported codec.
Therefore I managed the code to start with export and do its best.
Unknown codec/part is replaced with silence and user is warned after
export. Therefore a user will get:
a) audio - when all codecs are supported (no warning)
b) mix audio/silence - when some codecs are supported (warning)
c) only silence - when no codec is supported (warning)
BTW same output user sees/gets in RTP player for years.
Change-Id: Id938d419f5841af46d2d2d3ddfaf1ec9a0235bcc
Reviewed-on: https://code.wireshark.org/review/35105
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Due to changes with the frameSelect, this null pointer check
now fails or more on the point is more obvious. It was masked
previous
Change-Id: I11c3f3440e39742bce963d1ef8bdd27076baa700
Reviewed-on: https://code.wireshark.org/review/35177
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
As all frameSelect signals now transport a QList<int> of selected
frames, use this instead
Change-Id: I1888e45a4df997920aebde9706ca0ae803bdba03
Reviewed-on: https://code.wireshark.org/review/35176
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
WiresharkDialog defines cap_file_, so there's no need to define it in
TrafficTableDialog.
Change-Id: I71e50da152de619fea71382400820990a05febc1
Reviewed-on: https://code.wireshark.org/review/35169
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Indicate all selected rows in the overlay bar for the PacketList
Change-Id: Icddf8607b59bde12701a7e7983df6acbf26e0d23
Reviewed-on: https://code.wireshark.org/review/35161
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Improve the speed for selection checks in PacketList and MainWindow
Change-Id: Ic3a413624463a798b5d13102965f75c7b1347b5f
Reviewed-on: https://code.wireshark.org/review/35160
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
"..." at the end of a menu item means "this pops up a dialog, asking you
for more information so it can do XXX"; those items just copy without
asking the user anything.
Change-Id: I8bc42a468d4c5605a27ae3414ecabd30ea97d87e
Reviewed-on: https://code.wireshark.org/review/35148
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Nothing in libwireshark limits frame numbers to 2^31-1 - they're stored
as unsigned ints and thus can go up to 2^32-1. That doesn't fit with
the way QTreeView works, as the model is ultimately from a subclass of
QAbstractItemModel, and that uses ints, not unsigned ints, for row
numbers.
Change-Id: I174c3ccdb5e86ea5897643560936c301fcc78c54
Reviewed-on: https://code.wireshark.org/review/35141
Reviewed-by: Guy Harris <guy@alum.mit.edu>
In PacketList::selectedRow, will we ever have a current index but not a
selection model?
Change-Id: Ie4a4a78b836876d6a890b2a0a5e5cba2de02a870
Reviewed-on: https://code.wireshark.org/review/35140
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Make dataChanged more specific and remove unnecessary iteration
in case of recoloring
Change-Id: I1ee270623b1cb8ac3907a5d45d6a8c4c5027c322
Reviewed-on: https://code.wireshark.org/review/35135
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
parent.column() will allways be -1, due to ::parent returning
QModelIndex() and therefore parent being invalid all the time.
Change-Id: Ibb0482b4204523dba71a2be4f078da4f11fcaf71
Reviewed-on: https://code.wireshark.org/review/35134
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The progress update is no longer being used, due to the
fact that dissection is handled differently. Removing it,
as well as corresponding signals
The code was removed in https://code.wireshark.org/review/c/34679/
Change-Id: I043c4535ce3dbec66c5822ddbad8e648307d0738
Reviewed-on: https://code.wireshark.org/review/35133
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Clicking in an empty area of the Packet List to "unselect" the packet
selection, left one packet indicated as selected (by having a single
field active, but not highlighted). This is fixed, by selecting this
entry.
If the last line is being deselected, not index is set as active, as
it has been in previous versions of the Qt interface
Bug: 16216
Change-Id: Ib5353a7e59b09a4f816655e1dd65a20d6c6d1a13
Reviewed-on: https://code.wireshark.org/review/35132
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Qt 5.12.6 fixed the dark mode link color on macOS. Update themeLinkBrush
accordingly.
Ping-Bug: 15511
Change-Id: I9d89bf3ef9c8a9b8c14dc5f435b9cdbb30fca2aa
Reviewed-on: https://code.wireshark.org/review/35126
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fixes
Change-Id: I259e5bea0d0475d1bbb0c584b125a4ea819dda64
12:31:07.342 Main Warn QObject::connect: No such slot AboutDialog::copyToClipboardTriggered() in ../ui/qt/about_dialog.cpp:300
12:31:07.342 Main Warn QObject::connect: (sender name: 'copyToClipboard')
12:31:07.342 Main Warn QObject::connect: (receiver name: 'AboutDialog')
Reviewed-on: https://code.wireshark.org/review/35129
Reviewed-by: Roland Knall <rknall@gmail.com>
The name was used instead of the filter
Change-Id: Id27d7ac45ecc9487183b33d56bea3f99290ce410
Reviewed-on: https://code.wireshark.org/review/35121
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Drag and Drop used the wrong filter name, fixing by using the correct one
and re-establish the feature
Change-Id: I7b3722c8087b4af7f2ea74f833ea130cbec0d19e
Reviewed-on: https://code.wireshark.org/review/35118
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Remove randomly used space inside parentheses to make the coding
style uniform. Add space after if, for and while.
Change-Id: I519f5994b6f73d8a57a5004d51ca460276c618fe
Reviewed-on: https://code.wireshark.org/review/35112
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This implements multi-selection for the PacketList. It
allows multiple lines to be selected, and either drag/drop
them to a text editor or use Ctrl/Cmd+C to copy the content
to a clipboard.
Opening the context menu disables the selection, and it
does not change the underlying currently selection. This is
done on purpose, as multi-selection is a copy-task only
functionality at this point
Export & Print work as expected, exporting just the selected
items. Same goes for the copy menu, which has the additional
entries for copying the list elements
Bug: 14612
Change-Id: I77960aa1ab1d172a21abfa469baac0cd57f9f9d9
Reviewed-on: https://code.wireshark.org/review/35073
Petri-Dish: Roland Knall <rknall@gmail.com>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Make life a little simpler when asking for the version info on Ask
Change-Id: I51fd8a390398f7e42e3edcc889d9e53dbfd0980c
Reviewed-on: https://code.wireshark.org/review/35104
Petri-Dish: Roland Knall <rknall@gmail.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Add support for automatic updates using the Sparkle framework. Add
FindSparkle.cmake and associated CMake plumbing. Add a public key and
other info to Info.plist.in. Add ui/macosx/sparkle_bridge.{h,m}, which
wraps the Sparkle API. Make code that's specific to WinSparkle
Windows-only.
Add Sparkle installation steps to the macos-setup scripts. Sparkle
prints a warning if your bundle is unsigned (which is the case during
development) so disable installing it by default.
Updating here takes a long time. We might be able to fix that by
shipping our DSYMs separately.
Change-Id: I6cc6671db5657dadc514bda6bf6e1c8bbc9468a5
Reviewed-on: https://code.wireshark.org/review/35090
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Mostly shadowed variables or similar minor issues
Change-Id: I98a76eb4cac1ba1356a239a0ed7beb550ced0651
Reviewed-on: https://code.wireshark.org/review/35091
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Show the custom column field name in the column context menu to
improve usability when show/hide columns. The column title alone
may not be sufficient to separate different columns.
Change-Id: I52f249433b8090249af87725fa97eba302692918
Reviewed-on: https://code.wireshark.org/review/35088
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Don't indicate "Align Left" when the column has default alignment,
because that may be wrong. Add back support for turning off custom
column alignment.
This is a regression from ge39f2bb5.
Change-Id: Ib9dc24067b02a44ffb2f3cd387f1c1c2a5c780ab
Reviewed-on: https://code.wireshark.org/review/35087
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Commit 3c8c392 (https://code.wireshark.org/review/c/35071/) introduced
a regression where the messages in the status bar are no longer visible.
This change corrects that.
Change-Id: I23059a5013a65efe73454fc798048630a9e66792
Reviewed-on: https://code.wireshark.org/review/35085
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fixing the status message disappearing from the status bar
Change-Id: I16925a5a8ad6ac929e1c4da8e36e3cf8fa29db84
Reviewed-on: https://code.wireshark.org/review/35084
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Currently push pop is propagated by a massive load of signals
which partly are also propagated through parent objects.
This moves the status handling to WiresharkApplication, also
pathlining future moves to move status to different classes or
use additional methods of status information
Change-Id: Ibcb2c98688f1adf40dce1483f336596ef992bb06
Reviewed-on: https://code.wireshark.org/review/35071
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
If a display filter is applied, but the display filter bar
has been cleared by deleting the context (either by setting a
space or backspacing over the filter), it is not clearly indicated
that the filter is still being applied.
Bug: 12438
Change-Id: Ibd4c48b094467182ed51e9859e0d5fad770000c7
Reviewed-on: https://code.wireshark.org/review/35070
Petri-Dish: Roland Knall <rknall@gmail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Documentation of the Wireshark command line options between help text,
manual page and user's guide diverged over time. One aspect of this is
the implementation of more long options. This change tries to update
all documentation to be complete and in sync again.
Bug: 16168
Change-Id: Id833fbeb14fdb7b3dbc1564504a25d96f4367c91
Reviewed-on: https://code.wireshark.org/review/35047
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
If the display filter is cleared, because it is emptied, the
new display filter ("") is not yet applied. This is not signaled
properly, as the user get's the expression, that no filter is applied,
although the old one still is. Visible is this by displaying
the placeholder text and removing the clear button
With this patch, in such a case, the placeholder text is empty
and the clear button still visible, until really an empty filter
is being applied.
Bug: 12438
Change-Id: I45128ebf2bc1854da5a4055d3980d913d0139a28
Reviewed-on: https://code.wireshark.org/review/35045
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Fix the loading of the FilterExpression Dialog
Change-Id: I553707df01932f06c50a3326e422fa0a3787de01
Reviewed-on: https://code.wireshark.org/review/35023
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Move the handling of Signal/Slots for the display filters to the
LineEdit class, instead of having it being handled in the mainwindow
Change-Id: Ibddea7d31b6d0abec91baa46ffb6965f64db94d6
Reviewed-on: https://code.wireshark.org/review/35012
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Signals/Slots should be initialized by the utilizing class not
the parent class. That way the utilizing class can be changed
without interfering with the parent
Change-Id: I5d538b4c487d3092f0f76bc2b54bc63fbc3ba547
Reviewed-on: https://code.wireshark.org/review/35015
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Put the DisplayFilter Context Menu in the correct order and fix
a null-assignement issue
Change-Id: If39c7a7ebe9bab0c6cfb790cc255d369a0055cb3
Reviewed-on: https://code.wireshark.org/review/35014
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
When using the "Create a new file automatically" feature the capture in
Wireshark will stop and start, but the extcap utility will continue run
as normal. Ensure the control channels are kept when doing this.
Rename the unused capture_session.session_started to session_will_restart
to detect this.
Bug: 16178
Change-Id: I6797c982760a1013fca2a24699befff1dc82f28c
Reviewed-on: https://code.wireshark.org/review/35013
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Allow only valid inputs to be given for the name of a DisplayFilter.
Specifically adding a quotation mark is not allowed
Change-Id: I10454a2d23db1e0ef08148571d2762a3285e5ab8
Reviewed-on: https://code.wireshark.org/review/35006
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fix travis linux builds.
../ui/qt/widgets/display_filter_edit.cpp:130:56: error: no matching function for call to ‘QAction::QAction(QString)’
QAction * na = new QAction(tr("Left align buttons"));
^
In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qactiongroup.h:37,
from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QActionGroup:1,
from ../ui/qt/widgets/display_filter_edit.h:14,
from ../ui/qt/widgets/display_filter_edit.cpp:20:
/usr/include/x86_64-linux-gnu/qt5/QtWidgets/qaction.h:174:5: note: candidate: ‘QAction::QAction(QActionPrivate&, QObject*)’
QAction(QActionPrivate &dd, QObject *parent);
^~~~~~~
Change-Id: I03be478bc17296cc6adca6df82cdd41bcc0504b4
Reviewed-on: https://code.wireshark.org/review/34995
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Better aling buttons in the DisplayFilterEdit and make loading
less artifact-prone
Change-Id: Ic5a5b0214185ed193e4b2290295225f54842c632
Reviewed-on: https://code.wireshark.org/review/35000
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Removes the limit to export more than 1000 files with the same name
when exporting objects.
For this a preference name gui.max_export_objects is used.
Bug: 16010
Change-Id: Iefc138ac2617491aad3b6ad5827c9058aed112c7
Reviewed-on: https://code.wireshark.org/review/34339
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fix CPU usage by removing unused function, which lead to a loop
of paintEvents for the DisplayFilterEdit
Change-Id: Ib325a16fa2d90d668e21917bc07e806d11d1fbf9
Reviewed-on: https://code.wireshark.org/review/34993
Reviewed-by: Roland Knall <rknall@gmail.com>
Allow the storage of extcap plugins in the personal directory and
enable loading from there. It will also take precedence of any
system-wide extcaps with an identical name
Change-Id: Ib88e09a26c4f99cf5e793327f2808c7445c6b1b5
Reviewed-on: https://code.wireshark.org/review/34988
Reviewed-by: Roland Knall <rknall@gmail.com>
Buttons can be left-aligned in the display filter edit bar, by selecting
the corresponding option from the context menu
Bug: 14123
Change-Id: I18b48bb0ea43a598b2e309dcad9210463be06414
Reviewed-on: https://code.wireshark.org/review/34980
Reviewed-by: Roland Knall <rknall@gmail.com>
Add a graph for the currently display filter if none exists, upon
opening IOGraph
Change-Id: Ic25b014484898dd1917b13f2616fd519e2e8183b
Reviewed-on: https://code.wireshark.org/review/34984
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Free allocated callback data in FunnelStringDialog, TextWindow and
registered menu items. Also free strings used in FunnelStringDialog.
Bug: 16177
Change-Id: I9a129b8975a55d1dc89fe851116feebe82763bca
Reviewed-on: https://code.wireshark.org/review/34945
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
The column fmt_data will be g_free()'d later so ensure this is
allocated using g_new0().
Change-Id: I31abe4ea16004e7972a59b4fff965460fa930800
Reviewed-on: https://code.wireshark.org/review/34981
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Pascal Quantin <pascal@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
When silence is inserted to waveform (VaD, no RTP, ...), waveform is shifted to correct time in visualisation. Code was inserting silence to audio waveform too therefore following audio was shifted twice.
This patch fixes it.
Change-Id: I4f3e02328662f92b1dabec80ce9da31d0a839046
Reviewed-on: https://code.wireshark.org/review/34917
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Use a more stable approach for checking the file and avoid having
QFile reset with the filename. It is ok due to the fact, that it
is not opened, but is frowned upon in the documentation.
This only sets the filename once.
Change-Id: Ibe13eaf5938e060d7c39655591af34ac44340f49
Reviewed-on: https://code.wireshark.org/review/34965
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This fixes up to 6 string leaks in FilterListModel::reload().
1. The char pointer returned from get_persconffile_path() and
get_datafile_path() is allocated and must be free'd by the caller.
2. QFile.setFileName() takes a QString() so don't strdup() the name
given because that will leak as well.
Change-Id: I580020a5ff37a9b2b8ae16179ac6d7ba4a0f16da
Reviewed-on: https://code.wireshark.org/review/34964
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The --display command line parameter must not have an equal sign
between it and the value in order to work. Otherwise it is interpreted
as a abbreviation of the display-filter long option.
Bug: 16167
Change-Id: Ifcdd4cb8c41b24faccf01936a019a318fb1c3e0c
Reviewed-on: https://code.wireshark.org/review/34961
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Move CaptureFilterEdit to FilterListModel and do cleanup
Change-Id: I9fdd37fda5698a3389f9bc4e550f2e56077675ec
Reviewed-on: https://code.wireshark.org/review/34959
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Odering differed from the manage filter expression. Also, managing
filter expressions is called "Filter Button Preferences.." throughout
other functions. And finally it did not properly update the information
about the selected filter, if a new filter was saved or an existing
filter removed.
Change-Id: I005028cd0b741587f4c5f2f39612e36d5d7d6c25
Reviewed-on: https://code.wireshark.org/review/34958
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Make the mimetype for the display filter more generic, so that external
programs can attach to Wireshark and users can drag and drop display
filters to the program
Change-Id: Id78b4dff7883e3dab879a31aad07f577d8cc4ee3
Reviewed-on: https://code.wireshark.org/review/34936
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
For the same reason as in g89c9d909.
Change-Id: I5e344ebdf8ba05d169484aa32b409d84edc6124f
Reviewed-on: https://code.wireshark.org/review/34943
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
We handle Qt and GLib logging in the same handler, which means that if
we map qDebug messages to G_LOG_LEVEL_DEBUG they won't be printed by
default. This can make debugging the UI more confusing, since sprinkling
in qDebug()s is a common Qt debugging method. If you're focused on
fixing a bug it's easy to forget that you need to use qWarning() or
change the logging level preference instead.
Set the log level for qDebug messages to G_LOG_LEVEL_WARNING so that
they show up.
Change-Id: I4336b001cb667a31bf8b25306cd34e758cc8967e
Reviewed-on: https://code.wireshark.org/review/34937
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fix dragging and dropping of filter texts
Change-Id: I14a36051846b5cd8eb5ac466aed4e93710c5b5f8
Reviewed-on: https://code.wireshark.org/review/34935
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Ensure, that all mimedata uses similar mimetypes and document
the mimetypes being used throughout wireshark
Change-Id: I7c02d0a5e12a823153640e600051abb95d58cdeb
Reviewed-on: https://code.wireshark.org/review/34923
Petri-Dish: Roland Knall <rknall@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Display the source and destination for the second reverse stream in case
it differs from the first forward stream.
Change-Id: I117899acca47713a42efcfef28f893d9be26c337
Reviewed-on: https://code.wireshark.org/review/34915
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
The code as it stands seems to work for a single type of filter type only.
When making choice on filter type, reference the type set in the object.
Change-Id: I5f4181372db6045e17ba1519828346f098dce8d3
Reviewed-on: https://code.wireshark.org/review/34916
Reviewed-by: Roland Knall <rknall@gmail.com>
When the stream contains a mix of G.711A/U and silence, the RTP Analysis dialog
prevented it from being saved. Add an exception for silence to fix this.
Change-Id: I46bb1392244ff0ba300c371fb5ccd110fbd59a7e
Reviewed-on: https://code.wireshark.org/review/34901
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Fix dead store (Dead assignement/Dead increment) Warning found by Clang
Change-Id: If2050d2e0137afcadc382b12c0756bd49dfc0f7c
Reviewed-on: https://code.wireshark.org/review/34904
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Allow the drag/drop of filter buttons in the dialog
Change-Id: Ie2d5987ecdb626a8f12e8f17e6967f937bdf4648
Reviewed-on: https://code.wireshark.org/review/34885
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Allow for filtering of enabled/disabled protocols in the
EnabledProtocols dialog
Change-Id: Ib9a8bbe2a23fdcd3ecd2b9ca08de17f77e85049c
Reviewed-on: https://code.wireshark.org/review/34878
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Speed up the filtering, by only taking rows once
Change-Id: I6123b2974fd58480463e4a0bd02524f6b5c0a353
Reviewed-on: https://code.wireshark.org/review/34879
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Do not reset multiselect configuration to defaults on every extcap
configuration window open.
Change-Id: I04036ad6723f66c2ac036aae5bf70ded5029a66b
Reviewed-on: https://code.wireshark.org/review/34864
Petri-Dish: Tomasz Moń <desowin@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Allow filterbuttons to be dragged to the display filter
bar
Change-Id: I25e87d0ca86fc7437a20994800bec164ccffef27
Reviewed-on: https://code.wireshark.org/review/34838
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Those are no longer needed by the GUI
Change-Id: I5eb12c2ebe84885ddba510b9d2b49679a292e7f0
Reviewed-on: https://code.wireshark.org/review/34855
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Forego of the button and move the reset functionality to a
context menu
Change-Id: Ib23029586c69c8f3cd7c989c8b7c1f09be219bb1
Reviewed-on: https://code.wireshark.org/review/34827
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>
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>
Connect destroyed(QWidget *) signal instead of finished(int) to
flushAppSignals(). This is to ensure that flushAppSignals() is executed
after any potential accepted() or rejected() slots.
This fixes the code flow for preferences update. That is, the signals are
first queued in PreferencesDialog::on_buttonBox_accepted() before
flushAppSignal() is executed.
Change-Id: Ie1497df66adb52cdc10d1b7c701f531d4eeb7351
Reviewed-on: https://code.wireshark.org/review/34823
Petri-Dish: Tomasz Moń <desowin@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Having an enum in a class is an established technique, although it is
intended to be anonymous when not related to an attribute.
Change-Id: Id599da0432b5289217f2162d26616452d10b1922
Reviewed-on: https://code.wireshark.org/review/34817
Petri-Dish: Roland Knall <rknall@gmail.com>
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>
The export got broken in f67eccedd9 as it
didn't account for ExportDissectionDialog::exec() override.
Change-Id: Ieaed669cb1b12c7a069f685429bf5a82f89d7391
Reviewed-on: https://code.wireshark.org/review/34771
Petri-Dish: Tomasz Moń <desowin@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Jim Young <jim.young.ws@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This reverts commit f1285fcf06.
NSIS package is broken with this commit.
Change-Id: Ief22a308edad188fa2d5fab79355f19493359fa6
Reviewed-on: https://code.wireshark.org/review/34758
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: João Valverde <j@v6e.pt>
HTML docs are installed to both $docdir and $pkgdatadir. Fix that
to install to $docdir only.
Change-Id: I115158585b6df9170d9a01249adbc8548df91f14
Reviewed-on: https://code.wireshark.org/review/34640
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: João Valverde <j@v6e.pt>
Simplify class handling and clear up some names
Change-Id: I8a3dd80c0b4dd97aee6164d94ca9cf60068f427b
Reviewed-on: https://code.wireshark.org/review/34730
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
In preparation of having just a single instance of CaptureFile
dialogs are redesigned to not use CaptureFile
Change-Id: I2bff036d6f9e946954873c90b935b6653fbeb474
Reviewed-on: https://code.wireshark.org/review/34723
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>
The QUIC transport protocol provides a stream, similar to HTTP/2. Make
it possible to look at the stream contents. This can be helpful while
HTTP/3 support is not yet complete.
Known issues that will be addressed in the future:
- If a single packet contains multiple streams, then Follow QUIC Stream
will wrongly include data from streams other than the selected one.
This is tracked by bug 16093 and affects HTTP/2 as well.
- The Substream index menu does not properly filter for available
stream numbers. If a non-existing stream is selected, then changing
to another (potentially valid) index results in the "Capture file
invalid." error. As workaround, clear the display filter first.
- Follow Stream always selects Stream ID 0 instead of the first or
currently selected stream field in a packet. Users should manually
update the stream index as needed.
Change-Id: I5866be380d58c96f0a71a29abdbd1be20ae3534a
Ping-Bug: 13881
Reviewed-on: https://code.wireshark.org/review/34694
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Favor asynchronous show() as it does not create new event loop.
Change-Id: I01982806f87705f04138f15ae8eb084f1d4f9b2c
Reviewed-on: https://code.wireshark.org/review/34677
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
The model index is unused as setData is used to initialize the editor.
Change-Id: If42bf59cd3f1f5e208bfff26b569c5c29d2013fd
Fixes: v3.1.1rc0-415-g149521d3de ("Qt: Do not call exec() when editing color preferences")
Reviewed-on: https://code.wireshark.org/review/34671
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Show the dialogs asynchronously so no new event loops are created. This
not only simplifies stack traces (reduces the nesting level) but also
prevents hard to debug problems (eg. Bug 15743) from happening.
Change-Id: I85821a1403839a5baca504b40efce0ede2f1e0cb
Reviewed-on: https://code.wireshark.org/review/34646
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
The "Follow Stream" button did not have any effect due to:
QObject::connect: No such slot MainWindow::openFollowStreamDialog(follow_type_t, guint) in /tmp/wireshark/ui/qt/main_window_slots.cpp:3034
QObject::connect: (sender name: 'TrafficTableDialog')
QObject::connect: (receiver name: 'MainWindow')
Change-Id: If9ecae9a971bdc31358d95af33a8245aa5df5911
Fixes: v3.1.1rc0-352-g9fff62e2a8 ("Qt, http2: Add Follow HTTP/2 Stream functionality")
Reviewed-on: https://code.wireshark.org/review/34653
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Jim Young <jim.young.ws@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Fedora 30 changed the minizip-devel package from the old unsupported
minizip library from zlib to a fork[1].
The new minizip headers don't include zlib.h anymore.
[1]https://github.com/nmoinvaz/minizip
Change-Id: I29fdf1c0445138b86a012bfc79287a480977b0a6
Reviewed-on: https://code.wireshark.org/review/34637
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: João Valverde <j@v6e.pt>
Create ChmodBPF installer and uninstaller packages using pkgbuild and
productbuild. Place them in Wireshark.app/Resources/Extras.
Add a path_helper installer and uninstaller which respectively add and
remove /etc/*paths.d/Wireshark.
Remove the PackageMaker and utility-launcher assets and build targets.
Show a message in the main welcome screen if we don't have capture
permissions. Add an link which launches the ChmodBPF installer.
Add a "macOS Extras" item to About → Folders.
Migrate "Read me first" from RTF to Asciidoctor, which lets us add links
and looks like our other documentation.
Rename dmg_set_style.scpt to arrange_dmg.applescript and make it plain
text. Always run it in osx-dmg.sh.
Bug: 6991
Bug: 12593
Bug: 11399
Ping-Bug: 16074
Change-Id: I7b6aa89aae2be522b4141b0d44e8142dec749e90
Reviewed-on: https://code.wireshark.org/review/31047
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
The call to model() returns nullptr if executed while file is still
loading. This won't happen if current model index is valid.
Change-Id: I2b5b084f0d2092af2b0e78b58e1e17983e01351d
Reviewed-on: https://code.wireshark.org/review/34597
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Ideally it should never happen, that the model is being queried
outside it's scope, which is ONLY the PacketList. MainWindow is
the last place where such queries should happen. In the meantime
a check for invalid model is being added.
Bug: 16065
Change-Id: I9a3fa39333d55dbbb7ebcac87f39da7bd8547486
Reviewed-on: https://code.wireshark.org/review/34591
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
The HTTP/2 protocol multiplexes a single TCP connection into multiple
independent streams. The Follow TCP output can interleave multiple
HTTP/2 streams, making it harder to analyze a single HTTP/2 stream.
Add the ability to select HTTP/2 Streams within a TCP stream.
Internally, the HTTP/2 dissector now stores the known Stream IDs in a
set for every TCP session which allows an amortized O(n) lookup time for
the previous/next/max Stream ID.
[Peter: make the dissector responsible for clamping the HTTP/2 Stream ID
instead of the Qt code, that should permit future optimizations.]
Change-Id: I5d78f29904ae8f227ae36e1a883155c0ed719200
Reviewed-on: https://code.wireshark.org/review/32221
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexander Gryanko <xpahos@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Provide _U_ macro definition for Visual Studio.
Change the way _U_ macro is ifdefed for some targets to allow Visual
Studio to recognize it.
Ping-Bug: 15832
Change-Id: Ic7ce145cbe9e8aa751d64c9c09ce8ba6c1bbbd30
Reviewed-on: https://code.wireshark.org/review/34530
Tested-by: Petri Dish Buildbot
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
The spelling error for "Desription" in the context menu was very
obvious. The others were found by scanning the output of:
grep -Po '<source>\K.*(?=</source>)' wireshark_en.ts
Change-Id: I4b95236c82f76828a115d59d7c8e0b853eae1d26
Reviewed-on: https://code.wireshark.org/review/34582
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Fix compile warnings due to incorrect conversions.
Change-Id: Ia24e9cb6ef5ed9ca1391dd005ed1eb95db1b0d30
Reviewed-on: https://code.wireshark.org/review/34553
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Upgrade the internal version of QCustomPlot to 2.0.1
Change-Id: I1eb372d8e6a2f6c1bbdde4c74596785bf2d405c2
Reviewed-on: https://code.wireshark.org/review/17980
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>
Add a comment to the Apply as Filter and Prepare as Filter menus, which
displays the filter string selected for the menu
Change-Id: I1bc3ecb849c51b3ffcbcc8ff18635a4df73ca27e
Reviewed-on: https://code.wireshark.org/review/34534
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
That means the packet-count-during-capture stuff is scattered amongst
fewer locations.
Move capture_info.h into ui; it's now a header that declares routines
whose implementations are GUI-platform-dependent.
Change-Id: I475815724a4766f6bc2511e67ebae14865e1a9d1
Reviewed-on: https://code.wireshark.org/review/26249
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Michael Mann <mmann78@netscape.net>
Add length check for extra_sizes array in geometry calculations when using
recent sizes, prevents crash in case where user creates a new user profile
with a layout of 1) filled pane 2) empty pane 3) empty pane.
Bug: 16048
Change-Id: I5f30d6e4148703504029efab75a77f2cdb6619ff
Reviewed-on: https://code.wireshark.org/review/34524
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Store the last used find packet settings in the global recent file,
and load this settings on startup.
Change-Id: I38081311cb06b4f398f4dfb66b659ae7d26ccac2
Reviewed-on: https://code.wireshark.org/review/34512
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Use edt from cap_file_ in case this is valid.
This is a regression from 806bef47a2.
Change-Id: I60150f50056b63346a1510505ffca22347ad4ba0
Reviewed-on: https://code.wireshark.org/review/34491
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>
When saving audio data from RTP stream(s) in Sun AU format we (still) do
not harness the build-in codec framework. This results in empty Audio
files for all but PCM encoded RTP streams. At least warn the user about
the codec not being supported for saving in Audio file.
Change-Id: Ia76caf71d0d5319a66dbf1cee517c0922bf7a561
Reviewed-on: https://code.wireshark.org/review/34466
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
The jitter buffer label in the RTP player dialog has an effectively
empty tooltip. Since on the label itself there's little to tell this
tooltip can be removed.
Change-Id: I9429e4f02991734b800280e2cae73a27f71c3663
Reviewed-on: https://code.wireshark.org/review/34467
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl>
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>
Fix missing override declarations for packetlist header information
Change-Id: If9d1cbcae20b5d098ff7b74cd263a6a21a296598
Reviewed-on: https://code.wireshark.org/review/34446
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Change-Id: Iba1eb865eac1d22d1490769ae9509b1389594a09
Reviewed-on: https://code.wireshark.org/review/34418
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@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>
Due to changes in Qt 5.11, the first section is no longer moveable
by default. This is due to internal storage mechanism. For strictly
flat tables it is not an issue to make the first column moveable
again. (see https://codereview.qt-project.org/c/qt/qtbase/+/207947)
Bug: 15879
Change-Id: If4f1371404cd252ec9f65a27c25b1c68781a0c33
Reviewed-on: https://code.wireshark.org/review/34445
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Calling the directly from the context menu and setting data
just before the execute of the menu can lead to information
not present.
Furthermore for future changes, the move to have QMenu only
as a local variable is being reverted
Change-Id: I470da26e658ae81ca416b3864889a4317b865755
Reviewed-on: https://code.wireshark.org/review/34428
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Make it consistent with -z conv,ip and -z endpoints,ip
Bug: 15660
Change-Id: I9a3d2e95fed47231c0bab20e6cf069987eed142f
Reviewed-on: https://code.wireshark.org/review/34426
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Ping-Bug: 15799
Change-Id: Icad9c4de620c0ffc9c4aa1a0b1b0d1ea444f481f
Reviewed-on: https://code.wireshark.org/review/34425
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
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>
The menu for a prototree when opened from a packetdialog was
different than the one opened underneath packetlist. Those
two are now the same.
Change-Id: I57572287daa5a3b1de1f5bc8e95b382d5869af6e
Reviewed-on: https://code.wireshark.org/review/34395
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@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>
The filterbutton context menu allows for appending the filter
button expression to an already existing display filter and
copying the filterbutton filter expression to the clipboard
Bug: 15980
Change-Id: I7b24007e597b9a9800729339926378d0ff264c73
Reviewed-on: https://code.wireshark.org/review/34394
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>
Also clarify the method by which the filter can be selected. From the
main menu only selected filters from a ProtoTree can be selected,
therefore the code for PacketList handling has been removed.
Change-Id: I5e5827d763ab3b25db14a384581f283238f96d28
Reviewed-on: https://code.wireshark.org/review/34384
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Create the menu for apply/prepare inside Packetlist. At the
same time disabled the "..." methods if no filter has been
set yet
Move the action list to FilterAction as well
Change-Id: Ia18a4021cc95562702ff516a24fb029063096f94
Reviewed-on: https://code.wireshark.org/review/34377
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Add the possibility to apply/prepare a field entry to the packet
dialog. This works also if the corresponding source file had
already been closed.
Bug: 3537
Change-Id: I448ad6d5cb37f2cbb2c2f649512b1f3e5acde2de
Reviewed-on: https://code.wireshark.org/review/34372
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This code is no longer required, as context menus should
be bound to local events.
As for "Reloading LUA plugins" - the keyboard shortcut would
be able to trigger while the menu is open, except Qt explicitely
prevents that
Change-Id: Id18a3a17d62bae1ff547a6ef96772e12a2535219
Reviewed-on: https://code.wireshark.org/review/34371
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
The context menu should only use information readily available
at the point of creation. Copying actions from the mainwindow
introduces a bunch of synchronization and consistency issues.
This is a first step to move away from a centralized approach
of managing actions, towards a distributed approach. As a side
effect, this also solves the old issue of having the apply
items greyed out in context menu
Bug: 16001
Bug: 15323
Change-Id: I10c6df11cbab0a89386f5bf1d27759103df2a012
Reviewed-on: https://code.wireshark.org/review/34370
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
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>
Fix dead store (Dead assignement/Dead increment) Warning
found by Clang
Change-Id: Ib16fc6c0783adda8485056d5e20973cf078e7d7e
Reviewed-on: https://code.wireshark.org/review/34321
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Move the CopyFromProfile implementation from a menu to a button
to ease integration in existing code
Change-Id: I4fb4e952e89665eda99d162e891ac6d3516a6f02
Reviewed-on: https://code.wireshark.org/review/34266
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 is being deleted, but a system profile with the same
name exists, the dialog cannot be closed
Change-Id: I2fbaa999617203816e21a8e4486abaf368b69919
Reviewed-on: https://code.wireshark.org/review/34331
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 pointer returned by create_tempfile() must not be freed. As the
wtap_dump_open_tempfile() callers are freeing the returned filename,
duplicate the string so it can be freed.
Bug: 15377
Change-Id: Ib0b23aaee748ef67600ef3f7d40610ebbbec721c
Reviewed-on: https://code.wireshark.org/review/34272
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
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>
Translations where not applied correctly because of the ellipsis
Change-Id: I1de4648d80537865c436c9d1963e96d394317332
Reviewed-on: https://code.wireshark.org/review/34250
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Make sure, that the main window only recognizes drop events containing
text/uri-list mime-types, as those are the only ones containing file
drops. All other mime-types (e.g. display filter drops) will be ignored
Bug: 15986
Change-Id: Id4338f75c563d2d177d858d2de470db1ab3499f7
Reviewed-on: https://code.wireshark.org/review/34248
Petri-Dish: Roland Knall <rknall@gmail.com>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Workaround a Qt 5.13 bug that made QTreeView::sortByColumn(-1)
ineffective and results in sorting rows by the first column in reverse
order.
This must be called before setModel since that already triggers sorting.
Bug: 15979
Change-Id: I86c26959d3cb9dd4118193dcda4b1308cc911290
Reviewed-on: https://code.wireshark.org/review/34226
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
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>
Do not call showHideMainWidgets() in initShowHideMainWidgets() because
this will override loaded recent values on startup.
Setting checked and visible based on recent values is done in layoutPanes()
and updateRecentActions().
This affects the following View settings: Main Toolbar, Filter Toolbar,
Wireless Toolbar, Status Bar, Packet List, Packet Details and Packet Bytes.
Also always hide empty_pane because it's never useful to show this.
Bug: 15976
Change-Id: Id63b8a5fdd263793a283137134f424d7cb4caf82
Reviewed-on: https://code.wireshark.org/review/34209
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>
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>
And minor UI changes
Change-Id: Ieed1e5090c0f5adc6e41b386d9950443b30eb2da
Reviewed-on: https://code.wireshark.org/review/34180
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Always store the last used directory when doing profile import,
even if no profiles where imported. A new directory may have been
used and the user may have selected the wrong .zip file.
Change-Id: I7ed9de8b62fa7a57623ffb3e737186f072a82255
Reviewed-on: https://code.wireshark.org/review/34183
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 graph does not contain any visible data (for example, "TCP Errors"
in a capture without TCP packets), the start offset is bogus. Ignore it
to avoid Time of Day being displayed as 01.01.1970.
Bug: 15247
Change-Id: I0e0a113dac6aebd42a4b48b89bbf563e96a8807a
Reviewed-on: https://code.wireshark.org/review/34129
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Change-Id: Ib0e4f8343d4acbdde956e35ac37dcf6a2937421f
Reviewed-on: https://code.wireshark.org/review/34181
Reviewed-by: Roland Knall <rknall@gmail.com>
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
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>
Allow to mark a packet with clicking the middle mouse button
Change-Id: I1d291c58ac99f17f94e0b31c6b67e30cc4ad5379
Reviewed-on: https://code.wireshark.org/review/34167
Petri-Dish: Roland Knall <rknall@gmail.com>
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 invalid coloring filters after doing an import to give a
proper warning to the user, and to avoid the same warning the next
time the coloring rules dialog is opened.
Change-Id: If6feee8ad00b3a221d157a46cbfb2462e7b7d6ef
Reviewed-on: https://code.wireshark.org/review/34143
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Add a context menu in the interface frame to start capturing packets.
Bug: 15954
Change-Id: I93379c9abc5d3ba8b64388f57679e6e7bfdd6da7
Reviewed-on: https://code.wireshark.org/review/34133
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>
Make recent_ctx_menu local to showRecentContextMenu() to avoid
keeping a global pointer which needs to be cleared every time.
Change-Id: Ic3baae4501e00ee753529b1edd5888de5d1e2167
Reviewed-on: https://code.wireshark.org/review/34142
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>
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>
Use one translation for the number of bytes in a field reported
in the main statusbar.
Change-Id: I76f9ca1d718e1493d97caf01c3838c93f20b821a
Reviewed-on: https://code.wireshark.org/review/34121
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
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>
Memory allocated with malloc must be freed when done.
Change-Id: I03fe15232cf589b4af3591018e842cf296e7ee2c
Reviewed-on: https://code.wireshark.org/review/34120
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>
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>
This label is called hintLabel in all other dialogs.
Change-Id: Ia17f29907c71a71f25ac20b3c617cc2d1a079814
Reviewed-on: https://code.wireshark.org/review/34117
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>
Add correct numerus translation for exported profiles.
Use uniform capitalization in the profile type selection combo box.
Use horizontal ellipsis in "Search for profile …"
Change-Id: I2898685f01a119cac5543fcb9f1dd18ae8fc3e93
Reviewed-on: https://code.wireshark.org/review/34115
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>
Add a context menu for the packet dialog, including items for
* all the expand/collapse items
* copy information from the packet tree
* Wiki protocol page/filter field reference/protocol preferences
Change-Id: I165e03960cc07aefaa38acb9c97fe29d762a5e2e
Bug: 3537
Reviewed-on: https://code.wireshark.org/review/34111
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Did not properly parse available profiles
Change-Id: I978a5294c40a389eeb9c8e3b3143541713b4a527
Reviewed-on: https://code.wireshark.org/review/34091
Petri-Dish: Roland Knall <rknall@gmail.com>
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>
Invalid filters now lead to the correct enable/disable behavior of the button
Bug: 15153
Change-Id: I3ea9e27e246146dbeedab89be841bccbb00739e4
Reviewed-on: https://code.wireshark.org/review/34085
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Change all wireshark.org URLs to use https.
Fix some broken links while we're at it.
Change-Id: I161bf8eeca43b8027605acea666032da86f5ea1c
Reviewed-on: https://code.wireshark.org/review/34089
Reviewed-by: Guy Harris <guy@alum.mit.edu>
../ui/qt/widgets/copy_from_profile_menu.cpp:52:30: error: no matching function for call to 'QAction::QAction(QString&)'
pa = new QAction(name);
^
../ui/qt/widgets/copy_from_profile_menu.cpp:52:30: note: candidates are:
In file included from /usr/include/qt5/QtWidgets/qmenu.h:40:0,
from /usr/include/qt5/QtWidgets/QMenu:1,
from ../ui/qt/widgets/copy_from_profile_menu.h:16,
from ../ui/qt/widgets/copy_from_profile_menu.cpp:10:
/usr/include/qt5/QtWidgets/qaction.h:174:5: note: QAction::QAction(QActionPrivate&, QObject*)
QAction(QActionPrivate &dd, QObject *parent);
Change-Id: Ib7cb7cf522f1a95d5f4c16b1dc8f2ada8e46793c
Reviewed-on: https://code.wireshark.org/review/34081
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
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 Treeview was not updated after a successful import.
Change-Id: I66d1873f75f1fca1ad1212130deb463a44253083
Reviewed-on: https://code.wireshark.org/review/34059
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>
It stopped working after moving to the ProfileModel
Change-Id: I20d095ece8ce842e9ded4489fd8e062b35ffc968
Reviewed-on: https://code.wireshark.org/review/34030
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
To allow for easy import of profiles, one can select a directory
to import profiles from
Change-Id: I12f66e3dc6bd272d34baa76093152dce412b0158
Reviewed-on: https://code.wireshark.org/review/34038
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
Fix the icon size of the info label
Change-Id: I46a156f567602f0e2da5a8697b798aa6b238483f
Reviewed-on: https://code.wireshark.org/review/34041
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>