| /* |
| * Generated by asn1c-0.9.28 (http://lionet.info/asn1c) |
| * From ASN.1 module "RUA-IEs" |
| * found in "../../asn1/rua/RUA-IEs.asn" |
| */ |
| |
| #include <osmocom/rua/RUA_Gsm-map-IDNNS.h> |
| |
| static asn_per_constraints_t asn_PER_type_routingbasis_constr_2 GCC_NOTUSED = { |
| { APC_CONSTRAINED, 3, 3, 0l, 7l } /* (0..7) */, |
| { APC_UNCONSTRAINED, -1, -1, 0, 0 }, |
| 0, 0 /* No PER value map */ |
| }; |
| static asn_TYPE_member_t asn_MBR_localPTMSI_3[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct localPTMSI, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_localPTMSI_tags_3[] = { |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_localPTMSI_tag2el_3[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_localPTMSI_specs_3 = { |
| sizeof(struct localPTMSI), |
| offsetof(struct localPTMSI, _asn_ctx), |
| asn_MAP_localPTMSI_tag2el_3, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_localPTMSI_3 = { |
| "localPTMSI", |
| "localPTMSI", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_localPTMSI_tags_3, |
| sizeof(asn_DEF_localPTMSI_tags_3) |
| /sizeof(asn_DEF_localPTMSI_tags_3[0]) - 1, /* 1 */ |
| asn_DEF_localPTMSI_tags_3, /* Same as above */ |
| sizeof(asn_DEF_localPTMSI_tags_3) |
| /sizeof(asn_DEF_localPTMSI_tags_3[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_localPTMSI_3, |
| 1, /* Elements count */ |
| &asn_SPC_localPTMSI_specs_3 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_tMSIofsamePLMN_5[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct tMSIofsamePLMN, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_tMSIofsamePLMN_tags_5[] = { |
| (ASN_TAG_CLASS_CONTEXT | (1 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_tMSIofsamePLMN_tag2el_5[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_tMSIofsamePLMN_specs_5 = { |
| sizeof(struct tMSIofsamePLMN), |
| offsetof(struct tMSIofsamePLMN, _asn_ctx), |
| asn_MAP_tMSIofsamePLMN_tag2el_5, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_tMSIofsamePLMN_5 = { |
| "tMSIofsamePLMN", |
| "tMSIofsamePLMN", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_tMSIofsamePLMN_tags_5, |
| sizeof(asn_DEF_tMSIofsamePLMN_tags_5) |
| /sizeof(asn_DEF_tMSIofsamePLMN_tags_5[0]) - 1, /* 1 */ |
| asn_DEF_tMSIofsamePLMN_tags_5, /* Same as above */ |
| sizeof(asn_DEF_tMSIofsamePLMN_tags_5) |
| /sizeof(asn_DEF_tMSIofsamePLMN_tags_5[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_tMSIofsamePLMN_5, |
| 1, /* Elements count */ |
| &asn_SPC_tMSIofsamePLMN_specs_5 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_tMSIofdifferentPLMN_7[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct tMSIofdifferentPLMN, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_tMSIofdifferentPLMN_tags_7[] = { |
| (ASN_TAG_CLASS_CONTEXT | (2 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_tMSIofdifferentPLMN_tag2el_7[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_tMSIofdifferentPLMN_specs_7 = { |
| sizeof(struct tMSIofdifferentPLMN), |
| offsetof(struct tMSIofdifferentPLMN, _asn_ctx), |
| asn_MAP_tMSIofdifferentPLMN_tag2el_7, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_tMSIofdifferentPLMN_7 = { |
| "tMSIofdifferentPLMN", |
| "tMSIofdifferentPLMN", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_tMSIofdifferentPLMN_tags_7, |
| sizeof(asn_DEF_tMSIofdifferentPLMN_tags_7) |
| /sizeof(asn_DEF_tMSIofdifferentPLMN_tags_7[0]) - 1, /* 1 */ |
| asn_DEF_tMSIofdifferentPLMN_tags_7, /* Same as above */ |
| sizeof(asn_DEF_tMSIofdifferentPLMN_tags_7) |
| /sizeof(asn_DEF_tMSIofdifferentPLMN_tags_7[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_tMSIofdifferentPLMN_7, |
| 1, /* Elements count */ |
| &asn_SPC_tMSIofdifferentPLMN_specs_7 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_iMSIresponsetopaging_9[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct iMSIresponsetopaging, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_iMSIresponsetopaging_tags_9[] = { |
| (ASN_TAG_CLASS_CONTEXT | (3 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_iMSIresponsetopaging_tag2el_9[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_iMSIresponsetopaging_specs_9 = { |
| sizeof(struct iMSIresponsetopaging), |
| offsetof(struct iMSIresponsetopaging, _asn_ctx), |
| asn_MAP_iMSIresponsetopaging_tag2el_9, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_iMSIresponsetopaging_9 = { |
| "iMSIresponsetopaging", |
| "iMSIresponsetopaging", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_iMSIresponsetopaging_tags_9, |
| sizeof(asn_DEF_iMSIresponsetopaging_tags_9) |
| /sizeof(asn_DEF_iMSIresponsetopaging_tags_9[0]) - 1, /* 1 */ |
| asn_DEF_iMSIresponsetopaging_tags_9, /* Same as above */ |
| sizeof(asn_DEF_iMSIresponsetopaging_tags_9) |
| /sizeof(asn_DEF_iMSIresponsetopaging_tags_9[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_iMSIresponsetopaging_9, |
| 1, /* Elements count */ |
| &asn_SPC_iMSIresponsetopaging_specs_9 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_iMSIcauseUEinitiatedEvent_11[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct iMSIcauseUEinitiatedEvent, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_iMSIcauseUEinitiatedEvent_tags_11[] = { |
| (ASN_TAG_CLASS_CONTEXT | (4 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_iMSIcauseUEinitiatedEvent_tag2el_11[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_iMSIcauseUEinitiatedEvent_specs_11 = { |
| sizeof(struct iMSIcauseUEinitiatedEvent), |
| offsetof(struct iMSIcauseUEinitiatedEvent, _asn_ctx), |
| asn_MAP_iMSIcauseUEinitiatedEvent_tag2el_11, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_iMSIcauseUEinitiatedEvent_11 = { |
| "iMSIcauseUEinitiatedEvent", |
| "iMSIcauseUEinitiatedEvent", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_iMSIcauseUEinitiatedEvent_tags_11, |
| sizeof(asn_DEF_iMSIcauseUEinitiatedEvent_tags_11) |
| /sizeof(asn_DEF_iMSIcauseUEinitiatedEvent_tags_11[0]) - 1, /* 1 */ |
| asn_DEF_iMSIcauseUEinitiatedEvent_tags_11, /* Same as above */ |
| sizeof(asn_DEF_iMSIcauseUEinitiatedEvent_tags_11) |
| /sizeof(asn_DEF_iMSIcauseUEinitiatedEvent_tags_11[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_iMSIcauseUEinitiatedEvent_11, |
| 1, /* Elements count */ |
| &asn_SPC_iMSIcauseUEinitiatedEvent_specs_11 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_iMEI_13[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct iMEI, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_iMEI_tags_13[] = { |
| (ASN_TAG_CLASS_CONTEXT | (5 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_iMEI_tag2el_13[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_iMEI_specs_13 = { |
| sizeof(struct iMEI), |
| offsetof(struct iMEI, _asn_ctx), |
| asn_MAP_iMEI_tag2el_13, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_iMEI_13 = { |
| "iMEI", |
| "iMEI", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_iMEI_tags_13, |
| sizeof(asn_DEF_iMEI_tags_13) |
| /sizeof(asn_DEF_iMEI_tags_13[0]) - 1, /* 1 */ |
| asn_DEF_iMEI_tags_13, /* Same as above */ |
| sizeof(asn_DEF_iMEI_tags_13) |
| /sizeof(asn_DEF_iMEI_tags_13[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_iMEI_13, |
| 1, /* Elements count */ |
| &asn_SPC_iMEI_specs_13 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_spare2_15[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct spare2, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_spare2_tags_15[] = { |
| (ASN_TAG_CLASS_CONTEXT | (6 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_spare2_tag2el_15[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_spare2_specs_15 = { |
| sizeof(struct spare2), |
| offsetof(struct spare2, _asn_ctx), |
| asn_MAP_spare2_tag2el_15, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_spare2_15 = { |
| "spare2", |
| "spare2", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_spare2_tags_15, |
| sizeof(asn_DEF_spare2_tags_15) |
| /sizeof(asn_DEF_spare2_tags_15[0]) - 1, /* 1 */ |
| asn_DEF_spare2_tags_15, /* Same as above */ |
| sizeof(asn_DEF_spare2_tags_15) |
| /sizeof(asn_DEF_spare2_tags_15[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_spare2_15, |
| 1, /* Elements count */ |
| &asn_SPC_spare2_specs_15 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_spare1_17[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct spare1, routingparameter), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_RUA_RoutingParameter, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingparameter" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_spare1_tags_17[] = { |
| (ASN_TAG_CLASS_CONTEXT | (7 << 2)), |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_spare1_tag2el_17[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* routingparameter */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_spare1_specs_17 = { |
| sizeof(struct spare1), |
| offsetof(struct spare1, _asn_ctx), |
| asn_MAP_spare1_tag2el_17, |
| 1, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_spare1_17 = { |
| "spare1", |
| "spare1", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_spare1_tags_17, |
| sizeof(asn_DEF_spare1_tags_17) |
| /sizeof(asn_DEF_spare1_tags_17[0]) - 1, /* 1 */ |
| asn_DEF_spare1_tags_17, /* Same as above */ |
| sizeof(asn_DEF_spare1_tags_17) |
| /sizeof(asn_DEF_spare1_tags_17[0]), /* 2 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_spare1_17, |
| 1, /* Elements count */ |
| &asn_SPC_spare1_specs_17 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_routingbasis_2[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.localPTMSI), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| 0, |
| &asn_DEF_localPTMSI_3, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "localPTMSI" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.tMSIofsamePLMN), |
| (ASN_TAG_CLASS_CONTEXT | (1 << 2)), |
| 0, |
| &asn_DEF_tMSIofsamePLMN_5, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "tMSIofsamePLMN" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.tMSIofdifferentPLMN), |
| (ASN_TAG_CLASS_CONTEXT | (2 << 2)), |
| 0, |
| &asn_DEF_tMSIofdifferentPLMN_7, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "tMSIofdifferentPLMN" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.iMSIresponsetopaging), |
| (ASN_TAG_CLASS_CONTEXT | (3 << 2)), |
| 0, |
| &asn_DEF_iMSIresponsetopaging_9, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "iMSIresponsetopaging" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.iMSIcauseUEinitiatedEvent), |
| (ASN_TAG_CLASS_CONTEXT | (4 << 2)), |
| 0, |
| &asn_DEF_iMSIcauseUEinitiatedEvent_11, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "iMSIcauseUEinitiatedEvent" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.iMEI), |
| (ASN_TAG_CLASS_CONTEXT | (5 << 2)), |
| 0, |
| &asn_DEF_iMEI_13, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "iMEI" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.spare2), |
| (ASN_TAG_CLASS_CONTEXT | (6 << 2)), |
| 0, |
| &asn_DEF_spare2_15, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "spare2" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct routingbasis, choice.spare1), |
| (ASN_TAG_CLASS_CONTEXT | (7 << 2)), |
| 0, |
| &asn_DEF_spare1_17, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "spare1" |
| }, |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_routingbasis_tag2el_2[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* localPTMSI */ |
| { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* tMSIofsamePLMN */ |
| { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* tMSIofdifferentPLMN */ |
| { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* iMSIresponsetopaging */ |
| { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* iMSIcauseUEinitiatedEvent */ |
| { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* iMEI */ |
| { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* spare2 */ |
| { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* spare1 */ |
| }; |
| static asn_CHOICE_specifics_t asn_SPC_routingbasis_specs_2 = { |
| sizeof(struct routingbasis), |
| offsetof(struct routingbasis, _asn_ctx), |
| offsetof(struct routingbasis, present), |
| sizeof(((struct routingbasis *)0)->present), |
| asn_MAP_routingbasis_tag2el_2, |
| 8, /* Count of tags in the map */ |
| 0, |
| -1 /* Extensions start */ |
| }; |
| static /* Use -fall-defs-global to expose */ |
| asn_TYPE_descriptor_t asn_DEF_routingbasis_2 = { |
| "routingbasis", |
| "routingbasis", |
| CHOICE_free, |
| CHOICE_print, |
| CHOICE_constraint, |
| CHOICE_decode_ber, |
| CHOICE_encode_der, |
| CHOICE_decode_xer, |
| CHOICE_encode_xer, |
| CHOICE_decode_uper, |
| CHOICE_encode_uper, |
| CHOICE_decode_aper, |
| CHOICE_encode_aper, |
| CHOICE_outmost_tag, |
| 0, /* No effective tags (pointer) */ |
| 0, /* No effective tags (count) */ |
| 0, /* No tags (pointer) */ |
| 0, /* No tags (count) */ |
| &asn_PER_type_routingbasis_constr_2, |
| asn_MBR_routingbasis_2, |
| 8, /* Elements count */ |
| &asn_SPC_routingbasis_specs_2 /* Additional specs */ |
| }; |
| |
| static asn_TYPE_member_t asn_MBR_RUA_Gsm_map_IDNNS_1[] = { |
| { ATF_NOFLAGS, 0, offsetof(struct RUA_Gsm_map_IDNNS, routingbasis), |
| (ASN_TAG_CLASS_CONTEXT | (0 << 2)), |
| +1, /* EXPLICIT tag at current level */ |
| &asn_DEF_routingbasis_2, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "routingbasis" |
| }, |
| { ATF_NOFLAGS, 0, offsetof(struct RUA_Gsm_map_IDNNS, dummy), |
| (ASN_TAG_CLASS_CONTEXT | (1 << 2)), |
| -1, /* IMPLICIT tag at current level */ |
| &asn_DEF_BOOLEAN, |
| 0, /* Defer constraints checking to the member type */ |
| 0, /* No PER visible constraints */ |
| 0, |
| "dummy" |
| }, |
| }; |
| static const ber_tlv_tag_t asn_DEF_RUA_Gsm_map_IDNNS_tags_1[] = { |
| (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) |
| }; |
| static const asn_TYPE_tag2member_t asn_MAP_RUA_Gsm_map_IDNNS_tag2el_1[] = { |
| { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* routingbasis */ |
| { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* dummy */ |
| }; |
| static asn_SEQUENCE_specifics_t asn_SPC_RUA_Gsm_map_IDNNS_specs_1 = { |
| sizeof(struct RUA_Gsm_map_IDNNS), |
| offsetof(struct RUA_Gsm_map_IDNNS, _asn_ctx), |
| asn_MAP_RUA_Gsm_map_IDNNS_tag2el_1, |
| 2, /* Count of tags in the map */ |
| 0, 0, 0, /* Optional elements (not needed) */ |
| -1, /* Start extensions */ |
| -1 /* Stop extensions */ |
| }; |
| asn_TYPE_descriptor_t asn_DEF_RUA_Gsm_map_IDNNS = { |
| "RUA_Gsm-map-IDNNS", |
| "RUA_Gsm-map-IDNNS", |
| SEQUENCE_free, |
| SEQUENCE_print, |
| SEQUENCE_constraint, |
| SEQUENCE_decode_ber, |
| SEQUENCE_encode_der, |
| SEQUENCE_decode_xer, |
| SEQUENCE_encode_xer, |
| SEQUENCE_decode_uper, |
| SEQUENCE_encode_uper, |
| SEQUENCE_decode_aper, |
| SEQUENCE_encode_aper, |
| 0, /* Use generic outmost tag fetcher */ |
| asn_DEF_RUA_Gsm_map_IDNNS_tags_1, |
| sizeof(asn_DEF_RUA_Gsm_map_IDNNS_tags_1) |
| /sizeof(asn_DEF_RUA_Gsm_map_IDNNS_tags_1[0]), /* 1 */ |
| asn_DEF_RUA_Gsm_map_IDNNS_tags_1, /* Same as above */ |
| sizeof(asn_DEF_RUA_Gsm_map_IDNNS_tags_1) |
| /sizeof(asn_DEF_RUA_Gsm_map_IDNNS_tags_1[0]), /* 1 */ |
| 0, /* No PER visible constraints */ |
| asn_MBR_RUA_Gsm_map_IDNNS_1, |
| 2, /* Elements count */ |
| &asn_SPC_RUA_Gsm_map_IDNNS_specs_1 /* Additional specs */ |
| }; |
| |