Age | Commit message (Collapse) | Author | Files | Lines |
|
If the comment (i.e. Info column) text is elided, show the
full text as a tooltip. We already show it down in the status
hint text, but it's nice not to have to look all the way at
the bottom of the window.
Somewhat related to #4972
(I think, for that one, we will probably need to make the
column width controlled by a different widget rather than a
QSplitter, because making it a QSplitter would make the comments
no longer an axis, and then they wouldn't be printed.)
|
|
PREF_DECODE_AS_UINT has been unused since all auto port preferences
were made ranges by 8604d03a98607bf8dc62e3ee152f8c8289c4052b
Remove it.
Ping #14319
|
|
Add a check box for case sensitivity when finding in follow stream
and show packet bytes.
Note that QPlainTextEdit::find() has a bit unexpected behavior with
QRegularExpression (https://bugreports.qt.io/browse/QTBUG-88721).
Searches are case-insensitive by default there too, respecting
the default options. This is a change from the older QRegExp, where
the option to find was ignored, and only the regex option was used,
so for the last few releases regexp searches have been case-insensitive
as well by default. (?-i) has been available to mode switch.
We might want to move the various keyboard handling from
FollowStreamDialog and ShowPacketBytesDialog and instead have
FindLineEdit install shortcuts on the parents when constructed.
That would be a little cleaner separation.
We might also want to move the buttons and label to a separate
composite widget class, that signals the parent to start a
find.
Fix #3784
|
|
The IFTREE_COL_HIDDEN is in fact a "Show" column (should the
names be changed?) so when saving the data the hidden state
is the opposite of the checked status.
We were doing the inverted logic when writing to the preferences,
but not when changing the device interface_t struct directly.
However, before 6e12e504b9110285cd2de7e60c46483b8fa39ab7
we always re-read the hidden state from the preferences after
changing it in the Manage Interfaces Dialog, so this bug wasn't
exposed until we stopped doing that and used the current status.
Fix #19672
|
|
|
|
Update manuf, services enterprise numbers, translations, and other items.
|
|
Add a colorsChanged signal/slot, more precise than the generic
preferencesChanged signal, and only call it when one of the
color related preferences have changed. Connect it to the
packetList::colorsChanged() function, instead of calling that
whenever preferencesChanged() is called. We could eventually
move the signals and slots some of the other GUI widgets to this.
Send that signal before handling preferences that change
dissection and freeze the packet list, so that when we
restore the column widths due to Qt bug 122109 it takes effect.
The packet_list_hover_style preference affects colors, not
the layout, despite its presence in the GUI layout module.
|
|
https://bugreports.qt.io/browse/QTBUG-122109
A bug introduced by the fix for https://bugreports.qt.io/browse/QTBUG-116013
causes all visible sections to reset to the default section size whenever a
style sheet is applied (even if defaultSectionSize didn't change.)
Make sure that before applying a style sheet we prevent our recent
column widths from being updated, and then restore column widths
from the recent values afterwards.
This affects versions 6.5.4 (commercial only, 6.5.3 is the last free
release) and 6.6.1 and 6.6.2.
|
|
Enforce the requirement, already mentioned in the headers,
that preference and preference module effect flags must be
nonzero so that the application knows that a preference has changed.
(Lua, for example, needs this.)
Use this and avoid sending the PreferencesChanged signal when
preferences have not changed.
|
|
The GUI menu item should probably be disabled without a capture file
too.
Fix #19667
|
|
|
|
Rework the changes from 428f2228533351baf6509b8fc50a075cdbc136b0
a little bit to restore the ability to start a capture from
the extcap options dialog.
When the the dialog is opened for configuration, present both the
Save and the Start button. Continue to only have Start when the
dialog was spawned because the user wanted to start a capture
but a mandatory parameter was not configured.
Use the default QDialogButtonBox "Discard/Close without Saving"
button when closing the dialog without saving the user input
for new preferences.
Fix #19199
|
|
Do not change the preference pointer inside the Extcap Options
Dialog. That changes the real preference value, which disturbs
the check inside prefs_store_ext_multiple that storeValues() calls
for whether a pref has changed or not. Since the prefs are already
changed to their new value, we won't realize that we need to write
out a new preference file.
The other changes in #18487 are sufficent to fix the problem
identified there (though it's a bit unclear what "required" means
in combination with a default, and whether we have to send the
default value for the required parameter or can omit it.)
If the button says "Save", then save the preferences regardless
of what the "extcap Save on Start" preference says.
Fix #19639. Related to #18487
|
|
|
|
If the capture.no_extcap preference is set, really don't load the
extcap interfaces. Previously, the extcap interfaces were loaded
before the preference was read, because otherwise the extcap
preferences wouldn't be registered and properly read out of the
configuration file.
Wait until after that preference is read to register the
extcap preferences and then re-read just the extcap module
preferences from the configuration files. Make sure to check
other times when the preference may be changed, such as
switching profiles.
Write extcap prefs to a separate file so that they don't get lost
if the extcap interfaces aren't loaded and the prefs are then
written out. Continue writing them to the main file for backwards
compability.
Related to #15295. Cuts ~100 ms off the loading time of Wireshark
in a normal situation if the capture.no_extcap preference is set,
more if an extcap has some kind of issue that makes it take a long
time to load.
|
|
|
|
Update manuf, services enterprise numbers, translations, and other items.
|
|
The solution to #12331 makes command line options that change
preferences be reapplied when reloading Lua plugins.
The command line preference overrides should be either reapplied
or dropped when changing configuration profiles. Doing neither,
as currently, means that they are not reapplied when switching
but are reapplied when subsequently reloading Lua plugins, which
is confusing. Drop them, but we could change that decision.
Make sure that we set the pointer to NULL when freeing so that
we don't double-free.
commandline.h requires cfile.h to get the search direction enum.
|
|
Rather than shelling out to "osascript" and telling it to tell Finder to show
the file, we can directly use NSWorkspace's "activateFileViewerSelectingURLs:"
method to launch Finder and highlight the chosen file. It's less code, runs
faster, and should be much less risky regarding special characters, string
encodings, etc.
|
|
|
|
On Linux (and presumably other DBus-using Unix-like OSes), right-clicking on a
file on the Welcome page and choosing "Show in Folder" would only ever open the
folder, and would not highlight the chosen file.
Adding DBus support to function desktop_show_in_folder allows for the file
itself to be shown -- subject to support from the user's desktop environment...
|
|
Allow anything that can be used in a display filter to be used in
columns (with the exception that field references don't work without
a notion of a currently selected frame): display filter functions,
slices, arithmetic calculations, logical tests, raw byte addressing,
the layer modifier, display filter macros, etc., alone or in
combination.
Show the results and generate filters. Note that "resolved" values are
not yet supported. They make conceptual sense for some expressions
(e.g., if the layer modifier only is used) but not for others.
Perhaps resolution could be done as a final step in the filter before
returning values.
It would also be useful to be able to get the expected return type
of an expression, so that the functions for right justifying a column
or sorting numerically could work. Right now the results are treated
as strings even if the return field values are numeric.
Multifield columns (i.e., concatenation of field values) are currently
implemented using the OR operator.For backwards compability, continue to
support that. When a true logical OR would give a different result,
surround the expression in parentheses, which the multifield columns did
not previously support (due to the regex used instead of full filter
grammar parsing.)
Perhaps in the future we should introduce a separate operator for
concatenation, possibly only used in column definitions and nowhere
else.
Update release notes.
Fix #7752. Fix #10154. Fix #15990. Fix #18588. Fix #19076.
Related to #16181 - it's now possibly to define new display filter
functions so that is essentially solved, though I suppose there's
always room for more built-in functions.
|
|
Change our menu path separator to "//" similar to our filter buttons.
Change the "name" configuration element to "path", since it's a menu
path. Add a separate "title" element. This lets us use names like "Foo
I/O".
|
|
When splitting a possibly multifield custom column expression
into components, don't match "or" unless it's a word by itself,
i.e. is surrounded by space. "||" by itself is fine as a token.
This is necessary if we allow more complicated filters to match
than just single fields separated by "||" or "or". Also split
at space at the beginning or end of a string (since we don't
always guarantee that whitespace is stripped.)
When spliting into components, only split on "||" and " or " that
are not inside parenthesis. Splitting on operators inside parentheses
results in components which are not fields or valid filter expressions
and has never worked, e.g. splitting "(tcp.srcport or tcp.dstport)"
into "(tcp.srcport" and "tcp.dstport)".
TEST_OR has the lowest possible operator precedence (see
commit 34ad6bb47887fab144c8e2547dce58152111abb0), so this works,
and also justifies using OR instead of AND for multifield custom
columns.
This means that, e.g., "tcp.srcport or tcp.dstport" will be treated
as a multifield custom column expression that returns the values
for both of the fields, whereas "(tcp.srcport or tcp.dstport)" will
be ultimately treated as a single logical test that returns true
if one of the fields exist and false if neither do. Until tests
and other non single-field expressions are supported, the latter
won't work, but it never has worked.
Related to #7752, #10154, #15990, #18588, and #16181.
|
|
Add an opaque public type for stats_tree configurations. Get rid of
stats_tree_register_with_group and add stats_tree_set_group. Add
stats_tree_set_first_column_name. Convert some documentation to doxygen.
|
|
Don't resize our columns every packet.
|
|
Update manuf, services enterprise numbers, translations, and other items.
|
|
We don't need to read or use the column format string in
the recent settings column width info, because now they're
in sync with the indices used in prefs.col_list.
Continue to write it when writing out the recent settings for
backwards compatibility with older version.
We can also remove the workaround for #14177 from
commit c62dadd31f859a60b970f699992a5ddba837a42c as it's
not needed.
This solves the width and alignment part of #15529. Hidden
states are still to do.
|
|
Those links are to questions with answers that indicate how to show a
folder window with a particular file selected using system APIs rather
than firing up programs.
|
|
|
|
Keep the recent column width list in sync with the order of the
prefs.col_list by appending, inserting, and moving the recent
column width list at the same time, instead of allowing them
to get out of sync (as we use the format for a key.)
Fix an issue where column_prefs_add_custom did not always return
the position of the column added (when a column number was passed
in that was less than the maximum number of columns.)
Preparation for the width and alignment part of #15529
|
|
Add the ability to change the width and alignment of columns
from the Column Preferences.
This also makes it easier to eventually fix #15529 by having all
the column-relevant details edited at once. In order to properly
solve that issue, the column indices from the preferences and the
recent settings need to be kept in sync, instead of using the format
as the unique key.
Related to #15529
|
|
When we open a FilterExpressionToolBar menu and right click on it, make
sure we open our context menu using coordinates relative to the toolbar.
|
|
This commit adds a additional preference to hide the 'Open' (recently opened
files) section on the welcome page.
|
|
eab4734a0d removed actionAnalyzeDecodeAs and actionFileExportPacketBytes
from Logray.
|
|
Be a little more careful in TrafficTab about whether we
want the Proxy Model or the Source Model, since the tap
filter doesn't exclude rows from the source model (since
the non-displayed rows are used to as part of the percentages
of the total.)
When we want to respect the display filtering or the sorting,
use the proxy model.
In the tap data model, only claim we have GeoIPData (which makes
the map available) if a row that isn't filtered out has data.
Fix #18530
|
|
|
|
Change some instances of "packet" to "event" in Logray's menu items.
Remove "Export Objects" and "Export PDUs" and associated code. Remove
the packet diagram menu items and associated code. Remove the "Decode
as" menu items and associated code.
Use "Selected" instead of the parenthetical plural "Packet(s)" for
marking and ignoring. Remove an attempt at plural translation which
apparently doesn't work if we don't have a "%n" in the translation
string.
|
|
|
|
Add a pinfo conversation filter which enables related packets based on
(container.id, proc.id) combinations. Register the "Process" conversation
filter first so that the "Go" menu behavior matches the related packet
display.
Handle cases where container.id is missing.
Add 64-bit integer type support to conversations.
|
|
When showing the follow data as text (ASCII, UTF-8, EBCDIC, etc), add a
newline at each turn. Add the ability to show delta times between
packets and turns. Add a recent setting for delta times.
Make the initial dialog a bit wider.
Save and restore our scoll position when reading a stream.
Manually connect our signals and slots. Fix some clazy warnings.
|
|
Update manuf, services enterprise numbers, translations, and other items.
|
|
|
|
This moves 54 kBytes of data to a read-only data section.
|
|
Define VCS_NUM_COMMITS and VCS_COMMIT_ID in vcs_version.h. Use them to
return the Logray version in get_lr_vcs_version_info and use that where
appropriate. Rename VCSVERSION to VCS_VERSION.
|
|
|
|
The RTP dissector already calculates an extended timestamp
that takes into account wrapping and passes it to the taps.
Just use that in the analysis stats instead of redoing the
extended timestamp calculation.
(The calculation currently in the analysis has some slight
issues about when to use a absolute difference versus a
signed difference, and what to cast the 32 bit timestamps to.)
Fix #19622. Tested and works with the various edges cases
in !4853 and #16330 and others.
|
|
Remove some unneeded includes as well.
|
|
For file sets produced by multiple file captures, match both
the number before time and the newer time before number format.
Distinguish them in the return value, since files of different
formats are not part of the same set.
Also handle files with a compression suffix as well, as we can
produce that in captures. Since in multi file captures compression
is done when switching files, allow file sets to have a mixture of files
compressed and uncompressed. When doing a multi file capture and
compressing, the last file is not compressed.
Add information to the user guide and release notes
Related to #12371
|
|
Update manuf, services enterprise numbers, translations, and other items.
|