Commit Graph

45192 Commits

Author SHA1 Message Date
Martin Kaiser fe573cfe9a zvt: card type for Maestro cards
ZVT uses card type 46 for Maestro cards. Add this type to the value string.
2022-07-31 22:09:47 +02:00
Martin Kaiser 0130277571 zvt: clean up the _U_ tags
Set _U_ only for parameters which are really unused.

Make sure that the prototype and the definition of a function use the same
_U_ settings.
2022-07-31 20:49:45 +02:00
Gerald Combs f231711f1e [Automatic update for 2022-07-31]
Update manuf, services enterprise numbers, translations, and other items.

Asterix failed.
2022-07-31 16:36:50 +00:00
John Thacker 72703582d5 quic: Make follow stream respect server direction
For QUIC, we explicitly know the server direction. Use that
in order to correctly mark which packets are from the server
verus from the client, instead of assuming that the first packets
in a stream are from the client (which is true for a connection
generally but not necessarily a stream). This also allows us to track
direction across connection migration instead of marking all
packets after migration as from the server.
2022-07-31 10:20:08 +00:00
Jaap Keuter 6f6d53be78 IPv6: Make full implementation of RFC 6052 2022-07-31 09:13:16 +00:00
John Thacker 5c15ebb9a2 prefs: Convert most RTP dissectors to use "auto" PT preferences
Similar to commit 2eb7b05b8c,
replace the RTP payload type preferences with automatic
dissectors.

This reduces the number of preference module callbacks.
2022-07-31 07:37:11 +00:00
Alexis La Goutte 39ca9db96a aeron: Fix cppcheck warning about unread Variable 2022-07-31 06:59:49 +00:00
Alexis La Goutte 6b35ff22de aeron: Fix Clang Warnings
packet-aeron.c:652:18: warning: Array access (from variable 'addr_data') results in a null pointer dereference [core.NullDereference]
packet-aeron.c:658:17: warning: Array access (from variable 'addr_data') results in a null pointer dereference [core.NullDereference]
2022-07-31 06:59:49 +00:00
Alexis La Goutte 727dc92dd2 radiotap(ieee80211): fix typo (duplicate hf) 2022-07-31 06:46:27 +00:00
John Thacker 5aba5772e9 gboolean bitfields considered harmful
ISO C Std § 6.7.2, 5: "for bit-fields, it is implementation-defined
whether the specifier int designates the same type as signed int or the
same type as unsigned int." (See also the note in § 6.7.2.1 and ISO C
Std Appendix J.3.9.)

A gboolean is a typedef'd gint. Therefore, many implementations,
including gcc and clang, treat a gboolean bitfield of width 1 as
signed, meaning that it has two possible values: 0 and -1, any time
the integer promotions occur (which is all the time.) Constructs like this:

        dgram_info->from_server = TRUE;
        if (dgram_info->from_server == TRUE) ws_warning("True");

will not work as expected, though gcc (but not clang) will give an
error:

/home/johnthacker/wireshark/epan/dissectors/packet-quic.c:3457:37: error: comparison is always false due to limited range of data type [-Werror=type-limits]
 3457 |         if (dgram_info->from_server == TRUE)
      |

        proto_tree_add_debug_text(quic_tree, "Connection: %d %p from_server:%d", pinfo->num, dgram_info->conn, dgram_info->from_server);

Connection: 1 0x7fc4b47f2be0 from_server:0
Connection: 2 0x7fc4b47f2be0 from_server:-1
Connection: 3 0x7fc4b47f2be0 from_server:0
Connection: 4 0x7fc4b47f2be0 from_server:-1

At worst this can cause buffer overruns.

