aboutsummaryrefslogtreecommitdiffstats
path: root/asn1
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2006-05-03 18:49:37 +0000
committerAnders Broman <anders.broman@ericsson.com>2006-05-03 18:49:37 +0000
commit2670be58599d3d909fcfb5ecf2815cd1a297755e (patch)
treeb1f99a37426a97778c63c8b994f4eeb59dfcf635 /asn1
parentc18467254d0cd353d79b77d7d1124b7e564ef4e2 (diff)
Fix Bug 916 PurgeMS decoding error in GSM MAP.
Get rid of som unused ASN1 code and some asn2eth warnings. svn path=/trunk/; revision=18084
Diffstat (limited to 'asn1')
-rw-r--r--asn1/gsmmap/GSMMAP.asn17
-rw-r--r--asn1/gsmmap/gsmmap.cnf2
-rw-r--r--asn1/gsmmap/packet-gsm_map-template.c20
3 files changed, 18 insertions, 21 deletions
diff --git a/asn1/gsmmap/GSMMAP.asn b/asn1/gsmmap/GSMMAP.asn
index 1d718ddc7c..80706df41a 100644
--- a/asn1/gsmmap/GSMMAP.asn
+++ b/asn1/gsmmap/GSMMAP.asn
@@ -5194,11 +5194,14 @@ ExtensibleCallBarredParam ::= SEQUENCE {
unauthorisedMessageOriginator [1] NULL OPTIONAL
}
+--cug-Reject ERROR
+-- PARAMETER
CUG-RejectParam ::= SEQUENCE {
cug-RejectCause CUG-RejectCause OPTIONAL,
extensionContainer ExtensionContainer OPTIONAL,
...
}
+-- ::= localValue : 15
CUG-RejectCause ::= ENUMERATED {
incomingCallsBarredWithinCUG (0),
@@ -5216,20 +5219,6 @@ Or-NotAllowedParam ::= SEQUENCE {
-- ::= localValue : 48
-
---cug-Reject ERROR
--- PARAMETER
-Cug-RejectParam ::= SEQUENCE {
- cug-RejectCause ENUMERATED {
- incomingCallsBarredWithinCUG ( 0 ),
- subscriberNotMemberOfCUG ( 1 ),
- requestedBasicServiceViolatesCUG-Constraints ( 5 ),
- calledPartySS-InteractionViolation ( 7 ) } OPTIONAL,
- extensionContainer ExtensionContainer OPTIONAL,
- ... }
--- ::= localValue : 15
-
-
--noGroupCallNumberAvailable ERROR
-- PARAMETER
NoGroupCallNbParam ::= SEQUENCE {
diff --git a/asn1/gsmmap/gsmmap.cnf b/asn1/gsmmap/gsmmap.cnf
index 29e9b94632..f2128a7f8a 100644
--- a/asn1/gsmmap/gsmmap.cnf
+++ b/asn1/gsmmap/gsmmap.cnf
@@ -119,6 +119,8 @@ Ext-ForwardingInfoFor-CSE/forwardingFeatureList ext-forwardingFeatureList
Ext-ForwFeature/noReplyConditionTime ext-noReplyConditionTime
ModificationRequestFor-CF-Info/noReplyConditionTime ext-noReplyConditionTime
ReturnError/errorCode returnErrorCode
+ERROR/localValue localErrorcode
+OPERATION/localValue operationLocalvalue
#----------------------------------------------------------------------------------------
#.PDU
Component
diff --git a/asn1/gsmmap/packet-gsm_map-template.c b/asn1/gsmmap/packet-gsm_map-template.c
index 9e00ca6922..e45643ec20 100644
--- a/asn1/gsmmap/packet-gsm_map-template.c
+++ b/asn1/gsmmap/packet-gsm_map-template.c
@@ -769,16 +769,21 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
offset=dissect_gsm_map_ReadyForSM_Arg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 67: /*purgeMS*/
- offset=dissect_gsm_map_PurgeMSArg(FALSE, tvb, offset, pinfo, tree, -1);
+ /* XXX asn2eth can not yet handle tagged assignment yes so this
+ * XXX is some conformance file magic to work around that bug
+ */
+ offset = get_ber_identifier(tvb, offset, &bug_class, &bug_pc, &bug_tag);
+ offset = get_ber_length(tree, tvb, offset, &bug_len1, &bug_ind_field);
+ offset=dissect_gsm_map_PurgeMSArg(TRUE, tvb, offset, pinfo, tree, -1);
break;
case 68: /*prepareHandover*/
octet = tvb_get_guint8(tvb,0) & 0xf;
if ( octet == 3){ /* This is a V3 message ??? */
- /* XXX asn2eth can not yet handle tagged assignment yes so this
- * XXX is some conformance file magic to work around that bug
- */
- offset = get_ber_identifier(tvb, offset, &bug_class, &bug_pc, &bug_tag);
- offset = get_ber_length(tree, tvb, offset, &bug_len1, &bug_ind_field);
+ /* XXX asn2eth can not yet handle tagged assignment yes so this
+ * XXX is some conformance file magic to work around that bug
+ */
+ offset = get_ber_identifier(tvb, offset, &bug_class, &bug_pc, &bug_tag);
+ offset = get_ber_length(tree, tvb, offset, &bug_len1, &bug_ind_field);
offset=dissect_gsm_map_PrepareHO_ArgV3(TRUE, tvb, offset, pinfo, tree, -1);
}else{
offset=dissect_gsm_map_PrepareHO_Arg(FALSE, tvb, offset, pinfo, tree, -1);
@@ -1655,7 +1660,8 @@ void proto_reg_handoff_gsm_map(void) {
register_ber_oid_dissector_handle("0.4.0.0.1.0.25.3", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) shortMsgMT-Relay(25) version3(3)" );
register_ber_oid_dissector_handle("0.4.0.0.1.0.25.2", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) shortMsgMT-Relay(25) version2(2)" );
register_ber_oid_dissector_handle("0.4.0.0.1.0.26.2", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) imsiRetrieval(26) version2(2)" );
- register_ber_oid_dissector_handle("0.4.0.0.1.0.25.1", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) msPurging(27) version2(2)" );
+ register_ber_oid_dissector_handle("0.4.0.0.1.0.27.2", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) msPurging(27) version2(2)" );
+ register_ber_oid_dissector_handle("0.4.0.0.1.0.27.3", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) msPurging(27) version3(3)" );
register_ber_oid_dissector_handle("0.4.0.0.1.0.29.3", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) anyTimeInfoEnquiry(29) version3(3)" );
register_ber_oid_dissector_handle("0.4.0.0.1.0.31.2", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) oupCallControl(31) version3(3)" );
register_ber_oid_dissector_handle("0.4.0.0.1.0.32.3", map_handle, proto_gsm_map,"itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) map-ac(0) gprsLocationUpdate(32) version3(3)" );