aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSylvain Munaut <tnt@246tNt.com>2019-09-01 23:56:41 +0200
committerSylvain Munaut <tnt@246tNt.com>2019-09-01 23:56:41 +0200
commitaa6b5d0ea41078391898a858897bb3954ba60cf9 (patch)
tree5939f2e64e1e020a9a6dced072ce41e9009ba8bb
parentbb0d535dca191bb7e213fcd4e186072193f1ad97 (diff)
packet-gmr1_rr: Update Request Reference IE to GMR-1 3G
Change-Id: I248ad927f4616d172f955fb70d1a6abc46960aae Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
-rw-r--r--epan/dissectors/packet-gmr1_rr.c33
1 files changed, 20 insertions, 13 deletions
diff --git a/epan/dissectors/packet-gmr1_rr.c b/epan/dissectors/packet-gmr1_rr.c
index 984a3bdd49..e82e01c564 100644
--- a/epan/dissectors/packet-gmr1_rr.c
+++ b/epan/dissectors/packet-gmr1_rr.c
@@ -52,7 +52,7 @@ enum gmr1_ie_rr_idx {
GMR1_IE_RR_CIPH_RESP, /* [4] 10.5.2.10 */
GMR1_IE_RR_L2_PSEUDO_LEN, /* [1] 11.5.2.19 */
GMR1_IE_RR_PAGE_MODE, /* [1] 11.5.2.26 */
- GMR1_IE_RR_REQ_REF, /* [1] 11.5.2.30 */
+ GMR1_IE_RR_REQ_REF, /* [3] 11.5.2.30 */
GMR1_IE_RR_CAUSE, /* [1] 11.5.2.31 */
GMR1_IE_RR_TIMING_OFS, /* [1] 11.5.2.40 */
GMR1_IE_RR_TMSI_PTMSI, /* [4] 10.5.2.42 */
@@ -95,7 +95,7 @@ static const value_string gmr1_ie_rr_strings[] = {
{ GMR1_IE_RR_PAGE_MODE,
"Page Mode" }, /* [1] 11.5.2.26 */
{ GMR1_IE_RR_REQ_REF,
- "Request Reference" }, /* [1] 11.5.2.30 */
+ "Request Reference" }, /* [3] 11.5.2.30 */
{ GMR1_IE_RR_CAUSE,
"RR Cause" }, /* [1] 11.5.2.31 */
{ GMR1_IE_RR_TIMING_OFS,
@@ -170,6 +170,7 @@ static int hf_rr_page_mode = -1;
static int hf_rr_page_mode_spare = -1;
static int hf_rr_req_ref_est_cause = -1;
static int hf_rr_req_ref_ra = -1;
+static int hf_rr_req_ref_retry = -1;
static int hf_rr_req_ref_fn = -1;
static int hf_rr_cause = -1;
static int hf_rr_timing_ofs_ti = -1;
@@ -411,7 +412,7 @@ GMR1_IE_FUNC(gmr1_ie_rr_page_mode)
return 1;
}
-/* [1] 11.5.2.30 - Request Reference */
+/* [3] 11.5.2.30 - Request Reference */
static const value_string rr_req_ref_est_cause_vals[] = {
{ 0, "MO call" },
{ 1, "In response to paging/alerting" },
@@ -420,7 +421,7 @@ static const value_string rr_req_ref_est_cause_vals[] = {
{ 4, "Supplementary/short message service" },
{ 5, "Position verification" },
{ 6, "Any other valid cause" },
- { 7, "Reserved" },
+ { 7, "Packet Switched Services" },
{ 0, NULL }
};
@@ -429,6 +430,7 @@ GMR1_IE_FUNC(gmr1_ie_rr_req_ref)
/* Establishement Cause + RA */
proto_tree_add_item(tree, hf_rr_req_ref_est_cause, tvb, offset, 1, ENC_BIG_ENDIAN);
proto_tree_add_item(tree, hf_rr_req_ref_ra, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_rr_req_ref_retry, tvb, offset, 1, ENC_BIG_ENDIAN);
offset++;
/* Frame number % 256 */
@@ -1218,7 +1220,7 @@ GMR1_MSG_FUNC(gmr1_rr_msg_imm_ass)
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_MES_INFO_FLG, NULL, ei_gmr1_missing_mandatory_element);
- /* Request Reference 1 (MES1) [1] 11.5.2.30 - M V 2 */
+ /* Request Reference 1 (MES1) [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES1", ei_gmr1_missing_mandatory_element);
/* GPS Discriminator [1] 11.5.2.101 - C V 2 */
@@ -1251,17 +1253,17 @@ GMR1_MSG_FUNC(gmr1_rr_msg_imm_ass)
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_POS_UPD_INFO, " - Dedicated Mode", ei_gmr1_missing_mandatory_element);
}
- /* Request Reference 2 (MES2) [1] 11.5.2.30 - C V 2 */
+ /* Request Reference 2 (MES2) [3] 11.5.2.30 - C V 2 */
if (mif & 0x10) {
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES2", ei_gmr1_missing_mandatory_element);
}
- /* Request Reference 3 (MES3) [1] 11.5.2.30 - C V 2 */
+ /* Request Reference 3 (MES3) [3] 11.5.2.30 - C V 2 */
if (mif & 0x20) {
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES3", ei_gmr1_missing_mandatory_element);
}
- /* Request Reference 4 (MES4) [1] 11.5.2.30 - C V 2 */
+ /* Request Reference 4 (MES4) [3] 11.5.2.30 - C V 2 */
if (mif & 0x40) {
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES4", ei_gmr1_missing_mandatory_element);
}
@@ -1279,7 +1281,7 @@ GMR1_MSG_FUNC(gmr1_rr_msg_imm_ass_rej_1)
GMR1_MSG_FUNC_BEGIN
- /* Request Reference 1 (MES1) [1] 11.5.2.30 - M V 2 */
+ /* Request Reference 1 (MES1) [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES1", ei_gmr1_missing_mandatory_element);
/* GPS Discriminator [1] 11.5.2.101 - M V 2 */
@@ -1295,19 +1297,19 @@ GMR1_MSG_FUNC(gmr1_rr_msg_imm_ass_rej_1)
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_WAIT_IND, " - MES1", ei_gmr1_missing_mandatory_element);
}
- /* Request Reference 2 (MES2) [1] 11.5.2.30 - M V 2 */
+ /* Request Reference 2 (MES2) [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES2", ei_gmr1_missing_mandatory_element);
/* Wait Indication 2 (MES2) [4] 10.5.2.43 - M V 1 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_WAIT_IND, " - MES2", ei_gmr1_missing_mandatory_element);
- /* Request Reference 3 (MES3) [1] 11.5.2.30 - M V 2 */
+ /* Request Reference 3 (MES3) [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES3", ei_gmr1_missing_mandatory_element);
/* Wait Indication 3 (MES3) [4] 10.5.2.43 - M V 1 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_WAIT_IND, " - MES3", ei_gmr1_missing_mandatory_element);
- /* Request Reference 4 (MES4) [1] 11.5.2.30 - M V 2 */
+ /* Request Reference 4 (MES4) [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, " - MES4", ei_gmr1_missing_mandatory_element);
/* Wait Indication 4 (MES4) [4] 10.5.2.43 - M V 1 */
@@ -1337,7 +1339,7 @@ GMR1_MSG_FUNC(gmr1_rr_msg_pos_verif_notify)
{
GMR1_MSG_FUNC_BEGIN
- /* Request Reference [1] 11.5.2.30 - M V 2 */
+ /* Request Reference [3] 11.5.2.30 - M V 2 */
ELEM_MAND_V(GMR1_IE_RR, GMR1_IE_RR_REQ_REF, NULL, ei_gmr1_missing_mandatory_element);
/* GPS Discriminator [1] 11.5.2.101 - M V 2 */
@@ -1987,6 +1989,11 @@ proto_register_gmr1_rr(void)
FT_UINT8, BASE_HEX, NULL, 0x1f,
NULL, HFILL }
},
+ { &hf_rr_req_ref_retry,
+ { "Retry Counter (chan req type 3)", "gmr1.rr.req_ref.retry",
+ FT_UINT8, BASE_HEX, NULL, 0x03,
+ NULL, HFILL }
+ },
{ &hf_rr_req_ref_fn,
{ "Frame Number mod 256", "gmr1.rr.req_ref.fn",
FT_UINT8, BASE_DEC, NULL, 0x00,