aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/rua/rua.cnf
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1/rua/rua.cnf')
-rw-r--r--epan/dissectors/asn1/rua/rua.cnf147
1 files changed, 147 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/rua/rua.cnf b/epan/dissectors/asn1/rua/rua.cnf
new file mode 100644
index 0000000000..f173d7d70c
--- /dev/null
+++ b/epan/dissectors/asn1/rua/rua.cnf
@@ -0,0 +1,147 @@
+# rua.cnf
+# rua conformation file
+# Copyright 2010 Neil Piercy, ip.access Limited <Neil.Piercy@ipaccess.com>
+
+#.OPT
+PER
+ALIGNED
+#.END
+
+#.PDU
+RUA-PDU
+
+#.MAKE_ENUM
+ProtocolIE-ID
+ProcedureCode
+
+#.TYPE_RENAME
+ProtocolIE-Field/value ProtocolIE_Field_value
+PrivateIE-Field/value PrivateIE_Field_value
+InitiatingMessage/value InitiatingMessage_value
+SuccessfulOutcome/value SuccessfulOutcome_value
+UnsuccessfulOutcome/value UnsuccessfulOutcome_value
+
+#.FIELD_RENAME
+InitiatingMessage/value initiatingMessagevalue
+UnsuccessfulOutcome/value unsuccessfulOutcome_value
+SuccessfulOutcome/value successfulOutcome_value
+PrivateIE-Field/value private_value
+ProtocolIE-Field/value ie_field_value
+ProtocolIE-Field/id protocol_ie_field_id
+PrivateIE-Field/id private_ie_field_id
+
+#.OMIT_ASSIGNMENT
+Presence
+ProtocolIE-ContainerList
+ProtocolIE-Single-Container
+#.END
+
+#.FN_PARS ProtocolIE-ID VAL_PTR = &ProtocolIE_ID
+#.FN_FTR ProtocolIE-ID
+ if (tree) {
+ proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(rua_ProtocolIE_ID_vals), "unknown (%d)"));
+ }
+#.END
+
+#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
+
+#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
+
+#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
+#.FN_FTR ProcedureCode
+ if (strcmp(val_to_str(ProcedureCode, rua_ProcedureCode_vals, "Unknown"), "Unknown") == 0) {
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "Unknown Message ");
+ } /* Known Procedures should be included below and broken out as ELEMENTARY names to avoid confusion */
+
+#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
+
+#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue
+
+#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
+
+#.FN_BODY Connect
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "CONNECT ");
+%(DEFAULT_BODY)s
+
+#.FN_BODY DirectTransfer
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "DIRECT_TRANSFER ");
+%(DEFAULT_BODY)s
+
+#.FN_BODY Disconnect
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "DISCONNECT ");
+%(DEFAULT_BODY)s
+
+#.FN_BODY ConnectionlessTransfer
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "CONNECTIONLESS_TRANSFER ");
+%(DEFAULT_BODY)s
+
+#.FN_BODY ErrorIndication
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "ERROR_INDICATION ");
+ col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect info from CriticalityDiagnostics decodes */
+%(DEFAULT_BODY)s
+
+#.FN_BODY PrivateMessage
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "PRIVATE_MESSAGE ");
+%(DEFAULT_BODY)s
+
+#.FN_BODY RANAP-Message VAL_PTR = &ranap_message_tvb
+ tvbuff_t *ranap_message_tvb=NULL;
+%(DEFAULT_BODY)s
+ if ((tvb_reported_length(ranap_message_tvb)>0)&&(ranap_handle)) { /* RUA has a RANAP-PDU */
+ col_set_str(actx->pinfo->cinfo, COL_INFO,
+ "(RUA) "); /* Set info to (RUA) to make room for RANAP */
+ col_set_fence(actx->pinfo->cinfo, COL_INFO);
+ call_dissector(ranap_handle,ranap_message_tvb,%(ACTX)s->pinfo, proto_tree_get_root(tree));
+ }
+#.END
+
+
+#.ASSIGN_VALUE_TO_TYPE # RUA ASN.1 does not have constants assigned to types,
+# ProcedureCode
+id-Connect ProcedureCode
+id-DirectTransfer ProcedureCode
+id-Disconnect ProcedureCode
+id-ConnectionlessTransfer ProcedureCode
+id-ErrorIndication ProcedureCode
+id-privateMessage ProcedureCode
+
+# ProtocolIE-ID
+id-Cause ProtocolIE-ID
+id-CriticalityDiagnostics ProtocolIE-ID
+id-Context-ID ProtocolIE-ID
+id-RANAP-Message ProtocolIE-ID
+id-IntraDomainNasNodeSelector ProtocolIE-ID
+id-Establishment-Cause ProtocolIE-ID
+id-CN-DomainIndicator ProtocolIE-ID
+#.END
+
+
+#.REGISTER
+
+#RUA-PROTOCOL-IES
+Cause N rua.ies id-Cause
+CriticalityDiagnostics N rua.ies id-CriticalityDiagnostics
+Context-ID N rua.ies id-Context-ID
+RANAP-Message N rua.ies id-RANAP-Message
+IntraDomainNasNodeSelector N rua.ies id-IntraDomainNasNodeSelector
+Establishment-Cause N rua.ies id-Establishment-Cause
+CN-DomainIndicator N rua.ies id-CN-DomainIndicator
+
+#RUA-PROTOCOL-EXTENSION
+CSGMembershipStatus N rua.extension id-CSGMembershipStatus
+
+#RUA-ELEMENTARY-PROCEDURE
+Connect N rua.proc.imsg id-Connect
+DirectTransfer N rua.proc.imsg id-DirectTransfer
+Disconnect N rua.proc.imsg id-Disconnect
+ConnectionlessTransfer N rua.proc.imsg id-ConnectionlessTransfer
+ErrorIndication N rua.proc.imsg id-ErrorIndication
+PrivateMessage N rua.proc.imsg id-privateMessage
+#.END