Commit Graph

46239 Commits

Author SHA1 Message Date
Kevin Albertson a0c9627502 wscbor: defer creation of composite tvb
Prevents an exception in finalize if no tvbs are appended.
2023-01-09 08:04:08 +00:00
Alexis La Goutte 1a1a6ce12b DNS: Modify dns.qry.type for using without description
and append field with description

Close #18704
2023-01-09 06:54:07 +00:00
João Valverde 613331f07b dfilter: Disable flex debug trace for release builds
This omits the flex debug code in the binary if the build type is
RelMinSize or Release.

It replaces the "%option debug" stanza with the -d command line
option, to be able to configure the flex behaviour.
2023-01-09 04:03:19 +00:00
Gerald Combs 4ec08045aa wslua: Fix wsluarm defines. 2023-01-09 03:17:30 +00:00
Gerald Combs 0f824b8b34 [Automatic update for 2023-01-08]
Update manuf, services enterprise numbers, translations, and other items.

services failed.
2023-01-09 03:16:38 +00:00
Sergey V. Lobanov ff7bab1730 ALP: add dissector for ALP protocol (ATSC3.0 A/330)
This is a port of SiliconDust ALP decoder provided in public repository
https://github.com/silicondust/wireshark

Original Author: Nick Kelsey <nickk@silicondust.com>
2023-01-08 16:09:47 +00:00
João Valverde 840a0d3025 dfilter: Display layer in DFVM dump string 2023-01-08 15:10:43 +00:00
Ferry Huberts 4dedbe3eb4 locamation-im: fix a Coverity warning
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2023-01-08 09:08:23 +00:00
João Valverde de286af6ec ZDP: Sanitize UTF-8 string
Fixes #18772
2023-01-07 22:43:49 +00:00
João Valverde fcf97be1e9 dftest: Move a newline insertion
We want the string to not end with a new line for logging purposes
but add the final new line when printing to a file stream.
2023-01-07 22:28:01 +00:00
João Valverde 1861679e81 dfilter: Optimize some scanner patterns
Cleanup flex code. Optimize some patterns to avoid lookups
for field matches for values that are not legal field names.

Improve warning and add some comments.
2023-01-07 21:15:25 +00:00
João Valverde 7641ba7416 dftest: More code cleanups and enhancements 2023-01-07 19:16:16 +00:00
John Thacker da3a48f820 Qt: Add a pref for column text caching, and have it affect sorting
Introduce a preference for the number of rows whose column text can
be cached, and allow sorting of the packet list only when the
number of displayed rows can fit in the cache. This preference only has
an effect for sorting based on columns that require dissection and
caching the column text. This reduces the number of dissections from
O(N log N) to N. Subsequent sorts are even faster.

Columns based on frame data are unaffected, as they sort much faster
as dissection is not required.

Set the size of the QCache introduced in 8c6854fb65 based
on this preference.

Send a temporary status message to the status bar if we try to sort
but there are too many rows, explaining why sorting did not happen and
that the layout preferences can be changed.

Ping #18741
2023-01-07 13:20:24 +00:00
Rubin Gerritsen 751d836123 btle: Add control proc enum to make code self-documenting
Previously hardcoded integers were used in control procedure
dissection. This resulted in hard to read code.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-07 08:30:14 +00:00
Rubin Gerritsen b857c3189a btle: Dissector name updated to 5.3
It is dissecting 5.3, so it makes sense the name is updated

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-07 08:30:14 +00:00
Rubin Gerritsen 08d78fddb3 btle: Add some braces to if statements
As suggested in merge request 9233.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-07 08:30:14 +00:00
Rubin Gerritsen 0627ece136 btle: Fix bitmask for 5.3 feature sets
These were incorrectly set in
8f747e41c9

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-07 08:30:14 +00:00
Sake Blok 16cc10efb6 TCP: fix tcp stream numbering
With TCP Sequence Number Analysis disabled, a new TCP conversation
with the same 5-tuple (reused ports) was not properly recognized
as the base_seq was only set with the preference enabled.
2023-01-06 23:20:26 +00:00
Sake Blok f870c6085d epan: Allow nested dependent packets
Save all dependent frames when there are multiple levels
of reassembly.

This is a retry of !6329, combined with the fix in !6509 which
were reverted in !6545.

