uci: Implement UCI packet dissector

Implement the dissector for Ultra-wideband controller
interface packets, based on the protocol description
on the FiRa consortium website:
  https://groups.firaconsortium.org/wg/members/document/1679

The dissector recognizes packets with PCAP identifier 293,
or TCP packets on port 7000 (default).
This commit is contained in:
Henri Chataing 2022-05-04 15:58:00 +02:00 committed by Alexis La Goutte
parent 9f22be9701
commit 91e8f5db35
6 changed files with 1835 additions and 0 deletions

View File

@ -83,6 +83,9 @@ in configured MaxMind databases (and geolocation lookup can be enabled with
*-Ng*.) This is most relevant for tshark, where geolocation lookups are
synchronous.
* Implement built-in dissector for FiRa UWB Controller Interface (UCI) protocol.
Recognizes PCAP traces with the link type LINKTYPE_FIRA_UCI=299.
// === Removed Features and Support
// === Removed Dissectors
@ -119,6 +122,7 @@ DECT NWK protocol layer (DECT-NWK)
Low Level Signalling (ATSC3 LLS)
Train Real-Time Data Protocol (TRDP)
Windows Delivery Optimization (MS-DO)
FiRa UWB Controller Interface (UCI)
--
=== Updated Protocol Support

View File

@ -178,6 +178,7 @@ editcap: The available encapsulation types for the "-T" flag are:
tr - Token Ring
tr-nettl - Token Ring with nettl headers
tzsp - Tazmen sniffer protocol
uci - FiRa UWB Controller Interface protocol
unknown - Unknown
unknown-nettl - Unknown link-layer type with nettl headers
usb-20 - USB 2.0/1.1/1.0 packets

View File

@ -1955,6 +1955,7 @@ set(DISSECTOR_SRC
${CMAKE_CURRENT_SOURCE_DIR}/packet-uavcan-dsdl.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-ubdp.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-ubertooth.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-uci.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-ucp.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-udld.c
${CMAKE_CURRENT_SOURCE_DIR}/packet-udp.c

1825
epan/dissectors/packet-uci.c Normal file

File diff suppressed because it is too large Load Diff

View File

@ -499,6 +499,9 @@ static const struct {
/* Auerswald log file captured from any supported Auerswald device */
{ 296, WTAP_ENCAP_AUERSWALD_LOG },
/* Ultra-wideband (UWB) controller interface protocol (UCI) */
{ 299, WTAP_ENCAP_FIRA_UCI },
/*
* To repeat:
*

View File

@ -307,6 +307,7 @@ extern "C" {
#define WTAP_ENCAP_AUTOSAR_DLT 218
#define WTAP_ENCAP_AUERSWALD_LOG 219
#define WTAP_ENCAP_ATSC_ALP 220
#define WTAP_ENCAP_FIRA_UCI 221
/* After adding new item here, please also add new item to encap_table_base array */