aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--asn1/sbc-ap/sbc-ap.cnf24
-rw-r--r--epan/dissectors/packet-sbc-ap.c67
2 files changed, 30 insertions, 61 deletions
diff --git a/asn1/sbc-ap/sbc-ap.cnf b/asn1/sbc-ap/sbc-ap.cnf
index 2cb0a74e9e..ac364c17e5 100644
--- a/asn1/sbc-ap/sbc-ap.cnf
+++ b/asn1/sbc-ap/sbc-ap.cnf
@@ -23,6 +23,8 @@ TBCD-STRING
#.OMIT_ASSIGNMENT
# Get rid of unused code warnings
+ProtocolIE-ContainerList
+Presence
#.TYPE_RENAME
@@ -77,16 +79,16 @@ ProtocolIE-Field/value ie_field_value
# SEQUENCE (SIZE (lowerBound..upperBound)) OF
# ProtocolIE-Container {{IEsSetParam}}
-#.FN_PARS ProtocolIE-ContainerList
-MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
-MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
-#.FN_HDR ProtocolIE-ContainerList
- static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
- { "lowerBound", ASN1_PAR_INTEGER },
- { "upperBound", ASN1_PAR_INTEGER },
- { NULL, 0 }
- };
- asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
+# FN_PARS ProtocolIE-ContainerList
+#MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
+#MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
+# FN_HDR ProtocolIE-ContainerList
+# static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
+# { "lowerBound", ASN1_PAR_INTEGER },
+# { "upperBound", ASN1_PAR_INTEGER },
+# { NULL, 0 }
+# };
+# asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
#.END
#ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, SBC-AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
# SEQUENCE (SIZE (lowerBound..upperBound)) OF
@@ -168,7 +170,7 @@ Warning-Security-Information N sbc_ap.ies id-Warning-Security-Information
Warning-Type N sbc_ap.ies id-Warning-Type
Omc-Id N sbc_ap.ies id-Omc-Id
Concurrent-Warning-Message-Indicator N sbc_ap.ies id-Concurrent-Warning-Message-Indicator
-Repetition-Period N sbc_ap.ies id-Extended-Repetition-Period
+Extended-Repetition-Period N sbc_ap.ies id-Extended-Repetition-Period
#SBC-AP-ELEMENTARY-PROCEDURE
Write-Replace-Warning-Request N sbc_ap.proc.imsg id-Write-Replace-Warning
diff --git a/epan/dissectors/packet-sbc-ap.c b/epan/dissectors/packet-sbc-ap.c
index 7ab8053da2..229c776f94 100644
--- a/epan/dissectors/packet-sbc-ap.c
+++ b/epan/dissectors/packet-sbc-ap.c
@@ -116,6 +116,7 @@ static int hf_sbc_ap_Cause_PDU = -1; /* Cause */
static int hf_sbc_ap_Concurrent_Warning_Message_Indicator_PDU = -1; /* Concurrent_Warning_Message_Indicator */
static int hf_sbc_ap_Criticality_Diagnostics_PDU = -1; /* Criticality_Diagnostics */
static int hf_sbc_ap_Data_Coding_Scheme_PDU = -1; /* Data_Coding_Scheme */
+static int hf_sbc_ap_Extended_Repetition_Period_PDU = -1; /* Extended_Repetition_Period */
static int hf_sbc_ap_List_of_TAIs_PDU = -1; /* List_of_TAIs */
static int hf_sbc_ap_Message_Identifier_PDU = -1; /* Message_Identifier */
static int hf_sbc_ap_Number_of_Broadcasts_Requested_PDU = -1; /* Number_of_Broadcasts_Requested */
@@ -135,7 +136,6 @@ static int hf_sbc_ap_ProtocolIE_Container_item = -1; /* ProtocolIE_Field */
static int hf_sbc_ap_id = -1; /* ProtocolIE_ID */
static int hf_sbc_ap_criticality = -1; /* Criticality */
static int hf_sbc_ap_ie_field_value = -1; /* T_ie_field_value */
-static int hf_sbc_ap_ProtocolIE_ContainerList_item = -1; /* ProtocolIE_Container */
static int hf_sbc_ap_ProtocolExtensionContainer_item = -1; /* ProtocolExtensionField */
static int hf_sbc_ap_ext_id = -1; /* ProtocolExtensionID */
static int hf_sbc_ap_extensionValue = -1; /* T_extensionValue */
@@ -179,7 +179,6 @@ static int ett_sbc_ap = -1;
#line 1 "../../asn1/sbc-ap/packet-sbc-ap-ett.c"
static gint ett_sbc_ap_ProtocolIE_Container = -1;
static gint ett_sbc_ap_ProtocolIE_Field = -1;
-static gint ett_sbc_ap_ProtocolIE_ContainerList = -1;
static gint ett_sbc_ap_ProtocolExtensionContainer = -1;
static gint ett_sbc_ap_ProtocolExtensionField = -1;
static gint ett_sbc_ap_Criticality_Diagnostics = -1;
@@ -251,23 +250,6 @@ dissect_sbc_ap_Criticality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
}
-static const value_string sbc_ap_Presence_vals[] = {
- { 0, "optional" },
- { 1, "conditional" },
- { 2, "mandatory" },
- { 0, NULL }
-};
-
-
-static int
-dissect_sbc_ap_Presence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
- offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
- 3, NULL, FALSE, 0, NULL);
-
- return offset;
-}
-
-
static const value_string sbc_ap_ProcedureCode_vals[] = {
{ id_Write_Replace_Warning, "id-Write-Replace-Warning" },
{ id_Stop_Warning, "id-Stop-Warning" },
@@ -280,7 +262,7 @@ dissect_sbc_ap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 255U, &ProcedureCode, FALSE);
-#line 62 "../../asn1/sbc-ap/sbc-ap.cnf"
+#line 64 "../../asn1/sbc-ap/sbc-ap.cnf"
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
val_to_str(ProcedureCode, sbc_ap_ProcedureCode_vals,
@@ -332,7 +314,7 @@ dissect_sbc_ap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 65535U, &ProtocolIE_ID, FALSE);
-#line 45 "../../asn1/sbc-ap/sbc-ap.cnf"
+#line 47 "../../asn1/sbc-ap/sbc-ap.cnf"
if (tree) {
proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(sbc_ap_ProtocolIE_ID_vals), "unknown (%d)"));
}
@@ -398,28 +380,6 @@ dissect_sbc_ap_ProtocolIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_
}
-static const per_sequence_t ProtocolIE_ContainerList_sequence_of[1] = {
- { &hf_sbc_ap_ProtocolIE_ContainerList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_sbc_ap_ProtocolIE_Container },
-};
-
-static int
-dissect_sbc_ap_ProtocolIE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 84 "../../asn1/sbc-ap/sbc-ap.cnf"
- static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
- { "lowerBound", ASN1_PAR_INTEGER },
- { "upperBound", ASN1_PAR_INTEGER },
- { NULL, 0 }
- };
- asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
-
- offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
- ett_sbc_ap_ProtocolIE_ContainerList, ProtocolIE_ContainerList_sequence_of,
- asn1_param_get_integer(actx,"lowerBound"), asn1_param_get_integer(actx,"upperBound"), FALSE);
-
- return offset;
-}
-
-
static int
dissect_sbc_ap_T_extensionValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -596,7 +556,7 @@ dissect_sbc_ap_Data_Coding_Scheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
static int
dissect_sbc_ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 100 "../../asn1/sbc-ap/sbc-ap.cnf"
+#line 102 "../../asn1/sbc-ap/sbc-ap.cnf"
tvbuff_t *parameter_tvb=NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -1041,6 +1001,14 @@ static int dissect_Data_Coding_Scheme_PDU(tvbuff_t *tvb _U_, packet_info *pinfo
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_Extended_Repetition_Period_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_sbc_ap_Extended_Repetition_Period(tvb, offset, &asn1_ctx, tree, hf_sbc_ap_Extended_Repetition_Period_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_List_of_TAIs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -1246,6 +1214,10 @@ void proto_register_sbc_ap(void) {
{ "Data-Coding-Scheme", "sbc-ap.Data_Coding_Scheme",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_sbc_ap_Extended_Repetition_Period_PDU,
+ { "Extended-Repetition-Period", "sbc-ap.Extended_Repetition_Period",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_sbc_ap_List_of_TAIs_PDU,
{ "List-of-TAIs", "sbc-ap.List_of_TAIs",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -1322,10 +1294,6 @@ void proto_register_sbc_ap(void) {
{ "value", "sbc-ap.value",
FT_NONE, BASE_NONE, NULL, 0,
"T_ie_field_value", HFILL }},
- { &hf_sbc_ap_ProtocolIE_ContainerList_item,
- { "ProtocolIE-Container", "sbc-ap.ProtocolIE_Container",
- FT_UINT32, BASE_DEC, NULL, 0,
- NULL, HFILL }},
{ &hf_sbc_ap_ProtocolExtensionContainer_item,
{ "ProtocolExtensionField", "sbc-ap.ProtocolExtensionField",
FT_NONE, BASE_NONE, NULL, 0,
@@ -1463,7 +1431,6 @@ void proto_register_sbc_ap(void) {
#line 1 "../../asn1/sbc-ap/packet-sbc-ap-ettarr.c"
&ett_sbc_ap_ProtocolIE_Container,
&ett_sbc_ap_ProtocolIE_Field,
- &ett_sbc_ap_ProtocolIE_ContainerList,
&ett_sbc_ap_ProtocolExtensionContainer,
&ett_sbc_ap_ProtocolExtensionField,
&ett_sbc_ap_Criticality_Diagnostics,
@@ -1537,7 +1504,7 @@ proto_reg_handoff_sbc_ap(void)
dissector_add_uint("sbc_ap.ies", id_Warning_Type, new_create_dissector_handle(dissect_Warning_Type_PDU, proto_sbc_ap));
dissector_add_uint("sbc_ap.ies", id_Omc_Id, new_create_dissector_handle(dissect_Omc_Id_PDU, proto_sbc_ap));
dissector_add_uint("sbc_ap.ies", id_Concurrent_Warning_Message_Indicator, new_create_dissector_handle(dissect_Concurrent_Warning_Message_Indicator_PDU, proto_sbc_ap));
- dissector_add_uint("sbc_ap.ies", id_Extended_Repetition_Period, new_create_dissector_handle(dissect_Repetition_Period_PDU, proto_sbc_ap));
+ dissector_add_uint("sbc_ap.ies", id_Extended_Repetition_Period, new_create_dissector_handle(dissect_Extended_Repetition_Period_PDU, proto_sbc_ap));
dissector_add_uint("sbc_ap.proc.imsg", id_Write_Replace_Warning, new_create_dissector_handle(dissect_Write_Replace_Warning_Request_PDU, proto_sbc_ap));
dissector_add_uint("sbc_ap.proc.sout", id_Write_Replace_Warning, new_create_dissector_handle(dissect_Write_Replace_Warning_Response_PDU, proto_sbc_ap));
dissector_add_uint("sbc_ap.proc.imsg", id_Stop_Warning, new_create_dissector_handle(dissect_Stop_Warning_Request_PDU, proto_sbc_ap));