epan: fix a segfault, introduced in !6329
2023-01-06 23:15:48 +00:00
Gerald Combs 693dc40936 GNW: Ensure that tvbuff proto data has the proper scope.
Add security tvbuffs to our proto data using pinfo->pool.
Fixes #18779.
2023-01-06 17:37:37 +00:00
Alexis La Goutte 99385f1644 isup: fix typo on cause indicator
Internetworking -> Interworking

Close #18780
2023-01-06 13:23:23 +00:00
Martin Mathieson b388a23107 Revert much of 9281 (convert vals to common tfs).
Is not appropriate when there is no bitmask, because any
(even even) value is treated as true.
2023-01-06 10:39:46 +00:00
João Valverde a2b23f5a09 dfilter: Fix DFVM function debug output
Add a NULL check. Add missing newlines.

Remove explicit display of number of input arguments.
2023-01-06 02:52:04 +00:00
João Valverde df30299aff dftest: Add -h and improve output format
Experiment with removing the type from the instruction output.

This information is also available with the -s option flag.

Rename -t to -s.
2023-01-06 01:43:42 +00:00
João Valverde e77d716411 dfilter: Print CIDR mask for IPv4/IPv6 field types. 2023-01-06 01:15:10 +00:00
João Valverde 522c74b734 dftest: More CLI options and improve output format 2023-01-05 20:26:42 +00:00
João Valverde fd709a6af3 dfilter: Indent DFVM program using spaces 2023-01-05 20:26:42 +00:00
Alexis La Goutte 46a7e84b69 DNS: it is a IP6 Address for AAAA
From IANA Table
2023-01-05 09:24:42 +00:00
Alexis La Goutte b797829022 DNS: fix a very old typo... MAILB -> MAILB 2023-01-05 09:24:42 +00:00
Alexis La Goutte 671df60225 DNS: Update type value (from IANA) 2023-01-05 09:24:42 +00:00
Hans Hinrichsen 030d8ad9f2 Implement sACN Universe Sync dissection 2023-01-05 09:23:25 +00:00
Joakim Wiberg 077a91a8c5 Added new ODVA specific TLV
Added new ODVA specific TLV that replaces an already existing
ODVA specific TLV that has been depredated.
2023-01-05 09:22:28 +00:00
Martin Mathieson 4d879b3b32 ORAN FH CUS: some trivial usability improvements, and TODOs 2023-01-05 09:05:03 +00:00
John Thacker 0e93070745 follow: Add function for sub stream id to registration
When dissectors register for Follow Stream, have them register a
function for finding the next valid sub stream id for a given
stream and substream id pair. This function is NULL if the dissector
does not use sub stream IDs.

Use this function in follow_stream_dialog to update the sub stream
id widget (and use the absence of the function to disable and hide
the widget.) Use this function in the CLI tap-follow to determine
whether to parse a sub stream id from the command line options.

This removes the dependencies on epan/dissectors from the Qt
follow_stream_dialog, and gets us closer to having dissectors
being able to register for Follow Stream without having to update
anything in the common source code.
2023-01-05 05:04:33 +00:00
Gerald Combs 3120e64570 wslua: Fix the build.
Fix

    wireshark\epan\wslua\wslua_proto_field.c(423,29): error C2220: the following warning is treated as an error [wireshark\build\epan\wslua\wslua.vcxproj]
    wireshark\epan\wslua\wslua_proto_field.c(423,29): error C2220:             mask = (guint64)wslua_optguint32(L, idx, default_value); [wireshark\build\epan\wslua\wslua.vcxproj]
    wireshark\epan\wslua\wslua_proto_field.c(423,29): error C2220:                             ^ [wireshark\build\epan\wslua\wslua.vcxproj]
    wireshark\epan\wslua\wslua_proto_field.c(423,29): warning C4244: 'function': conversion from 'guint64' to 'lua_Number', possible loss of data [wireshark\build\epan\wslua\wslua.vcxproj]
    wireshark\epan\wslua\wslua_proto_field.c(423,29): warning C4244:             mask = (guint64)wslua_optguint32(L, idx, default_value); [wireshark\build\epan\wslua\wslua.vcxproj]
    wireshark\epan\wslua\wslua_proto_field.c(423,29): warning C4244:                             ^ [wireshark\build\epan\wslua\wslua.vcxproj]