If a bitfield is desired, to guarantee expected behavior the standard
_Bool/bool should be used instead.
2022-07-30 08:49:08 -04:00
LiangYuxuan 735ae00417 Add China IPSec Algorithms and IKE Attributes 2022-07-30 10:34:22 +00:00
Ferry Huberts 059c3b7924 Locamation Interface Module dissector: add support for IM2R0 2022-07-30 10:33:43 +00:00
John Thacker a2c5ae9a8b prefs: Fix deprecated_port_pref migration
prefs_find_module() looks up a module by module name, which is
the same as the protocol filter name, case-insensitively.
dissector_table_get_dissector_handle() looks up a dissector handle
in the table by the protocol short name (which is the module _title_)
deprecated_port_pref() used the same string for both lookups.

For some protocols this worked, because the short name is the same
as the filter name only with different capitalization. For others,
it either wouldn't find the module to add to the migrated preference,
or wouldn't find the dissector handle in order to set Decode As
properly.

Fix this, by using the module title for the second lookup, and
changing all the module_name values to be correct. For good
measure, change all the module names that happened to work because
they're differently-cased versions of the filter name in order
to avoid confusion when new entries are added.
2022-07-29 21:16:56 -04:00
Alexis La Goutte 9781ae3fc1 FSSO: add support of packet with extra IPv4 a the end of packet 2022-07-29 12:16:54 +00:00
Alexis La Goutte 206e600687 FSSO: fix indent 2022-07-29 12:16:54 +00:00
Simon Cornish 72b4b21623 SCCP: Fix handling of XUDT segmentation parameter
Q.713 s1.5 states optional parameters may be received in any
order. Q.714 s1.1.42 states unrecognized parameters within a
message are ignored.

This patch fixes Wireshark's compliance with the specs and allows
the segmentation parameter to occur anywhere with the options
2022-07-29 01:39:40 +00:00
John Thacker 9c5f1255af packet_info: Fix a comment
The proto_layers map maps to values of curr_proto_layer_num,
not curr_layer_num.
2022-07-28 20:47:21 -04:00
John Thacker 5e715340bf sccp: Allow processing externally reassembled data
SCCP places a limit of 255 bytes on DATA parameters, and
segments data beyond that. Some tracing tools will externally
reassemble data, writing a single message with an indicated
length of 255 octets but with a longer payload. Allow the pref
setting introduced in 086feb2f09
to work for all message containing DATA, such as XUDT messages.
(Note that some tools leave the optional SEGMENTED parameter
in when externally reassembling, and some do not.) Add an
expert info to hint to the user when the setting might be
worth changing. (Perhaps it should be default to TRUE?)

Fix #10515
2022-07-28 19:21:27 -04:00
João Valverde 0816e317cb dfilter: Fix crash with FT_NONE and arithmetic expressions
Do the first ftype-can check in an arithmetic expressions before
evaluating the second term to be sure we do not allow FT_NONE as a
valid LHS ftype.

$ dftest '_ws.ftypes.none + 1 == 2'
Filter: _ws.ftypes.none + 1 == 2
dftest: FT_NONE cannot +.
	_ws.ftypes.none + 1 == 2
	^~~~~~~~~~~~~~~
2022-07-28 16:50:09 +00:00
Dr. Lars Völker 3f6e577dc1 TECMP: Adding CounterEvent and TimeSyncEvent
This patch adds support for the Counter Event and the TimeSync Event.
2022-07-28 06:02:18 +00:00
John Thacker 39aa6b06da gsm_a_common: Use common E212 MCC MNC function
Use the common functions to dissect the MCC and MNC from
packet-e212.c Remove some now no longer used static functions,
arrays, and fields.
2022-07-28 05:39:21 +00:00
Huang Qiangxiong a618fe72a2 GRPC: Fix the bug of GRPC-WEB decompression failure over HTTP1.1
1. Passing header name/value map to sub-dissector in packet-http.c.
   Headers can also be used by dissectors other than grpc in the future.

2. Try to get the grpc-encoding header value in packet-grpc.c.
   This header contains decompression algorithm.
