aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-rtps.h
diff options
context:
space:
mode:
authorLuis Colmenero <colmenero@rti.com>2020-10-07 22:30:16 +0200
committerWireshark GitLab Utility <gerald+gitlab-utility@wireshark.org>2021-04-27 06:15:42 +0000
commit3cdbbcdfb93ecd8df79f3ac76e4b00c0e743cc77 (patch)
tree1ee23f37b7bdffd6ef2ed8ab4bcb3e5aed9b299e /epan/dissectors/packet-rtps.h
parent2549e51ee4720262c66b97ffd9e0a329eb340eea (diff)
RTPS-VT: New dissector to enhance the RTPS protocol
Added dissectors for RTPS Virtual Transport and RTPS Processed Protocols RTI Connext DDS can capture RTPS-related traffic by using the Network Capture Utility. The generated .pcap capture files will follow these protocols, establishing a format for how information must be saved, and then parsed. This will improve debuggability by including additional information obtained from within Connext DDS. RTPS-VT parses the information related to the transport. It then, calls the RTPS-PROC dissector, which handles the rest: calling the RTPS dissector when needed, and parsing additional information such as the one related to security.
Diffstat (limited to 'epan/dissectors/packet-rtps.h')
-rw-r--r--epan/dissectors/packet-rtps.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/epan/dissectors/packet-rtps.h b/epan/dissectors/packet-rtps.h
new file mode 100644
index 0000000000..b264a94488
--- /dev/null
+++ b/epan/dissectors/packet-rtps.h
@@ -0,0 +1,70 @@
+/* packet-rtps.h
+ * Header file for the Real-Time Publish-Subscribe (RTPS) and related (RTPS
+ * Virtual Transport and Processed) protocols.
+ *
+ * (c) 2020 Copyright, Real-Time Innovations, Inc.
+ * Real-Time Innovations, Inc.
+ * 232 East Java Drive
+ * Sunnyvale, CA 94089
+ *
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
+ * Copyright 1998 Gerald Combs
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+#ifndef _TYPEDEFS_DEFINES_RTPS_H
+#define _TYPEDEFS_DEFINES_RTPS_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Vendor specific - rti */
+#define NDDS_TRANSPORT_CLASSID_ANY (0)
+#define NDDS_TRANSPORT_CLASSID_UDPv4 (1)
+#define NDDS_TRANSPORT_CLASSID_UDPv6 (2)
+#define NDDS_TRANSPORT_CLASSID_INTRA (3)
+#define NDDS_TRANSPORT_CLASSID_DTLS (6)
+#define NDDS_TRANSPORT_CLASSID_WAN (7)
+#define NDDS_TRANSPORT_CLASSID_TCPV4_LAN (8)
+#define NDDS_TRANSPORT_CLASSID_TCPV4_WAN (9)
+#define NDDS_TRANSPORT_CLASSID_TLSV4_LAN (10)
+#define NDDS_TRANSPORT_CLASSID_TLSV4_WAN (11)
+#define NDDS_TRANSPORT_CLASSID_PCIE (12)
+#define NDDS_TRANSPORT_CLASSID_ITP (13)
+#define NDDS_TRANSPORT_CLASSID_SHMEM (0x01000000)
+#define NDDS_TRANSPORT_CLASSID_UDPv4_WAN (0x01000001)
+
+/* Process a submessage: used in packet-rtps-processed.c */
+extern void dissect_rtps_submessages(
+ tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *rtps_tree,
+ guint16 version, guint16 vendor_id);
+
+/* Information that the RTPS-VT protocol passes to RTPS-PROC */
+struct rtpsvt_data {
+ guint8 version_major;
+ guint8 version_minor;
+ guint8 direction;
+ guint16 rtps_length;
+};
+
+#ifdef __cplusplus
+} /* extern "C"*/
+#endif
+
+#endif /* _TYPEDEFS_DEFINES_RTPS_H */
+
+/*
+ * Editor modelines
+ *
+ * Local Variables:
+ * c-basic-offset: 2
+ * tab-width: 8
+ * indent-tabs-mode: nil
+ * End:
+ *
+ * ex: set shiftwidth=2 tabstop=8 expandtab:
+ * :indentSize=2:tabSize=8:noTabs=true:
+ */