on Windows and

    wireshark/epan/wslua/wslua_proto_field.c:1462:48: error: format specifies type 'unsigned long' but the argument has type 'guint64' (aka 'unsigned long long') [-Werror,-Wformat]
                                             f->vs,f->mask,f->blob);
                                                   ^~~~~~~
    wireshark/wsutil/wmem/wmem_strutl.h:51:56: note: expanded from macro 'ws_strdup_printf'
    #define ws_strdup_printf(...) wmem_strdup_printf(NULL, __VA_ARGS__)
                                                       ^~~~~~~~~~~

on macOS.
2023-01-04 09:54:52 -08:00
Nardi Ivan e6e3a91696 WSLUA: allow 64 bits bitmask for ProtoField objects
Mask might be specified using a (Lua) number, a string or a UInt64
object.

It is useful to handle 64 bit bitfields.
2023-01-04 14:32:23 +00:00
AndersBroman d4cd1d9d1d packet.c: Wrong pointer conversion in get_data_source_tvb_by_name()
Closes #18517
Solution by Zhao Ziqing
2023-01-04 12:30:16 +00:00
Pascal Quantin 253e19b8b2 NAS EPS: upgrade dissector to v17.9.0 2023-01-04 11:20:15 +00:00
Rubin Gerritsen 8f747e41c9 Bluetooth: Dissect features defined in 5.1 - 5.3
See Core_v5.3, Vol 6, Part B, Section 4.6.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen 78c7b184c9 Bluetooth: Dissect 5.3 ACL control procedure packets
The dissection also includes adding control procedure sequence validation.
See Core_v5.3, Vol 6, Part B, Section 2.4.2.36-39 and Section 5.1.19-22.

Core_v5.3 was released in 2021.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen f41ce48d39 Bluetooth: Perform control proc validation on LL_CIS_TERMINATE_IND
This will add expert info if the packet is being sent when
it is not allowed to be sent

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen e273428b7c Bluetooth: Perform control proc validation on LL_PERIODIC_SYNC_IND
This will add expert info if the packet is being sent when
it is not allowed to be sent

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen c0b6b858dc Bluetooth: Add more validation to power control procedures
The LL_REJECT_EXT_IND is an allowed response to the LL_POWER_CONTROL_REQ,
see Core_v5.3, Vol 6, Part B, Section 5.1.17.

Performs control procedure validation one a LL_POWER_CHANGE_IND is sent

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen 1ebd11dd49 Bluetooth: Allow LL_REJECT_EXT_IND as a response to LL_CIS_REQ/RSP
In Core_v5.3, Vol 6, Part B, Section 5.1.15 describes that this
is allowed.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen 62fafa5fc9 Bluetooth: Allow LL_REJECT_EXT_IND as a response to LL_CTE_REQ
In Core_v5.3, Vol 6, Part B, Section 5.1.12 describes that this
is allowed.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen 1eeb342476 Bluetooth: Detect invalid incompatible control procedure conflict resolution
Core spec 5.2, Vol 6, Part B, Section 5.3 describes how the link layer should
resolve the scenario where a collision occurs where both link layers initiate
incompabile control procedures.

This commit adds expect information for the case where these conflicts are not
handled according to spec.

Example of an invalid scenario:

M->S: LL_PHY_REQ
S->M: LL_PHY_REQ
S->M: LL_PHY_RSP
M->S: LL_PHY_UPDATE_IND

The correct sequence for this scenario is:
M->S: LL_PHY_REQ
S->M: LL_PHY_REQ
S->M: LL_PHY_RSP
M->S: LL_REJECT_EXT_IND
M->S: LL_PHY_UPDATE_IND

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen aefd842613 Bluetooth: Refactor adding control procedure packets to contexts
By defining control_proc_add_frame(), control_proc_add_last_frame(), and
control_proc_add_frame_with_instant() a lot of duplicate code can be removed.

This commit makes the checks for the CIS establishment procedure follow the spec.
Previously the dissector had two bugs:
 - It allowed both master and slave to initiate this procedure
 - The procedure was marked as complete once the LL_CIS_RSP was received.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Rubin Gerritsen 616ca5f512 Bluetooth: Refactor starting control proc context
Moves the check of starting a control procedure before the previous was complete inside
the function control_proc_start(). This check should be beformed before starting any
control procedure. Therefore it is better to simply move it inside the funciton to remove
code duplication.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2023-01-04 09:32:28 +00:00
Gustavo Garcia 4537f4fd50 packet-http3: add support for webtransport settings and frame types 2023-01-04 09:28:10 +00:00
Hans Hinrichsen 55b165617b Implement sACN Universe Discovery dissection 2023-01-04 09:24:09 +00:00