Commit Graph

82390 Commits

Author SHA1 Message Date
Gerald Combs 2c3b13834d CMake: Place all of the documentation in the "Documentation" folder. 2021-10-21 00:21:17 +00:00
Alexis La Goutte a48645e142 tcpcl: Fix warnings found by Clang Analyzer
packet-tcpcl.c:1071:9: warning: Value stored to 'frm' is never read [deadcode.DeadStores]
packet-tcpcl.c:1706:21: warning: Value stored to 'sep' is never read [deadcode.DeadStores]
packet-tcpcl.c:1762:21: warning: Value stored to 'sep' is never read [deadcode.DeadStores]
2021-10-20 21:51:40 +00:00
Alexis La Goutte 8da8d46de7 ieee80211: Fix warnings found by Clang Analyzer
packet-ieee80211.c:17423:9: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
packet-ieee80211.c:17424:9: warning: Value stored to 'tag_len' is never read [deadcode.DeadStores]
packet-ieee80211.c:17430:10: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
packet-ieee80211.c:17431:10: warning: Value stored to 'tag_len' is never read [deadcode.DeadStores]
packet-ieee80211.c:17437:10: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
packet-ieee80211.c:17438:10: warning: Value stored to 'tag_len' is never read [deadcode.DeadStores]
2021-10-20 21:51:40 +00:00
Alexis La Goutte e0e5998307 evs: Fix warning found by Clang Analyzer
packet-evs.c:668:17: warning: Value stored to 'bit_offset' is never read [deadcode.DeadStores]
2021-10-20 21:51:40 +00:00
Alexis La Goutte cfcd060171 bt-utp: Fix warning found by Clang Analyzer
packet-bt-utp.c:1052:5: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
2021-10-20 21:51:40 +00:00
Alexis La Goutte aa0eb732b1 bpv7: Fix warning found by Clang Analyzer
packet-bpv7.c:1646:13: warning: Value stored to 'sep' is never read [deadcode.DeadStores]
2021-10-20 21:51:40 +00:00
Martin Mathieson 29fe2340bd BT-UTP: Make a function statis 2021-10-20 20:19:26 +00:00
Dario Lombardo c734201e70 github: update no-options workflow. 2021-10-20 19:45:34 +00:00
Gerald Combs 44bd3a7d79 CMake+Docs: Update our man page targets.
Remove the generate_*_pages targets that were recently introduced,
since they're not really needed. Only add the "manpages" target
if we have Asciidoctor.
2021-10-20 19:29:08 +00:00
Nan Xiao da1d1c30f4 EVS: Fix TCX/HQ-MDCT core values 2021-10-20 19:03:32 +00:00
Huang Qiangxiong ec36885eda http2: fix the stream mode reassembly issue
- Point all MSP related DATA frames to their MSP instead of
  using wmem_tree_lookup32_array_le().
- Add test_grpc_streaming_mode_reassembly testcase for verifying
  this feature.

close #17633
2021-10-20 17:25:17 +00:00
Pau Espin 1dfb3edac1 csn1: Avoid storing existence bit as true if content was actually NULL
If we decode Exist bit as "1" but we are at the end of the message, and
all the Next items we'd read are expected to be possibly NULL, then swap
the Exist bit in the decoded structure as "0" in order to tell the
decoder user that the related information structure is actually unset,
as if "0" was received.

This patch is a port from patch fixing same issue in the osmo-pcu.git copy of
csn1 decoder:
https://git.osmocom.org/osmo-pcu/commit/?id=1859ec38cc4f4e3788e495a100fdec3787d25020
And fixup patch for that one:
https://git.osmocom.org/osmo-pcu/commit/?id=9ecdc11eb6b983748ae2fd6a1d07849c8106826f
2021-10-20 18:50:49 +02:00
Pau Espin 6ba9c7b918 csn1: Avoid failing if optional DownlinkDualCarrierCapability_r7 is missing
All additional release fields in RadioAccesCapabilities are considered
optional, and the CSN_DESCR for Content_t already marks almost all as such,
except DownlinkDualCarrierCapability_r7.

It has been found that some MS transmits a MS RA Capability with a Length=61 bits
where the last bit in the buffer is setting the Exist bit for
DownlinkDualCarrierCapability_r7 as 1. Hence, the CSN1 decoder failed to
decode the whole message because it expected to keep reading there
despite there's no more bytes to read.

