/* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "SGP32Definitions" * found in "../../../asn1/SGP32Definitions.asn" * `asn1c -fcompound-names -no-gen-example` */ #include "SGP32-EUICCInfo2.h" static int memb_sasAcreditationNumber_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const UTF8String_t *st = (const UTF8String_t *)sptr; size_t size; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } size = UTF8String_length(st); if((ssize_t)size < 0) { ASN__CTFAIL(app_key, td, sptr, "%s: UTF-8: broken encoding (%s:%d)", td->name, __FILE__, __LINE__); return -1; } if((size <= 64)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static int memb_rfu3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; size_t size; if(!sptr) { ASN__CTFAIL(app_key, td, sptr, "%s: value not given (%s:%d)", td->name, __FILE__, __LINE__); return -1; } size = st->size; if((size <= 32)) { /* Constraint check succeeded */ return 0; } else { ASN__CTFAIL(app_key, td, sptr, "%s: constraint failed (%s:%d)", td->name, __FILE__, __LINE__); return -1; } } static asn_oer_constraints_t asn_OER_memb_sasAcreditationNumber_constr_21 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..MAX)) */}; static asn_per_constraints_t asn_PER_memb_sasAcreditationNumber_constr_21 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_rfu3_constr_33 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..32)) */}; static asn_per_constraints_t asn_PER_memb_rfu3_constr_33 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, 0, 0 /* No PER value map */ }; static asn_TYPE_member_t asn_MBR_euiccCiPKIdListForVerification_10[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, &asn_DEF_SubjectKeyIdentifier, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; static const ber_tlv_tag_t asn_DEF_euiccCiPKIdListForVerification_tags_10[] = { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_euiccCiPKIdListForVerification_specs_10 = { sizeof(struct SGP32_EUICCInfo2__euiccCiPKIdListForVerification), offsetof(struct SGP32_EUICCInfo2__euiccCiPKIdListForVerification, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_euiccCiPKIdListForVerification_10 = { "euiccCiPKIdListForVerification", "euiccCiPKIdListForVerification", &asn_OP_SEQUENCE_OF, asn_DEF_euiccCiPKIdListForVerification_tags_10, sizeof(asn_DEF_euiccCiPKIdListForVerification_tags_10) /sizeof(asn_DEF_euiccCiPKIdListForVerification_tags_10[0]) - 1, /* 1 */ asn_DEF_euiccCiPKIdListForVerification_tags_10, /* Same as above */ sizeof(asn_DEF_euiccCiPKIdListForVerification_tags_10) /sizeof(asn_DEF_euiccCiPKIdListForVerification_tags_10[0]), /* 2 */ { 0, 0, SEQUENCE_OF_constraint }, asn_MBR_euiccCiPKIdListForVerification_10, 1, /* Single element */ &asn_SPC_euiccCiPKIdListForVerification_specs_10 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_euiccCiPKIdListForSigning_12[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, &asn_DEF_SubjectKeyIdentifier, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; static const ber_tlv_tag_t asn_DEF_euiccCiPKIdListForSigning_tags_12[] = { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_euiccCiPKIdListForSigning_specs_12 = { sizeof(struct SGP32_EUICCInfo2__euiccCiPKIdListForSigning), offsetof(struct SGP32_EUICCInfo2__euiccCiPKIdListForSigning, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_euiccCiPKIdListForSigning_12 = { "euiccCiPKIdListForSigning", "euiccCiPKIdListForSigning", &asn_OP_SEQUENCE_OF, asn_DEF_euiccCiPKIdListForSigning_tags_12, sizeof(asn_DEF_euiccCiPKIdListForSigning_tags_12) /sizeof(asn_DEF_euiccCiPKIdListForSigning_tags_12[0]) - 1, /* 1 */ asn_DEF_euiccCiPKIdListForSigning_tags_12, /* Same as above */ sizeof(asn_DEF_euiccCiPKIdListForSigning_tags_12) /sizeof(asn_DEF_euiccCiPKIdListForSigning_tags_12[0]), /* 2 */ { 0, 0, SEQUENCE_OF_constraint }, asn_MBR_euiccCiPKIdListForSigning_12, 1, /* Single element */ &asn_SPC_euiccCiPKIdListForSigning_specs_12 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_additionalEuiccProfilePackageVersions_28[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; static const ber_tlv_tag_t asn_DEF_additionalEuiccProfilePackageVersions_tags_28[] = { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_additionalEuiccProfilePackageVersions_specs_28 = { sizeof(struct SGP32_EUICCInfo2__additionalEuiccProfilePackageVersions), offsetof(struct SGP32_EUICCInfo2__additionalEuiccProfilePackageVersions, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_additionalEuiccProfilePackageVersions_28 = { "additionalEuiccProfilePackageVersions", "additionalEuiccProfilePackageVersions", &asn_OP_SEQUENCE_OF, asn_DEF_additionalEuiccProfilePackageVersions_tags_28, sizeof(asn_DEF_additionalEuiccProfilePackageVersions_tags_28) /sizeof(asn_DEF_additionalEuiccProfilePackageVersions_tags_28[0]) - 1, /* 1 */ asn_DEF_additionalEuiccProfilePackageVersions_tags_28, /* Same as above */ sizeof(asn_DEF_additionalEuiccProfilePackageVersions_tags_28) /sizeof(asn_DEF_additionalEuiccProfilePackageVersions_tags_28[0]), /* 2 */ { 0, 0, SEQUENCE_OF_constraint }, asn_MBR_additionalEuiccProfilePackageVersions_28, 1, /* Single element */ &asn_SPC_additionalEuiccProfilePackageVersions_specs_28 /* Additional specs */ }; static asn_TYPE_member_t asn_MBR_rfu2_31[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, &asn_DEF_SubjectKeyIdentifier, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; static const ber_tlv_tag_t asn_DEF_rfu2_tags_31[] = { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static asn_SET_OF_specifics_t asn_SPC_rfu2_specs_31 = { sizeof(struct SGP32_EUICCInfo2__rfu2), offsetof(struct SGP32_EUICCInfo2__rfu2, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ asn_TYPE_descriptor_t asn_DEF_rfu2_31 = { "rfu2", "rfu2", &asn_OP_SEQUENCE_OF, asn_DEF_rfu2_tags_31, sizeof(asn_DEF_rfu2_tags_31) /sizeof(asn_DEF_rfu2_tags_31[0]) - 1, /* 1 */ asn_DEF_rfu2_tags_31, /* Same as above */ sizeof(asn_DEF_rfu2_tags_31) /sizeof(asn_DEF_rfu2_tags_31[0]), /* 2 */ { 0, 0, SEQUENCE_OF_constraint }, asn_MBR_rfu2_31, 1, /* Single element */ &asn_SPC_rfu2_specs_31 /* Additional specs */ }; asn_TYPE_member_t asn_MBR_SGP32_EUICCInfo2_1[] = { { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, profileVersion), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "profileVersion" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, svn), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "svn" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, euiccFirmwareVer), (ASN_TAG_CLASS_CONTEXT | (3 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "euiccFirmwareVer" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, extCardResource), (ASN_TAG_CLASS_CONTEXT | (4 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_OCTET_STRING, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "extCardResource" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, uiccCapability), (ASN_TAG_CLASS_CONTEXT | (5 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_UICCCapability, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "uiccCapability" }, { ATF_POINTER, 2, offsetof(struct SGP32_EUICCInfo2, ts102241Version), (ASN_TAG_CLASS_CONTEXT | (6 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "ts102241Version" }, { ATF_POINTER, 1, offsetof(struct SGP32_EUICCInfo2, globalplatformVersion), (ASN_TAG_CLASS_CONTEXT | (7 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "globalplatformVersion" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, rspCapability), (ASN_TAG_CLASS_CONTEXT | (8 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_RspCapability, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "rspCapability" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, euiccCiPKIdListForVerification), (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 0, &asn_DEF_euiccCiPKIdListForVerification_10, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "euiccCiPKIdListForVerification" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, euiccCiPKIdListForSigning), (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 0, &asn_DEF_euiccCiPKIdListForSigning_12, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "euiccCiPKIdListForSigning" }, { ATF_POINTER, 2, offsetof(struct SGP32_EUICCInfo2, euiccCategory), (ASN_TAG_CLASS_CONTEXT | (11 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "euiccCategory" }, { ATF_POINTER, 1, offsetof(struct SGP32_EUICCInfo2, forbiddenProfilePolicyRules), (ASN_TAG_CLASS_CONTEXT | (25 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_PprIds, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "forbiddenProfilePolicyRules" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, ppVersion), (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "ppVersion" }, { ATF_NOFLAGS, 0, offsetof(struct SGP32_EUICCInfo2, sasAcreditationNumber), (ASN_TAG_CLASS_UNIVERSAL | (12 << 2)), 0, &asn_DEF_UTF8String, 0, { &asn_OER_memb_sasAcreditationNumber_constr_21, &asn_PER_memb_sasAcreditationNumber_constr_21, memb_sasAcreditationNumber_constraint_1 }, 0, 0, /* No default value */ "sasAcreditationNumber" }, { ATF_POINTER, 9, offsetof(struct SGP32_EUICCInfo2, certificationDataObject), (ASN_TAG_CLASS_CONTEXT | (12 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_CertificationDataObject, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "certificationDataObject" }, { ATF_POINTER, 8, offsetof(struct SGP32_EUICCInfo2, treProperties), (ASN_TAG_CLASS_CONTEXT | (13 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "treProperties" }, { ATF_POINTER, 7, offsetof(struct SGP32_EUICCInfo2, treProductReference), (ASN_TAG_CLASS_CONTEXT | (14 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_UTF8String, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "treProductReference" }, { ATF_POINTER, 6, offsetof(struct SGP32_EUICCInfo2, additionalEuiccProfilePackageVersions), (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 0, &asn_DEF_additionalEuiccProfilePackageVersions_28, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "additionalEuiccProfilePackageVersions" }, { ATF_POINTER, 5, offsetof(struct SGP32_EUICCInfo2, ipaMode), (ASN_TAG_CLASS_CONTEXT | (16 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_IpaMode, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "ipaMode" }, { ATF_POINTER, 4, offsetof(struct SGP32_EUICCInfo2, rfu2), (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 0, &asn_DEF_rfu2_31, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "rfu2" }, { ATF_POINTER, 3, offsetof(struct SGP32_EUICCInfo2, rfu3), (ASN_TAG_CLASS_CONTEXT | (18 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_OCTET_STRING, 0, { &asn_OER_memb_rfu3_constr_33, &asn_PER_memb_rfu3_constr_33, memb_rfu3_constraint_1 }, 0, 0, /* No default value */ "rfu3" }, { ATF_POINTER, 2, offsetof(struct SGP32_EUICCInfo2, rfu4), (ASN_TAG_CLASS_CONTEXT | (19 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_VersionType, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "rfu4" }, { ATF_POINTER, 1, offsetof(struct SGP32_EUICCInfo2, iotSpecificInfo), (ASN_TAG_CLASS_CONTEXT | (20 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_IoTSpecificInfo, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "iotSpecificInfo" }, }; static const int asn_MAP_SGP32_EUICCInfo2_oms_1[] = { 5, 6, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22 }; static const ber_tlv_tag_t asn_DEF_SGP32_EUICCInfo2_tags_1[] = { (ASN_TAG_CLASS_CONTEXT | (34 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_SGP32_EUICCInfo2_tag2el_1[] = { { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 12, 0, 0 }, /* ppVersion */ { (ASN_TAG_CLASS_UNIVERSAL | (12 << 2)), 13, 0, 0 }, /* sasAcreditationNumber */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* profileVersion */ { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* svn */ { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* euiccFirmwareVer */ { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 }, /* extCardResource */ { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 4, 0, 0 }, /* uiccCapability */ { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 5, 0, 0 }, /* ts102241Version */ { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 6, 0, 0 }, /* globalplatformVersion */ { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 7, 0, 0 }, /* rspCapability */ { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 8, 0, 0 }, /* euiccCiPKIdListForVerification */ { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 9, 0, 0 }, /* euiccCiPKIdListForSigning */ { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 10, 0, 0 }, /* euiccCategory */ { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 14, 0, 0 }, /* certificationDataObject */ { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 15, 0, 0 }, /* treProperties */ { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 16, 0, 0 }, /* treProductReference */ { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 17, 0, 0 }, /* additionalEuiccProfilePackageVersions */ { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 18, 0, 0 }, /* ipaMode */ { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 19, 0, 0 }, /* rfu2 */ { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 20, 0, 0 }, /* rfu3 */ { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 21, 0, 0 }, /* rfu4 */ { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 22, 0, 0 }, /* iotSpecificInfo */ { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 11, 0, 0 } /* forbiddenProfilePolicyRules */ }; asn_SEQUENCE_specifics_t asn_SPC_SGP32_EUICCInfo2_specs_1 = { sizeof(struct SGP32_EUICCInfo2), offsetof(struct SGP32_EUICCInfo2, _asn_ctx), asn_MAP_SGP32_EUICCInfo2_tag2el_1, 23, /* Count of tags in the map */ asn_MAP_SGP32_EUICCInfo2_oms_1, /* Optional members */ 13, 0, /* Root/Additions */ 23, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_SGP32_EUICCInfo2 = { "SGP32-EUICCInfo2", "SGP32-EUICCInfo2", &asn_OP_SEQUENCE, asn_DEF_SGP32_EUICCInfo2_tags_1, sizeof(asn_DEF_SGP32_EUICCInfo2_tags_1) /sizeof(asn_DEF_SGP32_EUICCInfo2_tags_1[0]) - 1, /* 1 */ asn_DEF_SGP32_EUICCInfo2_tags_1, /* Same as above */ sizeof(asn_DEF_SGP32_EUICCInfo2_tags_1) /sizeof(asn_DEF_SGP32_EUICCInfo2_tags_1[0]), /* 2 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_SGP32_EUICCInfo2_1, 23, /* Elements count */ &asn_SPC_SGP32_EUICCInfo2_specs_1 /* Additional specs */ };