X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcodec_utils%2FRRC%2FRRCSetup-IEs.c;fp=src%2Fcodec_utils%2FRRC%2FRRCSetup-IEs.c;h=8e562e14f037d6cbc8e4db854e22d085a336d9c9;hb=1b3eb2476cbf89b7583b5e264fef931038e3f695;hp=0000000000000000000000000000000000000000;hpb=ee769160fe5360f0d3ea043deaede2902ae13073;p=o-du%2Fl2.git diff --git a/src/codec_utils/RRC/RRCSetup-IEs.c b/src/codec_utils/RRC/RRCSetup-IEs.c new file mode 100644 index 000000000..8e562e14f --- /dev/null +++ b/src/codec_utils/RRC/RRCSetup-IEs.c @@ -0,0 +1,139 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "NR-RRC-Definitions" + * found in "../../../rrc_15.5.1_asn.asn1" + * `asn1c -D ./rrc_out -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example` + */ + +#include "RRCSetup-IEs.h" + +static int +memb_masterCellGroup_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; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + (void)st; /* Unused variable */ + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_oer_constraints_t asn_OER_memb_masterCellGroup_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +static asn_per_constraints_t asn_PER_memb_masterCellGroup_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 } /* (SIZE(0..MAX)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_nonCriticalExtension_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SEQUENCE_specifics_t asn_SPC_nonCriticalExtension_specs_5 = { + sizeof(struct RRCSetup_IEs__nonCriticalExtension), + offsetof(struct RRCSetup_IEs__nonCriticalExtension, _asn_ctx), + 0, /* No top level tags */ + 0, /* No tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_nonCriticalExtension_5 = { + "nonCriticalExtension", + "nonCriticalExtension", + &asn_OP_SEQUENCE, + asn_DEF_nonCriticalExtension_tags_5, + sizeof(asn_DEF_nonCriticalExtension_tags_5) + /sizeof(asn_DEF_nonCriticalExtension_tags_5[0]) - 1, /* 1 */ + asn_DEF_nonCriticalExtension_tags_5, /* Same as above */ + sizeof(asn_DEF_nonCriticalExtension_tags_5) + /sizeof(asn_DEF_nonCriticalExtension_tags_5[0]), /* 2 */ + { 0, 0, SEQUENCE_constraint }, + 0, 0, /* No members */ + &asn_SPC_nonCriticalExtension_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RRCSetup_IEs_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RRCSetup_IEs, radioBearerConfig), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RadioBearerConfig, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "radioBearerConfig" + }, + { ATF_NOFLAGS, 0, offsetof(struct RRCSetup_IEs, masterCellGroup), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { &asn_OER_memb_masterCellGroup_constr_3, &asn_PER_memb_masterCellGroup_constr_3, memb_masterCellGroup_constraint_1 }, + 0, 0, /* No default value */ + "masterCellGroup" + }, + { ATF_POINTER, 2, offsetof(struct RRCSetup_IEs, lateNonCriticalExtension), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lateNonCriticalExtension" + }, + { ATF_POINTER, 1, offsetof(struct RRCSetup_IEs, nonCriticalExtension), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_nonCriticalExtension_5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nonCriticalExtension" + }, +}; +static const int asn_MAP_RRCSetup_IEs_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_RRCSetup_IEs_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RRCSetup_IEs_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radioBearerConfig */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* masterCellGroup */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* lateNonCriticalExtension */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* nonCriticalExtension */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RRCSetup_IEs_specs_1 = { + sizeof(struct RRCSetup_IEs), + offsetof(struct RRCSetup_IEs, _asn_ctx), + asn_MAP_RRCSetup_IEs_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RRCSetup_IEs_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RRCSetup_IEs = { + "RRCSetup-IEs", + "RRCSetup-IEs", + &asn_OP_SEQUENCE, + asn_DEF_RRCSetup_IEs_tags_1, + sizeof(asn_DEF_RRCSetup_IEs_tags_1) + /sizeof(asn_DEF_RRCSetup_IEs_tags_1[0]), /* 1 */ + asn_DEF_RRCSetup_IEs_tags_1, /* Same as above */ + sizeof(asn_DEF_RRCSetup_IEs_tags_1) + /sizeof(asn_DEF_RRCSetup_IEs_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RRCSetup_IEs_1, + 4, /* Elements count */ + &asn_SPC_RRCSetup_IEs_specs_1 /* Additional specs */ +}; +