Dissect NumberPortabilityRequest return result.
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 18 Dec 2009 06:26:20 +0000 (06:26 +0000)
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 18 Dec 2009 06:26:20 +0000 (06:26 +0000)
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@31306 f5534014-38df-0310-8fa8-9805f1628bb7

asn1/ansi_map/ansi_map.asn
asn1/ansi_map/packet-ansi_map-template.c
epan/dissectors/packet-ansi_map.c

index e8942cb385947f30a7327e7c31bb404daba1ed40..55f60f7ad197437717621838bd7d8a0ca9a8d6b8 100644 (file)
@@ -1,4 +1,4 @@
--- Copyright 2005 - 2007 Anders Broman
+-- Copyright 2005 - 2009 Anders Broman
 -- $Id$
 MAP-Protocol{ 0 identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3) map-Protocol (4) version5 (5) }
 
@@ -3089,6 +3089,7 @@ TMSIDirectiveRes ::= [PRIVATE 18] SET {
        -- O
        }
 
+--X.S0004-540-E v2.0 2.42 NumberPortabilityRequest
 -- 6.4.2.g NumberPortabilityRequest Updated with N.S0023-0 v 1.0
 NumberPortabilityRequest ::= [PRIVATE 18] SET {
        digits                                                                  [4] IMPLICIT Digits,
@@ -3103,6 +3104,11 @@ NumberPortabilityRequest ::= [PRIVATE 18] SET {
        -- (Originating) O 6.5.2.bv c
        }
 
+NumberPortabilityRequestRes ::= [PRIVATE 18] SET {
+       routingDigits                                                   [150] IMPLICIT RoutingDigits OPTIONAL
+       -- O 2.209
+       }
+
 -- 6.4.2.h ServiceRequest Updated with N.S0023-0 v 1.0
 
 ServiceRequest ::= [PRIVATE 18] SET {
@@ -8368,6 +8374,7 @@ ReturnData ::= SEQUENCE {
        changeServiceRes ChangeServiceRes,
        parameterRequestRes ParameterRequestRes,
        tMSIDirectiveRes TMSIDirectiveRes,
+       numberPortabilityRequestRes NumberPortabilityRequestRes,
        serviceRequestRes ServiceRequestRes,
        analyzedInformationRes AnalyzedInformationRes,
        facilitySelectedAndAvailableRes FacilitySelectedAndAvailableRes,
index 1985683d5de13cbbe92c55db2851dddbffbb4c68..c029e4fc22fdad9dd08cdc3379dd4f09e06c370f 100644 (file)
@@ -4201,6 +4201,7 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  56: /*OTASP Request 6.4.2.CC*/
         offset = dissect_ansi_map_OTASPRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_oTASPRequestRes);
         break;
+       /* 57 Information Backward*/
     case  58: /*Change Facilities*/
         offset = dissect_ansi_map_ChangeFacilitiesRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_changeFacilitiesRes);
         break;
@@ -4213,6 +4214,9 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  61: /*TMSI Directive*/
         offset = dissect_ansi_map_TMSIDirectiveRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_tMSIDirectiveRes);
         break;
+    case  62: /*NumberPortabilityRequest */ 
+        offset = dissect_ansi_map_NumberPortabilityRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_numberPortabilityRequestRes);
+               break;
     case  63: /*Service Request*/
         offset = dissect_ansi_map_ServiceRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_serviceRequestRes);
         break;
@@ -4220,9 +4224,13 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  64: /*Analyzed Information Request*/
         offset = dissect_ansi_map_AnalyzedInformationRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_analyzedInformationRes);
         break;
+    /* 65 Connection Failure Report*/
+    /* 66 Connect Resource*/
+    /* 67 Disconnect Resource*/
     case  68: /*Facility Selected and Available*/
         offset = dissect_ansi_map_FacilitySelectedAndAvailableRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_facilitySelectedAndAvailableRes);
         break;
+       /* 69 Instruction Request*/
     case  70: /*Modify*/
         offset = dissect_ansi_map_ModifyRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_modifyRes);
         break;
index b2dd25b26eccb7c07b83606777404d8870ea5e97..7b36843eb163688776d73f90540d1eff9322d801 100644 (file)
@@ -849,6 +849,7 @@ static int hf_ansi_map_changeFacilitiesRes = -1;  /* ChangeFacilitiesRes */
 static int hf_ansi_map_changeServiceRes = -1;     /* ChangeServiceRes */
 static int hf_ansi_map_parameterRequestRes = -1;  /* ParameterRequestRes */
 static int hf_ansi_map_tMSIDirectiveRes = -1;     /* TMSIDirectiveRes */
+static int hf_ansi_map_numberPortabilityRequestRes = -1;  /* NumberPortabilityRequestRes */
 static int hf_ansi_map_serviceRequestRes = -1;    /* ServiceRequestRes */
 static int hf_ansi_map_analyzedInformationRes = -1;  /* AnalyzedInformationRes */
 static int hf_ansi_map_facilitySelectedAndAvailableRes = -1;  /* FacilitySelectedAndAvailableRes */
@@ -1008,6 +1009,7 @@ static gint ett_ansi_map_ParameterRequestRes_U = -1;
 static gint ett_ansi_map_TMSIDirective_U = -1;
 static gint ett_ansi_map_TMSIDirectiveRes_U = -1;
 static gint ett_ansi_map_NumberPortabilityRequest_U = -1;
+static gint ett_ansi_map_NumberPortabilityRequestRes_U = -1;
 static gint ett_ansi_map_ServiceRequest_U = -1;
 static gint ett_ansi_map_ServiceRequestRes_U = -1;
 static gint ett_ansi_map_AnalyzedInformation_U = -1;
