aboutsummaryrefslogtreecommitdiffstats
path: root/tools/dissectors/epan
diff options
context:
space:
mode:
Diffstat (limited to 'tools/dissectors/epan')
-rw-r--r--tools/dissectors/epan/rfnoc/packet-rfnoc.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/tools/dissectors/epan/rfnoc/packet-rfnoc.cpp b/tools/dissectors/epan/rfnoc/packet-rfnoc.cpp
index 2c53f80dd..ca3154e02 100644
--- a/tools/dissectors/epan/rfnoc/packet-rfnoc.cpp
+++ b/tools/dissectors/epan/rfnoc/packet-rfnoc.cpp
@@ -192,6 +192,8 @@ static int dissect_rfnoc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
gint flag_offset;
guint8 *bytes;
guint8 hdr_bits = 0;
+ gboolean is_eob = 0;
+ gboolean is_eov = 0;
uint64_t timestamp;
int chdr_len = 0;
gboolean is_network;
@@ -212,7 +214,7 @@ static int dissect_rfnoc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
len = tvb_reported_length(tvb);
- if (tree){
+ if (tree) {
guint64 hdr = tvb_get_letoh64(tvb, 0);
uhd::rfnoc::chdr::chdr_header chdr_hdr(hdr);
chdr_len = chdr_hdr.get_length();
@@ -281,14 +283,14 @@ static int dissect_rfnoc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
}
/* Add data0 */
proto_tree_add_uint(ctrl_tree, hf_rfnoc_ctrl_data0, tvb, offset+12, 4, payload.data_vtr[0]);
- /* Add op code */
+ /* Add op code */
proto_tree_add_string(
ctrl_tree, hf_rfnoc_ctrl_opcode, tvb, offset+11, 1,
val_to_str(payload.op_code, RFNOC_CTRL_OPCODES, "reserved")
);
/* Add address */
proto_tree_add_uint(ctrl_tree, hf_rfnoc_ctrl_address, tvb, offset+8, 3, payload.address);
- /* Add status */
+ /* Add status */
proto_tree_add_string(
ctrl_tree, hf_rfnoc_ctrl_status, tvb, offset+11, 1,
val_to_str(payload.status, RFNOC_CTRL_STATUS, "reserved")
@@ -395,7 +397,14 @@ static int dissect_rfnoc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
}
}
}
- if (pkttype == uhd::rfnoc::chdr::packet_type_t::PKT_TYPE_DATA_NO_TS) {
+ if (pkttype == uhd::rfnoc::chdr::packet_type_t::PKT_TYPE_DATA_NO_TS
+ || pkttype == uhd::rfnoc::chdr::packet_type_t::PKT_TYPE_DATA_WITH_TS) {
+ is_eob = chdr_hdr.get_eob();
+ is_eov = chdr_hdr.get_eov();
+ proto_tree_add_boolean(
+ rfnoc_tree, hf_rfnoc_hdr_eob, tvb, offset + 7, 1, is_eob);
+ proto_tree_add_boolean(
+ rfnoc_tree, hf_rfnoc_hdr_eov, tvb, offset + 7, 1, is_eov);
}
if (pkttype == uhd::rfnoc::chdr::packet_type_t::PKT_TYPE_DATA_WITH_TS) {
auto pkt = pkt_factory.make_generic();