From 900695547b096b1be34fb58bea98c0474e9c72ab Mon Sep 17 00:00:00 2001 From: "S. Shapira" Date: Fri, 12 May 2017 00:03:29 +0300 Subject: UMTS Iub: Resolve U-RNTI for C-RNTI This commit includes logic used to store pairs of C-RNTIs and U-RNTIs based on allocations in RRC and logic to retrive those when encountering C-RNTIs in the MAC header for DCCH over FACH/RACH. Change-Id: I629ab061b7a73416e5730a980480b81a1aaade11 Reviewed-on: https://code.wireshark.org/review/21607 Petri-Dish: Anders Broman Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- epan/dissectors/packet-umts_fp.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'epan/dissectors/packet-umts_fp.h') diff --git a/epan/dissectors/packet-umts_fp.h b/epan/dissectors/packet-umts_fp.h index 39239930a6..7bac45bd51 100644 --- a/epan/dissectors/packet-umts_fp.h +++ b/epan/dissectors/packet-umts_fp.h @@ -137,6 +137,28 @@ typedef struct } fp_dch_channel_info_t; +typedef struct fp_crnti_allocation_info_t +{ + guint32 alloc_frame_number; /* Frame where C-RNTI was allocated */ + guint32 urnti; /* The U-RNTI to which the C-RNTI was allocated*/ +} fp_crnti_allocation_info_t; + +/* Used in the 'channel_specific_info' field for FACH channels */ +typedef struct fp_fach_channel_info_t +{ + /* Key: (guint32) C-RNTI */ + /* Value: (fp_crnti_allocation_info_t) U-RNTI allocation info */ + wmem_tree_t* crnti_to_urnti_map; /* Mapping between C-RNTIs and U-RNTIs using them in this FACH */ +} fp_fach_channel_info_t; + +/* Used in the 'channel_specific_info' field for RACH channels */ +typedef struct fp_rach_channel_info_t +{ + /* Key: (guint32) C-RNTI */ + /* Value: (fp_crnti_allocation_info_t) U-RNTI allocation info */ + wmem_tree_t* crnti_to_urnti_map; /* Mapping between C-RNTIs and U-RNTIs using them in this RACH */ +} fp_rach_channel_info_t; + typedef struct { @@ -150,6 +172,8 @@ typedef struct gint com_context_id; /* Identifies a single UE in all NBAP messages */ guint32 scrambling_code; /* Identifies a single UE's radio transmissions in the UTRAN */ + void* channel_specific_info; /* Extended channel info based on the channel type */ + /* For PCH channel */ gint paging_indications; -- cgit v1.2.3