@@ -11734,6 +11736,30 @@ dissect_ansi_map_NumberPortabilityRequest(gboolean implicit_tag _U_, tvbuff_t *t
 }
 
 
+static const ber_sequence_t NumberPortabilityRequestRes_U_set[] = {
+  { &hf_ansi_map_routingDigits, BER_CLASS_CON, 150, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ansi_map_RoutingDigits },
+  { NULL, 0, 0, 0, NULL }
+};
+
+static int
+dissect_ansi_map_NumberPortabilityRequestRes_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
+                              NumberPortabilityRequestRes_U_set, hf_index, ett_ansi_map_NumberPortabilityRequestRes_U);
+
+  return offset;
+}
+
+
+
+static int
+dissect_ansi_map_NumberPortabilityRequestRes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
+                                      hf_index, BER_CLASS_PRI, 18, FALSE, dissect_ansi_map_NumberPortabilityRequestRes_U);
+
+  return offset;
+}
+
+
 
 static int
 dissect_ansi_map_ServiceID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -15430,6 +15456,7 @@ static const ber_sequence_t ReturnData_sequence[] = {
   { &hf_ansi_map_changeServiceRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_ChangeServiceRes },
   { &hf_ansi_map_parameterRequestRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_ParameterRequestRes },
   { &hf_ansi_map_tMSIDirectiveRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_TMSIDirectiveRes },
+  { &hf_ansi_map_numberPortabilityRequestRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_NumberPortabilityRequestRes },
   { &hf_ansi_map_serviceRequestRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_ServiceRequestRes },
   { &hf_ansi_map_analyzedInformationRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_AnalyzedInformationRes },
   { &hf_ansi_map_facilitySelectedAndAvailableRes, BER_CLASS_PRI, 18, BER_FLAGS_NOOWNTAG, dissect_ansi_map_FacilitySelectedAndAvailableRes },
@@ -16041,6 +16068,7 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  56: /*OTASP Request 6.4.2.CC*/
         offset = dissect_ansi_map_OTASPRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_oTASPRequestRes);
         break;
+       /* 57 Information Backward*/
     case  58: /*Change Facilities*/
         offset = dissect_ansi_map_ChangeFacilitiesRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_changeFacilitiesRes);
         break;
@@ -16053,6 +16081,9 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  61: /*TMSI Directive*/
         offset = dissect_ansi_map_TMSIDirectiveRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_tMSIDirectiveRes);
         break;
+    case  62: /*NumberPortabilityRequest */ 
+        offset = dissect_ansi_map_NumberPortabilityRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_numberPortabilityRequestRes);
+               break;
     case  63: /*Service Request*/
         offset = dissect_ansi_map_ServiceRequestRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_serviceRequestRes);
         break;
@@ -16060,9 +16091,13 @@ static int dissect_returnData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
     case  64: /*Analyzed Information Request*/
         offset = dissect_ansi_map_AnalyzedInformationRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_analyzedInformationRes);
         break;
+    /* 65 Connection Failure Report*/
+    /* 66 Connect Resource*/
+    /* 67 Disconnect Resource*/
     case  68: /*Facility Selected and Available*/
         offset = dissect_ansi_map_FacilitySelectedAndAvailableRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_facilitySelectedAndAvailableRes);
         break;
+       /* 69 Instruction Request*/
     case  70: /*Modify*/
         offset = dissect_ansi_map_ModifyRes(TRUE, tvb, offset, actx, tree, hf_ansi_map_modifyRes);
         break;
@@ -19194,6 +19229,10 @@ void proto_register_ansi_map(void) {
       { "tMSIDirectiveRes", "ansi_map.tMSIDirectiveRes",
         FT_NONE, BASE_NONE, NULL, 0,
         "ansi_map.TMSIDirectiveRes", HFILL }},
+    { &hf_ansi_map_numberPortabilityRequestRes,
+      { "numberPortabilityRequestRes", "ansi_map.numberPortabilityRequestRes",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "ansi_map.NumberPortabilityRequestRes", HFILL }},
     { &hf_ansi_map_serviceRequestRes,
       { "serviceRequestRes", "ansi_map.serviceRequestRes",
         FT_NONE, BASE_NONE, NULL, 0,
@@ -19304,7 +19343,7 @@ void proto_register_ansi_map(void) {
         "ansi_map.QualificationRequest2Res", HFILL }},
 
 /*--- End of included file: packet-ansi_map-hfarr.c ---*/
-#line 5279 "packet-ansi_map-template.c"
+#line 5287 "packet-ansi_map-template.c"
     };
 
     /* List of subtrees */
@@ -19435,6 +19474,7 @@ void proto_register_ansi_map(void) {
     &ett_ansi_map_TMSIDirective_U,
     &ett_ansi_map_TMSIDirectiveRes_U,
     &ett_ansi_map_NumberPortabilityRequest_U,
+    &ett_ansi_map_NumberPortabilityRequestRes_U,
     &ett_ansi_map_ServiceRequest_U,
     &ett_ansi_map_ServiceRequestRes_U,
     &ett_ansi_map_AnalyzedInformation_U,
@@ -19564,7 +19604,7 @@ void proto_register_ansi_map(void) {
     &ett_ansi_map_ReturnData,
 
 /*--- End of included file: packet-ansi_map-ettarr.c ---*/
-#line 5312 "packet-ansi_map-template.c"
+#line 5320 "packet-ansi_map-template.c"
     };