2022-07-28 01:10:44 +00:00
John Thacker 1c89a14117 gsm_a_common: Fix cut and paste error
The field description and filter for type of ciphering algorithm
was copied from the previous field.
2022-07-27 19:16:24 -04:00
Kaige Ye 2cc887e80d MySQL: Add dissector for binlog event HEARTBEAT_LOG_EVENT_V2 2022-07-27 06:33:34 +00:00
John Thacker ae1c630025 QUIC: Use the stored datagram info for follow filter
Using the addresses and ports to retrieve the QUIC connection
has issues with connection migration. We deal with that in
the QUIC dissector and store that information in proto data.

Use that proto data for generating the follow filter from a
selected packet. This makes it more robust to connection migration
and cases where different QUIC connections reuse the same UDP
5-tuple.
2022-07-26 20:12:06 -04:00
Chuck Craft c4f9831412 gtpv2: adjust field size and bitmask for gtpv2.smenb
Closes #18225
2022-07-26 15:20:06 -05:00
KATAOKA, Toshihiro 7a75c638ac ORAN: Block FP improvement, additional correction
optimized add_tree for hf_oran_iSample, hf_oran_qSample as float.
2022-07-26 15:15:45 +00:00
KATAOKA, Toshihiro 6189eee63f Improvemnet Block FP decompression, common in case both U plane/C plane.
1. Block FP is used in both U plane I.Q. samples and C plane beamforming
   weight decompression.
2. excluded digital power scaling(DPS) out of BFP decompression, i.e. (1<<15)
   bits shift, because DPS is applied only U plane.
3. added digital power scaling to be called from U plane I.Q. samples
   calculation.
4. improved U plane I.Q. samples calculation similar logic used in C
   plane bfw calculation.
5. improved U plane I.Q. samples index start from '0'.

reference: O-RAN WG4.CUS.0 v.09.00.
 8.1.2 and 8.1.3 for clarification, digital power scaling applied only U
   plane.
 annex A.1.2 and A.1.3 for clarification, digital power scaling not
included in Block FP.
 annex D for I.Q. smples index
2022-07-26 15:15:45 +00:00
KATAOKA, Toshihiro c41a27b96d ORAN: eAxC ID flexible bit allocations 2022-07-26 15:13:25 +00:00
Martin Mathieson 9c2cbc842a PDCP_NR: Show direction in more sequence analysis expert output 2022-07-26 11:56:02 +00:00
John Thacker b093b6a992 epan: Make find_or_create_conversation create what it finds and vice versa
The endpoint elements pinfo->conv_endpoint and pinfo->conv_elements
cause find_or_create_conversation (via find_conversation_pinfo) to
look for conversations based on those endpoints. It should also
make it create conversations based on those endpoints, so that
subsequent calls find the same conversation it just created instead
of repeatedly creating new ones.
2022-07-25 20:35:56 +00:00
John Thacker cb3fd3b5cd quic: Handle out-of-order CRYPTO frames, aka "Chaos Protection"
Implement out of order buffering and desegmentation for QUIC
CRYPTO frames. Particularly useful for Chrome's "Chaos Protection"
that intentionally introduces them, but handles out of order
CRYPTO frames in different UDP payloads as well. (Buffering
packets at a higher encryption level until the out of order
lower level frames have arrived is a different issue.)

Adds a preference, which defaults to on since if there is
out of order, it's not very useful to turn it off.

Fix #17732. Fix #18215.
2022-07-24 23:27:38 -04:00
Gerald Combs 3bb40a586d wslua: Rename wslua_util.c to wslua_utility.c.
Rename wslua_util.c to wslua_utility.c so that our file name has the
form "wslua_<lower case lua module name>.c", which is the case for our
other modules.
2022-07-24 17:11:57 +00:00
Gerald Combs c252852c9d [Automatic update for 2022-07-24]
Update manuf, services enterprise numbers, translations, and other items.

