diff options
author | martinm <martinm@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-12-26 23:40:22 +0000 |
---|---|---|
committer | martinm <martinm@f5534014-38df-0310-8fa8-9805f1628bb7> | 2010-12-26 23:40:22 +0000 |
commit | c05135599a7a8067d1daccc38529e27670f77e39 (patch) | |
tree | f4fe0439c6ae724c3d4f5f4816ddaa1ba5e3500b | |
parent | a3bbb7056c19a1571b56ce41ba3ea931998fc893 (diff) |
Only a new transmission grant should end a Scheduling Request.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@35268 f5534014-38df-0310-8fa8-9805f1628bb7
-rw-r--r-- | epan/dissectors/packet-mac-lte.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/epan/dissectors/packet-mac-lte.c b/epan/dissectors/packet-mac-lte.c index f4b158280b..e0f5afac83 100644 --- a/epan/dissectors/packet-mac-lte.c +++ b/epan/dissectors/packet-mac-lte.c @@ -638,7 +638,6 @@ static guint mac_lte_rnti_hash_func(gconstpointer v) } - typedef enum ContentionResolutionStatus { NoMsg3, Msg3Match, @@ -674,6 +673,8 @@ static guint mac_lte_framenum_hash_func(gconstpointer v) /****************************************************************/ /* Keeping track of last DL frames per C-RNTI so can guess when */ /* there has been a HARQ retransmission */ +/* TODO: this should be simplified now that harq-id & ndi are */ +/* being logged! */ /* Could be bigger, but more than enough to flag suspected resends */ #define MAX_EXPECTED_PDU_LENGTH 2048 @@ -2097,8 +2098,10 @@ static void dissect_ulsch_or_dlsch(tvbuff_t *tvb, packet_info *pinfo, proto_tree TrackReportedULHARQResend(pinfo, tvb, offset, tree, p_mac_lte_info, retx_ti); } - /* For uplink grants, update SR status */ - if ((direction == DIRECTION_UPLINK) && global_mac_lte_track_sr) { + /* For uplink grants, update SR status. N.B. only newTx grant should stop SR */ + if ((direction == DIRECTION_UPLINK) && (p_mac_lte_info->reTxCount == 0) && + global_mac_lte_track_sr) { + TrackSRInfo(SR_Grant, pinfo, tree, tvb, p_mac_lte_info->rnti, NULL); } |