Try to retrieve the per packet info data first, and create it if
it doesn't exist, rather than assuming it is there on the second
pass. Prevents segfaults in cases with strange TCP sequence issues
(that still show up as bugs in the TCP dissector.) Fix#17737.
A number of protocols have IDs that can be reused that are used as
lookup keys. In most cases the frame number should be used as well
to differentiate repeat appearances of an ID. For response/request
matching, it is frequently useful to find the most recent frame number
(greatest value less than or equal to the current one) that contained
an ID.
We can achieve that by using a multimap that stores values with a given
ID in a tree keyed with the frame number. This works better than using
a map or a tree alone:
1) A map isn't ordered, so doesn't allow for less than or equal comparison.
2) Using a tree requires an ordering on all the ID components, and then
having to test all the components other than the frame number separately
for equality after retrieval.
Currently the multimap does not support inserting items without specifying
the tree key (and having the multimap generate a key), because the total
capacity of trees (including deleted nodes) is not tracked. If other use
cases are needed, this could be added later along with more generic
multimap support.
Use a multimap in ANSI MAP, ANSI TCAP, and GSM SMS, all of which need to
match lookup IDs that can be reused. Fix#7653.
Change our developer.gnome.org/glib URLs to
developer-old.gnome.org/glib. The official documentation for GLib
appears to be at https://docs.gtk.org/glib/, but it has a different
layout than the gnome.org content (and is surprisingly resistant to
exploration IMHO). We can switch to developer-old.gnome.org using a
simple substitution and it still seems to be updated, so do that for
now.
The column parameter in PacketListRecord::columnString() must be
below cap_file->cinfo.num_cols to be valid. An issue with this check
may be triggered when switching profile.
Copy Advertiser Address from AUX_ADV_IND if not present in AUX_CHAIN_IND
to make reassembly work. Check for valid reassembled data before
doing dissect_ad_eir().
As the GLib documentation says, g_strsplit returns "A newly-allocated
NULL-terminated array of strings. Use g_strfreev() to free it." Call
wmem_strsplit instead so that we clean up after ourselves. Blind attempt
at fixing #17736.
This solves the following issue:
In cases where `mmdbresolve` fails to execute (e.g. when it's simply
missing from a tree) the spawn fails such that a zero initialized file
descriptor is closed (i.e. stdin). The close is silent, unless one
executes something like `tshark -r - ...` where a bad file descriptor
is reported then.
unset the env variable XDG_CONFIG_HOME in ubuntu.yaml (action config file), wireshark will use $HOME evn variable;
and i test those two solutions, all test case is success;
This is capable of dissecting UASP traffic on a USB 2.0
bus, provided Wireshark sees the interface descriptor.
Dissecting USB 3.0 traffic won't work properly because we
don't have access to an URB's bulk stream ID, so the data
transfer can't be attributed properly to commands.
The existing dissector only handles the Bulk-Only Transport
protocol but occupies the USB dissector hooks for all mass
storage class traffic.
To facilitate alternative protocols like UASP, direct all
mass storage class traffic to a stub dissector which will
dispatch to the real dissector based on other information,
such as the USB interface protocol.
Heuristic dissectors are still attached directly to the
core USB hooks.
Dissect FlexRay specific EBHSCR header of frame packets, symbol packets,
slot status packets and start of cycle packets. Payload of frame packets
and symbol packets is prepared and passed to the FlexRay dissector.
Add just a console entry for check_test(), in a more compact
form.
Remove logging of the call chain. This was partially replaced by the
printout of the syntax tree.
The Service Response Time stats for CAMEL (and TCAP, which must be
enabled as well) are reliable and not that processor intensive. They
should be always enabled, just like the SRT stats for other protocols.
This also makes things less confusing with regards to the CAMEL
opcode counter stats, which were only enabled if the SRT preferences
were also set, since they use the same tap.
Also remove a unused function declaration in a header.
Pass the funnel operations ID to new_text_window and new_dialog so that
we can assign parent widgets when we create new FunnelTextDialogs and
FunnelStringDialog. This should ensure that they're destroyed properly.
Ping #17590.
This was intentionally kept simple (matches the philosophy of Arch).
In particular I wasn't so concerned about what is a required build
dependency and what is an optional build dependency to compile the
programs. I don't know why one would ever wish to skip installation
of non-essential library dependencies. But others are very welcome
to extend this intentionally barebones effort.
The script also adds an "--install-all" flag to install everything
at once. I keep forgetting the name of the other options.
I used the build optional flag to install packages required to build
documentation and so on. Ancillary stuff.