While this is could actually be considered an MS bug, let's relax our
expectancies and simply consider the case { 1 <end> } as it was { 0 },
and mark skip decoding DownlinkDualCarrierCapability_r7. That what
wireshark (packet-gsm_a_gsm.c) or pycrate do for instance.

This patch itself doesn't fix the problem where actually the Exist bit
is stored as 1 in the output decoded structure, but simply allows keep
ongoing with decoding until the end. This issue will be fixed in a
follow-up patch.

This patch is a port from patch fixing same issue in the osmo-pcu.git copy of
csn1 decoder:
https://git.osmocom.org/osmo-pcu/commit/?id=ebdc0d8c170ee2dbf23b19056d6c2d0ef316b3c2
2021-10-20 18:50:49 +02:00
John Thacker 4d0537162b E212: Update MCC list
Op. Bulletin No. 1117 (1.II.2017) has an annexed list of Mobile
Country Codes that includes a number of which are not mentioned
in the MCC/MNC combined list in Op. Bulletin No. 1161 (1.XX.2018),
possibly because the MNCs are not reported to the ITU in a timely
fashion or because the assigned number is not actually used (e.g.,
Vatican City). See:
https://www.itu.int/dms_pub/itu-t/opb/sp/T-SP-OB.1117-2017-OAS-PDF-E.pdf
2021-10-20 09:26:14 -04:00
Joakim Karlsson ffdc5622d1 gtpv2: Update to 3GPP TS 29.274 V17.3.0 2021-10-20 11:06:06 +00:00
Martin Mathieson 54ac7b4424 Fix some spelling errors 2021-10-20 10:00:12 +01:00
Jirka Novak a747639add RTP Analysis: Fix of mean_jitter calculation
Calculation used current_diff in place current_jitter in mean_jitter
calculation so it produced incorrect results. This patch fixes it.

Closes #17600.
2021-10-20 07:05:30 +00:00
Martin Mayer d4cad23807 Added Allied Telesis Loop Detection Frames 2021-10-20 06:49:44 +00:00
Nan Xiao 3106386f44 EVS: Support decoding Primary 2.8 kbps packets 2021-10-20 06:32:28 +00:00
Nan Xiao 0818981ccb EVS: Fix bug in decoding SID frame CNG type
In 3GPP 26.449 Codec for Enhanced Voice Services (EVS); Comfort Noise Generation
(CNG) aspects, Computational details and bit allocation:
For the EVS primary modes, the SID payload consists of 48 bits. The first bit of
the payload determines the CNG scheme, where 0 stands for the LP-CNG and 1 for
the FD-CNG.
2021-10-20 09:32:13 +08:00
Gerald Combs 01b0d9e077 Docs: Move includes to the top of our man pages.
Move our attributes.adoc includes to the very top of each man page.
Older versions of Asciidoctor complain if it's not at the top. and
additionally generate <file>.man instead of <file>.<section> if we don't
explictly supply an output file.
2021-10-19 16:26:37 -07:00
Gerald Combs b8a45f3638 CMake+Docs: Generate man pages all at once.
Asciidoctor lets us generate multiple documents at once, so do so for
our man pages. If we're using AsciidoctorJ this minimizes the number
of JVM instances we have to spin up. This reduces the build time on my
Windows VM here quite a bit, and will hopefully do so on the CI builders.

Add a .editorconfig file in cmake/modules.
2021-10-19 22:06:45 +00:00
Stig Bjørlykke cfe33625a0 wslua: Initialize Proto members on creation
Set all pointers in Proto to NULL and check for valid pointers when
wslua_deregister_protocols().