Asterix failed.
2022-07-24 16:37:40 +00:00
Marius David 73910a3319 Update Keysight/Ixia netflow fields support. 2022-07-24 10:02:05 +00:00
Dr. Lars Völker 832687cc74 UDS: Change Symbol Names as of ISO 14229-1:2020 Amd1
In ISO 14229-1:2020 there is a conflict of symbol names. These will be
resolved in the ISO 14229-1:2020 Amd1. This patch already implements
this change.
2022-07-23 18:53:09 +02:00
Dr. Lars Völker 90ac880b8a TECMP: Fix CRC decoding on FlexRay Null Frames (Bugfix)
Skipping FlexRay Null Frame Payload to avoid bogus CRC values.
2022-07-23 15:39:40 +00:00
João Valverde 5f85c1f8aa dfilter: Use an exact floating-point string representation
The FTREPR_DFILTER format for floating-point numbers
is using an inexact representation so using "apply as
filter" on a floating-point protocol field does not produce a
match, as could be reasonably expected, because we don't
get back the same floating-point number.

Using g_ascii_dtostr() instead produces a string with enough
precision to get back the same machine number with IEEE 754 doubles.

Fixes #16483.
2022-07-23 01:08:31 +01:00
Gerald Combs fd830dff58 wslua+lrexlib: Fixup our dependencies and paths.
Add a register_wslua target and have lrexlib depend on it so that
declare_wslual.h is generated in the right order. The working directory
when we create declare_wslua.h and register_wslua.c is epan/wslua,
so there's no need to explicitly set it. Remove an unneeded lrexlib
include path.
2022-07-22 19:08:13 +00:00
John Thacker 74082386de DVB-S2: Store whether low roll-off values are used in conversation data
It's possible to have a capture that has multiple DVB-S2[X] streams
on different UDP or RTP ports that use different roll-off values.
Store the information about whether we've transitioned into the
lower roll-off range in conversation data instead of in a global.
2022-07-22 17:56:25 +00:00
Dr. Lars Völker 3e7ea95108 TECMP: Adding Subdissector support
Adding subdissector support based on interface_id. This allows to write
custom dissectors for e.g. UART/RS232 data.
2022-07-22 17:40:06 +00:00
Dr. Lars Völker d92af30f29 SOME/IP: Remove legacy datatype support
Signal PDUs over SOME/IP can be dissected since Wireshark 3.6 directly.
The workaround for SOME/IP to support signal dissection (legacy data
types) is therefore not needed anymore and is removed to cleanup the
dissector code.

This patch might make it necessary to regenerate the Wirehark config.
The Fibex-Converter was already updated.
2022-07-22 17:24:45 +00:00
Dr. Lars Völker b1edbd337f TECMP: Show unparsed payload of control messages 2022-07-22 17:08:29 +00:00
John Thacker 9d284afa90 quic: Handle multiple Client Initial messages before a server initial
If there are multiple Client Initial messages before the first server
response (e.g., a long fragmented TLS Client Hello), we won't recognize
the client ID from the server connection and we need to look it up
in the list of initial connections.
2022-07-22 10:22:13 -04:00
Kaige Ye 158becb733 MySQL: support COM_REGISTER_SLAVE 2022-07-22 06:28:57 +00:00
Roi Berkovich 4702e3bfad WLAN: fix IEEE802.11 dissection bug
When parsing wlan header above capwap, first two bytes are swapped (fcf
and flag). the offset was handled incorrectly, causing wireshark to
display incorrect fcf data in the tree summery and completely wrong
flags information (in the case of swap, the flags point to the same
byte as the fcf)
2022-07-22 05:49:01 +00:00
Gerald Combs b9ee6f4563 wslua: Fix more argument definitions. 2022-07-21 17:38:22 -07:00
Chuck Craft 9f59cae607 wslua: tapinfo - add state to debug info; update wsluarm
Test wth:
for _,tap_name in pairs(Listener.list()) do
  foo1 = Listener.new(tap_name)
  print (foo1)
end
2022-07-21 21:17:36 +00:00
Alexis La Goutte 0ed87211da proto.h: Fix -Wdocumentation
proto.h:3004:9: warning: parameter 'return_value' not found in the function declaration [-Wdocumentation]
2022-07-21 21:01:25 +00:00
Roland Knall 1f3f41391c addr_resolv: Add port correctly
Add the port correctly if only one dns server is configured
2022-07-21 09:59:16 +00:00