aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-gsm_a_bssmap.c
diff options
context:
space:
mode:
authorMikhail Koreshkov <drkor@hotbox.ru>2015-05-30 11:13:04 +0300
committerPascal Quantin <pascal.quantin@gmail.com>2015-05-31 17:35:19 +0000
commit7da74dff21d1e41b02cf057fe0fe4c3ea6e9d88d (patch)
tree76c5eafe008171b3122c4aa42360714f46089b71 /epan/dissectors/packet-gsm_a_bssmap.c
parentd555aa759b9fb3199eb5822c20c86ed80c4608d3 (diff)
VGCS/VBS Assignment Request: Add param dissector
Function for dissect Assignment Requirement parameter Change-Id: I0ed8748913e5fe3dd509a78a5285520f6f63abac Reviewed-on: https://code.wireshark.org/review/8700 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-gsm_a_bssmap.c')
-rw-r--r--epan/dissectors/packet-gsm_a_bssmap.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/epan/dissectors/packet-gsm_a_bssmap.c b/epan/dissectors/packet-gsm_a_bssmap.c
index ed6f2ee96c..a0c8e369c8 100644
--- a/epan/dissectors/packet-gsm_a_bssmap.c
+++ b/epan/dissectors/packet-gsm_a_bssmap.c
@@ -607,6 +607,7 @@ static int hf_gsm_a_bssmap_location_type_location_information = -1;
static int hf_gsm_a_bssmap_location_type_positioning_method = -1;
static int hf_gsm_a_bssmap_chan_type_extension = -1;
static int hf_gsm_a_bssmap_cause_extension = -1;
+static int hf_gsm_a_bssmap_ass_req = -1;
static int hf_gsm_a_bssmap_emlpp_prio = -1;
static int hf_gsm_a_bssmap_rip = -1;
static int hf_gsm_a_bssmap_rtd = -1;
@@ -2681,16 +2682,18 @@ be_speech_ver(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 o
/*
* 3.2.2.52 Assignment Requirement
*/
+static const value_string gsm_a_bssmap_assignment_requirement_vals[] = {
+ { 0x00, "Delay allowed" },
+ { 0x01, "Immediate and the resources shall not be de-allocated until the end of the call (channel establishment on demand forbidden by the MSC)" },
+ { 0x02, "Immediate and the resources may further be de-allocated by the BSS (channel establishment on demand permitted by the MSC)." },
+ { 0, NULL }
+};
static guint16
-be_ass_req(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len _U_, gchar *add_string _U_, int string_len _U_)
+be_ass_req(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len _U_, gchar *add_string _U_, int string_len _U_)
{
- guint32 curr_offset;
+ proto_tree_add_item(tree, hf_gsm_a_bssmap_ass_req, tvb, offset, 1, ENC_BIG_ENDIAN);
- curr_offset = offset;
-
- proto_tree_add_expert(tree, pinfo, &ei_gsm_a_bssmap_not_decoded_yet, tvb, curr_offset, len);
-
- return(len);
+ return 1;
}
/*
* 3.2.2.53 (void)
@@ -7705,6 +7708,11 @@ proto_register_gsm_a_bssmap(void)
FT_BOOLEAN, 8, TFS(&bssmap_cause_extension_value), 0x80,
NULL, HFILL }
},
+ { &hf_gsm_a_bssmap_ass_req,
+ { "Assignment Requirement", "gsm_a.bssmap.assignment_requirement",
+ FT_UINT8, BASE_HEX, VALS(gsm_a_bssmap_assignment_requirement_vals), 0x0,
+ NULL, HFILL }
+ },
{ &hf_gsm_a_bssmap_emlpp_prio,
{ "eMLPP Priority", "gsm_a.bssmap.emlpp_priority",
FT_UINT8, BASE_HEX, VALS(gsm_a_bssmap_call_priority_vals), 0x07,