aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--epan/dissectors/packet-catapult-dct2000.c8
-rw-r--r--epan/dissectors/packet-mac-lte.c31
-rw-r--r--epan/dissectors/packet-mac-lte.h2
3 files changed, 39 insertions, 2 deletions
diff --git a/epan/dissectors/packet-catapult-dct2000.c b/epan/dissectors/packet-catapult-dct2000.c
index 60273573b4..039e786e98 100644
--- a/epan/dissectors/packet-catapult-dct2000.c
+++ b/epan/dissectors/packet-catapult-dct2000.c
@@ -1272,6 +1272,10 @@ void attach_fp_info(packet_info *pinfo, gboolean received, const char *protocol_
/* Channel type */
p_fp_info->channel = outhdr_values[i++];
+ /* Sad hack until this value is filled in properly */
+ if (p_fp_info->channel == 0) {
+ p_fp_info->channel = CHANNEL_DCH;
+ }
/* Derive direction from node type/side */
node_type = outhdr_values[i++];
@@ -1427,6 +1431,10 @@ static void attach_mac_lte_info(packet_info *pinfo)
p_mac_lte_info->detailed_phy_info.dl_info.resource_block_length = outhdr_values[i++];
p_mac_lte_info->crcStatusValid = TRUE;
p_mac_lte_info->detailed_phy_info.dl_info.crc_status = outhdr_values[i++];
+ if (outhdr_values_found > 18) {
+ p_mac_lte_info->detailed_phy_info.dl_info.harq_id = outhdr_values[i++];
+ p_mac_lte_info->detailed_phy_info.dl_info.ndi = outhdr_values[i++];
+ }
}
else {
p_mac_lte_info->detailed_phy_info.ul_info.present = outhdr_values[i++];
diff --git a/epan/dissectors/packet-mac-lte.c b/epan/dissectors/packet-mac-lte.c
index 29e9e3d0b9..fe827dec07 100644
--- a/epan/dissectors/packet-mac-lte.c
+++ b/epan/dissectors/packet-mac-lte.c
@@ -84,6 +84,8 @@ static int hf_mac_lte_context_phy_dl_redundancy_version_index = -1;
static int hf_mac_lte_context_phy_dl_retx = -1;
static int hf_mac_lte_context_phy_dl_resource_block_length = -1;
static int hf_mac_lte_context_phy_dl_crc_status = -1;
+static int hf_mac_lte_context_phy_dl_harq_id = -1;
+static int hf_mac_lte_context_phy_dl_ndi = -1;
/* Out-of-band events */
@@ -1075,12 +1077,23 @@ static void show_extra_phy_parameters(packet_info *pinfo, tvbuff_t *tvb, proto_t
p_mac_lte_info->detailed_phy_info.dl_info.crc_status);
PROTO_ITEM_SET_GENERATED(ti);
+ ti = proto_tree_add_uint(phy_tree, hf_mac_lte_context_phy_dl_harq_id,
+ tvb, 0, 0,
+ p_mac_lte_info->detailed_phy_info.dl_info.harq_id);
+ PROTO_ITEM_SET_GENERATED(ti);
+
+ ti = proto_tree_add_uint(phy_tree, hf_mac_lte_context_phy_dl_ndi,
+ tvb, 0, 0,
+ p_mac_lte_info->detailed_phy_info.dl_info.ndi);
+ PROTO_ITEM_SET_GENERATED(ti);
+
+
proto_item_append_text(phy_ti, " (");
write_pdu_label_and_info(phy_ti, NULL,
(global_mac_lte_layer_to_show == ShowPHYLayer) ? pinfo : NULL,
"DL: UEId=%u RNTI=%u DCI_Format=%s Res_Alloc=%u Aggr_Level=%s MCS=%u RV=%u "
- "Res_Block_len=%u CRC_status=%s",
+ "Res_Block_len=%u CRC_status=%s HARQ_id=%u NDI=%u",
p_mac_lte_info->ueid,
p_mac_lte_info->rnti,
val_to_str_const(p_mac_lte_info->detailed_phy_info.dl_info.dci_format,
@@ -1092,7 +1105,9 @@ static void show_extra_phy_parameters(packet_info *pinfo, tvbuff_t *tvb, proto_t
p_mac_lte_info->detailed_phy_info.dl_info.redundancy_version_index,
p_mac_lte_info->detailed_phy_info.dl_info.resource_block_length,
val_to_str_const(p_mac_lte_info->detailed_phy_info.dl_info.crc_status,
- crc_status_vals, "Unknown"));
+ crc_status_vals, "Unknown"),
+ p_mac_lte_info->detailed_phy_info.dl_info.harq_id,
+ p_mac_lte_info->detailed_phy_info.dl_info.ndi);
proto_item_append_text(phy_ti, ")");
/* Don't want columns to be replaced now */
@@ -3395,6 +3410,18 @@ void proto_register_mac_lte(void)
NULL, HFILL
}
},
+ { &hf_mac_lte_context_phy_dl_harq_id,
+ { "HARQ Id",
+ "mac-lte.dl-phy.harq-id", FT_UINT8, BASE_DEC, 0, 0x0,
+ NULL, HFILL
+ }
+ },
+ { &hf_mac_lte_context_phy_dl_ndi,
+ { "NDI",
+ "mac-lte.dl-phy.ndi", FT_UINT8, BASE_DEC, 0, 0x0,
+ "New Data Indicator", HFILL
+ }
+ },
/* Out-of-band events */
{ &hf_mac_lte_oob_send_preamble,
diff --git a/epan/dissectors/packet-mac-lte.h b/epan/dissectors/packet-mac-lte.h
index 94add011db..6ebfa44bfc 100644
--- a/epan/dissectors/packet-mac-lte.h
+++ b/epan/dissectors/packet-mac-lte.h
@@ -125,6 +125,8 @@ typedef struct mac_lte_info
guint8 redundancy_version_index;
guint8 resource_block_length;
mac_lte_crc_status crc_status;
+ guint8 harq_id;
+ gboolean ndi;
} dl_info;
} detailed_phy_info;