diff options
-rw-r--r-- | epan/dissectors/packet-gsm_rlcmac.c | 24 | ||||
-rw-r--r-- | epan/dissectors/packet-gsm_rlcmac.h | 6 |
2 files changed, 20 insertions, 10 deletions
diff --git a/epan/dissectors/packet-gsm_rlcmac.c b/epan/dissectors/packet-gsm_rlcmac.c index a1ca59b11a..e48228a0b5 100644 --- a/epan/dissectors/packet-gsm_rlcmac.c +++ b/epan/dissectors/packet-gsm_rlcmac.c @@ -2815,14 +2815,24 @@ CSN_DESCR_BEGIN(MS_RA_capability_value_t) M_CHOICE (MS_RA_capability_value_t, IndexOfAccTech, MS_RA_capability_value_Choice, ElementsOf(MS_RA_capability_value_Choice), &hf_ms_ra_capability_value_choice), CSN_DESCR_END (MS_RA_capability_value_t) +/* + * TS 24.008 section 10.5.5.12a "MS Radio Access capability". + * This one would be used to decode for instance MS RA Capabilities IE SGSN->MS on the PCU. + * However, an ad-hoc decoder is used in this scenario in wireshark: See packet-gsm_a_gm.c de_gmm_ms_radio_acc_cap(). + */ +#if 0 static const CSN_DESCR_BEGIN (MS_Radio_Access_capability_t) -/*Will be done in the main routines:*/ -/*M_UINT (MS_Radio_Access_capability_t, IEI, 8, &hf_ms_radio_access_capability_iei),*/ -/*M_UINT (MS_Radio_Access_capability_t, Length, 8, &hf_ms_radio_access_capability_length),*/ - M_REC_TARRAY_1(MS_Radio_Access_capability_t, MS_RA_capability_value, MS_RA_capability_value_t, Count_MS_RA_capability_value, &hf_ms_ra_capability_value), + M_PADDING_BITS(MS_Radio_Access_capability_t, &hf_padding), CSN_DESCR_END (MS_Radio_Access_capability_t) +#endif + +/* TS44.060 section 12.30 "MS Radio Access Capability 2". Same as above but without spare bits */ +static const +CSN_DESCR_BEGIN (MS_Radio_Access_capability2_t) + M_REC_TARRAY_1(MS_Radio_Access_capability_t, MS_RA_capability_value, MS_RA_capability_value_t, Count_MS_RA_capability_value, &hf_ms_ra_capability_value), +CSN_DESCR_END (MS_Radio_Access_capability2_t) /* < MS Classmark 3 IE > */ #if 0 @@ -3198,8 +3208,8 @@ CSN_DESCR_BEGIN (Packet_Resource_Request_t) M_TYPE (Packet_Resource_Request_t, ID, PacketResourceRequestID_t), - M_NEXT_EXIST (Packet_Resource_Request_t, Exist_MS_Radio_Access_capability, 1, &hf_ms_radio_access_capability_exist), - M_TYPE (Packet_Resource_Request_t, MS_Radio_Access_capability, MS_Radio_Access_capability_t), + M_NEXT_EXIST (Packet_Resource_Request_t, Exist_MS_Radio_Access_capability2, 1, &hf_ms_radio_access_capability_exist), + M_TYPE (Packet_Resource_Request_t, MS_Radio_Access_capability2, MS_Radio_Access_capability2_t), M_TYPE (Packet_Resource_Request_t, Channel_Request_Description, Channel_Request_Description_t), @@ -6895,7 +6905,7 @@ CSN_DESCR_BEGIN (Additional_MS_Rad_Access_Cap_t) /* Mac header */ M_TYPE (Additional_MS_Rad_Access_Cap_t, ID, AdditionalMsRadAccessCapID_t), - M_TYPE (Additional_MS_Rad_Access_Cap_t, MS_Radio_Access_capability, MS_Radio_Access_capability_t), + M_TYPE (Additional_MS_Rad_Access_Cap_t, MS_Radio_Access_capability2, MS_Radio_Access_capability2_t), M_PADDING_BITS (Additional_MS_Rad_Access_Cap_t, &hf_padding), CSN_DESCR_END (Additional_MS_Rad_Access_Cap_t) diff --git a/epan/dissectors/packet-gsm_rlcmac.h b/epan/dissectors/packet-gsm_rlcmac.h index bd64e1b330..2b50c9c9f7 100644 --- a/epan/dissectors/packet-gsm_rlcmac.h +++ b/epan/dissectors/packet-gsm_rlcmac.h @@ -1594,8 +1594,8 @@ typedef struct PacketResourceRequestID_t ID; - guint8 Exist_MS_Radio_Access_capability; - MS_Radio_Access_capability_t MS_Radio_Access_capability; + guint8 Exist_MS_Radio_Access_capability2; + MS_Radio_Access_capability_t MS_Radio_Access_capability2; Channel_Request_Description_t Channel_Request_Description; @@ -4949,7 +4949,7 @@ typedef struct guint8 R; AdditionalMsRadAccessCapID_t ID; - MS_Radio_Access_capability_t MS_Radio_Access_capability; + MS_Radio_Access_capability_t MS_Radio_Access_capability2; } Additional_MS_Rad_Access_Cap_t; /* End ADDITIONAL MS RADIO ACCESS CAPABILITIES */ |