Fixes #17668
2021-10-19 20:50:45 +00:00
Nardi Ivan 763247c2b3 QUIC: fix compilation on Raspberry 2021-10-19 20:04:17 +00:00
ismaelrti a1031afbff RTPS: ixed dissection of unions in user data.
Removed the type_id check when dissecting user data. That check avoids
dissection in valid cases.
2021-10-19 19:47:24 +00:00
Brian Sipos c1c5db86b6 TCPCL: Reassemble with full 64-bit transfer ID 2021-10-19 19:30:34 +00:00
Sangeetha Jain 2e65045db6 MeshConnex (MCX): MCX packet decode logic
Dissect MCX IE present in 802.11 packets like Beacon, Assoc Req, Assoc Res ...
2021-10-19 19:11:05 +00:00
John Thacker db8e63614e BT-uTP: Hand to bittorrent dissector, dissect multiple PDUs
Handle uTP payload to the bittorrent dissector.
Implement dissect PDUs to handle more than one bittorrent PDU
in a uTP payload.
Implement basic multisegment PDU tracking; not enough to actually
desegment, but enough to provide a hint to the start offset of the
next PDU when a PDU does span segments. (Provided that they're in
order, but OOO handling isn't implemented yet either.)
Improves #8792.
2021-10-19 18:53:46 +00:00
Nan Xiao 9a8feb8abd EVS: Fix CNG schema for SID payload
In 3GPP 26.449 Codec for Enhanced Voice Services (EVS); Comfort Noise Generation
(CNG) aspects, Computational details and bit allocation:
For the EVS primary modes, the SID payload consists of 48 bits. The first bit of
the payload determines the CNG scheme, where 0 stands for the LP-CNG and 1 for
the FD-CNG.
2021-10-19 15:44:56 +00:00
Dr. Lars Völker 95092e6582 SOME/IP: WTLV type 5 complains about 6 bit length field (BUGFIX)
Closes #17666
2021-10-19 14:38:57 +00:00
Pau Espin 736a54a3ad CSN.1: Fix definition for DownlinkDualCarrierCapability_r7_t in MS RA cap
Related spec: 3GPP TS 24.008 Table 10.5.146
2021-10-19 15:44:09 +02:00
Pascal Quantin 017eb216c1 BSSMAP LE: fix dissection of APDU in 2 messages
The APDU information element in Perform Location Request and Perform
Location Information messages is optional and not mandatory, as seen in
3GPP 49.031. This commit fixes a regression introduced in ga6ed603f5c.

Closes #17667
2021-10-19 09:53:19 +00:00
Chuck Craft 947d3ff819 dftest: update man page and README.display_filter 2021-10-19 07:41:31 +00:00
Jakub Pawlowski 0f7217aadf Bluetooth: Update Assigned Numbers
Updated UUIDs to match new version from 1st October 2021

Change-Id: Ifab0296389fe3815f7ce9b15de841e8675faba32
2021-10-19 05:02:41 +00:00
Guy Harris f275ccf2ab socketcan: use ett_can_fd for CAN FD. 2021-10-19 02:22:42 +00:00
Gerald Combs 1bcd51e34a CMake+Docs: Try to build our man pages in parallel.
Make sure man pages are included in the default build. Have the docs
and copy_data_files targets explicitly depend on the man page generator
targets.
2021-10-19 01:05:27 +00:00
Guy Harris 3fe96028d2 Add a comment to explain a cast done in file_fdopen(). 2021-10-18 16:22:33 -07:00
Nardi Ivan a2e877d397 wiretap: fix a warning on Raspberry 4
/home/pi/wireshark/wiretap/file_wrappers.c: In function ‘file_fdopen’:
/home/pi/wireshark/wiretap/file_wrappers.c:1136:27: error: comparison of integer expressions of different signedness: ‘__blksize_t’ {aka ‘long int’} and ‘unsigned int’ [-Werror=sign-compare]
         if (st.st_blksize <= MAX_READ_BUF_SIZE)
                           ^~
cc1: all warnings being treated as errors
2021-10-18 22:23:33 +00:00
Gerald Combs d8742418aa IDMP: Initialize some variables.
Try to make sure protocolID and saved_protocolID are initialized before
we use them. Another attempt at fixing #16342, #17664, and related bugs.
2021-10-18 20:19:35 +00:00
Jakub Pawlowski b7a612908a Increase PROTO_PRE_ALLOC_HF_FIELDS_MEM
This fixes suite_unittests failures when adding new Bluetooth UUID
related contsants
2021-10-18 19:46:45 +00:00
Gerald Combs f2ec793131 Revert "GitLab CI: Switch to clang 13."
This reverts commit 0aae44e145.

The fuzz builder has been running out of memory since the switch to
Clang 13, so revert back to 12 for now.
2021-10-18 19:07:12 +00:00
Gerald Combs e15e987468 BT SDP: Don't overrun our continuation state buffer.
Fixes #17635.
2021-10-18 10:30:39 -07:00
João Valverde 3562d76d5a dfilter: Fix memory leak in stnode_tostr()
Fixes #17661.
2021-10-18 14:22:13 +01:00
João Valverde e8800ff3c4 dfilter: Add a thin encapsulation layer for REs 2021-10-18 12:09:36 +00:00
João Valverde 2e048df011 dfilter: Improve error message for "matches"
Should be more obvious that this error is caused
by a string syntax error and not something else.
2021-10-18 12:09:36 +00:00
Brian Sipos e63f8d8daa wsutil: install missing public header wsgcrypt.h 2021-10-18 09:55:50 +00:00
João Valverde a975d478ba dfilter: Require double-quoted strings with "matches"
Matches is a special case that looks on the RHS and tries
to convert every unparsed value to a string, regardless
of the LHS type. This is not how types work in the display
filter. Require double-quotes to avoid ambiguity, because
matches doesn't follow normal Wireshark display filter
type rules. It doesn't need nor benefit from the flexibility
provided by unparsed strings in the syntax.

For matches the RHS is always a literal strings except
if the RHS is also a field name, then it complains of an
incompatible type. This is confusing. No type can be compatible
because no type rules are ever considered. Every unparsed value is
a text string except if it happens to coincide with a field
name it also requires double-quoting or it throws a syntax error,
just to be difficult. We could remove this odd quirk but requiring
double-quotes for regular expressions is a better, more elegant
fix.

Before:
  Filter: tcp matches "udp"

  Constants:
  00000 PUT_PCRE	udp -> reg#1

  Instructions:
  00000 READ_TREE		tcp -> reg#0
  00001 IF-FALSE-GOTO	3
  00002 ANY_MATCHES	reg#0 matches reg#1
  00003 RETURN

  Filter: tcp matches udp

  Constants:
  00000 PUT_PCRE	udp -> reg#1

  Instructions:
  00000 READ_TREE		tcp -> reg#0
  00001 IF-FALSE-GOTO	3
  00002 ANY_MATCHES	reg#0 matches reg#1
  00003 RETURN

  Filter: tcp matches udp.srcport
  dftest: tcp and udp.srcport are not of compatible types.

  Filter: tcp matches udp.srcportt

  Constants:
  00000 PUT_PCRE	udp.srcportt -> reg#1

  Instructions:
  00000 READ_TREE		tcp -> reg#0
  00001 IF-FALSE-GOTO	3
  00002 ANY_MATCHES	reg#0 matches reg#1
  00003 RETURN

After:
  Filter: tcp matches "udp"

  Constants:
  00000 PUT_PCRE	udp -> reg#1

  Instructions:
  00000 READ_TREE		tcp -> reg#0
  00001 IF-FALSE-GOTO	3
  00002 ANY_MATCHES	reg#0 matches reg#1
  00003 RETURN

  Filter: tcp matches udp
  dftest: "udp" was unexpected in this context.

  Filter: tcp matches udp.srcport
  dftest: "udp.srcport" was unexpected in this context.

  Filter: tcp matches udp.srcportt
  dftest: "udp.srcportt" was unexpected in this context.

The error message could still be improved.
2021-10-17 22:53:36 +00:00
João Valverde 4e5e806604 dfilter: Do not chain matches expressions
It is always an error to chain regexes using the logic for "le" and "eq".

  var matches "regex1" matches "regex2"
    => var matches "regex1" and "regex1" matches "regex2"

Before:
  Filter: tcp matches "abc$" matches "^cde"
  dftest: Neither "abc$" nor "^cde" are field or protocol names.

  Filter: "abc$" matches tcp matches "^cde"
  dftest: Neither "abc$" nor "tcp" are field or protocol names.

After:
  Filter: tcp matches "abc$" matches "^cde"
  dftest: "matches" was unexpected in this context.

  Filter: "abc$" matches tcp matches "^cde"
  dftest: "matches" was unexpected in this context.
2021-10-17 22:53:36 +00:00
Matias Karhumaa ac31124514 btsmp: Fix endianess of debug public key
Bluetooth LE SMP protocol uses Little-endian byte order. Convert
Bluetooth LE Secure Connections debug public key to Little-endian
byte order to fix the problem that dissector did not properly
identify debug keys when they were used during the pairing.
2021-10-17 14:46:47 +00:00
Brian Sipos c36ce0b01b TCPCLv4: Update TCPCL dissector to include version 4 from dtn-wireshark
Some enhancements and visual fixes to version 3 dissector are also included.
2021-10-17 14:09:07 +00:00