From 3379440df89e9fb4ea373ce21b9bbd0ee2ceee0f Mon Sep 17 00:00:00 2001 From: Sukchan Lee Date: Fri, 3 Feb 2017 16:10:22 +0900 Subject: [PATCH] succeed to compile ASN1C with EUROCOM --- lib/asn/Makefile.am | 2 +- lib/asn/asn1c/Makefile.am | 136 +- lib/asn/asn1c/ProtocolIE-Field.c | 21 +- lib/asn/asn1c/ProtocolIE-SingleContainer.c | 1755 ++++++++++++++ lib/asn/asn1c/ProtocolIE-SingleContainer.h | 169 ++ ...1ap-Bearers-SubjectToStatusTransfer-List.c | 2 +- ...1ap-Bearers-SubjectToStatusTransfer-List.h | 6 +- lib/asn/asn1c/S1ap-E-RABInformationList.c | 2 +- lib/asn/asn1c/S1ap-E-RABInformationList.h | 6 +- lib/asn/asn1c/S1ap-E-RABList.c | 2 +- lib/asn/asn1c/S1ap-E-RABList.h | 6 +- .../asn1c/S1ap-E-RABModifyListBearerModRes.c | 2 +- .../asn1c/S1ap-E-RABModifyListBearerModRes.h | 6 +- .../S1ap-E-RABReleaseListBearerRelComp.c | 2 +- .../S1ap-E-RABReleaseListBearerRelComp.h | 6 +- .../asn1c/S1ap-E-RABSetupListBearerSURes.c | 2 +- .../asn1c/S1ap-E-RABSetupListBearerSURes.h | 6 +- lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.c | 2 +- lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.h | 6 +- .../S1ap-E-RABToBeModifiedListBearerModReq.c | 2 +- .../S1ap-E-RABToBeModifiedListBearerModReq.h | 6 +- .../S1ap-E-RABToBeSetupListBearerSUReq.c | 2 +- .../S1ap-E-RABToBeSetupListBearerSUReq.h | 6 +- .../asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.c | 2 +- .../asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.h | 6 +- lib/asn/asn1c/S1ap-ProtocolIE-ID.h | 4 +- lib/asn/asn1c/S1ap-TAIList.c | 2 +- lib/asn/asn1c/S1ap-TAIList.h | 6 +- ...UE-associatedLogicalS1-ConnectionListRes.c | 2 +- ...UE-associatedLogicalS1-ConnectionListRes.h | 6 +- ...associatedLogicalS1-ConnectionListResAck.c | 2 +- ...associatedLogicalS1-ConnectionListResAck.h | 6 +- lib/asn/mme_default_values.h | 81 + lib/asn/s1ap_common.c | 17 +- lib/asn/s1ap_common.h | 4 +- lib/asn/s1ap_decoder.c | 2098 ++++++++--------- lib/asn/s1ap_encoder.c | 634 ++--- lib/asn/s1ap_ies_defs.h | 609 ++--- lib/asn/s1ap_xer_print.c | 496 ++-- lib/asn/support/S1AP-PDU.asn | 44 +- lib/asn/support/asn1prefix.py | 6 +- lib/asn/support/asn1tostruct.py | 26 +- 42 files changed, 4122 insertions(+), 2084 deletions(-) create mode 100644 lib/asn/mme_default_values.h diff --git a/lib/asn/Makefile.am b/lib/asn/Makefile.am index 31b519533..0e93e7968 100644 --- a/lib/asn/Makefile.am +++ b/lib/asn/Makefile.am @@ -25,7 +25,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/lib/asn/asn1c AM_CFLAGS = \ - -Wall -Werror + -Wall -Werror -Wno-incompatible-pointer-types MAINTAINERCLEANFILES = Makefile.in MOSTLYCLEANFILES = *.stackdump diff --git a/lib/asn/asn1c/Makefile.am b/lib/asn/asn1c/Makefile.am index 59ed008da..8956caacc 100644 --- a/lib/asn/asn1c/Makefile.am +++ b/lib/asn/asn1c/Makefile.am @@ -1,4 +1,4 @@ -ASN_MODULE_NODIST_SOURCES= \ +ASN_MODULE_SOURCES= \ S1AP-PDU.c \ S1ap-InitiatingMessage.c \ S1ap-SuccessfulOutcome.c \ @@ -370,7 +370,7 @@ ASN_MODULE_NODIST_SOURCES= \ PrivateIE-Field.c \ S1ap-IE.c -ASN_MODULE_SOURCES= \ +ASN_MODULE_INCLUDES= \ S1AP-PDU.h \ S1ap-InitiatingMessage.h \ S1ap-SuccessfulOutcome.h \ @@ -742,74 +742,74 @@ ASN_MODULE_SOURCES= \ PrivateIE-Field.h \ S1ap-IE.h -ASN_MODULE_SOURCES+=ANY.h -ASN_MODULE_NODIST_SOURCES+=ANY.c -ASN_MODULE_SOURCES+=BOOLEAN.h -ASN_MODULE_NODIST_SOURCES+=BOOLEAN.c -ASN_MODULE_SOURCES+=INTEGER.h -ASN_MODULE_SOURCES+=NativeEnumerated.h -ASN_MODULE_NODIST_SOURCES+=INTEGER.c -ASN_MODULE_SOURCES+=NULL.h -ASN_MODULE_NODIST_SOURCES+=NULL.c -ASN_MODULE_NODIST_SOURCES+=NativeEnumerated.c -ASN_MODULE_SOURCES+=NativeInteger.h -ASN_MODULE_NODIST_SOURCES+=NativeInteger.c -ASN_MODULE_SOURCES+=OBJECT_IDENTIFIER.h -ASN_MODULE_NODIST_SOURCES+=OBJECT_IDENTIFIER.c -ASN_MODULE_SOURCES+=PrintableString.h -ASN_MODULE_NODIST_SOURCES+=PrintableString.c -ASN_MODULE_SOURCES+=asn_SEQUENCE_OF.h -ASN_MODULE_NODIST_SOURCES+=asn_SEQUENCE_OF.c -ASN_MODULE_SOURCES+=asn_SET_OF.h -ASN_MODULE_NODIST_SOURCES+=asn_SET_OF.c -ASN_MODULE_SOURCES+=constr_CHOICE.h -ASN_MODULE_NODIST_SOURCES+=constr_CHOICE.c -ASN_MODULE_SOURCES+=constr_SEQUENCE.h -ASN_MODULE_NODIST_SOURCES+=constr_SEQUENCE.c -ASN_MODULE_SOURCES+=constr_SEQUENCE_OF.h -ASN_MODULE_NODIST_SOURCES+=constr_SEQUENCE_OF.c -ASN_MODULE_SOURCES+=constr_SET_OF.h -ASN_MODULE_NODIST_SOURCES+=constr_SET_OF.c -ASN_MODULE_SOURCES+=asn_application.h -ASN_MODULE_SOURCES+=asn_system.h -ASN_MODULE_SOURCES+=asn_codecs.h -ASN_MODULE_SOURCES+=asn_internal.h -ASN_MODULE_SOURCES+=OCTET_STRING.h -ASN_MODULE_NODIST_SOURCES+=OCTET_STRING.c -ASN_MODULE_SOURCES+=BIT_STRING.h -ASN_MODULE_NODIST_SOURCES+=BIT_STRING.c -ASN_MODULE_NODIST_SOURCES+=asn_codecs_prim.c -ASN_MODULE_SOURCES+=asn_codecs_prim.h -ASN_MODULE_SOURCES+=ber_tlv_length.h -ASN_MODULE_NODIST_SOURCES+=ber_tlv_length.c -ASN_MODULE_SOURCES+=ber_tlv_tag.h -ASN_MODULE_NODIST_SOURCES+=ber_tlv_tag.c -ASN_MODULE_SOURCES+=ber_decoder.h -ASN_MODULE_NODIST_SOURCES+=ber_decoder.c -ASN_MODULE_SOURCES+=der_encoder.h -ASN_MODULE_NODIST_SOURCES+=der_encoder.c -ASN_MODULE_SOURCES+=constr_TYPE.h -ASN_MODULE_NODIST_SOURCES+=constr_TYPE.c -ASN_MODULE_SOURCES+=constraints.h -ASN_MODULE_NODIST_SOURCES+=constraints.c -ASN_MODULE_SOURCES+=xer_support.h -ASN_MODULE_NODIST_SOURCES+=xer_support.c -ASN_MODULE_SOURCES+=xer_decoder.h -ASN_MODULE_NODIST_SOURCES+=xer_decoder.c -ASN_MODULE_SOURCES+=xer_encoder.h -ASN_MODULE_NODIST_SOURCES+=xer_encoder.c -ASN_MODULE_SOURCES+=per_support.h -ASN_MODULE_NODIST_SOURCES+=per_support.c -ASN_MODULE_SOURCES+=per_decoder.h -ASN_MODULE_NODIST_SOURCES+=per_decoder.c -ASN_MODULE_SOURCES+=per_encoder.h -ASN_MODULE_NODIST_SOURCES+=per_encoder.c -ASN_MODULE_SOURCES+=per_opentype.h -ASN_MODULE_NODIST_SOURCES+=per_opentype.c +ASN_MODULE_INCLUDES+=ANY.h +ASN_MODULE_SOURCES+=ANY.c +ASN_MODULE_INCLUDES+=BOOLEAN.h +ASN_MODULE_SOURCES+=BOOLEAN.c +ASN_MODULE_INCLUDES+=INTEGER.h +ASN_MODULE_INCLUDES+=NativeEnumerated.h +ASN_MODULE_SOURCES+=INTEGER.c +ASN_MODULE_INCLUDES+=NULL.h +ASN_MODULE_SOURCES+=NULL.c +ASN_MODULE_SOURCES+=NativeEnumerated.c +ASN_MODULE_INCLUDES+=NativeInteger.h +ASN_MODULE_SOURCES+=NativeInteger.c +ASN_MODULE_INCLUDES+=OBJECT_IDENTIFIER.h +ASN_MODULE_SOURCES+=OBJECT_IDENTIFIER.c +ASN_MODULE_INCLUDES+=PrintableString.h +ASN_MODULE_SOURCES+=PrintableString.c +ASN_MODULE_INCLUDES+=asn_SEQUENCE_OF.h +ASN_MODULE_SOURCES+=asn_SEQUENCE_OF.c +ASN_MODULE_INCLUDES+=asn_SET_OF.h +ASN_MODULE_SOURCES+=asn_SET_OF.c +ASN_MODULE_INCLUDES+=constr_CHOICE.h +ASN_MODULE_SOURCES+=constr_CHOICE.c +ASN_MODULE_INCLUDES+=constr_SEQUENCE.h +ASN_MODULE_SOURCES+=constr_SEQUENCE.c +ASN_MODULE_INCLUDES+=constr_SEQUENCE_OF.h +ASN_MODULE_SOURCES+=constr_SEQUENCE_OF.c +ASN_MODULE_INCLUDES+=constr_SET_OF.h +ASN_MODULE_SOURCES+=constr_SET_OF.c +ASN_MODULE_INCLUDES+=asn_application.h +ASN_MODULE_INCLUDES+=asn_system.h +ASN_MODULE_INCLUDES+=asn_codecs.h +ASN_MODULE_INCLUDES+=asn_internal.h +ASN_MODULE_INCLUDES+=OCTET_STRING.h +ASN_MODULE_SOURCES+=OCTET_STRING.c +ASN_MODULE_INCLUDES+=BIT_STRING.h +ASN_MODULE_SOURCES+=BIT_STRING.c +ASN_MODULE_SOURCES+=asn_codecs_prim.c +ASN_MODULE_INCLUDES+=asn_codecs_prim.h +ASN_MODULE_INCLUDES+=ber_tlv_length.h +ASN_MODULE_SOURCES+=ber_tlv_length.c +ASN_MODULE_INCLUDES+=ber_tlv_tag.h +ASN_MODULE_SOURCES+=ber_tlv_tag.c +ASN_MODULE_INCLUDES+=ber_decoder.h +ASN_MODULE_SOURCES+=ber_decoder.c +ASN_MODULE_INCLUDES+=der_encoder.h +ASN_MODULE_SOURCES+=der_encoder.c +ASN_MODULE_INCLUDES+=constr_TYPE.h +ASN_MODULE_SOURCES+=constr_TYPE.c +ASN_MODULE_INCLUDES+=constraints.h +ASN_MODULE_SOURCES+=constraints.c +ASN_MODULE_INCLUDES+=xer_support.h +ASN_MODULE_SOURCES+=xer_support.c +ASN_MODULE_INCLUDES+=xer_decoder.h +ASN_MODULE_SOURCES+=xer_decoder.c +ASN_MODULE_INCLUDES+=xer_encoder.h +ASN_MODULE_SOURCES+=xer_encoder.c +ASN_MODULE_INCLUDES+=per_support.h +ASN_MODULE_SOURCES+=per_support.c +ASN_MODULE_INCLUDES+=per_decoder.h +ASN_MODULE_SOURCES+=per_decoder.c +ASN_MODULE_INCLUDES+=per_encoder.h +ASN_MODULE_SOURCES+=per_encoder.c +ASN_MODULE_INCLUDES+=per_opentype.h +ASN_MODULE_SOURCES+=per_opentype.c lib_LTLIBRARIES=libasn1c.la -libasn1c_la_SOURCES=$(ASN_MODULE_SOURCES) -nodist_libasn1c_la_SOURCES=$(ASN_MODULE_NODIST_SOURCES) +libasn1c_la_SOURCES=$(ASN_MODULE_INCLUDES) +nodist_libasn1c_la_SOURCES=$(ASN_MODULE_SOURCES) AM_CFLAGS = \ -Wall -Werror -Wno-parentheses-equality diff --git a/lib/asn/asn1c/ProtocolIE-Field.c b/lib/asn/asn1c/ProtocolIE-Field.c index 83cef0db1..f3d2b9de1 100644 --- a/lib/asn/asn1c/ProtocolIE-Field.c +++ b/lib/asn/asn1c/ProtocolIE-Field.c @@ -87,8 +87,8 @@ static asn_per_constraints_t asn_PER_memb_value_constr_4 GCC_NOTUSED = { }; static asn_TYPE_member_t asn_MBR_ProtocolIE_Field_5901P0_1[] = { { ATF_NOFLAGS, 0, offsetof(struct ProtocolIE_Field_5901P0, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_S1ap_ProtocolIE_ID, memb_id_constraint_1, &asn_PER_memb_id_constr_2, @@ -96,17 +96,17 @@ static asn_TYPE_member_t asn_MBR_ProtocolIE_Field_5901P0_1[] = { "id" }, { ATF_NOFLAGS, 0, offsetof(struct ProtocolIE_Field_5901P0, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_S1ap_Criticality, memb_criticality_constraint_1, &asn_PER_memb_criticality_constr_3, 0, "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ProtocolIE_Field_5901P0, value), - -1 /* Ambiguous tag (ANY?) */, - 0, + { ATF_NOFLAGS, 0, offsetof(struct ProtocolIE_Field_5901P0, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ &asn_DEF_ANY, memb_value_constraint_1, &asn_PER_memb_value_constr_4, @@ -118,14 +118,15 @@ static const ber_tlv_tag_t asn_DEF_ProtocolIE_Field_5901P0_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_ProtocolIE_Field_5901P0_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; static asn_SEQUENCE_specifics_t asn_SPC_ProtocolIE_Field_5901P0_specs_1 = { sizeof(struct ProtocolIE_Field_5901P0), offsetof(struct ProtocolIE_Field_5901P0, _asn_ctx), asn_MAP_ProtocolIE_Field_5901P0_tag2el_1, - 2, /* Count of tags in the map */ + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* Start extensions */ -1 /* Stop extensions */ diff --git a/lib/asn/asn1c/ProtocolIE-SingleContainer.c b/lib/asn/asn1c/ProtocolIE-SingleContainer.c index 227e40fca..482b9d262 100644 --- a/lib/asn/asn1c/ProtocolIE-SingleContainer.c +++ b/lib/asn/asn1c/ProtocolIE-SingleContainer.c @@ -113,6 +113,1384 @@ ProtocolIE_SingleContainer_5897P0_decode_aper(asn_codec_ctx_t *opt_codec_ctx, as return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); } +int +ProtocolIE_SingleContainer_5897P1_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P1_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P1_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P1_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P1_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P1_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P1_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P1_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P1_2_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P2_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P2_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P2_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P2_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P2_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P2_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P2_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P2_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P2_3_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P3_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P3_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P3_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P3_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P3_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P3_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P3_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P3_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P3_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P3_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P3_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P3_4_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P4_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P4_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P4_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P4_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P4_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P4_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P4_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P4_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P4_5_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P5_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P5_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P5_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P5_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P5_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P5_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P5_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P5_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P5_6_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P6_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P6_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P6_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P6_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P6_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P6_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P6_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P6_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P6_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P6_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P6_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P6_7_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P7_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P7_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P7_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P7_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P7_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P7_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P7_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P7_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P7_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P7_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P7_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P7_8_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P8_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P8_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P8_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P8_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P8_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P8_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P8_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P8_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P8_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P8_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P8_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P8_9_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P9_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P9_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P9_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P9_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P9_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P9_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P9_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P9_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P9_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P9_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P9_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P9_10_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P10_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P10_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P10_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P10_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P10_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P10_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P10_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P10_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P10_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P10_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P10_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P10_11_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P11_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P11_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P11_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P11_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P11_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P11_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P11_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P11_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P11_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P11_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P11_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P11_12_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P12_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P12_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P12_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P12_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P12_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P12_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P12_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P12_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P12_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P12_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P12_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P12_13_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +int +ProtocolIE_SingleContainer_5897P13_constraint(asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + /* Replace with underlying type checker */ + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + return td->check_constraints(td, sptr, ctfailcb, app_key); +} + +/* + * This type is implemented using ProtocolIE_Field_5901P0, + * so here we adjust the DEF accordingly. + */ +static void +ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) { + td->free_struct = asn_DEF_ProtocolIE_Field_5901P0.free_struct; + td->print_struct = asn_DEF_ProtocolIE_Field_5901P0.print_struct; + td->check_constraints = asn_DEF_ProtocolIE_Field_5901P0.check_constraints; + td->ber_decoder = asn_DEF_ProtocolIE_Field_5901P0.ber_decoder; + td->der_encoder = asn_DEF_ProtocolIE_Field_5901P0.der_encoder; + td->xer_decoder = asn_DEF_ProtocolIE_Field_5901P0.xer_decoder; + td->xer_encoder = asn_DEF_ProtocolIE_Field_5901P0.xer_encoder; + td->uper_decoder = asn_DEF_ProtocolIE_Field_5901P0.uper_decoder; + td->uper_encoder = asn_DEF_ProtocolIE_Field_5901P0.uper_encoder; + td->aper_decoder = asn_DEF_ProtocolIE_Field_5901P0.aper_decoder; + td->aper_encoder = asn_DEF_ProtocolIE_Field_5901P0.aper_encoder; + if(!td->per_constraints) + td->per_constraints = asn_DEF_ProtocolIE_Field_5901P0.per_constraints; + td->elements = asn_DEF_ProtocolIE_Field_5901P0.elements; + td->elements_count = asn_DEF_ProtocolIE_Field_5901P0.elements_count; + td->specifics = asn_DEF_ProtocolIE_Field_5901P0.specifics; +} + +void +ProtocolIE_SingleContainer_5897P13_free(asn_TYPE_descriptor_t *td, + void *struct_ptr, int contents_only) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + td->free_struct(td, struct_ptr, contents_only); +} + +int +ProtocolIE_SingleContainer_5897P13_print(asn_TYPE_descriptor_t *td, const void *struct_ptr, + int ilevel, asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->print_struct(td, struct_ptr, ilevel, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P13_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const void *bufptr, size_t size, int tag_mode) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P13_encode_der(asn_TYPE_descriptor_t *td, + void *structure, int tag_mode, ber_tlv_tag_t tag, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->der_encoder(td, structure, tag_mode, tag, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P13_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + void **structure, const char *opt_mname, const void *bufptr, size_t size) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P13_encode_xer(asn_TYPE_descriptor_t *td, void *structure, + int ilevel, enum xer_encoder_flags_e flags, + asn_app_consume_bytes_f *cb, void *app_key) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->xer_encoder(td, structure, ilevel, flags, cb, app_key); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P13_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P13_encode_uper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->uper_encoder(td, constraints, structure, per_out); +} + +asn_enc_rval_t +ProtocolIE_SingleContainer_5897P13_encode_aper(asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, + void *structure, asn_per_outp_t *per_out) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->aper_encoder(td, constraints, structure, per_out); +} + +asn_dec_rval_t +ProtocolIE_SingleContainer_5897P13_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td, + asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) { + ProtocolIE_SingleContainer_5897P13_14_inherit_TYPE_descriptor(td); + return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data); +} + static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P0_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; @@ -142,3 +1520,380 @@ asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P0 = { 0 /* No specifics */ }; +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P1 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P1_free, + ProtocolIE_SingleContainer_5897P1_print, + ProtocolIE_SingleContainer_5897P1_constraint, + ProtocolIE_SingleContainer_5897P1_decode_ber, + ProtocolIE_SingleContainer_5897P1_encode_der, + ProtocolIE_SingleContainer_5897P1_decode_xer, + ProtocolIE_SingleContainer_5897P1_encode_xer, + ProtocolIE_SingleContainer_5897P1_decode_uper, + ProtocolIE_SingleContainer_5897P1_encode_uper, + ProtocolIE_SingleContainer_5897P1_decode_aper, + ProtocolIE_SingleContainer_5897P1_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P1_tags_2[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P2 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P2_free, + ProtocolIE_SingleContainer_5897P2_print, + ProtocolIE_SingleContainer_5897P2_constraint, + ProtocolIE_SingleContainer_5897P2_decode_ber, + ProtocolIE_SingleContainer_5897P2_encode_der, + ProtocolIE_SingleContainer_5897P2_decode_xer, + ProtocolIE_SingleContainer_5897P2_encode_xer, + ProtocolIE_SingleContainer_5897P2_decode_uper, + ProtocolIE_SingleContainer_5897P2_encode_uper, + ProtocolIE_SingleContainer_5897P2_decode_aper, + ProtocolIE_SingleContainer_5897P2_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P2_tags_3[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P3 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P3_free, + ProtocolIE_SingleContainer_5897P3_print, + ProtocolIE_SingleContainer_5897P3_constraint, + ProtocolIE_SingleContainer_5897P3_decode_ber, + ProtocolIE_SingleContainer_5897P3_encode_der, + ProtocolIE_SingleContainer_5897P3_decode_xer, + ProtocolIE_SingleContainer_5897P3_encode_xer, + ProtocolIE_SingleContainer_5897P3_decode_uper, + ProtocolIE_SingleContainer_5897P3_encode_uper, + ProtocolIE_SingleContainer_5897P3_decode_aper, + ProtocolIE_SingleContainer_5897P3_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P3_tags_4[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P4 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P4_free, + ProtocolIE_SingleContainer_5897P4_print, + ProtocolIE_SingleContainer_5897P4_constraint, + ProtocolIE_SingleContainer_5897P4_decode_ber, + ProtocolIE_SingleContainer_5897P4_encode_der, + ProtocolIE_SingleContainer_5897P4_decode_xer, + ProtocolIE_SingleContainer_5897P4_encode_xer, + ProtocolIE_SingleContainer_5897P4_decode_uper, + ProtocolIE_SingleContainer_5897P4_encode_uper, + ProtocolIE_SingleContainer_5897P4_decode_aper, + ProtocolIE_SingleContainer_5897P4_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P4_tags_5[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P5 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P5_free, + ProtocolIE_SingleContainer_5897P5_print, + ProtocolIE_SingleContainer_5897P5_constraint, + ProtocolIE_SingleContainer_5897P5_decode_ber, + ProtocolIE_SingleContainer_5897P5_encode_der, + ProtocolIE_SingleContainer_5897P5_decode_xer, + ProtocolIE_SingleContainer_5897P5_encode_xer, + ProtocolIE_SingleContainer_5897P5_decode_uper, + ProtocolIE_SingleContainer_5897P5_encode_uper, + ProtocolIE_SingleContainer_5897P5_decode_aper, + ProtocolIE_SingleContainer_5897P5_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P5_tags_6[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P6 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P6_free, + ProtocolIE_SingleContainer_5897P6_print, + ProtocolIE_SingleContainer_5897P6_constraint, + ProtocolIE_SingleContainer_5897P6_decode_ber, + ProtocolIE_SingleContainer_5897P6_encode_der, + ProtocolIE_SingleContainer_5897P6_decode_xer, + ProtocolIE_SingleContainer_5897P6_encode_xer, + ProtocolIE_SingleContainer_5897P6_decode_uper, + ProtocolIE_SingleContainer_5897P6_encode_uper, + ProtocolIE_SingleContainer_5897P6_decode_aper, + ProtocolIE_SingleContainer_5897P6_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P6_tags_7[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P7 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P7_free, + ProtocolIE_SingleContainer_5897P7_print, + ProtocolIE_SingleContainer_5897P7_constraint, + ProtocolIE_SingleContainer_5897P7_decode_ber, + ProtocolIE_SingleContainer_5897P7_encode_der, + ProtocolIE_SingleContainer_5897P7_decode_xer, + ProtocolIE_SingleContainer_5897P7_encode_xer, + ProtocolIE_SingleContainer_5897P7_decode_uper, + ProtocolIE_SingleContainer_5897P7_encode_uper, + ProtocolIE_SingleContainer_5897P7_decode_aper, + ProtocolIE_SingleContainer_5897P7_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P7_tags_8[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P8 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P8_free, + ProtocolIE_SingleContainer_5897P8_print, + ProtocolIE_SingleContainer_5897P8_constraint, + ProtocolIE_SingleContainer_5897P8_decode_ber, + ProtocolIE_SingleContainer_5897P8_encode_der, + ProtocolIE_SingleContainer_5897P8_decode_xer, + ProtocolIE_SingleContainer_5897P8_encode_xer, + ProtocolIE_SingleContainer_5897P8_decode_uper, + ProtocolIE_SingleContainer_5897P8_encode_uper, + ProtocolIE_SingleContainer_5897P8_decode_aper, + ProtocolIE_SingleContainer_5897P8_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P8_tags_9[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P9 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P9_free, + ProtocolIE_SingleContainer_5897P9_print, + ProtocolIE_SingleContainer_5897P9_constraint, + ProtocolIE_SingleContainer_5897P9_decode_ber, + ProtocolIE_SingleContainer_5897P9_encode_der, + ProtocolIE_SingleContainer_5897P9_decode_xer, + ProtocolIE_SingleContainer_5897P9_encode_xer, + ProtocolIE_SingleContainer_5897P9_decode_uper, + ProtocolIE_SingleContainer_5897P9_encode_uper, + ProtocolIE_SingleContainer_5897P9_decode_aper, + ProtocolIE_SingleContainer_5897P9_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P9_tags_10[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P10 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P10_free, + ProtocolIE_SingleContainer_5897P10_print, + ProtocolIE_SingleContainer_5897P10_constraint, + ProtocolIE_SingleContainer_5897P10_decode_ber, + ProtocolIE_SingleContainer_5897P10_encode_der, + ProtocolIE_SingleContainer_5897P10_decode_xer, + ProtocolIE_SingleContainer_5897P10_encode_xer, + ProtocolIE_SingleContainer_5897P10_decode_uper, + ProtocolIE_SingleContainer_5897P10_encode_uper, + ProtocolIE_SingleContainer_5897P10_decode_aper, + ProtocolIE_SingleContainer_5897P10_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P10_tags_11[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P11 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P11_free, + ProtocolIE_SingleContainer_5897P11_print, + ProtocolIE_SingleContainer_5897P11_constraint, + ProtocolIE_SingleContainer_5897P11_decode_ber, + ProtocolIE_SingleContainer_5897P11_encode_der, + ProtocolIE_SingleContainer_5897P11_decode_xer, + ProtocolIE_SingleContainer_5897P11_encode_xer, + ProtocolIE_SingleContainer_5897P11_decode_uper, + ProtocolIE_SingleContainer_5897P11_encode_uper, + ProtocolIE_SingleContainer_5897P11_decode_aper, + ProtocolIE_SingleContainer_5897P11_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P11_tags_12[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P12 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P12_free, + ProtocolIE_SingleContainer_5897P12_print, + ProtocolIE_SingleContainer_5897P12_constraint, + ProtocolIE_SingleContainer_5897P12_decode_ber, + ProtocolIE_SingleContainer_5897P12_encode_der, + ProtocolIE_SingleContainer_5897P12_decode_xer, + ProtocolIE_SingleContainer_5897P12_encode_xer, + ProtocolIE_SingleContainer_5897P12_decode_uper, + ProtocolIE_SingleContainer_5897P12_encode_uper, + ProtocolIE_SingleContainer_5897P12_decode_aper, + ProtocolIE_SingleContainer_5897P12_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P12_tags_13[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P13 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + ProtocolIE_SingleContainer_5897P13_free, + ProtocolIE_SingleContainer_5897P13_print, + ProtocolIE_SingleContainer_5897P13_constraint, + ProtocolIE_SingleContainer_5897P13_decode_ber, + ProtocolIE_SingleContainer_5897P13_encode_der, + ProtocolIE_SingleContainer_5897P13_decode_xer, + ProtocolIE_SingleContainer_5897P13_encode_xer, + ProtocolIE_SingleContainer_5897P13_decode_uper, + ProtocolIE_SingleContainer_5897P13_encode_uper, + ProtocolIE_SingleContainer_5897P13_decode_aper, + ProtocolIE_SingleContainer_5897P13_encode_aper, + 0, /* Use generic outmost tag fetcher */ + asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14, + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_5897P13_tags_14[0]), /* 1 */ + 0, /* No PER visible constraints */ + 0, 0, /* Defined elsewhere */ + 0 /* No specifics */ +}; + diff --git a/lib/asn/asn1c/ProtocolIE-SingleContainer.h b/lib/asn/asn1c/ProtocolIE-SingleContainer.h index e72e0f4ff..cff1ac857 100644 --- a/lib/asn/asn1c/ProtocolIE-SingleContainer.h +++ b/lib/asn/asn1c/ProtocolIE-SingleContainer.h @@ -20,6 +20,19 @@ extern "C" { /* ProtocolIE-SingleContainer */ typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P0_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P1_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P2_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P3_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P4_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P5_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P6_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P7_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P8_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P9_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P10_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P11_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P12_t; +typedef ProtocolIE_Field_5901P0_t ProtocolIE_SingleContainer_5897P13_t; /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P0; @@ -34,6 +47,162 @@ per_type_decoder_f ProtocolIE_SingleContainer_5897P0_decode_uper; per_type_encoder_f ProtocolIE_SingleContainer_5897P0_encode_uper; per_type_decoder_f ProtocolIE_SingleContainer_5897P0_decode_aper; per_type_encoder_f ProtocolIE_SingleContainer_5897P0_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P1; +asn_struct_free_f ProtocolIE_SingleContainer_5897P1_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P1_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P1_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P1_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P1_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P1_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P1_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P1_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P1_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P1_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P1_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P2; +asn_struct_free_f ProtocolIE_SingleContainer_5897P2_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P2_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P2_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P2_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P2_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P2_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P2_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P2_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P2_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P2_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P2_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P3; +asn_struct_free_f ProtocolIE_SingleContainer_5897P3_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P3_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P3_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P3_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P3_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P3_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P3_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P3_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P3_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P3_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P3_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P4; +asn_struct_free_f ProtocolIE_SingleContainer_5897P4_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P4_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P4_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P4_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P4_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P4_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P4_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P4_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P4_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P4_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P4_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P5; +asn_struct_free_f ProtocolIE_SingleContainer_5897P5_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P5_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P5_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P5_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P5_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P5_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P5_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P5_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P5_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P5_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P5_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P6; +asn_struct_free_f ProtocolIE_SingleContainer_5897P6_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P6_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P6_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P6_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P6_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P6_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P6_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P6_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P6_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P6_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P6_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P7; +asn_struct_free_f ProtocolIE_SingleContainer_5897P7_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P7_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P7_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P7_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P7_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P7_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P7_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P7_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P7_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P7_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P7_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P8; +asn_struct_free_f ProtocolIE_SingleContainer_5897P8_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P8_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P8_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P8_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P8_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P8_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P8_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P8_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P8_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P8_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P8_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P9; +asn_struct_free_f ProtocolIE_SingleContainer_5897P9_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P9_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P9_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P9_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P9_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P9_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P9_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P9_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P9_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P9_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P9_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P10; +asn_struct_free_f ProtocolIE_SingleContainer_5897P10_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P10_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P10_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P10_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P10_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P10_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P10_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P10_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P10_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P10_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P10_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P11; +asn_struct_free_f ProtocolIE_SingleContainer_5897P11_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P11_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P11_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P11_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P11_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P11_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P11_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P11_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P11_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P11_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P11_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P12; +asn_struct_free_f ProtocolIE_SingleContainer_5897P12_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P12_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P12_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P12_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P12_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P12_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P12_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P12_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P12_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P12_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P12_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_5897P13; +asn_struct_free_f ProtocolIE_SingleContainer_5897P13_free; +asn_struct_print_f ProtocolIE_SingleContainer_5897P13_print; +asn_constr_check_f ProtocolIE_SingleContainer_5897P13_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_5897P13_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_5897P13_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_5897P13_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_5897P13_encode_xer; +per_type_decoder_f ProtocolIE_SingleContainer_5897P13_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P13_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_5897P13_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_5897P13_encode_aper; #ifdef __cplusplus } diff --git a/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.c b/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.c index 89a337125..77de353cd 100644 --- a/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.c +++ b/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_Bearers_SubjectToStatusTransfer_List_1[] = { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.h b/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.h index 6b78ab9b8..ff5593984 100644 --- a/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.h +++ b/lib/asn/asn1c/S1ap-Bearers-SubjectToStatusTransfer-List.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-Bearers-SubjectToStatusTransfer-List */ typedef struct S1ap_Bearers_SubjectToStatusTransfer_List { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_List; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_Bearers_SubjectToStatusTransfer_List_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABInformationList.c b/lib/asn/asn1c/S1ap-E-RABInformationList.c index bac907878..34d47f0b7 100644 --- a/lib/asn/asn1c/S1ap-E-RABInformationList.c +++ b/lib/asn/asn1c/S1ap-E-RABInformationList.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABInformationList_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABInformationList.h b/lib/asn/asn1c/S1ap-E-RABInformationList.h index 4067edb0a..61c2538de 100644 --- a/lib/asn/asn1c/S1ap-E-RABInformationList.h +++ b/lib/asn/asn1c/S1ap-E-RABInformationList.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABInformationList */ typedef struct S1ap_E_RABInformationList { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABInformationList; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABInformationList_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABList.c b/lib/asn/asn1c/S1ap-E-RABList.c index f538fcf21..94d07b4f5 100644 --- a/lib/asn/asn1c/S1ap-E-RABList.c +++ b/lib/asn/asn1c/S1ap-E-RABList.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABList_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABList.h b/lib/asn/asn1c/S1ap-E-RABList.h index cd3464fee..1a9653d53 100644 --- a/lib/asn/asn1c/S1ap-E-RABList.h +++ b/lib/asn/asn1c/S1ap-E-RABList.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABList */ typedef struct S1ap_E_RABList { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABList; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABList_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.c b/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.c index d17bd8f43..b8ed685ef 100644 --- a/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.c +++ b/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABModifyListBearerModRes_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.h b/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.h index f93fadfd3..eb4758b4e 100644 --- a/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.h +++ b/lib/asn/asn1c/S1ap-E-RABModifyListBearerModRes.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABModifyListBearerModRes */ typedef struct S1ap_E_RABModifyListBearerModRes { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABModifyListBearerModRes; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABModifyListBearerModRes_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.c b/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.c index 14b82fbb5..586d4601b 100644 --- a/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.c +++ b/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABReleaseListBearerRelComp_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.h b/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.h index 4d80a6759..995a0cbfc 100644 --- a/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.h +++ b/lib/asn/asn1c/S1ap-E-RABReleaseListBearerRelComp.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABReleaseListBearerRelComp */ typedef struct S1ap_E_RABReleaseListBearerRelComp { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABReleaseListBearerRelComp; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABReleaseListBearerRelComp_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.c b/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.c index 47ea8e8de..0a61ef029 100644 --- a/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.c +++ b/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABSetupListBearerSURes_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.h b/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.h index 939241330..679cacc29 100644 --- a/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.h +++ b/lib/asn/asn1c/S1ap-E-RABSetupListBearerSURes.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABSetupListBearerSURes */ typedef struct S1ap_E_RABSetupListBearerSURes { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABSetupListBearerSURes; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABSetupListBearerSURes_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.c b/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.c index c4adb9d67..d383cb7e1 100644 --- a/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.c +++ b/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABSetupListCtxtSURes_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.h b/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.h index f23cf94aa..63faab478 100644 --- a/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.h +++ b/lib/asn/asn1c/S1ap-E-RABSetupListCtxtSURes.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABSetupListCtxtSURes */ typedef struct S1ap_E_RABSetupListCtxtSURes { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABSetupListCtxtSURes; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABSetupListCtxtSURes_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.c b/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.c index 9d1ca18f7..4cfbb630e 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.c +++ b/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABToBeModifiedListBearerModReq_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.h b/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.h index 0ca25651d..10631a82d 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.h +++ b/lib/asn/asn1c/S1ap-E-RABToBeModifiedListBearerModReq.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABToBeModifiedListBearerModReq */ typedef struct S1ap_E_RABToBeModifiedListBearerModReq { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABToBeModifiedListBearerModReq_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.c b/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.c index 15e5b92b2..95190d8cc 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.c +++ b/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABToBeSetupListBearerSUReq_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.h b/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.h index 1a239ed33..58a1e5dd8 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.h +++ b/lib/asn/asn1c/S1ap-E-RABToBeSetupListBearerSUReq.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABToBeSetupListBearerSUReq */ typedef struct S1ap_E_RABToBeSetupListBearerSUReq { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABToBeSetupListBearerSUReq_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.c b/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.c index 65cee6ec2..995f4c92f 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.c +++ b/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_E_RABToBeSetupListCtxtSUReq_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.h b/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.h index 9b5adf468..16cebad2f 100644 --- a/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.h +++ b/lib/asn/asn1c/S1ap-E-RABToBeSetupListCtxtSUReq.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-E-RABToBeSetupListCtxtSUReq */ typedef struct S1ap_E_RABToBeSetupListCtxtSUReq { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_E_RABToBeSetupListCtxtSUReq_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-ProtocolIE-ID.h b/lib/asn/asn1c/S1ap-ProtocolIE-ID.h index 10851e8d6..d07d192fa 100644 --- a/lib/asn/asn1c/S1ap-ProtocolIE-ID.h +++ b/lib/asn/asn1c/S1ap-ProtocolIE-ID.h @@ -158,9 +158,9 @@ typedef enum S1ap_ProtocolIE_ID { S1ap_ProtocolIE_ID_id_x2TNLConfigurationInfo = 152, S1ap_ProtocolIE_ID_id_eNBX2ExtendedTransportLayerAddresses = 153, S1ap_ProtocolIE_ID_id_GUMMEIList = 154, - S1ap_ProtocolIE_ID_id_GW_S1ap_S1ap_TransportLayerAddress = 155, + S1ap_ProtocolIE_ID_id_GW_TransportLayerAddress = 155, S1ap_ProtocolIE_ID_id_Correlation_ID = 156, - S1ap_ProtocolIE_ID_id_SourceMME_S1ap_S1ap_GUMMEI = 157, + S1ap_ProtocolIE_ID_id_SourceMME_GUMMEI = 157, S1ap_ProtocolIE_ID_id_MME_UE_S1AP_ID_2 = 158, S1ap_ProtocolIE_ID_id_RegisteredLAI = 159, S1ap_ProtocolIE_ID_id_RelayNode_Indicator = 160, diff --git a/lib/asn/asn1c/S1ap-TAIList.c b/lib/asn/asn1c/S1ap-TAIList.c index b740b2949..cd089950c 100644 --- a/lib/asn/asn1c/S1ap-TAIList.c +++ b/lib/asn/asn1c/S1ap-TAIList.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_TAIList_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-TAIList.h b/lib/asn/asn1c/S1ap-TAIList.h index d02b0d4f6..fceca2c4f 100644 --- a/lib/asn/asn1c/S1ap-TAIList.h +++ b/lib/asn/asn1c/S1ap-TAIList.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-TAIList */ typedef struct S1ap_TAIList { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_TAIList; #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_TAIList_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.c b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.c index 82760fa82..c91d22ccf 100644 --- a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.c +++ b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_UE_associatedLogicalS1_ConnectionListRes_1 { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.h b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.h index bd2c4584b..455ded488 100644 --- a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.h +++ b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListRes.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-UE-associatedLogicalS1-ConnectionListRes */ typedef struct S1ap_UE_associatedLogicalS1_ConnectionListRes { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListR #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_UE_associatedLogicalS1_ConnectionListRes_H_ */ #include diff --git a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.c b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.c index b405d40ff..f8c06f42f 100644 --- a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.c +++ b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.c @@ -16,7 +16,7 @@ static asn_TYPE_member_t asn_MBR_S1ap_UE_associatedLogicalS1_ConnectionListResAc { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_S1ap_IE, + &asn_DEF_ProtocolIE_Field_5901P0, 0, /* Defer constraints checking to the member type */ 0, /* No PER visible constraints */ 0, diff --git a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.h b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.h index d1730d672..a6cd63571 100644 --- a/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.h +++ b/lib/asn/asn1c/S1ap-UE-associatedLogicalS1-ConnectionListResAck.h @@ -20,11 +20,11 @@ extern "C" { #endif /* Forward declarations */ -struct S1ap_IE; +struct ProtocolIE_Field; /* S1ap-UE-associatedLogicalS1-ConnectionListResAck */ typedef struct S1ap_UE_associatedLogicalS1_ConnectionListResAck { - A_SEQUENCE_OF(struct S1ap_IE) list; + A_SEQUENCE_OF(struct ProtocolIE_Field) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -38,7 +38,7 @@ extern asn_TYPE_descriptor_t asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListR #endif /* Referred external types */ -#include "S1ap-IE.h" +#include "ProtocolIE-Field.h" #endif /* _S1ap_UE_associatedLogicalS1_ConnectionListResAck_H_ */ #include diff --git a/lib/asn/mme_default_values.h b/lib/asn/mme_default_values.h new file mode 100644 index 000000000..31a38a89b --- /dev/null +++ b/lib/asn/mme_default_values.h @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2015, EURECOM (www.eurecom.fr) + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those + * of the authors and should not be interpreted as representing official policies, + * either expressed or implied, of the FreeBSD Project. + */ + +#ifndef FILE_MME_DEFAULT_VALUES_SEEN +#define FILE_MME_DEFAULT_VALUES_SEEN + +/******************************************************************************* + * Timer Constants + ******************************************************************************/ +#define MME_STATISTIC_TIMER_S (60) + +/******************************************************************************* + * GTPV1 User Plane Constants + ******************************************************************************/ +#define GTPV1_U_PORT_NUMBER (2152) + +/******************************************************************************* + * S1AP Constants + ******************************************************************************/ + +#define S1AP_PORT_NUMBER (36412) ///< S1AP SCTP IANA ASSIGNED Port Number +#define S1AP_SCTP_PPID (18) ///< S1AP SCTP Payload Protocol Identifier (PPID) + +#define S1AP_OUTCOME_TIMER_DEFAULT (5) ///< S1AP Outcome drop timer (s) + +/******************************************************************************* + * S6A Constants + ******************************************************************************/ + +#define S6A_CONF_FILE "../S6A/freediameter/s6a.conf" + +/******************************************************************************* + * SCTP Constants + ******************************************************************************/ + +#define SCTP_RECV_BUFFER_SIZE (1 << 16) +#define SCTP_OUT_STREAMS (32) +#define SCTP_IN_STREAMS (32) +#define SCTP_MAX_ATTEMPTS (5) + +/******************************************************************************* + * MME global definitions + ******************************************************************************/ + +#define MMEC (0) +#define MMEGID (0) +#define PLMN_MCC (208) +#define PLMN_MNC (34) +#define PLMN_MNC_LEN (2) +#define PLMN_TAC (1) + +#define RELATIVE_CAPACITY (15) + + +#endif /* FILE_MME_DEFAULT_VALUES_SEEN */ diff --git a/lib/asn/s1ap_common.c b/lib/asn/s1ap_common.c index 869caeda1..ad3500888 100644 --- a/lib/asn/s1ap_common.c +++ b/lib/asn/s1ap_common.c @@ -31,12 +31,21 @@ #include "s1ap_common.h" #include "S1AP-PDU.h" +#if 0 /* modified by acetcom */ #include "dynamic_memory_check.h" #include "log.h" +#else +#include "core_debug.h" +#endif int asn_debug = 0; int asn1_xer_print = 0; +void free_wrapper(void *ptr) +{ + free(ptr); + ptr = NULL; +} ssize_t s1ap_generate_initiating_message ( @@ -66,7 +75,7 @@ s1ap_generate_initiating_message ( ASN_STRUCT_FREE_CONTENTS_ONLY (*td, sptr); if ((encoded = aper_encode_to_new_buffer (&asn_DEF_S1AP_PDU, 0, &pdu, (void **)buffer)) < 0) { - OAILOG_ERROR (LOG_S1AP, "Encoding of %s failed\n", td->name); + d_error("Encoding of %s failed\n", td->name); return -1; } @@ -102,7 +111,7 @@ s1ap_generate_successfull_outcome ( ASN_STRUCT_FREE_CONTENTS_ONLY (*td, sptr); if ((encoded = aper_encode_to_new_buffer (&asn_DEF_S1AP_PDU, 0, &pdu, (void **)buffer)) < 0) { - OAILOG_ERROR (LOG_S1AP, "Encoding of %s failed\n", td->name); + d_error("Encoding of %s failed\n", td->name); return -1; } @@ -138,7 +147,7 @@ s1ap_generate_unsuccessfull_outcome ( ASN_STRUCT_FREE_CONTENTS_ONLY (*td, sptr); if ((encoded = aper_encode_to_new_buffer (&asn_DEF_S1AP_PDU, 0, &pdu, (void **)buffer)) < 0) { - OAILOG_ERROR (LOG_S1AP, "Encoding of %s failed\n", td->name); + d_error("Encoding of %s failed\n", td->name); return -1; } @@ -165,7 +174,7 @@ s1ap_new_ie ( buff->criticality = criticality; if (ANY_fromType_aper (&buff->value, type, sptr) < 0) { - OAILOG_ERROR (LOG_S1AP, "Encoding of %s failed\n", type->name); + d_error("Encoding of %s failed\n", type->name); free_wrapper (buff); return NULL; } diff --git a/lib/asn/s1ap_common.h b/lib/asn/s1ap_common.h index 242074f9d..83ba7c199 100644 --- a/lib/asn/s1ap_common.h +++ b/lib/asn/s1ap_common.h @@ -386,7 +386,7 @@ extern int asn_debug; extern int asn1_xer_print; # include "mme_default_values.h" -#if 0 +#if 0 /* modified by acetcom */ # include "common_types.h" #endif @@ -395,7 +395,7 @@ struct s1ap_message_s; /** \brief Function callback prototype. **/ -#if 0 +#if 0 /* modified by acetcom */ typedef int (*s1ap_message_decoded_callback)( const sctp_assoc_id_t assoc_id, const sctp_stream_id_t stream, diff --git a/lib/asn/s1ap_decoder.c b/lib/asn/s1ap_decoder.c index 5929f517b..87faa5b05 100644 --- a/lib/asn/s1ap_decoder.c +++ b/lib/asn/s1ap_decoder.c @@ -30,12 +30,13 @@ /******************************************************************************* * This file had been created by asn1tostruct.py script v1.0.2 * Please do not modify this file but regenerate it via script. - * Created on: 2017-02-03 13:33:42.653359 by acetcom + * Created on: 2017-02-03 16:04:58.969044 by acetcom * from ['S1AP-PDU.asn'] ******************************************************************************/ +#define TRACE_MODULE s1ap_decoder #include "s1ap_common.h" #include "s1ap_ies_defs.h" -#include "log.h" +#include "core_debug.h" int s1ap_decode_s1ap_deactivatetraceies( S1ap_DeactivateTraceIEs_t *s1ap_DeactivateTraceIEs, @@ -48,7 +49,7 @@ int s1ap_decode_s1ap_deactivatetraceies( assert(any_p != NULL); assert(s1ap_DeactivateTraceIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_DeactivateTraceIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_DeactivateTraceIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_DeactivateTrace, (void**)&s1ap_DeactivateTrace_p); @@ -61,7 +62,7 @@ int s1ap_decode_s1ap_deactivatetraceies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -76,7 +77,7 @@ int s1ap_decode_s1ap_deactivatetraceies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -91,7 +92,7 @@ int s1ap_decode_s1ap_deactivatetraceies( S1ap_E_UTRAN_Trace_ID_t *s1apEUTRANTraceID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_UTRAN_Trace_ID, (void**)&s1apEUTRANTraceID_p); if (tempDecoded < 0 || s1apEUTRANTraceID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_UTRAN_Trace_ID failed\n"); + d_error("Decoding of IE e_UTRAN_Trace_ID failed\n"); if (s1apEUTRANTraceID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_UTRAN_Trace_ID, s1apEUTRANTraceID_p); return -1; @@ -102,49 +103,7 @@ int s1ap_decode_s1ap_deactivatetraceies( memcpy(&s1ap_DeactivateTraceIEs->e_UTRAN_Trace_ID, s1apEUTRANTraceID_p, sizeof(S1ap_E_UTRAN_Trace_ID_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_deactivatetraceies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabreleaseitembearerrelcompies( - S1ap_E_RABReleaseItemBearerRelCompIEs_t *s1ap_E_RABReleaseItemBearerRelCompIEs, - ANY_t *any_p) { - - S1ap_E_RABReleaseListBearerRelComp_t s1ap_E_RABReleaseListBearerRelComp; - S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp_p = &s1ap_E_RABReleaseListBearerRelComp; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABReleaseItemBearerRelCompIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABReleaseItemBearerRelCompIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABReleaseListBearerRelComp, (void**)&s1ap_E_RABReleaseListBearerRelComp_p); - - for (i = 0; i < s1ap_E_RABReleaseListBearerRelComp_p->s1ap_E_RABReleaseListBearerRelComp_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABReleaseListBearerRelComp_p->s1ap_E_RABReleaseListBearerRelComp_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABReleaseItemBearerRelComp: - { - S1ap_E_RABReleaseItemBearerRelComp_t *s1apERABReleaseItemBearerRelComp_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, (void**)&s1apERABReleaseItemBearerRelComp_p); - if (tempDecoded < 0 || s1apERABReleaseItemBearerRelComp_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABReleaseItemBearerRelComp failed\n"); - if (s1apERABReleaseItemBearerRelComp_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p); - memcpy(&s1ap_E_RABReleaseItemBearerRelCompIEs->e_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p, sizeof(S1ap_E_RABReleaseItemBearerRelComp_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabreleaseitembearerrelcompies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_deactivatetraceies\n", (int)ie_p->id); return -1; } } @@ -162,7 +121,7 @@ int s1ap_decode_s1ap_enbdirectinformationtransferies( assert(any_p != NULL); assert(s1ap_ENBDirectInformationTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBDirectInformationTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBDirectInformationTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBDirectInformationTransfer, (void**)&s1ap_ENBDirectInformationTransfer_p); @@ -175,7 +134,7 @@ int s1ap_decode_s1ap_enbdirectinformationtransferies( S1ap_Inter_SystemInformationTransferType_t *s1apInterSystemInformationTransferType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Inter_SystemInformationTransferType, (void**)&s1apInterSystemInformationTransferType_p); if (tempDecoded < 0 || s1apInterSystemInformationTransferType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE inter_SystemInformationTransferTypeEDT failed\n"); + d_error("Decoding of IE inter_SystemInformationTransferTypeEDT failed\n"); if (s1apInterSystemInformationTransferType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Inter_SystemInformationTransferType, s1apInterSystemInformationTransferType_p); return -1; @@ -186,7 +145,7 @@ int s1ap_decode_s1ap_enbdirectinformationtransferies( memcpy(&s1ap_ENBDirectInformationTransferIEs->inter_SystemInformationTransferTypeEDT, s1apInterSystemInformationTransferType_p, sizeof(S1ap_Inter_SystemInformationTransferType_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbdirectinformationtransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbdirectinformationtransferies\n", (int)ie_p->id); return -1; } } @@ -204,7 +163,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( assert(any_p != NULL); assert(s1ap_E_RABReleaseResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABReleaseResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABReleaseResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABReleaseResponse, (void**)&s1ap_E_RABReleaseResponse_p); @@ -217,7 +176,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -232,7 +191,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -249,7 +208,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( s1ap_E_RABReleaseResponseIEs->presenceMask |= S1AP_E_RABRELEASERESPONSEIES_E_RABRELEASELISTBEARERRELCOMP_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABReleaseListBearerRelComp, (void**)&s1apERABReleaseListBearerRelComp_p); if (tempDecoded < 0 || s1apERABReleaseListBearerRelComp_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABReleaseListBearerRelComp failed\n"); + d_error("Decoding of IE e_RABReleaseListBearerRelComp failed\n"); if (s1apERABReleaseListBearerRelComp_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABReleaseListBearerRelComp, s1apERABReleaseListBearerRelComp_p); return -1; @@ -257,7 +216,10 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABReleaseListBearerRelComp, s1apERABReleaseListBearerRelComp_p); - memcpy(&s1ap_E_RABReleaseResponseIEs->e_RABReleaseListBearerRelComp, s1apERABReleaseListBearerRelComp_p, sizeof(S1ap_E_RABReleaseListBearerRelComp_t)); + if (s1ap_decode_s1ap_e_rabreleaselistbearerrelcomp(&s1ap_E_RABReleaseResponseIEs->e_RABReleaseListBearerRelComp, s1apERABReleaseListBearerRelComp_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABReleaseListBearerRelComp failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABReleaseListBearerRelComp, s1apERABReleaseListBearerRelComp_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_E_RABFailedToReleaseList: @@ -266,7 +228,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( s1ap_E_RABReleaseResponseIEs->presenceMask |= S1AP_E_RABRELEASERESPONSEIES_E_RABFAILEDTORELEASELIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedToReleaseList failed\n"); + d_error("Decoding of IE e_RABFailedToReleaseList failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -274,7 +236,10 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_E_RABReleaseResponseIEs->e_RABFailedToReleaseList, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_E_RABReleaseResponseIEs->e_RABFailedToReleaseList, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CriticalityDiagnostics: @@ -283,7 +248,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( s1ap_E_RABReleaseResponseIEs->presenceMask |= S1AP_E_RABRELEASERESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -294,7 +259,7 @@ int s1ap_decode_s1ap_e_rabreleaseresponseies( memcpy(&s1ap_E_RABReleaseResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabreleaseresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabreleaseresponseies\n", (int)ie_p->id); return -1; } } @@ -312,7 +277,7 @@ int s1ap_decode_s1ap_uplinknonueassociatedlppatransport_ies( assert(any_p != NULL); assert(s1ap_UplinkNonUEAssociatedLPPaTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UplinkNonUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UplinkNonUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UplinkNonUEAssociatedLPPaTransport, (void**)&s1ap_UplinkNonUEAssociatedLPPaTransport_p); @@ -325,7 +290,7 @@ int s1ap_decode_s1ap_uplinknonueassociatedlppatransport_ies( S1ap_Routing_ID_t *s1apRoutingID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Routing_ID, (void**)&s1apRoutingID_p); if (tempDecoded < 0 || s1apRoutingID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE routing_ID failed\n"); + d_error("Decoding of IE routing_ID failed\n"); if (s1apRoutingID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Routing_ID, s1apRoutingID_p); return -1; @@ -340,7 +305,7 @@ int s1ap_decode_s1ap_uplinknonueassociatedlppatransport_ies( S1ap_LPPa_PDU_t *s1apLPPaPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LPPa_PDU, (void**)&s1apLPPaPDU_p); if (tempDecoded < 0 || s1apLPPaPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE lpPa_PDU failed\n"); + d_error("Decoding of IE lpPa_PDU failed\n"); if (s1apLPPaPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LPPa_PDU, s1apLPPaPDU_p); return -1; @@ -351,7 +316,7 @@ int s1ap_decode_s1ap_uplinknonueassociatedlppatransport_ies( memcpy(&s1ap_UplinkNonUEAssociatedLPPaTransport_IEs->lpPa_PDU, s1apLPPaPDU_p, sizeof(S1ap_LPPa_PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinknonueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinknonueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -369,7 +334,7 @@ int s1ap_decode_s1ap_tracestarties( assert(any_p != NULL); assert(s1ap_TraceStartIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_TraceStartIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_TraceStartIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_TraceStart, (void**)&s1ap_TraceStart_p); @@ -382,7 +347,7 @@ int s1ap_decode_s1ap_tracestarties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -397,7 +362,7 @@ int s1ap_decode_s1ap_tracestarties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -412,7 +377,7 @@ int s1ap_decode_s1ap_tracestarties( S1ap_TraceActivation_t *s1apTraceActivation_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TraceActivation, (void**)&s1apTraceActivation_p); if (tempDecoded < 0 || s1apTraceActivation_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE traceActivation failed\n"); + d_error("Decoding of IE traceActivation failed\n"); if (s1apTraceActivation_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TraceActivation, s1apTraceActivation_p); return -1; @@ -423,7 +388,7 @@ int s1ap_decode_s1ap_tracestarties( memcpy(&s1ap_TraceStartIEs->traceActivation, s1apTraceActivation_p, sizeof(S1ap_TraceActivation_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_tracestarties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_tracestarties\n", (int)ie_p->id); return -1; } } @@ -441,7 +406,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( assert(any_p != NULL); assert(s1ap_WriteReplaceWarningResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_WriteReplaceWarningResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_WriteReplaceWarningResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_WriteReplaceWarningResponse, (void**)&s1ap_WriteReplaceWarningResponse_p); @@ -454,7 +419,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( S1ap_MessageIdentifier_t *s1apMessageIdentifier_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MessageIdentifier, (void**)&s1apMessageIdentifier_p); if (tempDecoded < 0 || s1apMessageIdentifier_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE messageIdentifier failed\n"); + d_error("Decoding of IE messageIdentifier failed\n"); if (s1apMessageIdentifier_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MessageIdentifier, s1apMessageIdentifier_p); return -1; @@ -469,7 +434,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( S1ap_SerialNumber_t *s1apSerialNumber_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SerialNumber, (void**)&s1apSerialNumber_p); if (tempDecoded < 0 || s1apSerialNumber_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE serialNumber failed\n"); + d_error("Decoding of IE serialNumber failed\n"); if (s1apSerialNumber_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SerialNumber, s1apSerialNumber_p); return -1; @@ -486,7 +451,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( s1ap_WriteReplaceWarningResponseIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGRESPONSEIES_BROADCASTCOMPLETEDAREALIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_BroadcastCompletedAreaList, (void**)&s1apBroadcastCompletedAreaList_p); if (tempDecoded < 0 || s1apBroadcastCompletedAreaList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE broadcastCompletedAreaList failed\n"); + d_error("Decoding of IE broadcastCompletedAreaList failed\n"); if (s1apBroadcastCompletedAreaList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_BroadcastCompletedAreaList, s1apBroadcastCompletedAreaList_p); return -1; @@ -503,7 +468,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( s1ap_WriteReplaceWarningResponseIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -514,7 +479,7 @@ int s1ap_decode_s1ap_writereplacewarningresponseies( memcpy(&s1ap_WriteReplaceWarningResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_writereplacewarningresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_writereplacewarningresponseies\n", (int)ie_p->id); return -1; } } @@ -532,7 +497,7 @@ int s1ap_decode_s1ap_handovercancelies( assert(any_p != NULL); assert(s1ap_HandoverCancelIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverCancelIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverCancelIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverCancel, (void**)&s1ap_HandoverCancel_p); @@ -545,7 +510,7 @@ int s1ap_decode_s1ap_handovercancelies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -560,7 +525,7 @@ int s1ap_decode_s1ap_handovercancelies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -575,7 +540,7 @@ int s1ap_decode_s1ap_handovercancelies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -586,7 +551,7 @@ int s1ap_decode_s1ap_handovercancelies( memcpy(&s1ap_HandoverCancelIEs->cause, s1apCause_p, sizeof(S1ap_Cause_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handovercancelies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handovercancelies\n", (int)ie_p->id); return -1; } } @@ -604,7 +569,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( assert(any_p != NULL); assert(s1ap_HandoverPreparationFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverPreparationFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverPreparationFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverPreparationFailure, (void**)&s1ap_HandoverPreparationFailure_p); @@ -617,7 +582,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -632,7 +597,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -647,7 +612,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -664,7 +629,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( s1ap_HandoverPreparationFailureIEs->presenceMask |= S1AP_HANDOVERPREPARATIONFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -675,49 +640,7 @@ int s1ap_decode_s1ap_handoverpreparationfailureies( memcpy(&s1ap_HandoverPreparationFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handoverpreparationfailureies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabtobemodifieditembearermodreqies( - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t *s1ap_E_RABToBeModifiedItemBearerModReqIEs, - ANY_t *any_p) { - - S1ap_E_RABToBeModifiedListBearerModReq_t s1ap_E_RABToBeModifiedListBearerModReq; - S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq_p = &s1ap_E_RABToBeModifiedListBearerModReq; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABToBeModifiedItemBearerModReqIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABToBeModifiedItemBearerModReqIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, (void**)&s1ap_E_RABToBeModifiedListBearerModReq_p); - - for (i = 0; i < s1ap_E_RABToBeModifiedListBearerModReq_p->s1ap_E_RABToBeModifiedListBearerModReq_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABToBeModifiedListBearerModReq_p->s1ap_E_RABToBeModifiedListBearerModReq_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABToBeModifiedItemBearerModReq: - { - S1ap_E_RABToBeModifiedItemBearerModReq_t *s1apERABToBeModifiedItemBearerModReq_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, (void**)&s1apERABToBeModifiedItemBearerModReq_p); - if (tempDecoded < 0 || s1apERABToBeModifiedItemBearerModReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeModifiedItemBearerModReq failed\n"); - if (s1apERABToBeModifiedItemBearerModReq_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p); - memcpy(&s1ap_E_RABToBeModifiedItemBearerModReqIEs->e_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p, sizeof(S1ap_E_RABToBeModifiedItemBearerModReq_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabtobemodifieditembearermodreqies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handoverpreparationfailureies\n", (int)ie_p->id); return -1; } } @@ -735,7 +658,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( assert(any_p != NULL); assert(s1ap_UEContextReleaseRequest_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextReleaseRequest_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextReleaseRequest_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextReleaseRequest, (void**)&s1ap_UEContextReleaseRequest_p); @@ -748,7 +671,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -763,7 +686,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -778,7 +701,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -795,7 +718,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( s1ap_UEContextReleaseRequest_IEs->presenceMask |= S1AP_UECONTEXTRELEASEREQUEST_IES_GWCONTEXTRELEASEINDICATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GWContextReleaseIndication, (void**)&s1apGWContextReleaseIndication_p); if (tempDecoded < 0 || s1apGWContextReleaseIndication_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gwContextReleaseIndication failed\n"); + d_error("Decoding of IE gwContextReleaseIndication failed\n"); if (s1apGWContextReleaseIndication_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GWContextReleaseIndication, s1apGWContextReleaseIndication_p); return -1; @@ -806,7 +729,7 @@ int s1ap_decode_s1ap_uecontextreleaserequest_ies( memcpy(&s1ap_UEContextReleaseRequest_IEs->gwContextReleaseIndication, s1apGWContextReleaseIndication_p, sizeof(S1ap_GWContextReleaseIndication_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextreleaserequest_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextreleaserequest_ies\n", (int)ie_p->id); return -1; } } @@ -824,7 +747,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( assert(any_p != NULL); assert(s1ap_InitialUEMessage_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_InitialUEMessage_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_InitialUEMessage_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_InitialUEMessage, (void**)&s1ap_InitialUEMessage_p); @@ -837,7 +760,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -852,7 +775,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( S1ap_NAS_PDU_t *s1apNASPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NAS_PDU, (void**)&s1apNASPDU_p); if (tempDecoded < 0 || s1apNASPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE nas_pdu failed\n"); + d_error("Decoding of IE nas_pdu failed\n"); if (s1apNASPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NAS_PDU, s1apNASPDU_p); return -1; @@ -867,7 +790,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( S1ap_TAI_t *s1apTAI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAI, (void**)&s1apTAI_p); if (tempDecoded < 0 || s1apTAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE tai failed\n"); + d_error("Decoding of IE tai failed\n"); if (s1apTAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAI, s1apTAI_p); return -1; @@ -882,7 +805,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -897,7 +820,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( S1ap_RRC_Establishment_Cause_t *s1apRRCEstablishmentCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RRC_Establishment_Cause, (void**)&s1apRRCEstablishmentCause_p); if (tempDecoded < 0 || s1apRRCEstablishmentCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE rrC_Establishment_Cause failed\n"); + d_error("Decoding of IE rrC_Establishment_Cause failed\n"); if (s1apRRCEstablishmentCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RRC_Establishment_Cause, s1apRRCEstablishmentCause_p); return -1; @@ -914,7 +837,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_S_TMSI_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_S_TMSI, (void**)&s1apSTMSI_p); if (tempDecoded < 0 || s1apSTMSI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE s_tmsi failed\n"); + d_error("Decoding of IE s_tmsi failed\n"); if (s1apSTMSI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_S_TMSI, s1apSTMSI_p); return -1; @@ -931,7 +854,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_CSG_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_Id, (void**)&s1apCSGId_p); if (tempDecoded < 0 || s1apCSGId_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_Id failed\n"); + d_error("Decoding of IE csG_Id failed\n"); if (s1apCSGId_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_Id, s1apCSGId_p); return -1; @@ -948,7 +871,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_GUMMEI_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEI, (void**)&s1apGUMMEI_p); if (tempDecoded < 0 || s1apGUMMEI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gummei_id failed\n"); + d_error("Decoding of IE gummei_id failed\n"); if (s1apGUMMEI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEI, s1apGUMMEI_p); return -1; @@ -965,7 +888,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_CELLACCESSMODE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CellAccessMode, (void**)&s1apCellAccessMode_p); if (tempDecoded < 0 || s1apCellAccessMode_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cellAccessMode failed\n"); + d_error("Decoding of IE cellAccessMode failed\n"); if (s1apCellAccessMode_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CellAccessMode, s1apCellAccessMode_p); return -1; @@ -976,13 +899,13 @@ int s1ap_decode_s1ap_initialuemessage_ies( memcpy(&s1ap_InitialUEMessage_IEs->cellAccessMode, s1apCellAccessMode_p, sizeof(S1ap_CellAccessMode_t)); } break; /* Optional field */ - case S1ap_ProtocolIE_ID_id_GW_S1ap_TransportLayerAddress: + case S1ap_ProtocolIE_ID_id_GW_TransportLayerAddress: { S1ap_TransportLayerAddress_t *s1apTransportLayerAddress_p = NULL; - s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT; + s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_GW_TRANSPORTLAYERADDRESS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TransportLayerAddress, (void**)&s1apTransportLayerAddress_p); if (tempDecoded < 0 || s1apTransportLayerAddress_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gW_S1ap_TransportLayerAddress failed\n"); + d_error("Decoding of IE gW_TransportLayerAddress failed\n"); if (s1apTransportLayerAddress_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p); return -1; @@ -990,7 +913,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p); - memcpy(&s1ap_InitialUEMessage_IEs->gW_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p, sizeof(S1ap_TransportLayerAddress_t)); + memcpy(&s1ap_InitialUEMessage_IEs->gW_TransportLayerAddress, s1apTransportLayerAddress_p, sizeof(S1ap_TransportLayerAddress_t)); } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_RelayNode_Indicator: @@ -999,7 +922,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( s1ap_InitialUEMessage_IEs->presenceMask |= S1AP_INITIALUEMESSAGE_IES_RELAYNODE_INDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RelayNode_Indicator, (void**)&s1apRelayNodeIndicator_p); if (tempDecoded < 0 || s1apRelayNodeIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE relayNode_Indicator failed\n"); + d_error("Decoding of IE relayNode_Indicator failed\n"); if (s1apRelayNodeIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RelayNode_Indicator, s1apRelayNodeIndicator_p); return -1; @@ -1010,7 +933,7 @@ int s1ap_decode_s1ap_initialuemessage_ies( memcpy(&s1ap_InitialUEMessage_IEs->relayNode_Indicator, s1apRelayNodeIndicator_p, sizeof(S1ap_RelayNode_Indicator_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_initialuemessage_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_initialuemessage_ies\n", (int)ie_p->id); return -1; } } @@ -1028,7 +951,7 @@ int s1ap_decode_s1ap_killrequesties( assert(any_p != NULL); assert(s1ap_KillRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_KillRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_KillRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_KillRequest, (void**)&s1ap_KillRequest_p); @@ -1041,7 +964,7 @@ int s1ap_decode_s1ap_killrequesties( S1ap_MessageIdentifier_t *s1apMessageIdentifier_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MessageIdentifier, (void**)&s1apMessageIdentifier_p); if (tempDecoded < 0 || s1apMessageIdentifier_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE messageIdentifier failed\n"); + d_error("Decoding of IE messageIdentifier failed\n"); if (s1apMessageIdentifier_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MessageIdentifier, s1apMessageIdentifier_p); return -1; @@ -1056,7 +979,7 @@ int s1ap_decode_s1ap_killrequesties( S1ap_SerialNumber_t *s1apSerialNumber_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SerialNumber, (void**)&s1apSerialNumber_p); if (tempDecoded < 0 || s1apSerialNumber_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE serialNumber failed\n"); + d_error("Decoding of IE serialNumber failed\n"); if (s1apSerialNumber_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SerialNumber, s1apSerialNumber_p); return -1; @@ -1073,7 +996,7 @@ int s1ap_decode_s1ap_killrequesties( s1ap_KillRequestIEs->presenceMask |= S1AP_KILLREQUESTIES_WARNINGAREALIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_WarningAreaList, (void**)&s1apWarningAreaList_p); if (tempDecoded < 0 || s1apWarningAreaList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE warningAreaList failed\n"); + d_error("Decoding of IE warningAreaList failed\n"); if (s1apWarningAreaList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_WarningAreaList, s1apWarningAreaList_p); return -1; @@ -1084,7 +1007,7 @@ int s1ap_decode_s1ap_killrequesties( memcpy(&s1ap_KillRequestIEs->warningAreaList, s1apWarningAreaList_p, sizeof(S1ap_WarningAreaList_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_killrequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_killrequesties\n", (int)ie_p->id); return -1; } } @@ -1102,7 +1025,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( assert(any_p != NULL); assert(s1ap_WriteReplaceWarningRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_WriteReplaceWarningRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_WriteReplaceWarningRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_WriteReplaceWarningRequest, (void**)&s1ap_WriteReplaceWarningRequest_p); @@ -1115,7 +1038,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( S1ap_MessageIdentifier_t *s1apMessageIdentifier_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MessageIdentifier, (void**)&s1apMessageIdentifier_p); if (tempDecoded < 0 || s1apMessageIdentifier_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE messageIdentifier failed\n"); + d_error("Decoding of IE messageIdentifier failed\n"); if (s1apMessageIdentifier_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MessageIdentifier, s1apMessageIdentifier_p); return -1; @@ -1130,7 +1053,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( S1ap_SerialNumber_t *s1apSerialNumber_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SerialNumber, (void**)&s1apSerialNumber_p); if (tempDecoded < 0 || s1apSerialNumber_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE serialNumber failed\n"); + d_error("Decoding of IE serialNumber failed\n"); if (s1apSerialNumber_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SerialNumber, s1apSerialNumber_p); return -1; @@ -1147,7 +1070,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_WARNINGAREALIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_WarningAreaList, (void**)&s1apWarningAreaList_p); if (tempDecoded < 0 || s1apWarningAreaList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE warningAreaList failed\n"); + d_error("Decoding of IE warningAreaList failed\n"); if (s1apWarningAreaList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_WarningAreaList, s1apWarningAreaList_p); return -1; @@ -1162,7 +1085,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( S1ap_RepetitionPeriod_t *s1apRepetitionPeriod_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RepetitionPeriod, (void**)&s1apRepetitionPeriod_p); if (tempDecoded < 0 || s1apRepetitionPeriod_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE repetitionPeriod failed\n"); + d_error("Decoding of IE repetitionPeriod failed\n"); if (s1apRepetitionPeriod_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RepetitionPeriod, s1apRepetitionPeriod_p); return -1; @@ -1179,7 +1102,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_EXTENDEDREPETITIONPERIOD_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ExtendedRepetitionPeriod, (void**)&s1apExtendedRepetitionPeriod_p); if (tempDecoded < 0 || s1apExtendedRepetitionPeriod_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE extendedRepetitionPeriod failed\n"); + d_error("Decoding of IE extendedRepetitionPeriod failed\n"); if (s1apExtendedRepetitionPeriod_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ExtendedRepetitionPeriod, s1apExtendedRepetitionPeriod_p); return -1; @@ -1194,7 +1117,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( S1ap_NumberofBroadcastRequest_t *s1apNumberofBroadcastRequest_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NumberofBroadcastRequest, (void**)&s1apNumberofBroadcastRequest_p); if (tempDecoded < 0 || s1apNumberofBroadcastRequest_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE numberofBroadcastRequest failed\n"); + d_error("Decoding of IE numberofBroadcastRequest failed\n"); if (s1apNumberofBroadcastRequest_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NumberofBroadcastRequest, s1apNumberofBroadcastRequest_p); return -1; @@ -1211,7 +1134,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_WARNINGTYPE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_WarningType, (void**)&s1apWarningType_p); if (tempDecoded < 0 || s1apWarningType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE warningType failed\n"); + d_error("Decoding of IE warningType failed\n"); if (s1apWarningType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_WarningType, s1apWarningType_p); return -1; @@ -1228,7 +1151,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_WARNINGSECURITYINFO_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_WarningSecurityInfo, (void**)&s1apWarningSecurityInfo_p); if (tempDecoded < 0 || s1apWarningSecurityInfo_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE warningSecurityInfo failed\n"); + d_error("Decoding of IE warningSecurityInfo failed\n"); if (s1apWarningSecurityInfo_p) ASN_STRUCT_FREE(asn_DEF_S1ap_WarningSecurityInfo, s1apWarningSecurityInfo_p); return -1; @@ -1245,7 +1168,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_DATACODINGSCHEME_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_DataCodingScheme, (void**)&s1apDataCodingScheme_p); if (tempDecoded < 0 || s1apDataCodingScheme_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE dataCodingScheme failed\n"); + d_error("Decoding of IE dataCodingScheme failed\n"); if (s1apDataCodingScheme_p) ASN_STRUCT_FREE(asn_DEF_S1ap_DataCodingScheme, s1apDataCodingScheme_p); return -1; @@ -1262,7 +1185,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_WARNINGMESSAGECONTENTS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_WarningMessageContents, (void**)&s1apWarningMessageContents_p); if (tempDecoded < 0 || s1apWarningMessageContents_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE warningMessageContents failed\n"); + d_error("Decoding of IE warningMessageContents failed\n"); if (s1apWarningMessageContents_p) ASN_STRUCT_FREE(asn_DEF_S1ap_WarningMessageContents, s1apWarningMessageContents_p); return -1; @@ -1279,7 +1202,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( s1ap_WriteReplaceWarningRequestIEs->presenceMask |= S1AP_WRITEREPLACEWARNINGREQUESTIES_CONCURRENTWARNINGMESSAGEINDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ConcurrentWarningMessageIndicator, (void**)&s1apConcurrentWarningMessageIndicator_p); if (tempDecoded < 0 || s1apConcurrentWarningMessageIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE concurrentWarningMessageIndicator failed\n"); + d_error("Decoding of IE concurrentWarningMessageIndicator failed\n"); if (s1apConcurrentWarningMessageIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ConcurrentWarningMessageIndicator, s1apConcurrentWarningMessageIndicator_p); return -1; @@ -1290,7 +1213,7 @@ int s1ap_decode_s1ap_writereplacewarningrequesties( memcpy(&s1ap_WriteReplaceWarningRequestIEs->concurrentWarningMessageIndicator, s1apConcurrentWarningMessageIndicator_p, sizeof(S1ap_ConcurrentWarningMessageIndicator_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_writereplacewarningrequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_writereplacewarningrequesties\n", (int)ie_p->id); return -1; } } @@ -1308,7 +1231,7 @@ int s1ap_decode_s1ap_uecapabilityinfoindicationies( assert(any_p != NULL); assert(s1ap_UECapabilityInfoIndicationIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UECapabilityInfoIndicationIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UECapabilityInfoIndicationIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UECapabilityInfoIndication, (void**)&s1ap_UECapabilityInfoIndication_p); @@ -1321,7 +1244,7 @@ int s1ap_decode_s1ap_uecapabilityinfoindicationies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1336,7 +1259,7 @@ int s1ap_decode_s1ap_uecapabilityinfoindicationies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -1351,7 +1274,7 @@ int s1ap_decode_s1ap_uecapabilityinfoindicationies( S1ap_UERadioCapability_t *s1apUERadioCapability_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UERadioCapability, (void**)&s1apUERadioCapability_p); if (tempDecoded < 0 || s1apUERadioCapability_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueRadioCapability failed\n"); + d_error("Decoding of IE ueRadioCapability failed\n"); if (s1apUERadioCapability_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UERadioCapability, s1apUERadioCapability_p); return -1; @@ -1362,49 +1285,7 @@ int s1ap_decode_s1ap_uecapabilityinfoindicationies( memcpy(&s1ap_UECapabilityInfoIndicationIEs->ueRadioCapability, s1apUERadioCapability_p, sizeof(S1ap_UERadioCapability_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecapabilityinfoindicationies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabtobesetupitembearersureqies( - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t *s1ap_E_RABToBeSetupItemBearerSUReqIEs, - ANY_t *any_p) { - - S1ap_E_RABToBeSetupListBearerSUReq_t s1ap_E_RABToBeSetupListBearerSUReq; - S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq_p = &s1ap_E_RABToBeSetupListBearerSUReq; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABToBeSetupItemBearerSUReqIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABToBeSetupItemBearerSUReqIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, (void**)&s1ap_E_RABToBeSetupListBearerSUReq_p); - - for (i = 0; i < s1ap_E_RABToBeSetupListBearerSUReq_p->s1ap_E_RABToBeSetupListBearerSUReq_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABToBeSetupListBearerSUReq_p->s1ap_E_RABToBeSetupListBearerSUReq_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemBearerSUReq: - { - S1ap_E_RABToBeSetupItemBearerSUReq_t *s1apERABToBeSetupItemBearerSUReq_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, (void**)&s1apERABToBeSetupItemBearerSUReq_p); - if (tempDecoded < 0 || s1apERABToBeSetupItemBearerSUReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupItemBearerSUReq failed\n"); - if (s1apERABToBeSetupItemBearerSUReq_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p); - memcpy(&s1ap_E_RABToBeSetupItemBearerSUReqIEs->e_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p, sizeof(S1ap_E_RABToBeSetupItemBearerSUReq_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabtobesetupitembearersureqies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecapabilityinfoindicationies\n", (int)ie_p->id); return -1; } } @@ -1422,7 +1303,7 @@ int s1ap_decode_s1ap_locationreportingfailureindicationies( assert(any_p != NULL); assert(s1ap_LocationReportingFailureIndicationIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_LocationReportingFailureIndicationIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_LocationReportingFailureIndicationIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_LocationReportingFailureIndication, (void**)&s1ap_LocationReportingFailureIndication_p); @@ -1435,7 +1316,7 @@ int s1ap_decode_s1ap_locationreportingfailureindicationies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1450,7 +1331,7 @@ int s1ap_decode_s1ap_locationreportingfailureindicationies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -1465,7 +1346,7 @@ int s1ap_decode_s1ap_locationreportingfailureindicationies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -1476,7 +1357,7 @@ int s1ap_decode_s1ap_locationreportingfailureindicationies( memcpy(&s1ap_LocationReportingFailureIndicationIEs->cause, s1apCause_p, sizeof(S1ap_Cause_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_locationreportingfailureindicationies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_locationreportingfailureindicationies\n", (int)ie_p->id); return -1; } } @@ -1494,7 +1375,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( assert(any_p != NULL); assert(s1ap_InitialContextSetupRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_InitialContextSetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_InitialContextSetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_InitialContextSetupRequest, (void**)&s1ap_InitialContextSetupRequest_p); @@ -1507,7 +1388,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1522,7 +1403,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -1537,7 +1418,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( S1ap_UEAggregateMaximumBitrate_t *s1apUEAggregateMaximumBitrate_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -1552,7 +1433,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( S1ap_E_RABToBeSetupListCtxtSUReq_t *s1apERABToBeSetupListCtxtSUReq_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, (void**)&s1apERABToBeSetupListCtxtSUReq_p); if (tempDecoded < 0 || s1apERABToBeSetupListCtxtSUReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupListCtxtSUReq failed\n"); + d_error("Decoding of IE e_RABToBeSetupListCtxtSUReq failed\n"); if (s1apERABToBeSetupListCtxtSUReq_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, s1apERABToBeSetupListCtxtSUReq_p); return -1; @@ -1560,14 +1441,17 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, s1apERABToBeSetupListCtxtSUReq_p); - memcpy(&s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq, s1apERABToBeSetupListCtxtSUReq_p, sizeof(S1ap_E_RABToBeSetupListCtxtSUReq_t)); + if (s1ap_decode_s1ap_e_rabtobesetuplistctxtsureq(&s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq, s1apERABToBeSetupListCtxtSUReq_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABToBeSetupListCtxtSUReq failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, s1apERABToBeSetupListCtxtSUReq_p); + } } break; case S1ap_ProtocolIE_ID_id_UESecurityCapabilities: { S1ap_UESecurityCapabilities_t *s1apUESecurityCapabilities_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UESecurityCapabilities, (void**)&s1apUESecurityCapabilities_p); if (tempDecoded < 0 || s1apUESecurityCapabilities_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueSecurityCapabilities failed\n"); + d_error("Decoding of IE ueSecurityCapabilities failed\n"); if (s1apUESecurityCapabilities_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UESecurityCapabilities, s1apUESecurityCapabilities_p); return -1; @@ -1582,7 +1466,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( S1ap_SecurityKey_t *s1apSecurityKey_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SecurityKey, (void**)&s1apSecurityKey_p); if (tempDecoded < 0 || s1apSecurityKey_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE securityKey failed\n"); + d_error("Decoding of IE securityKey failed\n"); if (s1apSecurityKey_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SecurityKey, s1apSecurityKey_p); return -1; @@ -1599,7 +1483,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_TRACEACTIVATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TraceActivation, (void**)&s1apTraceActivation_p); if (tempDecoded < 0 || s1apTraceActivation_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE traceActivation failed\n"); + d_error("Decoding of IE traceActivation failed\n"); if (s1apTraceActivation_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TraceActivation, s1apTraceActivation_p); return -1; @@ -1616,7 +1500,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_HANDOVERRESTRICTIONLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverRestrictionList, (void**)&s1apHandoverRestrictionList_p); if (tempDecoded < 0 || s1apHandoverRestrictionList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverRestrictionList failed\n"); + d_error("Decoding of IE handoverRestrictionList failed\n"); if (s1apHandoverRestrictionList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverRestrictionList, s1apHandoverRestrictionList_p); return -1; @@ -1633,7 +1517,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_UERADIOCAPABILITY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UERadioCapability, (void**)&s1apUERadioCapability_p); if (tempDecoded < 0 || s1apUERadioCapability_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueRadioCapability failed\n"); + d_error("Decoding of IE ueRadioCapability failed\n"); if (s1apUERadioCapability_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UERadioCapability, s1apUERadioCapability_p); return -1; @@ -1650,7 +1534,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_SUBSCRIBERPROFILEIDFORRFP_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SubscriberProfileIDforRFP, (void**)&s1apSubscriberProfileIDforRFP_p); if (tempDecoded < 0 || s1apSubscriberProfileIDforRFP_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE subscriberProfileIDforRFP failed\n"); + d_error("Decoding of IE subscriberProfileIDforRFP failed\n"); if (s1apSubscriberProfileIDforRFP_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SubscriberProfileIDforRFP, s1apSubscriberProfileIDforRFP_p); return -1; @@ -1667,7 +1551,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_CSFALLBACKINDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSFallbackIndicator, (void**)&s1apCSFallbackIndicator_p); if (tempDecoded < 0 || s1apCSFallbackIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csFallbackIndicator failed\n"); + d_error("Decoding of IE csFallbackIndicator failed\n"); if (s1apCSFallbackIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSFallbackIndicator, s1apCSFallbackIndicator_p); return -1; @@ -1684,7 +1568,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_SRVCCOPERATIONPOSSIBLE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SRVCCOperationPossible, (void**)&s1apSRVCCOperationPossible_p); if (tempDecoded < 0 || s1apSRVCCOperationPossible_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE srvccOperationPossible failed\n"); + d_error("Decoding of IE srvccOperationPossible failed\n"); if (s1apSRVCCOperationPossible_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SRVCCOperationPossible, s1apSRVCCOperationPossible_p); return -1; @@ -1701,7 +1585,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_CSGMEMBERSHIPSTATUS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSGMembershipStatus, (void**)&s1apCSGMembershipStatus_p); if (tempDecoded < 0 || s1apCSGMembershipStatus_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csgMembershipStatus failed\n"); + d_error("Decoding of IE csgMembershipStatus failed\n"); if (s1apCSGMembershipStatus_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSGMembershipStatus, s1apCSGMembershipStatus_p); return -1; @@ -1718,7 +1602,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_REGISTEREDLAI_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LAI, (void**)&s1apLAI_p); if (tempDecoded < 0 || s1apLAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE registeredLAI failed\n"); + d_error("Decoding of IE registeredLAI failed\n"); if (s1apLAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LAI, s1apLAI_p); return -1; @@ -1735,7 +1619,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_GUMMEI_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEI, (void**)&s1apGUMMEI_p); if (tempDecoded < 0 || s1apGUMMEI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gummei_id failed\n"); + d_error("Decoding of IE gummei_id failed\n"); if (s1apGUMMEI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEI, s1apGUMMEI_p); return -1; @@ -1752,7 +1636,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_MME_UE_S1AP_ID_2_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id_2 failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id_2 failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1769,7 +1653,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( s1ap_InitialContextSetupRequestIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPREQUESTIES_MANAGEMENTBASEDMDTALLOWED_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ManagementBasedMDTAllowed, (void**)&s1apManagementBasedMDTAllowed_p); if (tempDecoded < 0 || s1apManagementBasedMDTAllowed_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE managementBasedMDTAllowed failed\n"); + d_error("Decoding of IE managementBasedMDTAllowed failed\n"); if (s1apManagementBasedMDTAllowed_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ManagementBasedMDTAllowed, s1apManagementBasedMDTAllowed_p); return -1; @@ -1780,7 +1664,7 @@ int s1ap_decode_s1ap_initialcontextsetuprequesties( memcpy(&s1ap_InitialContextSetupRequestIEs->managementBasedMDTAllowed, s1apManagementBasedMDTAllowed_p, sizeof(S1ap_ManagementBasedMDTAllowed_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_initialcontextsetuprequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_initialcontextsetuprequesties\n", (int)ie_p->id); return -1; } } @@ -1798,7 +1682,7 @@ int s1ap_decode_s1ap_locationreporties( assert(any_p != NULL); assert(s1ap_LocationReportIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_LocationReportIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_LocationReportIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_LocationReport, (void**)&s1ap_LocationReport_p); @@ -1811,7 +1695,7 @@ int s1ap_decode_s1ap_locationreporties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1826,7 +1710,7 @@ int s1ap_decode_s1ap_locationreporties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -1841,7 +1725,7 @@ int s1ap_decode_s1ap_locationreporties( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -1856,7 +1740,7 @@ int s1ap_decode_s1ap_locationreporties( S1ap_TAI_t *s1apTAI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAI, (void**)&s1apTAI_p); if (tempDecoded < 0 || s1apTAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE tai failed\n"); + d_error("Decoding of IE tai failed\n"); if (s1apTAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAI, s1apTAI_p); return -1; @@ -1871,7 +1755,7 @@ int s1ap_decode_s1ap_locationreporties( S1ap_RequestType_t *s1apRequestType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RequestType, (void**)&s1apRequestType_p); if (tempDecoded < 0 || s1apRequestType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE requestType failed\n"); + d_error("Decoding of IE requestType failed\n"); if (s1apRequestType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RequestType, s1apRequestType_p); return -1; @@ -1882,7 +1766,7 @@ int s1ap_decode_s1ap_locationreporties( memcpy(&s1ap_LocationReportIEs->requestType, s1apRequestType_p, sizeof(S1ap_RequestType_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_locationreporties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_locationreporties\n", (int)ie_p->id); return -1; } } @@ -1900,7 +1784,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( assert(any_p != NULL); assert(s1ap_UplinkNASTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UplinkNASTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UplinkNASTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UplinkNASTransport, (void**)&s1ap_UplinkNASTransport_p); @@ -1913,7 +1797,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -1928,7 +1812,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -1943,7 +1827,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( S1ap_NAS_PDU_t *s1apNASPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NAS_PDU, (void**)&s1apNASPDU_p); if (tempDecoded < 0 || s1apNASPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE nas_pdu failed\n"); + d_error("Decoding of IE nas_pdu failed\n"); if (s1apNASPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NAS_PDU, s1apNASPDU_p); return -1; @@ -1958,7 +1842,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -1973,7 +1857,7 @@ int s1ap_decode_s1ap_uplinknastransport_ies( S1ap_TAI_t *s1apTAI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAI, (void**)&s1apTAI_p); if (tempDecoded < 0 || s1apTAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE tai failed\n"); + d_error("Decoding of IE tai failed\n"); if (s1apTAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAI, s1apTAI_p); return -1; @@ -1984,13 +1868,13 @@ int s1ap_decode_s1ap_uplinknastransport_ies( memcpy(&s1ap_UplinkNASTransport_IEs->tai, s1apTAI_p, sizeof(S1ap_TAI_t)); } break; /* Optional field */ - case S1ap_ProtocolIE_ID_id_GW_S1ap_TransportLayerAddress: + case S1ap_ProtocolIE_ID_id_GW_TransportLayerAddress: { S1ap_TransportLayerAddress_t *s1apTransportLayerAddress_p = NULL; - s1ap_UplinkNASTransport_IEs->presenceMask |= S1AP_UPLINKNASTRANSPORT_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT; + s1ap_UplinkNASTransport_IEs->presenceMask |= S1AP_UPLINKNASTRANSPORT_IES_GW_TRANSPORTLAYERADDRESS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TransportLayerAddress, (void**)&s1apTransportLayerAddress_p); if (tempDecoded < 0 || s1apTransportLayerAddress_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gW_S1ap_TransportLayerAddress failed\n"); + d_error("Decoding of IE gW_TransportLayerAddress failed\n"); if (s1apTransportLayerAddress_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p); return -1; @@ -1998,10 +1882,10 @@ int s1ap_decode_s1ap_uplinknastransport_ies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p); - memcpy(&s1ap_UplinkNASTransport_IEs->gW_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p, sizeof(S1ap_TransportLayerAddress_t)); + memcpy(&s1ap_UplinkNASTransport_IEs->gW_TransportLayerAddress, s1apTransportLayerAddress_p, sizeof(S1ap_TransportLayerAddress_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinknastransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinknastransport_ies\n", (int)ie_p->id); return -1; } } @@ -2019,7 +1903,7 @@ int s1ap_decode_s1ap_uecontextmodificationresponseies( assert(any_p != NULL); assert(s1ap_UEContextModificationResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextModificationResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextModificationResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextModificationResponse, (void**)&s1ap_UEContextModificationResponse_p); @@ -2032,7 +1916,7 @@ int s1ap_decode_s1ap_uecontextmodificationresponseies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2047,7 +1931,7 @@ int s1ap_decode_s1ap_uecontextmodificationresponseies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -2064,7 +1948,7 @@ int s1ap_decode_s1ap_uecontextmodificationresponseies( s1ap_UEContextModificationResponseIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -2075,7 +1959,7 @@ int s1ap_decode_s1ap_uecontextmodificationresponseies( memcpy(&s1ap_UEContextModificationResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextmodificationresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextmodificationresponseies\n", (int)ie_p->id); return -1; } } @@ -2093,7 +1977,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( assert(any_p != NULL); assert(s1ap_UEContextModificationRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextModificationRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextModificationRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextModificationRequest, (void**)&s1ap_UEContextModificationRequest_p); @@ -2106,7 +1990,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2121,7 +2005,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -2138,7 +2022,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_SECURITYKEY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SecurityKey, (void**)&s1apSecurityKey_p); if (tempDecoded < 0 || s1apSecurityKey_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE securityKey failed\n"); + d_error("Decoding of IE securityKey failed\n"); if (s1apSecurityKey_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SecurityKey, s1apSecurityKey_p); return -1; @@ -2155,7 +2039,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_SUBSCRIBERPROFILEIDFORRFP_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SubscriberProfileIDforRFP, (void**)&s1apSubscriberProfileIDforRFP_p); if (tempDecoded < 0 || s1apSubscriberProfileIDforRFP_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE subscriberProfileIDforRFP failed\n"); + d_error("Decoding of IE subscriberProfileIDforRFP failed\n"); if (s1apSubscriberProfileIDforRFP_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SubscriberProfileIDforRFP, s1apSubscriberProfileIDforRFP_p); return -1; @@ -2172,7 +2056,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -2189,7 +2073,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_CSFALLBACKINDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSFallbackIndicator, (void**)&s1apCSFallbackIndicator_p); if (tempDecoded < 0 || s1apCSFallbackIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csFallbackIndicator failed\n"); + d_error("Decoding of IE csFallbackIndicator failed\n"); if (s1apCSFallbackIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSFallbackIndicator, s1apCSFallbackIndicator_p); return -1; @@ -2206,7 +2090,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_UESECURITYCAPABILITIES_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UESecurityCapabilities, (void**)&s1apUESecurityCapabilities_p); if (tempDecoded < 0 || s1apUESecurityCapabilities_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueSecurityCapabilities failed\n"); + d_error("Decoding of IE ueSecurityCapabilities failed\n"); if (s1apUESecurityCapabilities_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UESecurityCapabilities, s1apUESecurityCapabilities_p); return -1; @@ -2223,7 +2107,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_CSGMEMBERSHIPSTATUS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSGMembershipStatus, (void**)&s1apCSGMembershipStatus_p); if (tempDecoded < 0 || s1apCSGMembershipStatus_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csgMembershipStatus failed\n"); + d_error("Decoding of IE csgMembershipStatus failed\n"); if (s1apCSGMembershipStatus_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSGMembershipStatus, s1apCSGMembershipStatus_p); return -1; @@ -2240,7 +2124,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( s1ap_UEContextModificationRequestIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONREQUESTIES_REGISTEREDLAI_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LAI, (void**)&s1apLAI_p); if (tempDecoded < 0 || s1apLAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE registeredLAI failed\n"); + d_error("Decoding of IE registeredLAI failed\n"); if (s1apLAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LAI, s1apLAI_p); return -1; @@ -2251,7 +2135,7 @@ int s1ap_decode_s1ap_uecontextmodificationrequesties( memcpy(&s1ap_UEContextModificationRequestIEs->registeredLAI, s1apLAI_p, sizeof(S1ap_LAI_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextmodificationrequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextmodificationrequesties\n", (int)ie_p->id); return -1; } } @@ -2269,7 +2153,7 @@ int s1ap_decode_s1ap_locationreportingcontrolies( assert(any_p != NULL); assert(s1ap_LocationReportingControlIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_LocationReportingControlIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_LocationReportingControlIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_LocationReportingControl, (void**)&s1ap_LocationReportingControl_p); @@ -2282,7 +2166,7 @@ int s1ap_decode_s1ap_locationreportingcontrolies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2297,7 +2181,7 @@ int s1ap_decode_s1ap_locationreportingcontrolies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -2312,7 +2196,7 @@ int s1ap_decode_s1ap_locationreportingcontrolies( S1ap_RequestType_t *s1apRequestType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RequestType, (void**)&s1apRequestType_p); if (tempDecoded < 0 || s1apRequestType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE requestType failed\n"); + d_error("Decoding of IE requestType failed\n"); if (s1apRequestType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RequestType, s1apRequestType_p); return -1; @@ -2323,7 +2207,7 @@ int s1ap_decode_s1ap_locationreportingcontrolies( memcpy(&s1ap_LocationReportingControlIEs->requestType, s1apRequestType_p, sizeof(S1ap_RequestType_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_locationreportingcontrolies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_locationreportingcontrolies\n", (int)ie_p->id); return -1; } } @@ -2341,7 +2225,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( assert(any_p != NULL); assert(s1ap_UplinkS1cdma2000tunnelingIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UplinkS1cdma2000tunnelingIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UplinkS1cdma2000tunnelingIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UplinkS1cdma2000tunneling, (void**)&s1ap_UplinkS1cdma2000tunneling_p); @@ -2354,7 +2238,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2369,7 +2253,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -2384,7 +2268,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( S1ap_Cdma2000RATType_t *s1apCdma2000RATType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000RATType, (void**)&s1apCdma2000RATType_p); if (tempDecoded < 0 || s1apCdma2000RATType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000RATType failed\n"); + d_error("Decoding of IE cdma2000RATType failed\n"); if (s1apCdma2000RATType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000RATType, s1apCdma2000RATType_p); return -1; @@ -2399,7 +2283,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( S1ap_Cdma2000SectorID_t *s1apCdma2000SectorID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000SectorID, (void**)&s1apCdma2000SectorID_p); if (tempDecoded < 0 || s1apCdma2000SectorID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000SectorID failed\n"); + d_error("Decoding of IE cdma2000SectorID failed\n"); if (s1apCdma2000SectorID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000SectorID, s1apCdma2000SectorID_p); return -1; @@ -2416,7 +2300,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( s1ap_UplinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_UPLINKS1CDMA2000TUNNELINGIES_CDMA2000HOREQUIREDINDICATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000HORequiredIndication, (void**)&s1apCdma2000HORequiredIndication_p); if (tempDecoded < 0 || s1apCdma2000HORequiredIndication_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000HORequiredIndication failed\n"); + d_error("Decoding of IE cdma2000HORequiredIndication failed\n"); if (s1apCdma2000HORequiredIndication_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000HORequiredIndication, s1apCdma2000HORequiredIndication_p); return -1; @@ -2433,7 +2317,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( s1ap_UplinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_UPLINKS1CDMA2000TUNNELINGIES_CDMA2000ONEXSRVCCINFO_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000OneXSRVCCInfo, (void**)&s1apCdma2000OneXSRVCCInfo_p); if (tempDecoded < 0 || s1apCdma2000OneXSRVCCInfo_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000OneXSRVCCInfo failed\n"); + d_error("Decoding of IE cdma2000OneXSRVCCInfo failed\n"); if (s1apCdma2000OneXSRVCCInfo_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000OneXSRVCCInfo, s1apCdma2000OneXSRVCCInfo_p); return -1; @@ -2450,7 +2334,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( s1ap_UplinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_UPLINKS1CDMA2000TUNNELINGIES_CDMA2000ONEXRAND_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000OneXRAND, (void**)&s1apCdma2000OneXRAND_p); if (tempDecoded < 0 || s1apCdma2000OneXRAND_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000OneXRAND failed\n"); + d_error("Decoding of IE cdma2000OneXRAND failed\n"); if (s1apCdma2000OneXRAND_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000OneXRAND, s1apCdma2000OneXRAND_p); return -1; @@ -2465,7 +2349,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( S1ap_Cdma2000PDU_t *s1apCdma2000PDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000PDU, (void**)&s1apCdma2000PDU_p); if (tempDecoded < 0 || s1apCdma2000PDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000PDU failed\n"); + d_error("Decoding of IE cdma2000PDU failed\n"); if (s1apCdma2000PDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000PDU, s1apCdma2000PDU_p); return -1; @@ -2482,7 +2366,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( s1ap_UplinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_UPLINKS1CDMA2000TUNNELINGIES_EUTRANROUNDTRIPDELAYESTIMATIONINFO_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRANRoundTripDelayEstimationInfo, (void**)&s1apEUTRANRoundTripDelayEstimationInfo_p); if (tempDecoded < 0 || s1apEUTRANRoundTripDelayEstimationInfo_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutranRoundTripDelayEstimationInfo failed\n"); + d_error("Decoding of IE eutranRoundTripDelayEstimationInfo failed\n"); if (s1apEUTRANRoundTripDelayEstimationInfo_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRANRoundTripDelayEstimationInfo, s1apEUTRANRoundTripDelayEstimationInfo_p); return -1; @@ -2493,7 +2377,7 @@ int s1ap_decode_s1ap_uplinks1cdma2000tunnelingies( memcpy(&s1ap_UplinkS1cdma2000tunnelingIEs->eutranRoundTripDelayEstimationInfo, s1apEUTRANRoundTripDelayEstimationInfo_p, sizeof(S1ap_EUTRANRoundTripDelayEstimationInfo_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinks1cdma2000tunnelingies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinks1cdma2000tunnelingies\n", (int)ie_p->id); return -1; } } @@ -2511,7 +2395,7 @@ int s1ap_decode_s1ap_handoverrequesties( assert(any_p != NULL); assert(s1ap_HandoverRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverRequest, (void**)&s1ap_HandoverRequest_p); @@ -2524,7 +2408,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2539,7 +2423,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_HandoverType_t *s1apHandoverType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverType, (void**)&s1apHandoverType_p); if (tempDecoded < 0 || s1apHandoverType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverType failed\n"); + d_error("Decoding of IE handoverType failed\n"); if (s1apHandoverType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverType, s1apHandoverType_p); return -1; @@ -2554,7 +2438,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -2569,7 +2453,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_UEAggregateMaximumBitrate_t *s1apUEAggregateMaximumBitrate_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -2584,7 +2468,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_E_RABToBeSetupListHOReq_t *s1apERABToBeSetupListHOReq_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupListHOReq, (void**)&s1apERABToBeSetupListHOReq_p); if (tempDecoded < 0 || s1apERABToBeSetupListHOReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupListHOReq failed\n"); + d_error("Decoding of IE e_RABToBeSetupListHOReq failed\n"); if (s1apERABToBeSetupListHOReq_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListHOReq, s1apERABToBeSetupListHOReq_p); return -1; @@ -2593,7 +2477,7 @@ int s1ap_decode_s1ap_handoverrequesties( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupListHOReq, s1apERABToBeSetupListHOReq_p); if (s1ap_decode_s1ap_e_rabtobesetuplisthoreq(&s1ap_HandoverRequestIEs->e_RABToBeSetupListHOReq, s1apERABToBeSetupListHOReq_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABToBeSetupListHOReq failed\n"); + d_error("Decoding of encapsulated IE s1apERABToBeSetupListHOReq failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListHOReq, s1apERABToBeSetupListHOReq_p); } } break; @@ -2602,7 +2486,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_Source_ToTarget_TransparentContainer_t *s1apSourceToTargetTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Source_ToTarget_TransparentContainer, (void**)&s1apSourceToTargetTransparentContainer_p); if (tempDecoded < 0 || s1apSourceToTargetTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE source_ToTarget_TransparentContainer failed\n"); + d_error("Decoding of IE source_ToTarget_TransparentContainer failed\n"); if (s1apSourceToTargetTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Source_ToTarget_TransparentContainer, s1apSourceToTargetTransparentContainer_p); return -1; @@ -2617,7 +2501,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_UESecurityCapabilities_t *s1apUESecurityCapabilities_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UESecurityCapabilities, (void**)&s1apUESecurityCapabilities_p); if (tempDecoded < 0 || s1apUESecurityCapabilities_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueSecurityCapabilities failed\n"); + d_error("Decoding of IE ueSecurityCapabilities failed\n"); if (s1apUESecurityCapabilities_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UESecurityCapabilities, s1apUESecurityCapabilities_p); return -1; @@ -2634,7 +2518,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_HANDOVERRESTRICTIONLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverRestrictionList, (void**)&s1apHandoverRestrictionList_p); if (tempDecoded < 0 || s1apHandoverRestrictionList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverRestrictionList failed\n"); + d_error("Decoding of IE handoverRestrictionList failed\n"); if (s1apHandoverRestrictionList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverRestrictionList, s1apHandoverRestrictionList_p); return -1; @@ -2651,7 +2535,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_TRACEACTIVATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TraceActivation, (void**)&s1apTraceActivation_p); if (tempDecoded < 0 || s1apTraceActivation_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE traceActivation failed\n"); + d_error("Decoding of IE traceActivation failed\n"); if (s1apTraceActivation_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TraceActivation, s1apTraceActivation_p); return -1; @@ -2668,7 +2552,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_REQUESTTYPE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RequestType, (void**)&s1apRequestType_p); if (tempDecoded < 0 || s1apRequestType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE requestType failed\n"); + d_error("Decoding of IE requestType failed\n"); if (s1apRequestType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RequestType, s1apRequestType_p); return -1; @@ -2685,7 +2569,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_SRVCCOPERATIONPOSSIBLE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SRVCCOperationPossible, (void**)&s1apSRVCCOperationPossible_p); if (tempDecoded < 0 || s1apSRVCCOperationPossible_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE srvccOperationPossible failed\n"); + d_error("Decoding of IE srvccOperationPossible failed\n"); if (s1apSRVCCOperationPossible_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SRVCCOperationPossible, s1apSRVCCOperationPossible_p); return -1; @@ -2700,7 +2584,7 @@ int s1ap_decode_s1ap_handoverrequesties( S1ap_SecurityContext_t *s1apSecurityContext_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SecurityContext, (void**)&s1apSecurityContext_p); if (tempDecoded < 0 || s1apSecurityContext_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE securityContext failed\n"); + d_error("Decoding of IE securityContext failed\n"); if (s1apSecurityContext_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SecurityContext, s1apSecurityContext_p); return -1; @@ -2717,7 +2601,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_CSG_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_Id, (void**)&s1apCSGId_p); if (tempDecoded < 0 || s1apCSGId_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_Id failed\n"); + d_error("Decoding of IE csG_Id failed\n"); if (s1apCSGId_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_Id, s1apCSGId_p); return -1; @@ -2734,7 +2618,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_CSGMEMBERSHIPSTATUS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSGMembershipStatus, (void**)&s1apCSGMembershipStatus_p); if (tempDecoded < 0 || s1apCSGMembershipStatus_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csgMembershipStatus failed\n"); + d_error("Decoding of IE csgMembershipStatus failed\n"); if (s1apCSGMembershipStatus_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSGMembershipStatus, s1apCSGMembershipStatus_p); return -1; @@ -2751,7 +2635,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_GUMMEI_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEI, (void**)&s1apGUMMEI_p); if (tempDecoded < 0 || s1apGUMMEI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gummei_id failed\n"); + d_error("Decoding of IE gummei_id failed\n"); if (s1apGUMMEI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEI, s1apGUMMEI_p); return -1; @@ -2768,7 +2652,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_MME_UE_S1AP_ID_2_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id_2 failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id_2 failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2785,7 +2669,7 @@ int s1ap_decode_s1ap_handoverrequesties( s1ap_HandoverRequestIEs->presenceMask |= S1AP_HANDOVERREQUESTIES_MANAGEMENTBASEDMDTALLOWED_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ManagementBasedMDTAllowed, (void**)&s1apManagementBasedMDTAllowed_p); if (tempDecoded < 0 || s1apManagementBasedMDTAllowed_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE managementBasedMDTAllowed failed\n"); + d_error("Decoding of IE managementBasedMDTAllowed failed\n"); if (s1apManagementBasedMDTAllowed_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ManagementBasedMDTAllowed, s1apManagementBasedMDTAllowed_p); return -1; @@ -2796,7 +2680,7 @@ int s1ap_decode_s1ap_handoverrequesties( memcpy(&s1ap_HandoverRequestIEs->managementBasedMDTAllowed, s1apManagementBasedMDTAllowed_p, sizeof(S1ap_ManagementBasedMDTAllowed_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handoverrequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handoverrequesties\n", (int)ie_p->id); return -1; } } @@ -2814,7 +2698,7 @@ int s1ap_decode_s1ap_handoverrequiredies( assert(any_p != NULL); assert(s1ap_HandoverRequiredIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverRequiredIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverRequiredIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverRequired, (void**)&s1ap_HandoverRequired_p); @@ -2827,7 +2711,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -2842,7 +2726,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -2857,7 +2741,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_HandoverType_t *s1apHandoverType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverType, (void**)&s1apHandoverType_p); if (tempDecoded < 0 || s1apHandoverType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverType failed\n"); + d_error("Decoding of IE handoverType failed\n"); if (s1apHandoverType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverType, s1apHandoverType_p); return -1; @@ -2872,7 +2756,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -2887,7 +2771,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_TargetID_t *s1apTargetID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TargetID, (void**)&s1apTargetID_p); if (tempDecoded < 0 || s1apTargetID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE targetID failed\n"); + d_error("Decoding of IE targetID failed\n"); if (s1apTargetID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TargetID, s1apTargetID_p); return -1; @@ -2904,7 +2788,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_DIRECT_FORWARDING_PATH_AVAILABILITY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Direct_Forwarding_Path_Availability, (void**)&s1apDirectForwardingPathAvailability_p); if (tempDecoded < 0 || s1apDirectForwardingPathAvailability_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE direct_Forwarding_Path_Availability failed\n"); + d_error("Decoding of IE direct_Forwarding_Path_Availability failed\n"); if (s1apDirectForwardingPathAvailability_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Direct_Forwarding_Path_Availability, s1apDirectForwardingPathAvailability_p); return -1; @@ -2921,7 +2805,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_SRVCCHOINDICATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SRVCCHOIndication, (void**)&s1apSRVCCHOIndication_p); if (tempDecoded < 0 || s1apSRVCCHOIndication_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE srvcchoIndication failed\n"); + d_error("Decoding of IE srvcchoIndication failed\n"); if (s1apSRVCCHOIndication_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SRVCCHOIndication, s1apSRVCCHOIndication_p); return -1; @@ -2936,7 +2820,7 @@ int s1ap_decode_s1ap_handoverrequiredies( S1ap_Source_ToTarget_TransparentContainer_t *s1apSourceToTargetTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Source_ToTarget_TransparentContainer, (void**)&s1apSourceToTargetTransparentContainer_p); if (tempDecoded < 0 || s1apSourceToTargetTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE source_ToTarget_TransparentContainer failed\n"); + d_error("Decoding of IE source_ToTarget_TransparentContainer failed\n"); if (s1apSourceToTargetTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Source_ToTarget_TransparentContainer, s1apSourceToTargetTransparentContainer_p); return -1; @@ -2953,7 +2837,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_SOURCE_TOTARGET_TRANSPARENTCONTAINER_SECONDARY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Source_ToTarget_TransparentContainer, (void**)&s1apSourceToTargetTransparentContainer_p); if (tempDecoded < 0 || s1apSourceToTargetTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE source_ToTarget_TransparentContainer_Secondary failed\n"); + d_error("Decoding of IE source_ToTarget_TransparentContainer_Secondary failed\n"); if (s1apSourceToTargetTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Source_ToTarget_TransparentContainer, s1apSourceToTargetTransparentContainer_p); return -1; @@ -2970,7 +2854,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_MSCLASSMARK2_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MSClassmark2, (void**)&s1apMSClassmark2_p); if (tempDecoded < 0 || s1apMSClassmark2_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE msClassmark2 failed\n"); + d_error("Decoding of IE msClassmark2 failed\n"); if (s1apMSClassmark2_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MSClassmark2, s1apMSClassmark2_p); return -1; @@ -2987,7 +2871,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_MSCLASSMARK3_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MSClassmark3, (void**)&s1apMSClassmark3_p); if (tempDecoded < 0 || s1apMSClassmark3_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE msClassmark3 failed\n"); + d_error("Decoding of IE msClassmark3 failed\n"); if (s1apMSClassmark3_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MSClassmark3, s1apMSClassmark3_p); return -1; @@ -3004,7 +2888,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_CSG_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_Id, (void**)&s1apCSGId_p); if (tempDecoded < 0 || s1apCSGId_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_Id failed\n"); + d_error("Decoding of IE csG_Id failed\n"); if (s1apCSGId_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_Id, s1apCSGId_p); return -1; @@ -3021,7 +2905,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_CELLACCESSMODE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CellAccessMode, (void**)&s1apCellAccessMode_p); if (tempDecoded < 0 || s1apCellAccessMode_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cellAccessMode failed\n"); + d_error("Decoding of IE cellAccessMode failed\n"); if (s1apCellAccessMode_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CellAccessMode, s1apCellAccessMode_p); return -1; @@ -3038,7 +2922,7 @@ int s1ap_decode_s1ap_handoverrequiredies( s1ap_HandoverRequiredIEs->presenceMask |= S1AP_HANDOVERREQUIREDIES_PS_SERVICENOTAVAILABLE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PS_ServiceNotAvailable, (void**)&s1apPSServiceNotAvailable_p); if (tempDecoded < 0 || s1apPSServiceNotAvailable_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE pS_ServiceNotAvailable failed\n"); + d_error("Decoding of IE pS_ServiceNotAvailable failed\n"); if (s1apPSServiceNotAvailable_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PS_ServiceNotAvailable, s1apPSServiceNotAvailable_p); return -1; @@ -3049,7 +2933,7 @@ int s1ap_decode_s1ap_handoverrequiredies( memcpy(&s1ap_HandoverRequiredIEs->pS_ServiceNotAvailable, s1apPSServiceNotAvailable_p, sizeof(S1ap_PS_ServiceNotAvailable_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handoverrequiredies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handoverrequiredies\n", (int)ie_p->id); return -1; } } @@ -3067,7 +2951,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateacknowledgeies( assert(any_p != NULL); assert(s1ap_MMEConfigurationUpdateAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEConfigurationUpdateAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEConfigurationUpdateAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEConfigurationUpdateAcknowledge, (void**)&s1ap_MMEConfigurationUpdateAcknowledge_p); @@ -3082,7 +2966,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateacknowledgeies( s1ap_MMEConfigurationUpdateAcknowledgeIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -3093,7 +2977,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateacknowledgeies( memcpy(&s1ap_MMEConfigurationUpdateAcknowledgeIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdateacknowledgeies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdateacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -3111,7 +2995,7 @@ int s1ap_decode_s1ap_killresponseies( assert(any_p != NULL); assert(s1ap_KillResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_KillResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_KillResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_KillResponse, (void**)&s1ap_KillResponse_p); @@ -3124,7 +3008,7 @@ int s1ap_decode_s1ap_killresponseies( S1ap_MessageIdentifier_t *s1apMessageIdentifier_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MessageIdentifier, (void**)&s1apMessageIdentifier_p); if (tempDecoded < 0 || s1apMessageIdentifier_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE messageIdentifier failed\n"); + d_error("Decoding of IE messageIdentifier failed\n"); if (s1apMessageIdentifier_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MessageIdentifier, s1apMessageIdentifier_p); return -1; @@ -3139,7 +3023,7 @@ int s1ap_decode_s1ap_killresponseies( S1ap_SerialNumber_t *s1apSerialNumber_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SerialNumber, (void**)&s1apSerialNumber_p); if (tempDecoded < 0 || s1apSerialNumber_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE serialNumber failed\n"); + d_error("Decoding of IE serialNumber failed\n"); if (s1apSerialNumber_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SerialNumber, s1apSerialNumber_p); return -1; @@ -3156,7 +3040,7 @@ int s1ap_decode_s1ap_killresponseies( s1ap_KillResponseIEs->presenceMask |= S1AP_KILLRESPONSEIES_BROADCASTCANCELLEDAREALIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_BroadcastCancelledAreaList, (void**)&s1apBroadcastCancelledAreaList_p); if (tempDecoded < 0 || s1apBroadcastCancelledAreaList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE broadcastCancelledAreaList failed\n"); + d_error("Decoding of IE broadcastCancelledAreaList failed\n"); if (s1apBroadcastCancelledAreaList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_BroadcastCancelledAreaList, s1apBroadcastCancelledAreaList_p); return -1; @@ -3173,7 +3057,7 @@ int s1ap_decode_s1ap_killresponseies( s1ap_KillResponseIEs->presenceMask |= S1AP_KILLRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -3184,7 +3068,7 @@ int s1ap_decode_s1ap_killresponseies( memcpy(&s1ap_KillResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_killresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_killresponseies\n", (int)ie_p->id); return -1; } } @@ -3202,7 +3086,7 @@ int s1ap_decode_s1ap_mmestatustransferies( assert(any_p != NULL); assert(s1ap_MMEStatusTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEStatusTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEStatusTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEStatusTransfer, (void**)&s1ap_MMEStatusTransfer_p); @@ -3215,7 +3099,7 @@ int s1ap_decode_s1ap_mmestatustransferies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -3230,7 +3114,7 @@ int s1ap_decode_s1ap_mmestatustransferies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -3245,7 +3129,7 @@ int s1ap_decode_s1ap_mmestatustransferies( S1ap_ENB_StatusTransfer_TransparentContainer_t *s1apENBStatusTransferTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, (void**)&s1apENBStatusTransferTransparentContainer_p); if (tempDecoded < 0 || s1apENBStatusTransferTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_StatusTransfer_TransparentContainer failed\n"); + d_error("Decoding of IE eNB_StatusTransfer_TransparentContainer failed\n"); if (s1apENBStatusTransferTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, s1apENBStatusTransferTransparentContainer_p); return -1; @@ -3256,7 +3140,7 @@ int s1ap_decode_s1ap_mmestatustransferies( memcpy(&s1ap_MMEStatusTransferIEs->eNB_StatusTransfer_TransparentContainer, s1apENBStatusTransferTransparentContainer_p, sizeof(S1ap_ENB_StatusTransfer_TransparentContainer_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmestatustransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmestatustransferies\n", (int)ie_p->id); return -1; } } @@ -3274,7 +3158,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateies( assert(any_p != NULL); assert(s1ap_MMEConfigurationUpdateIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEConfigurationUpdateIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEConfigurationUpdateIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEConfigurationUpdate, (void**)&s1ap_MMEConfigurationUpdate_p); @@ -3289,7 +3173,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateies( s1ap_MMEConfigurationUpdateIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEIES_MMENAME_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MMEname, (void**)&s1apMMEname_p); if (tempDecoded < 0 || s1apMMEname_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mmEname failed\n"); + d_error("Decoding of IE mmEname failed\n"); if (s1apMMEname_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MMEname, s1apMMEname_p); return -1; @@ -3306,7 +3190,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateies( s1ap_MMEConfigurationUpdateIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEIES_SERVEDGUMMEIS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ServedGUMMEIs, (void**)&s1apServedGUMMEIs_p); if (tempDecoded < 0 || s1apServedGUMMEIs_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE servedGUMMEIs failed\n"); + d_error("Decoding of IE servedGUMMEIs failed\n"); if (s1apServedGUMMEIs_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ServedGUMMEIs, s1apServedGUMMEIs_p); return -1; @@ -3323,7 +3207,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateies( s1ap_MMEConfigurationUpdateIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEIES_RELATIVEMMECAPACITY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RelativeMMECapacity, (void**)&s1apRelativeMMECapacity_p); if (tempDecoded < 0 || s1apRelativeMMECapacity_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE relativeMMECapacity failed\n"); + d_error("Decoding of IE relativeMMECapacity failed\n"); if (s1apRelativeMMECapacity_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RelativeMMECapacity, s1apRelativeMMECapacity_p); return -1; @@ -3334,7 +3218,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdateies( memcpy(&s1ap_MMEConfigurationUpdateIEs->relativeMMECapacity, s1apRelativeMMECapacity_p, sizeof(S1ap_RelativeMMECapacity_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdateies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdateies\n", (int)ie_p->id); return -1; } } @@ -3352,7 +3236,7 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( assert(any_p != NULL); assert(s1ap_E_RABModifyRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABModifyRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABModifyRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABModifyRequest, (void**)&s1ap_E_RABModifyRequest_p); @@ -3365,7 +3249,7 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -3380,7 +3264,7 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -3397,7 +3281,7 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( s1ap_E_RABModifyRequestIEs->presenceMask |= S1AP_E_RABMODIFYREQUESTIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -3412,7 +3296,7 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( S1ap_E_RABToBeModifiedListBearerModReq_t *s1apERABToBeModifiedListBearerModReq_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, (void**)&s1apERABToBeModifiedListBearerModReq_p); if (tempDecoded < 0 || s1apERABToBeModifiedListBearerModReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeModifiedListBearerModReq failed\n"); + d_error("Decoding of IE e_RABToBeModifiedListBearerModReq failed\n"); if (s1apERABToBeModifiedListBearerModReq_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, s1apERABToBeModifiedListBearerModReq_p); return -1; @@ -3420,52 +3304,13 @@ int s1ap_decode_s1ap_e_rabmodifyrequesties( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, s1apERABToBeModifiedListBearerModReq_p); - memcpy(&s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq, s1apERABToBeModifiedListBearerModReq_p, sizeof(S1ap_E_RABToBeModifiedListBearerModReq_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabmodifyrequesties\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabsetupitemctxtsuresies( - S1ap_E_RABSetupItemCtxtSUResIEs_t *s1ap_E_RABSetupItemCtxtSUResIEs, - ANY_t *any_p) { - - S1ap_E_RABSetupListCtxtSURes_t s1ap_E_RABSetupListCtxtSURes; - S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes_p = &s1ap_E_RABSetupListCtxtSURes; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABSetupItemCtxtSUResIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABSetupItemCtxtSUResIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABSetupListCtxtSURes, (void**)&s1ap_E_RABSetupListCtxtSURes_p); - - for (i = 0; i < s1ap_E_RABSetupListCtxtSURes_p->s1ap_E_RABSetupListCtxtSURes_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABSetupListCtxtSURes_p->s1ap_E_RABSetupListCtxtSURes_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABSetupItemCtxtSURes: - { - S1ap_E_RABSetupItemCtxtSURes_t *s1apERABSetupItemCtxtSURes_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, (void**)&s1apERABSetupItemCtxtSURes_p); - if (tempDecoded < 0 || s1apERABSetupItemCtxtSURes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABSetupItemCtxtSURes failed\n"); - if (s1apERABSetupItemCtxtSURes_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p); - return -1; + if (s1ap_decode_s1ap_e_rabtobemodifiedlistbearermodreq(&s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq, s1apERABToBeModifiedListBearerModReq_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABToBeModifiedListBearerModReq failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, s1apERABToBeModifiedListBearerModReq_p); } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p); - memcpy(&s1ap_E_RABSetupItemCtxtSUResIEs->e_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p, sizeof(S1ap_E_RABSetupItemCtxtSURes_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabsetupitemctxtsuresies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabmodifyrequesties\n", (int)ie_p->id); return -1; } } @@ -3483,7 +3328,7 @@ int s1ap_decode_s1ap_enbconfigurationupdatefailureies( assert(any_p != NULL); assert(s1ap_ENBConfigurationUpdateFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBConfigurationUpdateFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBConfigurationUpdateFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBConfigurationUpdateFailure, (void**)&s1ap_ENBConfigurationUpdateFailure_p); @@ -3496,7 +3341,7 @@ int s1ap_decode_s1ap_enbconfigurationupdatefailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -3513,7 +3358,7 @@ int s1ap_decode_s1ap_enbconfigurationupdatefailureies( s1ap_ENBConfigurationUpdateFailureIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEFAILUREIES_TIMETOWAIT_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TimeToWait, (void**)&s1apTimeToWait_p); if (tempDecoded < 0 || s1apTimeToWait_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE timeToWait failed\n"); + d_error("Decoding of IE timeToWait failed\n"); if (s1apTimeToWait_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TimeToWait, s1apTimeToWait_p); return -1; @@ -3530,7 +3375,7 @@ int s1ap_decode_s1ap_enbconfigurationupdatefailureies( s1ap_ENBConfigurationUpdateFailureIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -3541,7 +3386,7 @@ int s1ap_decode_s1ap_enbconfigurationupdatefailureies( memcpy(&s1ap_ENBConfigurationUpdateFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdatefailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdatefailureies\n", (int)ie_p->id); return -1; } } @@ -3559,7 +3404,7 @@ int s1ap_decode_s1ap_reseties( assert(any_p != NULL); assert(s1ap_ResetIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ResetIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ResetIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_Reset, (void**)&s1ap_Reset_p); @@ -3572,7 +3417,7 @@ int s1ap_decode_s1ap_reseties( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -3587,7 +3432,7 @@ int s1ap_decode_s1ap_reseties( S1ap_ResetType_t *s1apResetType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ResetType, (void**)&s1apResetType_p); if (tempDecoded < 0 || s1apResetType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE resetType failed\n"); + d_error("Decoding of IE resetType failed\n"); if (s1apResetType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ResetType, s1apResetType_p); return -1; @@ -3598,91 +3443,7 @@ int s1ap_decode_s1ap_reseties( memcpy(&s1ap_ResetIEs->resetType, s1apResetType_p, sizeof(S1ap_ResetType_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_reseties\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_bearers_subjecttostatustransfer_itemies( - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ItemIEs, - ANY_t *any_p) { - - S1ap_Bearers_SubjectToStatusTransfer_List_t s1ap_Bearers_SubjectToStatusTransfer_List; - S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List_p = &s1ap_Bearers_SubjectToStatusTransfer_List; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_Bearers_SubjectToStatusTransfer_ItemIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_Bearers_SubjectToStatusTransfer_ItemIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_List, (void**)&s1ap_Bearers_SubjectToStatusTransfer_List_p); - - for (i = 0; i < s1ap_Bearers_SubjectToStatusTransfer_List_p->s1ap_Bearers_SubjectToStatusTransfer_List_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_Bearers_SubjectToStatusTransfer_List_p->s1ap_Bearers_SubjectToStatusTransfer_List_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_Bearers_SubjectToStatusTransfer_Item: - { - S1ap_Bearers_SubjectToStatusTransfer_Item_t *s1apBearersSubjectToStatusTransferItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, (void**)&s1apBearersSubjectToStatusTransferItem_p); - if (tempDecoded < 0 || s1apBearersSubjectToStatusTransferItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE bearers_SubjectToStatusTransfer_Item failed\n"); - if (s1apBearersSubjectToStatusTransferItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p); - memcpy(&s1ap_Bearers_SubjectToStatusTransfer_ItemIEs->bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p, sizeof(S1ap_Bearers_SubjectToStatusTransfer_Item_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_bearers_subjecttostatustransfer_itemies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabitemies( - S1ap_E_RABItemIEs_t *s1ap_E_RABItemIEs, - ANY_t *any_p) { - - S1ap_E_RABList_t s1ap_E_RABList; - S1ap_E_RABList_t *s1ap_E_RABList_p = &s1ap_E_RABList; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABItemIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABItemIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABList, (void**)&s1ap_E_RABList_p); - - for (i = 0; i < s1ap_E_RABList_p->s1ap_E_RABList_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABList_p->s1ap_E_RABList_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABItem: - { - S1ap_E_RABItem_t *s1apERABItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABItem, (void**)&s1apERABItem_p); - if (tempDecoded < 0 || s1apERABItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABItem failed\n"); - if (s1apERABItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABItem, s1apERABItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABItem, s1apERABItem_p); - memcpy(&s1ap_E_RABItemIEs->e_RABItem, s1apERABItem_p, sizeof(S1ap_E_RABItem_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabitemies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_reseties\n", (int)ie_p->id); return -1; } } @@ -3700,7 +3461,7 @@ int s1ap_decode_s1ap_s1setupresponseies( assert(any_p != NULL); assert(s1ap_S1SetupResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_S1SetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_S1SetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_S1SetupResponse, (void**)&s1ap_S1SetupResponse_p); @@ -3715,7 +3476,7 @@ int s1ap_decode_s1ap_s1setupresponseies( s1ap_S1SetupResponseIEs->presenceMask |= S1AP_S1SETUPRESPONSEIES_MMENAME_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MMEname, (void**)&s1apMMEname_p); if (tempDecoded < 0 || s1apMMEname_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mmEname failed\n"); + d_error("Decoding of IE mmEname failed\n"); if (s1apMMEname_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MMEname, s1apMMEname_p); return -1; @@ -3730,7 +3491,7 @@ int s1ap_decode_s1ap_s1setupresponseies( S1ap_ServedGUMMEIs_t *s1apServedGUMMEIs_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ServedGUMMEIs, (void**)&s1apServedGUMMEIs_p); if (tempDecoded < 0 || s1apServedGUMMEIs_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE servedGUMMEIs failed\n"); + d_error("Decoding of IE servedGUMMEIs failed\n"); if (s1apServedGUMMEIs_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ServedGUMMEIs, s1apServedGUMMEIs_p); return -1; @@ -3745,7 +3506,7 @@ int s1ap_decode_s1ap_s1setupresponseies( S1ap_RelativeMMECapacity_t *s1apRelativeMMECapacity_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_RelativeMMECapacity, (void**)&s1apRelativeMMECapacity_p); if (tempDecoded < 0 || s1apRelativeMMECapacity_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE relativeMMECapacity failed\n"); + d_error("Decoding of IE relativeMMECapacity failed\n"); if (s1apRelativeMMECapacity_p) ASN_STRUCT_FREE(asn_DEF_S1ap_RelativeMMECapacity, s1apRelativeMMECapacity_p); return -1; @@ -3762,7 +3523,7 @@ int s1ap_decode_s1ap_s1setupresponseies( s1ap_S1SetupResponseIEs->presenceMask |= S1AP_S1SETUPRESPONSEIES_MMERELAYSUPPORTINDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MMERelaySupportIndicator, (void**)&s1apMMERelaySupportIndicator_p); if (tempDecoded < 0 || s1apMMERelaySupportIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mmeRelaySupportIndicator failed\n"); + d_error("Decoding of IE mmeRelaySupportIndicator failed\n"); if (s1apMMERelaySupportIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MMERelaySupportIndicator, s1apMMERelaySupportIndicator_p); return -1; @@ -3779,7 +3540,7 @@ int s1ap_decode_s1ap_s1setupresponseies( s1ap_S1SetupResponseIEs->presenceMask |= S1AP_S1SETUPRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -3790,7 +3551,7 @@ int s1ap_decode_s1ap_s1setupresponseies( memcpy(&s1ap_S1SetupResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_s1setupresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_s1setupresponseies\n", (int)ie_p->id); return -1; } } @@ -3808,7 +3569,7 @@ int s1ap_decode_s1ap_pagingies( assert(any_p != NULL); assert(s1ap_PagingIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_PagingIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_PagingIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_Paging, (void**)&s1ap_Paging_p); @@ -3821,7 +3582,7 @@ int s1ap_decode_s1ap_pagingies( S1ap_UEIdentityIndexValue_t *s1apUEIdentityIndexValue_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEIdentityIndexValue, (void**)&s1apUEIdentityIndexValue_p); if (tempDecoded < 0 || s1apUEIdentityIndexValue_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueIdentityIndexValue failed\n"); + d_error("Decoding of IE ueIdentityIndexValue failed\n"); if (s1apUEIdentityIndexValue_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEIdentityIndexValue, s1apUEIdentityIndexValue_p); return -1; @@ -3836,7 +3597,7 @@ int s1ap_decode_s1ap_pagingies( S1ap_UEPagingID_t *s1apUEPagingID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEPagingID, (void**)&s1apUEPagingID_p); if (tempDecoded < 0 || s1apUEPagingID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uePagingID failed\n"); + d_error("Decoding of IE uePagingID failed\n"); if (s1apUEPagingID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEPagingID, s1apUEPagingID_p); return -1; @@ -3853,7 +3614,7 @@ int s1ap_decode_s1ap_pagingies( s1ap_PagingIEs->presenceMask |= S1AP_PAGINGIES_PAGINGDRX_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PagingDRX, (void**)&s1apPagingDRX_p); if (tempDecoded < 0 || s1apPagingDRX_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE pagingDRX failed\n"); + d_error("Decoding of IE pagingDRX failed\n"); if (s1apPagingDRX_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PagingDRX, s1apPagingDRX_p); return -1; @@ -3868,7 +3629,7 @@ int s1ap_decode_s1ap_pagingies( S1ap_CNDomain_t *s1apCNDomain_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CNDomain, (void**)&s1apCNDomain_p); if (tempDecoded < 0 || s1apCNDomain_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cnDomain failed\n"); + d_error("Decoding of IE cnDomain failed\n"); if (s1apCNDomain_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CNDomain, s1apCNDomain_p); return -1; @@ -3883,7 +3644,7 @@ int s1ap_decode_s1ap_pagingies( S1ap_TAIList_t *s1apTAIList_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAIList, (void**)&s1apTAIList_p); if (tempDecoded < 0 || s1apTAIList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE taiList failed\n"); + d_error("Decoding of IE taiList failed\n"); if (s1apTAIList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAIList, s1apTAIList_p); return -1; @@ -3891,7 +3652,10 @@ int s1ap_decode_s1ap_pagingies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_TAIList, s1apTAIList_p); - memcpy(&s1ap_PagingIEs->taiList, s1apTAIList_p, sizeof(S1ap_TAIList_t)); + if (s1ap_decode_s1ap_tailist(&s1ap_PagingIEs->taiList, s1apTAIList_p) < 0) { + d_error("Decoding of encapsulated IE s1apTAIList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_TAIList, s1apTAIList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CSG_IdList: @@ -3900,7 +3664,7 @@ int s1ap_decode_s1ap_pagingies( s1ap_PagingIEs->presenceMask |= S1AP_PAGINGIES_CSG_IDLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_IdList, (void**)&s1apCSGIdList_p); if (tempDecoded < 0 || s1apCSGIdList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_IdList failed\n"); + d_error("Decoding of IE csG_IdList failed\n"); if (s1apCSGIdList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_IdList, s1apCSGIdList_p); return -1; @@ -3917,7 +3681,7 @@ int s1ap_decode_s1ap_pagingies( s1ap_PagingIEs->presenceMask |= S1AP_PAGINGIES_PAGINGPRIORITY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PagingPriority, (void**)&s1apPagingPriority_p); if (tempDecoded < 0 || s1apPagingPriority_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE pagingPriority failed\n"); + d_error("Decoding of IE pagingPriority failed\n"); if (s1apPagingPriority_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PagingPriority, s1apPagingPriority_p); return -1; @@ -3928,7 +3692,7 @@ int s1ap_decode_s1ap_pagingies( memcpy(&s1ap_PagingIEs->pagingPriority, s1apPagingPriority_p, sizeof(S1ap_PagingPriority_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_pagingies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_pagingies\n", (int)ie_p->id); return -1; } } @@ -3946,7 +3710,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateacknowledgeies( assert(any_p != NULL); assert(s1ap_ENBConfigurationUpdateAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBConfigurationUpdateAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBConfigurationUpdateAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBConfigurationUpdateAcknowledge, (void**)&s1ap_ENBConfigurationUpdateAcknowledge_p); @@ -3961,7 +3725,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateacknowledgeies( s1ap_ENBConfigurationUpdateAcknowledgeIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -3972,7 +3736,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateacknowledgeies( memcpy(&s1ap_ENBConfigurationUpdateAcknowledgeIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdateacknowledgeies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdateacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -3990,7 +3754,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( assert(any_p != NULL); assert(s1ap_E_RABReleaseCommandIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABReleaseCommandIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABReleaseCommandIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABReleaseCommand, (void**)&s1ap_E_RABReleaseCommand_p); @@ -4003,7 +3767,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4018,7 +3782,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4035,7 +3799,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( s1ap_E_RABReleaseCommandIEs->presenceMask |= S1AP_E_RABRELEASECOMMANDIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -4050,7 +3814,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( S1ap_E_RABList_t *s1apERABList_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeReleasedList failed\n"); + d_error("Decoding of IE e_RABToBeReleasedList failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -4058,7 +3822,10 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_NAS_PDU: @@ -4067,7 +3834,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( s1ap_E_RABReleaseCommandIEs->presenceMask |= S1AP_E_RABRELEASECOMMANDIES_NAS_PDU_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NAS_PDU, (void**)&s1apNASPDU_p); if (tempDecoded < 0 || s1apNASPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE nas_pdu failed\n"); + d_error("Decoding of IE nas_pdu failed\n"); if (s1apNASPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NAS_PDU, s1apNASPDU_p); return -1; @@ -4078,7 +3845,7 @@ int s1ap_decode_s1ap_e_rabreleasecommandies( memcpy(&s1ap_E_RABReleaseCommandIEs->nas_pdu, s1apNASPDU_p, sizeof(S1ap_NAS_PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabreleasecommandies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabreleasecommandies\n", (int)ie_p->id); return -1; } } @@ -4096,7 +3863,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( assert(any_p != NULL); assert(s1ap_PathSwitchRequestFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_PathSwitchRequestFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_PathSwitchRequestFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_PathSwitchRequestFailure, (void**)&s1ap_PathSwitchRequestFailure_p); @@ -4109,7 +3876,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4124,7 +3891,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4139,7 +3906,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -4156,7 +3923,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( s1ap_PathSwitchRequestFailureIEs->presenceMask |= S1AP_PATHSWITCHREQUESTFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4167,7 +3934,7 @@ int s1ap_decode_s1ap_pathswitchrequestfailureies( memcpy(&s1ap_PathSwitchRequestFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_pathswitchrequestfailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_pathswitchrequestfailureies\n", (int)ie_p->id); return -1; } } @@ -4185,7 +3952,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( assert(any_p != NULL); assert(s1ap_E_RABModifyResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABModifyResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABModifyResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABModifyResponse, (void**)&s1ap_E_RABModifyResponse_p); @@ -4198,7 +3965,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4213,7 +3980,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4230,7 +3997,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( s1ap_E_RABModifyResponseIEs->presenceMask |= S1AP_E_RABMODIFYRESPONSEIES_E_RABMODIFYLISTBEARERMODRES_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABModifyListBearerModRes, (void**)&s1apERABModifyListBearerModRes_p); if (tempDecoded < 0 || s1apERABModifyListBearerModRes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABModifyListBearerModRes failed\n"); + d_error("Decoding of IE e_RABModifyListBearerModRes failed\n"); if (s1apERABModifyListBearerModRes_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABModifyListBearerModRes, s1apERABModifyListBearerModRes_p); return -1; @@ -4238,7 +4005,10 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABModifyListBearerModRes, s1apERABModifyListBearerModRes_p); - memcpy(&s1ap_E_RABModifyResponseIEs->e_RABModifyListBearerModRes, s1apERABModifyListBearerModRes_p, sizeof(S1ap_E_RABModifyListBearerModRes_t)); + if (s1ap_decode_s1ap_e_rabmodifylistbearermodres(&s1ap_E_RABModifyResponseIEs->e_RABModifyListBearerModRes, s1apERABModifyListBearerModRes_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABModifyListBearerModRes failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABModifyListBearerModRes, s1apERABModifyListBearerModRes_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_E_RABFailedToModifyList: @@ -4247,7 +4017,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( s1ap_E_RABModifyResponseIEs->presenceMask |= S1AP_E_RABMODIFYRESPONSEIES_E_RABFAILEDTOMODIFYLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedToModifyList failed\n"); + d_error("Decoding of IE e_RABFailedToModifyList failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -4255,7 +4025,10 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_E_RABModifyResponseIEs->e_RABFailedToModifyList, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_E_RABModifyResponseIEs->e_RABFailedToModifyList, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CriticalityDiagnostics: @@ -4264,7 +4037,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( s1ap_E_RABModifyResponseIEs->presenceMask |= S1AP_E_RABMODIFYRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4275,7 +4048,7 @@ int s1ap_decode_s1ap_e_rabmodifyresponseies( memcpy(&s1ap_E_RABModifyResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabmodifyresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabmodifyresponseies\n", (int)ie_p->id); return -1; } } @@ -4293,7 +4066,7 @@ int s1ap_decode_s1ap_handovernotifyies( assert(any_p != NULL); assert(s1ap_HandoverNotifyIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverNotifyIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverNotifyIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverNotify, (void**)&s1ap_HandoverNotify_p); @@ -4306,7 +4079,7 @@ int s1ap_decode_s1ap_handovernotifyies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4321,7 +4094,7 @@ int s1ap_decode_s1ap_handovernotifyies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4336,7 +4109,7 @@ int s1ap_decode_s1ap_handovernotifyies( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -4351,7 +4124,7 @@ int s1ap_decode_s1ap_handovernotifyies( S1ap_TAI_t *s1apTAI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAI, (void**)&s1apTAI_p); if (tempDecoded < 0 || s1apTAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE tai failed\n"); + d_error("Decoding of IE tai failed\n"); if (s1apTAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAI, s1apTAI_p); return -1; @@ -4362,7 +4135,7 @@ int s1ap_decode_s1ap_handovernotifyies( memcpy(&s1ap_HandoverNotifyIEs->tai, s1apTAI_p, sizeof(S1ap_TAI_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handovernotifyies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handovernotifyies\n", (int)ie_p->id); return -1; } } @@ -4380,7 +4153,7 @@ int s1ap_decode_s1ap_handovercancelacknowledgeies( assert(any_p != NULL); assert(s1ap_HandoverCancelAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverCancelAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverCancelAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverCancelAcknowledge, (void**)&s1ap_HandoverCancelAcknowledge_p); @@ -4393,7 +4166,7 @@ int s1ap_decode_s1ap_handovercancelacknowledgeies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4408,7 +4181,7 @@ int s1ap_decode_s1ap_handovercancelacknowledgeies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4425,7 +4198,7 @@ int s1ap_decode_s1ap_handovercancelacknowledgeies( s1ap_HandoverCancelAcknowledgeIEs->presenceMask |= S1AP_HANDOVERCANCELACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4436,7 +4209,7 @@ int s1ap_decode_s1ap_handovercancelacknowledgeies( memcpy(&s1ap_HandoverCancelAcknowledgeIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handovercancelacknowledgeies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handovercancelacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -4454,7 +4227,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( assert(any_p != NULL); assert(s1ap_InitialContextSetupFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_InitialContextSetupFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_InitialContextSetupFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_InitialContextSetupFailure, (void**)&s1ap_InitialContextSetupFailure_p); @@ -4467,7 +4240,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4482,7 +4255,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4497,7 +4270,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -4514,7 +4287,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( s1ap_InitialContextSetupFailureIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4525,7 +4298,7 @@ int s1ap_decode_s1ap_initialcontextsetupfailureies( memcpy(&s1ap_InitialContextSetupFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_initialcontextsetupfailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_initialcontextsetupfailureies\n", (int)ie_p->id); return -1; } } @@ -4543,7 +4316,7 @@ int s1ap_decode_s1ap_handovercommandies( assert(any_p != NULL); assert(s1ap_HandoverCommandIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverCommandIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverCommandIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverCommand, (void**)&s1ap_HandoverCommand_p); @@ -4556,7 +4329,7 @@ int s1ap_decode_s1ap_handovercommandies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4571,7 +4344,7 @@ int s1ap_decode_s1ap_handovercommandies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4586,7 +4359,7 @@ int s1ap_decode_s1ap_handovercommandies( S1ap_HandoverType_t *s1apHandoverType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverType, (void**)&s1apHandoverType_p); if (tempDecoded < 0 || s1apHandoverType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverType failed\n"); + d_error("Decoding of IE handoverType failed\n"); if (s1apHandoverType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverType, s1apHandoverType_p); return -1; @@ -4603,7 +4376,7 @@ int s1ap_decode_s1ap_handovercommandies( s1ap_HandoverCommandIEs->presenceMask |= S1AP_HANDOVERCOMMANDIES_E_RABDATAFORWARDINGLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABDataForwardingList, (void**)&s1apERABDataForwardingList_p); if (tempDecoded < 0 || s1apERABDataForwardingList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABDataForwardingList failed\n"); + d_error("Decoding of IE e_RABDataForwardingList failed\n"); if (s1apERABDataForwardingList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); return -1; @@ -4612,7 +4385,7 @@ int s1ap_decode_s1ap_handovercommandies( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); if (s1ap_decode_s1ap_e_rabdataforwardinglist(&s1ap_HandoverCommandIEs->e_RABDataForwardingList, s1apERABDataForwardingList_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABDataForwardingList failed\n"); + d_error("Decoding of encapsulated IE s1apERABDataForwardingList failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); } } break; @@ -4623,7 +4396,7 @@ int s1ap_decode_s1ap_handovercommandies( s1ap_HandoverCommandIEs->presenceMask |= S1AP_HANDOVERCOMMANDIES_E_RABTORELEASELISTHOCMD_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABtoReleaseListHOCmd failed\n"); + d_error("Decoding of IE e_RABtoReleaseListHOCmd failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -4631,14 +4404,17 @@ int s1ap_decode_s1ap_handovercommandies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_HandoverCommandIEs->e_RABtoReleaseListHOCmd, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_HandoverCommandIEs->e_RABtoReleaseListHOCmd, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; case S1ap_ProtocolIE_ID_id_Target_ToSource_TransparentContainer: { S1ap_Target_ToSource_TransparentContainer_t *s1apTargetToSourceTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Target_ToSource_TransparentContainer, (void**)&s1apTargetToSourceTransparentContainer_p); if (tempDecoded < 0 || s1apTargetToSourceTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE target_ToSource_TransparentContainer failed\n"); + d_error("Decoding of IE target_ToSource_TransparentContainer failed\n"); if (s1apTargetToSourceTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Target_ToSource_TransparentContainer, s1apTargetToSourceTransparentContainer_p); return -1; @@ -4655,7 +4431,7 @@ int s1ap_decode_s1ap_handovercommandies( s1ap_HandoverCommandIEs->presenceMask |= S1AP_HANDOVERCOMMANDIES_TARGET_TOSOURCE_TRANSPARENTCONTAINER_SECONDARY_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Target_ToSource_TransparentContainer, (void**)&s1apTargetToSourceTransparentContainer_p); if (tempDecoded < 0 || s1apTargetToSourceTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE target_ToSource_TransparentContainer_Secondary failed\n"); + d_error("Decoding of IE target_ToSource_TransparentContainer_Secondary failed\n"); if (s1apTargetToSourceTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Target_ToSource_TransparentContainer, s1apTargetToSourceTransparentContainer_p); return -1; @@ -4672,7 +4448,7 @@ int s1ap_decode_s1ap_handovercommandies( s1ap_HandoverCommandIEs->presenceMask |= S1AP_HANDOVERCOMMANDIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4683,7 +4459,7 @@ int s1ap_decode_s1ap_handovercommandies( memcpy(&s1ap_HandoverCommandIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handovercommandies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handovercommandies\n", (int)ie_p->id); return -1; } } @@ -4701,7 +4477,7 @@ int s1ap_decode_s1ap_mmedirectinformationtransferies( assert(any_p != NULL); assert(s1ap_MMEDirectInformationTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEDirectInformationTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEDirectInformationTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEDirectInformationTransfer, (void**)&s1ap_MMEDirectInformationTransfer_p); @@ -4714,7 +4490,7 @@ int s1ap_decode_s1ap_mmedirectinformationtransferies( S1ap_Inter_SystemInformationTransferType_t *s1apInterSystemInformationTransferType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Inter_SystemInformationTransferType, (void**)&s1apInterSystemInformationTransferType_p); if (tempDecoded < 0 || s1apInterSystemInformationTransferType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE inter_SystemInformationTransferTypeMDT failed\n"); + d_error("Decoding of IE inter_SystemInformationTransferTypeMDT failed\n"); if (s1apInterSystemInformationTransferType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Inter_SystemInformationTransferType, s1apInterSystemInformationTransferType_p); return -1; @@ -4725,7 +4501,7 @@ int s1ap_decode_s1ap_mmedirectinformationtransferies( memcpy(&s1ap_MMEDirectInformationTransferIEs->inter_SystemInformationTransferTypeMDT, s1apInterSystemInformationTransferType_p, sizeof(S1ap_Inter_SystemInformationTransferType_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmedirectinformationtransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmedirectinformationtransferies\n", (int)ie_p->id); return -1; } } @@ -4743,7 +4519,7 @@ int s1ap_decode_s1ap_errorindicationies( assert(any_p != NULL); assert(s1ap_ErrorIndicationIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ErrorIndicationIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ErrorIndicationIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ErrorIndication, (void**)&s1ap_ErrorIndication_p); @@ -4758,7 +4534,7 @@ int s1ap_decode_s1ap_errorindicationies( s1ap_ErrorIndicationIEs->presenceMask |= S1AP_ERRORINDICATIONIES_MME_UE_S1AP_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -4775,7 +4551,7 @@ int s1ap_decode_s1ap_errorindicationies( s1ap_ErrorIndicationIEs->presenceMask |= S1AP_ERRORINDICATIONIES_ENB_UE_S1AP_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -4792,7 +4568,7 @@ int s1ap_decode_s1ap_errorindicationies( s1ap_ErrorIndicationIEs->presenceMask |= S1AP_ERRORINDICATIONIES_CAUSE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -4809,7 +4585,7 @@ int s1ap_decode_s1ap_errorindicationies( s1ap_ErrorIndicationIEs->presenceMask |= S1AP_ERRORINDICATIONIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -4820,49 +4596,7 @@ int s1ap_decode_s1ap_errorindicationies( memcpy(&s1ap_ErrorIndicationIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_errorindicationies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_taiitemies( - S1ap_TAIItemIEs_t *s1ap_TAIItemIEs, - ANY_t *any_p) { - - S1ap_TAIList_t s1ap_TAIList; - S1ap_TAIList_t *s1ap_TAIList_p = &s1ap_TAIList; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_TAIItemIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_TAIItemIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_TAIList, (void**)&s1ap_TAIList_p); - - for (i = 0; i < s1ap_TAIList_p->s1ap_TAIList_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_TAIList_p->s1ap_TAIList_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_TAIItem: - { - S1ap_TAIItem_t *s1apTAIItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAIItem, (void**)&s1apTAIItem_p); - if (tempDecoded < 0 || s1apTAIItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE taiItem failed\n"); - if (s1apTAIItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_TAIItem, s1apTAIItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_TAIItem, s1apTAIItem_p); - memcpy(&s1ap_TAIItemIEs->taiItem, s1apTAIItem_p, sizeof(S1ap_TAIItem_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_taiitemies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_errorindicationies\n", (int)ie_p->id); return -1; } } @@ -4880,7 +4614,7 @@ int s1ap_decode_s1ap_overloadstarties( assert(any_p != NULL); assert(s1ap_OverloadStartIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_OverloadStartIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_OverloadStartIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_OverloadStart, (void**)&s1ap_OverloadStart_p); @@ -4893,7 +4627,7 @@ int s1ap_decode_s1ap_overloadstarties( S1ap_OverloadResponse_t *s1apOverloadResponse_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_OverloadResponse, (void**)&s1apOverloadResponse_p); if (tempDecoded < 0 || s1apOverloadResponse_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE overloadResponse failed\n"); + d_error("Decoding of IE overloadResponse failed\n"); if (s1apOverloadResponse_p) ASN_STRUCT_FREE(asn_DEF_S1ap_OverloadResponse, s1apOverloadResponse_p); return -1; @@ -4910,7 +4644,7 @@ int s1ap_decode_s1ap_overloadstarties( s1ap_OverloadStartIEs->presenceMask |= S1AP_OVERLOADSTARTIES_GUMMEILIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEIList, (void**)&s1apGUMMEIList_p); if (tempDecoded < 0 || s1apGUMMEIList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gummeiList failed\n"); + d_error("Decoding of IE gummeiList failed\n"); if (s1apGUMMEIList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEIList, s1apGUMMEIList_p); return -1; @@ -4927,7 +4661,7 @@ int s1ap_decode_s1ap_overloadstarties( s1ap_OverloadStartIEs->presenceMask |= S1AP_OVERLOADSTARTIES_TRAFFICLOADREDUCTIONINDICATION_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TrafficLoadReductionIndication, (void**)&s1apTrafficLoadReductionIndication_p); if (tempDecoded < 0 || s1apTrafficLoadReductionIndication_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE trafficLoadReductionIndication failed\n"); + d_error("Decoding of IE trafficLoadReductionIndication failed\n"); if (s1apTrafficLoadReductionIndication_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TrafficLoadReductionIndication, s1apTrafficLoadReductionIndication_p); return -1; @@ -4938,7 +4672,7 @@ int s1ap_decode_s1ap_overloadstarties( memcpy(&s1ap_OverloadStartIEs->trafficLoadReductionIndication, s1apTrafficLoadReductionIndication_p, sizeof(S1ap_TrafficLoadReductionIndication_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_overloadstarties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_overloadstarties\n", (int)ie_p->id); return -1; } } @@ -4956,7 +4690,7 @@ int s1ap_decode_s1ap_downlinknonueassociatedlppatransport_ies( assert(any_p != NULL); assert(s1ap_DownlinkNonUEAssociatedLPPaTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_DownlinkNonUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_DownlinkNonUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_DownlinkNonUEAssociatedLPPaTransport, (void**)&s1ap_DownlinkNonUEAssociatedLPPaTransport_p); @@ -4969,7 +4703,7 @@ int s1ap_decode_s1ap_downlinknonueassociatedlppatransport_ies( S1ap_Routing_ID_t *s1apRoutingID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Routing_ID, (void**)&s1apRoutingID_p); if (tempDecoded < 0 || s1apRoutingID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE routing_ID failed\n"); + d_error("Decoding of IE routing_ID failed\n"); if (s1apRoutingID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Routing_ID, s1apRoutingID_p); return -1; @@ -4984,7 +4718,7 @@ int s1ap_decode_s1ap_downlinknonueassociatedlppatransport_ies( S1ap_LPPa_PDU_t *s1apLPPaPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LPPa_PDU, (void**)&s1apLPPaPDU_p); if (tempDecoded < 0 || s1apLPPaPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE lpPa_PDU failed\n"); + d_error("Decoding of IE lpPa_PDU failed\n"); if (s1apLPPaPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LPPa_PDU, s1apLPPaPDU_p); return -1; @@ -4995,7 +4729,7 @@ int s1ap_decode_s1ap_downlinknonueassociatedlppatransport_ies( memcpy(&s1ap_DownlinkNonUEAssociatedLPPaTransport_IEs->lpPa_PDU, s1apLPPaPDU_p, sizeof(S1ap_LPPa_PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_downlinknonueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_downlinknonueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -5013,7 +4747,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( assert(any_p != NULL); assert(s1ap_HandoverRequestAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverRequestAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverRequestAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverRequestAcknowledge, (void**)&s1ap_HandoverRequestAcknowledge_p); @@ -5026,7 +4760,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5041,7 +4775,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5056,7 +4790,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( S1ap_E_RABAdmittedList_t *s1apERABAdmittedList_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABAdmittedList, (void**)&s1apERABAdmittedList_p); if (tempDecoded < 0 || s1apERABAdmittedList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABAdmittedList failed\n"); + d_error("Decoding of IE e_RABAdmittedList failed\n"); if (s1apERABAdmittedList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABAdmittedList, s1apERABAdmittedList_p); return -1; @@ -5065,7 +4799,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABAdmittedList, s1apERABAdmittedList_p); if (s1ap_decode_s1ap_e_rabadmittedlist(&s1ap_HandoverRequestAcknowledgeIEs->e_RABAdmittedList, s1apERABAdmittedList_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABAdmittedList failed\n"); + d_error("Decoding of encapsulated IE s1apERABAdmittedList failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABAdmittedList, s1apERABAdmittedList_p); } } break; @@ -5076,7 +4810,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( s1ap_HandoverRequestAcknowledgeIEs->presenceMask |= S1AP_HANDOVERREQUESTACKNOWLEDGEIES_E_RABFAILEDTOSETUPLISTHOREQACK_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABFailedtoSetupListHOReqAck, (void**)&s1apERABFailedtoSetupListHOReqAck_p); if (tempDecoded < 0 || s1apERABFailedtoSetupListHOReqAck_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedToSetupListHOReqAck failed\n"); + d_error("Decoding of IE e_RABFailedToSetupListHOReqAck failed\n"); if (s1apERABFailedtoSetupListHOReqAck_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABFailedtoSetupListHOReqAck, s1apERABFailedtoSetupListHOReqAck_p); return -1; @@ -5085,7 +4819,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABFailedtoSetupListHOReqAck, s1apERABFailedtoSetupListHOReqAck_p); if (s1ap_decode_s1ap_e_rabfailedtosetuplisthoreqack(&s1ap_HandoverRequestAcknowledgeIEs->e_RABFailedToSetupListHOReqAck, s1apERABFailedtoSetupListHOReqAck_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABFailedtoSetupListHOReqAck failed\n"); + d_error("Decoding of encapsulated IE s1apERABFailedtoSetupListHOReqAck failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABFailedtoSetupListHOReqAck, s1apERABFailedtoSetupListHOReqAck_p); } } break; @@ -5094,7 +4828,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( S1ap_Target_ToSource_TransparentContainer_t *s1apTargetToSourceTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Target_ToSource_TransparentContainer, (void**)&s1apTargetToSourceTransparentContainer_p); if (tempDecoded < 0 || s1apTargetToSourceTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE target_ToSource_TransparentContainer failed\n"); + d_error("Decoding of IE target_ToSource_TransparentContainer failed\n"); if (s1apTargetToSourceTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Target_ToSource_TransparentContainer, s1apTargetToSourceTransparentContainer_p); return -1; @@ -5111,7 +4845,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( s1ap_HandoverRequestAcknowledgeIEs->presenceMask |= S1AP_HANDOVERREQUESTACKNOWLEDGEIES_CSG_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_Id, (void**)&s1apCSGId_p); if (tempDecoded < 0 || s1apCSGId_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_Id failed\n"); + d_error("Decoding of IE csG_Id failed\n"); if (s1apCSGId_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_Id, s1apCSGId_p); return -1; @@ -5128,7 +4862,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( s1ap_HandoverRequestAcknowledgeIEs->presenceMask |= S1AP_HANDOVERREQUESTACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5139,7 +4873,7 @@ int s1ap_decode_s1ap_handoverrequestacknowledgeies( memcpy(&s1ap_HandoverRequestAcknowledgeIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handoverrequestacknowledgeies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handoverrequestacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -5157,7 +4891,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( assert(any_p != NULL); assert(s1ap_DownlinkUEAssociatedLPPaTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_DownlinkUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_DownlinkUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_DownlinkUEAssociatedLPPaTransport, (void**)&s1ap_DownlinkUEAssociatedLPPaTransport_p); @@ -5170,7 +4904,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5185,7 +4919,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5200,7 +4934,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( S1ap_Routing_ID_t *s1apRoutingID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Routing_ID, (void**)&s1apRoutingID_p); if (tempDecoded < 0 || s1apRoutingID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE routing_ID failed\n"); + d_error("Decoding of IE routing_ID failed\n"); if (s1apRoutingID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Routing_ID, s1apRoutingID_p); return -1; @@ -5215,7 +4949,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( S1ap_LPPa_PDU_t *s1apLPPaPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LPPa_PDU, (void**)&s1apLPPaPDU_p); if (tempDecoded < 0 || s1apLPPaPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE lpPa_PDU failed\n"); + d_error("Decoding of IE lpPa_PDU failed\n"); if (s1apLPPaPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LPPa_PDU, s1apLPPaPDU_p); return -1; @@ -5226,7 +4960,7 @@ int s1ap_decode_s1ap_downlinkueassociatedlppatransport_ies( memcpy(&s1ap_DownlinkUEAssociatedLPPaTransport_IEs->lpPa_PDU, s1apLPPaPDU_p, sizeof(S1ap_LPPa_PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_downlinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_downlinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -5244,7 +4978,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( assert(any_p != NULL); assert(s1ap_UEContextModificationFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextModificationFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextModificationFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextModificationFailure, (void**)&s1ap_UEContextModificationFailure_p); @@ -5257,7 +4991,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5272,7 +5006,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5287,7 +5021,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -5304,7 +5038,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( s1ap_UEContextModificationFailureIEs->presenceMask |= S1AP_UECONTEXTMODIFICATIONFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5315,7 +5049,7 @@ int s1ap_decode_s1ap_uecontextmodificationfailureies( memcpy(&s1ap_UEContextModificationFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextmodificationfailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextmodificationfailureies\n", (int)ie_p->id); return -1; } } @@ -5333,7 +5067,7 @@ int s1ap_decode_s1ap_mmeconfigurationtransferies( assert(any_p != NULL); assert(s1ap_MMEConfigurationTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEConfigurationTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEConfigurationTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEConfigurationTransfer, (void**)&s1ap_MMEConfigurationTransfer_p); @@ -5348,7 +5082,7 @@ int s1ap_decode_s1ap_mmeconfigurationtransferies( s1ap_MMEConfigurationTransferIEs->presenceMask |= S1AP_MMECONFIGURATIONTRANSFERIES_SONCONFIGURATIONTRANSFERMCT_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SONConfigurationTransfer, (void**)&s1apSONConfigurationTransfer_p); if (tempDecoded < 0 || s1apSONConfigurationTransfer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE sonConfigurationTransferMCT failed\n"); + d_error("Decoding of IE sonConfigurationTransferMCT failed\n"); if (s1apSONConfigurationTransfer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SONConfigurationTransfer, s1apSONConfigurationTransfer_p); return -1; @@ -5359,7 +5093,7 @@ int s1ap_decode_s1ap_mmeconfigurationtransferies( memcpy(&s1ap_MMEConfigurationTransferIEs->sonConfigurationTransferMCT, s1apSONConfigurationTransfer_p, sizeof(S1ap_SONConfigurationTransfer_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmeconfigurationtransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmeconfigurationtransferies\n", (int)ie_p->id); return -1; } } @@ -5377,7 +5111,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( assert(any_p != NULL); assert(s1ap_PathSwitchRequestAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_PathSwitchRequestAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_PathSwitchRequestAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_PathSwitchRequestAcknowledge, (void**)&s1ap_PathSwitchRequestAcknowledge_p); @@ -5390,7 +5124,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5405,7 +5139,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5422,7 +5156,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask |= S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -5439,7 +5173,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask |= S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_E_RABTOBESWITCHEDULLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSwitchedULList, (void**)&s1apERABToBeSwitchedULList_p); if (tempDecoded < 0 || s1apERABToBeSwitchedULList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSwitchedULList failed\n"); + d_error("Decoding of IE e_RABToBeSwitchedULList failed\n"); if (s1apERABToBeSwitchedULList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedULList, s1apERABToBeSwitchedULList_p); return -1; @@ -5448,7 +5182,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSwitchedULList, s1apERABToBeSwitchedULList_p); if (s1ap_decode_s1ap_e_rabtobeswitchedullist(&s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeSwitchedULList, s1apERABToBeSwitchedULList_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABToBeSwitchedULList failed\n"); + d_error("Decoding of encapsulated IE s1apERABToBeSwitchedULList failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedULList, s1apERABToBeSwitchedULList_p); } } break; @@ -5459,7 +5193,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask |= S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_E_RABTOBERELEASEDLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeReleasedList failed\n"); + d_error("Decoding of IE e_RABToBeReleasedList failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -5467,14 +5201,17 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeReleasedList, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeReleasedList, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; case S1ap_ProtocolIE_ID_id_SecurityContext: { S1ap_SecurityContext_t *s1apSecurityContext_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SecurityContext, (void**)&s1apSecurityContext_p); if (tempDecoded < 0 || s1apSecurityContext_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE securityContext failed\n"); + d_error("Decoding of IE securityContext failed\n"); if (s1apSecurityContext_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SecurityContext, s1apSecurityContext_p); return -1; @@ -5491,7 +5228,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask |= S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5508,7 +5245,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask |= S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_MME_UE_S1AP_ID_2_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id_2 failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id_2 failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5519,49 +5256,7 @@ int s1ap_decode_s1ap_pathswitchrequestacknowledgeies( memcpy(&s1ap_PathSwitchRequestAcknowledgeIEs->mme_ue_s1ap_id_2, s1apMMEUES1APID_p, sizeof(S1ap_MME_UE_S1AP_ID_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_pathswitchrequestacknowledgeies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_ue_associatedlogicals1_connectionitemres( - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t *s1ap_UE_associatedLogicalS1_ConnectionItemRes, - ANY_t *any_p) { - - S1ap_UE_associatedLogicalS1_ConnectionListRes_t s1ap_UE_associatedLogicalS1_ConnectionListRes; - S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes_p = &s1ap_UE_associatedLogicalS1_ConnectionListRes; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_UE_associatedLogicalS1_ConnectionItemRes != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UE_associatedLogicalS1_ConnectionItemRes (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListRes, (void**)&s1ap_UE_associatedLogicalS1_ConnectionListRes_p); - - for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListRes_p->s1ap_UE_associatedLogicalS1_ConnectionListRes_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_UE_associatedLogicalS1_ConnectionListRes_p->s1ap_UE_associatedLogicalS1_ConnectionListRes_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem: - { - S1ap_UE_associatedLogicalS1_ConnectionItem_t *s1apUEassociatedLogicalS1ConnectionItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, (void**)&s1apUEassociatedLogicalS1ConnectionItem_p); - if (tempDecoded < 0 || s1apUEassociatedLogicalS1ConnectionItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uE_associatedLogicalS1_ConnectionItem failed\n"); - if (s1apUEassociatedLogicalS1ConnectionItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); - memcpy(&s1ap_UE_associatedLogicalS1_ConnectionItemRes->uE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p, sizeof(S1ap_UE_associatedLogicalS1_ConnectionItem_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_ue_associatedlogicals1_connectionitemres\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_pathswitchrequestacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -5579,7 +5274,7 @@ int s1ap_decode_s1ap_s1setupfailureies( assert(any_p != NULL); assert(s1ap_S1SetupFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_S1SetupFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_S1SetupFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_S1SetupFailure, (void**)&s1ap_S1SetupFailure_p); @@ -5592,7 +5287,7 @@ int s1ap_decode_s1ap_s1setupfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -5609,7 +5304,7 @@ int s1ap_decode_s1ap_s1setupfailureies( s1ap_S1SetupFailureIEs->presenceMask |= S1AP_S1SETUPFAILUREIES_TIMETOWAIT_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TimeToWait, (void**)&s1apTimeToWait_p); if (tempDecoded < 0 || s1apTimeToWait_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE timeToWait failed\n"); + d_error("Decoding of IE timeToWait failed\n"); if (s1apTimeToWait_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TimeToWait, s1apTimeToWait_p); return -1; @@ -5626,7 +5321,7 @@ int s1ap_decode_s1ap_s1setupfailureies( s1ap_S1SetupFailureIEs->presenceMask |= S1AP_S1SETUPFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5637,7 +5332,7 @@ int s1ap_decode_s1ap_s1setupfailureies( memcpy(&s1ap_S1SetupFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_s1setupfailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_s1setupfailureies\n", (int)ie_p->id); return -1; } } @@ -5655,7 +5350,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdatefailureies( assert(any_p != NULL); assert(s1ap_MMEConfigurationUpdateFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_MMEConfigurationUpdateFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_MMEConfigurationUpdateFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_MMEConfigurationUpdateFailure, (void**)&s1ap_MMEConfigurationUpdateFailure_p); @@ -5668,7 +5363,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdatefailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -5685,7 +5380,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdatefailureies( s1ap_MMEConfigurationUpdateFailureIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEFAILUREIES_TIMETOWAIT_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TimeToWait, (void**)&s1apTimeToWait_p); if (tempDecoded < 0 || s1apTimeToWait_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE timeToWait failed\n"); + d_error("Decoding of IE timeToWait failed\n"); if (s1apTimeToWait_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TimeToWait, s1apTimeToWait_p); return -1; @@ -5702,7 +5397,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdatefailureies( s1ap_MMEConfigurationUpdateFailureIEs->presenceMask |= S1AP_MMECONFIGURATIONUPDATEFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5713,7 +5408,7 @@ int s1ap_decode_s1ap_mmeconfigurationupdatefailureies( memcpy(&s1ap_MMEConfigurationUpdateFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdatefailureies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_mmeconfigurationupdatefailureies\n", (int)ie_p->id); return -1; } } @@ -5731,7 +5426,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( assert(any_p != NULL); assert(s1ap_InitialContextSetupResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_InitialContextSetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_InitialContextSetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_InitialContextSetupResponse, (void**)&s1ap_InitialContextSetupResponse_p); @@ -5744,7 +5439,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5759,7 +5454,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5774,7 +5469,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( S1ap_E_RABSetupListCtxtSURes_t *s1apERABSetupListCtxtSURes_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupListCtxtSURes, (void**)&s1apERABSetupListCtxtSURes_p); if (tempDecoded < 0 || s1apERABSetupListCtxtSURes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABSetupListCtxtSURes failed\n"); + d_error("Decoding of IE e_RABSetupListCtxtSURes failed\n"); if (s1apERABSetupListCtxtSURes_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupListCtxtSURes, s1apERABSetupListCtxtSURes_p); return -1; @@ -5782,7 +5477,10 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupListCtxtSURes, s1apERABSetupListCtxtSURes_p); - memcpy(&s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes, s1apERABSetupListCtxtSURes_p, sizeof(S1ap_E_RABSetupListCtxtSURes_t)); + if (s1ap_decode_s1ap_e_rabsetuplistctxtsures(&s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes, s1apERABSetupListCtxtSURes_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABSetupListCtxtSURes failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupListCtxtSURes, s1apERABSetupListCtxtSURes_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_E_RABFailedToSetupListCtxtSURes: @@ -5791,7 +5489,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( s1ap_InitialContextSetupResponseIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPRESPONSEIES_E_RABFAILEDTOSETUPLISTCTXTSURES_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedToSetupListCtxtSURes failed\n"); + d_error("Decoding of IE e_RABFailedToSetupListCtxtSURes failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -5799,7 +5497,10 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_InitialContextSetupResponseIEs->e_RABFailedToSetupListCtxtSURes, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_InitialContextSetupResponseIEs->e_RABFailedToSetupListCtxtSURes, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CriticalityDiagnostics: @@ -5808,7 +5509,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( s1ap_InitialContextSetupResponseIEs->presenceMask |= S1AP_INITIALCONTEXTSETUPRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -5819,7 +5520,7 @@ int s1ap_decode_s1ap_initialcontextsetupresponseies( memcpy(&s1ap_InitialContextSetupResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_initialcontextsetupresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_initialcontextsetupresponseies\n", (int)ie_p->id); return -1; } } @@ -5837,7 +5538,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( assert(any_p != NULL); assert(s1ap_DownlinkS1cdma2000tunnelingIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_DownlinkS1cdma2000tunnelingIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_DownlinkS1cdma2000tunnelingIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_DownlinkS1cdma2000tunneling, (void**)&s1ap_DownlinkS1cdma2000tunneling_p); @@ -5850,7 +5551,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -5865,7 +5566,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -5882,7 +5583,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( s1ap_DownlinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_DOWNLINKS1CDMA2000TUNNELINGIES_E_RABDATAFORWARDINGLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABDataForwardingList, (void**)&s1apERABDataForwardingList_p); if (tempDecoded < 0 || s1apERABDataForwardingList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABDataForwardingList failed\n"); + d_error("Decoding of IE e_RABDataForwardingList failed\n"); if (s1apERABDataForwardingList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); return -1; @@ -5891,7 +5592,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); if (s1ap_decode_s1ap_e_rabdataforwardinglist(&s1ap_DownlinkS1cdma2000tunnelingIEs->e_RABDataForwardingList, s1apERABDataForwardingList_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABDataForwardingList failed\n"); + d_error("Decoding of encapsulated IE s1apERABDataForwardingList failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABDataForwardingList, s1apERABDataForwardingList_p); } } break; @@ -5902,7 +5603,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( s1ap_DownlinkS1cdma2000tunnelingIEs->presenceMask |= S1AP_DOWNLINKS1CDMA2000TUNNELINGIES_CDMA2000HOSTATUS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000HOStatus, (void**)&s1apCdma2000HOStatus_p); if (tempDecoded < 0 || s1apCdma2000HOStatus_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000HOStatus failed\n"); + d_error("Decoding of IE cdma2000HOStatus failed\n"); if (s1apCdma2000HOStatus_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000HOStatus, s1apCdma2000HOStatus_p); return -1; @@ -5917,7 +5618,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( S1ap_Cdma2000RATType_t *s1apCdma2000RATType_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000RATType, (void**)&s1apCdma2000RATType_p); if (tempDecoded < 0 || s1apCdma2000RATType_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000RATType failed\n"); + d_error("Decoding of IE cdma2000RATType failed\n"); if (s1apCdma2000RATType_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000RATType, s1apCdma2000RATType_p); return -1; @@ -5932,7 +5633,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( S1ap_Cdma2000PDU_t *s1apCdma2000PDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cdma2000PDU, (void**)&s1apCdma2000PDU_p); if (tempDecoded < 0 || s1apCdma2000PDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cdma2000PDU failed\n"); + d_error("Decoding of IE cdma2000PDU failed\n"); if (s1apCdma2000PDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cdma2000PDU, s1apCdma2000PDU_p); return -1; @@ -5943,7 +5644,7 @@ int s1ap_decode_s1ap_downlinks1cdma2000tunnelingies( memcpy(&s1ap_DownlinkS1cdma2000tunnelingIEs->cdma2000PDU, s1apCdma2000PDU_p, sizeof(S1ap_Cdma2000PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_downlinks1cdma2000tunnelingies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_downlinks1cdma2000tunnelingies\n", (int)ie_p->id); return -1; } } @@ -5961,7 +5662,7 @@ int s1ap_decode_s1ap_overloadstopies( assert(any_p != NULL); assert(s1ap_OverloadStopIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_OverloadStopIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_OverloadStopIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_OverloadStop, (void**)&s1ap_OverloadStop_p); @@ -5976,7 +5677,7 @@ int s1ap_decode_s1ap_overloadstopies( s1ap_OverloadStopIEs->presenceMask |= S1AP_OVERLOADSTOPIES_GUMMEILIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEIList, (void**)&s1apGUMMEIList_p); if (tempDecoded < 0 || s1apGUMMEIList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE gummeiList failed\n"); + d_error("Decoding of IE gummeiList failed\n"); if (s1apGUMMEIList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEIList, s1apGUMMEIList_p); return -1; @@ -5987,133 +5688,7 @@ int s1ap_decode_s1ap_overloadstopies( memcpy(&s1ap_OverloadStopIEs->gummeiList, s1apGUMMEIList_p, sizeof(S1ap_GUMMEIList_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_overloadstopies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabsetupitembearersuresies( - S1ap_E_RABSetupItemBearerSUResIEs_t *s1ap_E_RABSetupItemBearerSUResIEs, - ANY_t *any_p) { - - S1ap_E_RABSetupListBearerSURes_t s1ap_E_RABSetupListBearerSURes; - S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes_p = &s1ap_E_RABSetupListBearerSURes; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABSetupItemBearerSUResIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABSetupItemBearerSUResIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABSetupListBearerSURes, (void**)&s1ap_E_RABSetupListBearerSURes_p); - - for (i = 0; i < s1ap_E_RABSetupListBearerSURes_p->s1ap_E_RABSetupListBearerSURes_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABSetupListBearerSURes_p->s1ap_E_RABSetupListBearerSURes_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABSetupItemBearerSURes: - { - S1ap_E_RABSetupItemBearerSURes_t *s1apERABSetupItemBearerSURes_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupItemBearerSURes, (void**)&s1apERABSetupItemBearerSURes_p); - if (tempDecoded < 0 || s1apERABSetupItemBearerSURes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABSetupItemBearerSURes failed\n"); - if (s1apERABSetupItemBearerSURes_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p); - memcpy(&s1ap_E_RABSetupItemBearerSUResIEs->e_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p, sizeof(S1ap_E_RABSetupItemBearerSURes_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabsetupitembearersuresies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabmodifyitembearermodresies( - S1ap_E_RABModifyItemBearerModResIEs_t *s1ap_E_RABModifyItemBearerModResIEs, - ANY_t *any_p) { - - S1ap_E_RABModifyListBearerModRes_t s1ap_E_RABModifyListBearerModRes; - S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes_p = &s1ap_E_RABModifyListBearerModRes; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABModifyItemBearerModResIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABModifyItemBearerModResIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABModifyListBearerModRes, (void**)&s1ap_E_RABModifyListBearerModRes_p); - - for (i = 0; i < s1ap_E_RABModifyListBearerModRes_p->s1ap_E_RABModifyListBearerModRes_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABModifyListBearerModRes_p->s1ap_E_RABModifyListBearerModRes_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABModifyItemBearerModRes: - { - S1ap_E_RABModifyItemBearerModRes_t *s1apERABModifyItemBearerModRes_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABModifyItemBearerModRes, (void**)&s1apERABModifyItemBearerModRes_p); - if (tempDecoded < 0 || s1apERABModifyItemBearerModRes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABModifyItemBearerModRes failed\n"); - if (s1apERABModifyItemBearerModRes_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p); - memcpy(&s1ap_E_RABModifyItemBearerModResIEs->e_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p, sizeof(S1ap_E_RABModifyItemBearerModRes_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabmodifyitembearermodresies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabtobesetupitemctxtsureqies( - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t *s1ap_E_RABToBeSetupItemCtxtSUReqIEs, - ANY_t *any_p) { - - S1ap_E_RABToBeSetupListCtxtSUReq_t s1ap_E_RABToBeSetupListCtxtSUReq; - S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq_p = &s1ap_E_RABToBeSetupListCtxtSUReq; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABToBeSetupItemCtxtSUReqIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABToBeSetupItemCtxtSUReqIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, (void**)&s1ap_E_RABToBeSetupListCtxtSUReq_p); - - for (i = 0; i < s1ap_E_RABToBeSetupListCtxtSUReq_p->s1ap_E_RABToBeSetupListCtxtSUReq_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABToBeSetupListCtxtSUReq_p->s1ap_E_RABToBeSetupListCtxtSUReq_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemCtxtSUReq: - { - S1ap_E_RABToBeSetupItemCtxtSUReq_t *s1apERABToBeSetupItemCtxtSUReq_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, (void**)&s1apERABToBeSetupItemCtxtSUReq_p); - if (tempDecoded < 0 || s1apERABToBeSetupItemCtxtSUReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupItemCtxtSUReq failed\n"); - if (s1apERABToBeSetupItemCtxtSUReq_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p); - memcpy(&s1ap_E_RABToBeSetupItemCtxtSUReqIEs->e_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p, sizeof(S1ap_E_RABToBeSetupItemCtxtSUReq_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabtobesetupitemctxtsureqies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_overloadstopies\n", (int)ie_p->id); return -1; } } @@ -6131,7 +5706,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( assert(any_p != NULL); assert(s1ap_ENBConfigurationUpdateIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBConfigurationUpdateIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBConfigurationUpdateIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBConfigurationUpdate, (void**)&s1ap_ENBConfigurationUpdate_p); @@ -6146,7 +5721,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( s1ap_ENBConfigurationUpdateIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEIES_ENBNAME_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENBname, (void**)&s1apENBname_p); if (tempDecoded < 0 || s1apENBname_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNBname failed\n"); + d_error("Decoding of IE eNBname failed\n"); if (s1apENBname_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENBname, s1apENBname_p); return -1; @@ -6163,7 +5738,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( s1ap_ENBConfigurationUpdateIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEIES_SUPPORTEDTAS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SupportedTAs, (void**)&s1apSupportedTAs_p); if (tempDecoded < 0 || s1apSupportedTAs_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE supportedTAs failed\n"); + d_error("Decoding of IE supportedTAs failed\n"); if (s1apSupportedTAs_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SupportedTAs, s1apSupportedTAs_p); return -1; @@ -6180,7 +5755,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( s1ap_ENBConfigurationUpdateIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEIES_CSG_IDLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_IdList, (void**)&s1apCSGIdList_p); if (tempDecoded < 0 || s1apCSGIdList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_IdList failed\n"); + d_error("Decoding of IE csG_IdList failed\n"); if (s1apCSGIdList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_IdList, s1apCSGIdList_p); return -1; @@ -6197,7 +5772,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( s1ap_ENBConfigurationUpdateIEs->presenceMask |= S1AP_ENBCONFIGURATIONUPDATEIES_DEFAULTPAGINGDRX_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PagingDRX, (void**)&s1apPagingDRX_p); if (tempDecoded < 0 || s1apPagingDRX_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE defaultPagingDRX failed\n"); + d_error("Decoding of IE defaultPagingDRX failed\n"); if (s1apPagingDRX_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PagingDRX, s1apPagingDRX_p); return -1; @@ -6208,7 +5783,7 @@ int s1ap_decode_s1ap_enbconfigurationupdateies( memcpy(&s1ap_ENBConfigurationUpdateIEs->defaultPagingDRX, s1apPagingDRX_p, sizeof(S1ap_PagingDRX_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdateies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbconfigurationupdateies\n", (int)ie_p->id); return -1; } } @@ -6226,7 +5801,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( assert(any_p != NULL); assert(s1ap_TraceFailureIndicationIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_TraceFailureIndicationIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_TraceFailureIndicationIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_TraceFailureIndication, (void**)&s1ap_TraceFailureIndication_p); @@ -6239,7 +5814,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6254,7 +5829,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -6269,7 +5844,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( S1ap_E_UTRAN_Trace_ID_t *s1apEUTRANTraceID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_UTRAN_Trace_ID, (void**)&s1apEUTRANTraceID_p); if (tempDecoded < 0 || s1apEUTRANTraceID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_UTRAN_Trace_ID failed\n"); + d_error("Decoding of IE e_UTRAN_Trace_ID failed\n"); if (s1apEUTRANTraceID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_UTRAN_Trace_ID, s1apEUTRANTraceID_p); return -1; @@ -6284,7 +5859,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -6295,49 +5870,7 @@ int s1ap_decode_s1ap_tracefailureindicationies( memcpy(&s1ap_TraceFailureIndicationIEs->cause, s1apCause_p, sizeof(S1ap_Cause_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_tracefailureindicationies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_e_rabinformationlisties( - S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs, - ANY_t *any_p) { - - S1ap_E_RABInformationList_t s1ap_E_RABInformationList; - S1ap_E_RABInformationList_t *s1ap_E_RABInformationList_p = &s1ap_E_RABInformationList; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_E_RABInformationListIEs != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABInformationListIEs (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABInformationList, (void**)&s1ap_E_RABInformationList_p); - - for (i = 0; i < s1ap_E_RABInformationList_p->s1ap_E_RABInformationList_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_E_RABInformationList_p->s1ap_E_RABInformationList_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_E_RABInformationListItem: - { - S1ap_E_RABInformationListItem_t *s1apERABInformationListItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABInformationListItem, (void**)&s1apERABInformationListItem_p); - if (tempDecoded < 0 || s1apERABInformationListItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABInformationListItem failed\n"); - if (s1apERABInformationListItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABInformationListItem, s1apERABInformationListItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_E_RABInformationListItem, s1apERABInformationListItem_p); - memcpy(&s1ap_E_RABInformationListIEs->e_RABInformationListItem, s1apERABInformationListItem_p, sizeof(S1ap_E_RABInformationListItem_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabinformationlisties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_tracefailureindicationies\n", (int)ie_p->id); return -1; } } @@ -6355,7 +5888,7 @@ int s1ap_decode_s1ap_enbconfigurationtransferies( assert(any_p != NULL); assert(s1ap_ENBConfigurationTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBConfigurationTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBConfigurationTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBConfigurationTransfer, (void**)&s1ap_ENBConfigurationTransfer_p); @@ -6370,7 +5903,7 @@ int s1ap_decode_s1ap_enbconfigurationtransferies( s1ap_ENBConfigurationTransferIEs->presenceMask |= S1AP_ENBCONFIGURATIONTRANSFERIES_SONCONFIGURATIONTRANSFERECT_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SONConfigurationTransfer, (void**)&s1apSONConfigurationTransfer_p); if (tempDecoded < 0 || s1apSONConfigurationTransfer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE sonConfigurationTransferECT failed\n"); + d_error("Decoding of IE sonConfigurationTransferECT failed\n"); if (s1apSONConfigurationTransfer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SONConfigurationTransfer, s1apSONConfigurationTransfer_p); return -1; @@ -6381,7 +5914,7 @@ int s1ap_decode_s1ap_enbconfigurationtransferies( memcpy(&s1ap_ENBConfigurationTransferIEs->sonConfigurationTransferECT, s1apSONConfigurationTransfer_p, sizeof(S1ap_SONConfigurationTransfer_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbconfigurationtransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbconfigurationtransferies\n", (int)ie_p->id); return -1; } } @@ -6399,7 +5932,7 @@ int s1ap_decode_s1ap_handoverfailureies( assert(any_p != NULL); assert(s1ap_HandoverFailureIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_HandoverFailureIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_HandoverFailureIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_HandoverFailure, (void**)&s1ap_HandoverFailure_p); @@ -6412,7 +5945,7 @@ int s1ap_decode_s1ap_handoverfailureies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6427,7 +5960,7 @@ int s1ap_decode_s1ap_handoverfailureies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -6444,7 +5977,7 @@ int s1ap_decode_s1ap_handoverfailureies( s1ap_HandoverFailureIEs->presenceMask |= S1AP_HANDOVERFAILUREIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -6455,49 +5988,7 @@ int s1ap_decode_s1ap_handoverfailureies( memcpy(&s1ap_HandoverFailureIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_handoverfailureies\n", (int)ie_p->id); - return -1; - } - } - return decoded; -} - -int s1ap_decode_s1ap_ue_associatedlogicals1_connectionitemresack( - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t *s1ap_UE_associatedLogicalS1_ConnectionItemResAck, - ANY_t *any_p) { - - S1ap_UE_associatedLogicalS1_ConnectionListResAck_t s1ap_UE_associatedLogicalS1_ConnectionListResAck; - S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck_p = &s1ap_UE_associatedLogicalS1_ConnectionListResAck; - int i, decoded = 0; - int tempDecoded = 0; - assert(any_p != NULL); - assert(s1ap_UE_associatedLogicalS1_ConnectionItemResAck != NULL); - - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UE_associatedLogicalS1_ConnectionItemResAck (%s:%d)\n", __FILE__, __LINE__); - - ANY_to_type_aper(any_p, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, (void**)&s1ap_UE_associatedLogicalS1_ConnectionListResAck_p); - - for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListResAck_p->s1ap_UE_associatedLogicalS1_ConnectionListResAck_ies.list.count; i++) { - S1ap_IE_t *ie_p; - ie_p = s1ap_UE_associatedLogicalS1_ConnectionListResAck_p->s1ap_UE_associatedLogicalS1_ConnectionListResAck_ies.list.array[i]; - switch(ie_p->id) { - case S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem: - { - S1ap_UE_associatedLogicalS1_ConnectionItem_t *s1apUEassociatedLogicalS1ConnectionItem_p = NULL; - tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, (void**)&s1apUEassociatedLogicalS1ConnectionItem_p); - if (tempDecoded < 0 || s1apUEassociatedLogicalS1ConnectionItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uE_associatedLogicalS1_ConnectionItem failed\n"); - if (s1apUEassociatedLogicalS1ConnectionItem_p) - ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); - return -1; - } - decoded += tempDecoded; - if (asn1_xer_print) - xer_fprint(stdout, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); - memcpy(&s1ap_UE_associatedLogicalS1_ConnectionItemResAck->uE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p, sizeof(S1ap_UE_associatedLogicalS1_ConnectionItem_t)); - } break; - default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_ue_associatedlogicals1_connectionitemresack\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_handoverfailureies\n", (int)ie_p->id); return -1; } } @@ -6515,7 +6006,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( assert(any_p != NULL); assert(s1ap_E_RABSetupResponseIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABSetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABSetupResponseIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABSetupResponse, (void**)&s1ap_E_RABSetupResponse_p); @@ -6528,7 +6019,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6543,7 +6034,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -6560,7 +6051,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( s1ap_E_RABSetupResponseIEs->presenceMask |= S1AP_E_RABSETUPRESPONSEIES_E_RABSETUPLISTBEARERSURES_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupListBearerSURes, (void**)&s1apERABSetupListBearerSURes_p); if (tempDecoded < 0 || s1apERABSetupListBearerSURes_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABSetupListBearerSURes failed\n"); + d_error("Decoding of IE e_RABSetupListBearerSURes failed\n"); if (s1apERABSetupListBearerSURes_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupListBearerSURes, s1apERABSetupListBearerSURes_p); return -1; @@ -6568,7 +6059,10 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupListBearerSURes, s1apERABSetupListBearerSURes_p); - memcpy(&s1ap_E_RABSetupResponseIEs->e_RABSetupListBearerSURes, s1apERABSetupListBearerSURes_p, sizeof(S1ap_E_RABSetupListBearerSURes_t)); + if (s1ap_decode_s1ap_e_rabsetuplistbearersures(&s1ap_E_RABSetupResponseIEs->e_RABSetupListBearerSURes, s1apERABSetupListBearerSURes_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABSetupListBearerSURes failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupListBearerSURes, s1apERABSetupListBearerSURes_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_E_RABFailedToSetupListBearerSURes: @@ -6577,7 +6071,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( s1ap_E_RABSetupResponseIEs->presenceMask |= S1AP_E_RABSETUPRESPONSEIES_E_RABFAILEDTOSETUPLISTBEARERSURES_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedToSetupListBearerSURes failed\n"); + d_error("Decoding of IE e_RABFailedToSetupListBearerSURes failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -6585,7 +6079,10 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_E_RABSetupResponseIEs->e_RABFailedToSetupListBearerSURes, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_E_RABSetupResponseIEs->e_RABFailedToSetupListBearerSURes, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CriticalityDiagnostics: @@ -6594,7 +6091,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( s1ap_E_RABSetupResponseIEs->presenceMask |= S1AP_E_RABSETUPRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -6605,7 +6102,7 @@ int s1ap_decode_s1ap_e_rabsetupresponseies( memcpy(&s1ap_E_RABSetupResponseIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabsetupresponseies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabsetupresponseies\n", (int)ie_p->id); return -1; } } @@ -6623,7 +6120,7 @@ int s1ap_decode_s1ap_uecontextreleasecommand_ies( assert(any_p != NULL); assert(s1ap_UEContextReleaseCommand_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextReleaseCommand_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextReleaseCommand_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextReleaseCommand, (void**)&s1ap_UEContextReleaseCommand_p); @@ -6636,7 +6133,7 @@ int s1ap_decode_s1ap_uecontextreleasecommand_ies( S1ap_UE_S1AP_IDs_t *s1apUES1APIDs_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_S1AP_IDs, (void**)&s1apUES1APIDs_p); if (tempDecoded < 0 || s1apUES1APIDs_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uE_S1AP_IDs failed\n"); + d_error("Decoding of IE uE_S1AP_IDs failed\n"); if (s1apUES1APIDs_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UE_S1AP_IDs, s1apUES1APIDs_p); return -1; @@ -6651,7 +6148,7 @@ int s1ap_decode_s1ap_uecontextreleasecommand_ies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -6662,7 +6159,7 @@ int s1ap_decode_s1ap_uecontextreleasecommand_ies( memcpy(&s1ap_UEContextReleaseCommand_IEs->cause, s1apCause_p, sizeof(S1ap_Cause_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextreleasecommand_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextreleasecommand_ies\n", (int)ie_p->id); return -1; } } @@ -6680,7 +6177,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( assert(any_p != NULL); assert(s1ap_PathSwitchRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_PathSwitchRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_PathSwitchRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_PathSwitchRequest, (void**)&s1ap_PathSwitchRequest_p); @@ -6693,7 +6190,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -6708,7 +6205,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_E_RABToBeSwitchedDLList_t *s1apERABToBeSwitchedDLList_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSwitchedDLList, (void**)&s1apERABToBeSwitchedDLList_p); if (tempDecoded < 0 || s1apERABToBeSwitchedDLList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSwitchedDLList failed\n"); + d_error("Decoding of IE e_RABToBeSwitchedDLList failed\n"); if (s1apERABToBeSwitchedDLList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedDLList, s1apERABToBeSwitchedDLList_p); return -1; @@ -6717,7 +6214,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSwitchedDLList, s1apERABToBeSwitchedDLList_p); if (s1ap_decode_s1ap_e_rabtobeswitcheddllist(&s1ap_PathSwitchRequestIEs->e_RABToBeSwitchedDLList, s1apERABToBeSwitchedDLList_p) < 0) { - OAILOG_ERROR (LOG_S1AP, "Decoding of encapsulated IE s1apERABToBeSwitchedDLList failed\n"); + d_error("Decoding of encapsulated IE s1apERABToBeSwitchedDLList failed\n"); ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedDLList, s1apERABToBeSwitchedDLList_p); } } break; @@ -6726,7 +6223,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE sourceMME_UE_S1AP_ID failed\n"); + d_error("Decoding of IE sourceMME_UE_S1AP_ID failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6741,7 +6238,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -6756,7 +6253,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_TAI_t *s1apTAI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAI, (void**)&s1apTAI_p); if (tempDecoded < 0 || s1apTAI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE tai failed\n"); + d_error("Decoding of IE tai failed\n"); if (s1apTAI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TAI, s1apTAI_p); return -1; @@ -6771,7 +6268,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( S1ap_UESecurityCapabilities_t *s1apUESecurityCapabilities_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UESecurityCapabilities, (void**)&s1apUESecurityCapabilities_p); if (tempDecoded < 0 || s1apUESecurityCapabilities_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE ueSecurityCapabilities failed\n"); + d_error("Decoding of IE ueSecurityCapabilities failed\n"); if (s1apUESecurityCapabilities_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UESecurityCapabilities, s1apUESecurityCapabilities_p); return -1; @@ -6788,7 +6285,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( s1ap_PathSwitchRequestIEs->presenceMask |= S1AP_PATHSWITCHREQUESTIES_CSG_ID_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_Id, (void**)&s1apCSGId_p); if (tempDecoded < 0 || s1apCSGId_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_Id failed\n"); + d_error("Decoding of IE csG_Id failed\n"); if (s1apCSGId_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_Id, s1apCSGId_p); return -1; @@ -6805,7 +6302,7 @@ int s1ap_decode_s1ap_pathswitchrequesties( s1ap_PathSwitchRequestIEs->presenceMask |= S1AP_PATHSWITCHREQUESTIES_CELLACCESSMODE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CellAccessMode, (void**)&s1apCellAccessMode_p); if (tempDecoded < 0 || s1apCellAccessMode_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cellAccessMode failed\n"); + d_error("Decoding of IE cellAccessMode failed\n"); if (s1apCellAccessMode_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CellAccessMode, s1apCellAccessMode_p); return -1; @@ -6816,13 +6313,13 @@ int s1ap_decode_s1ap_pathswitchrequesties( memcpy(&s1ap_PathSwitchRequestIEs->cellAccessMode, s1apCellAccessMode_p, sizeof(S1ap_CellAccessMode_t)); } break; /* Optional field */ - case S1ap_ProtocolIE_ID_id_SourceMME_S1ap_GUMMEI: + case S1ap_ProtocolIE_ID_id_SourceMME_GUMMEI: { S1ap_GUMMEI_t *s1apGUMMEI_p = NULL; - s1ap_PathSwitchRequestIEs->presenceMask |= S1AP_PATHSWITCHREQUESTIES_SOURCEMME_S1AP_GUMMEI_PRESENT; + s1ap_PathSwitchRequestIEs->presenceMask |= S1AP_PATHSWITCHREQUESTIES_SOURCEMME_GUMMEI_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_GUMMEI, (void**)&s1apGUMMEI_p); if (tempDecoded < 0 || s1apGUMMEI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE sourceMME_S1ap_GUMMEI failed\n"); + d_error("Decoding of IE sourceMME_GUMMEI failed\n"); if (s1apGUMMEI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_GUMMEI, s1apGUMMEI_p); return -1; @@ -6830,10 +6327,10 @@ int s1ap_decode_s1ap_pathswitchrequesties( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_GUMMEI, s1apGUMMEI_p); - memcpy(&s1ap_PathSwitchRequestIEs->sourceMME_S1ap_GUMMEI, s1apGUMMEI_p, sizeof(S1ap_GUMMEI_t)); + memcpy(&s1ap_PathSwitchRequestIEs->sourceMME_GUMMEI, s1apGUMMEI_p, sizeof(S1ap_GUMMEI_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_pathswitchrequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_pathswitchrequesties\n", (int)ie_p->id); return -1; } } @@ -6851,7 +6348,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( assert(any_p != NULL); assert(s1ap_DownlinkNASTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_DownlinkNASTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_DownlinkNASTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_DownlinkNASTransport, (void**)&s1ap_DownlinkNASTransport_p); @@ -6864,7 +6361,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6879,7 +6376,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -6894,7 +6391,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( S1ap_NAS_PDU_t *s1apNASPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NAS_PDU, (void**)&s1apNASPDU_p); if (tempDecoded < 0 || s1apNASPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE nas_pdu failed\n"); + d_error("Decoding of IE nas_pdu failed\n"); if (s1apNASPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NAS_PDU, s1apNASPDU_p); return -1; @@ -6911,7 +6408,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( s1ap_DownlinkNASTransport_IEs->presenceMask |= S1AP_DOWNLINKNASTRANSPORT_IES_HANDOVERRESTRICTIONLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_HandoverRestrictionList, (void**)&s1apHandoverRestrictionList_p); if (tempDecoded < 0 || s1apHandoverRestrictionList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE handoverRestrictionList failed\n"); + d_error("Decoding of IE handoverRestrictionList failed\n"); if (s1apHandoverRestrictionList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_HandoverRestrictionList, s1apHandoverRestrictionList_p); return -1; @@ -6928,7 +6425,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( s1ap_DownlinkNASTransport_IEs->presenceMask |= S1AP_DOWNLINKNASTRANSPORT_IES_SUBSCRIBERPROFILEIDFORRFP_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SubscriberProfileIDforRFP, (void**)&s1apSubscriberProfileIDforRFP_p); if (tempDecoded < 0 || s1apSubscriberProfileIDforRFP_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE subscriberProfileIDforRFP failed\n"); + d_error("Decoding of IE subscriberProfileIDforRFP failed\n"); if (s1apSubscriberProfileIDforRFP_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SubscriberProfileIDforRFP, s1apSubscriberProfileIDforRFP_p); return -1; @@ -6939,7 +6436,7 @@ int s1ap_decode_s1ap_downlinknastransport_ies( memcpy(&s1ap_DownlinkNASTransport_IEs->subscriberProfileIDforRFP, s1apSubscriberProfileIDforRFP_p, sizeof(S1ap_SubscriberProfileIDforRFP_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_downlinknastransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_downlinknastransport_ies\n", (int)ie_p->id); return -1; } } @@ -6957,7 +6454,7 @@ int s1ap_decode_s1ap_e_rabreleaseindicationies( assert(any_p != NULL); assert(s1ap_E_RABReleaseIndicationIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABReleaseIndicationIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABReleaseIndicationIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABReleaseIndication, (void**)&s1ap_E_RABReleaseIndication_p); @@ -6970,7 +6467,7 @@ int s1ap_decode_s1ap_e_rabreleaseindicationies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -6985,7 +6482,7 @@ int s1ap_decode_s1ap_e_rabreleaseindicationies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7000,7 +6497,7 @@ int s1ap_decode_s1ap_e_rabreleaseindicationies( S1ap_E_RABList_t *s1apERABList_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABList, (void**)&s1apERABList_p); if (tempDecoded < 0 || s1apERABList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABReleasedList failed\n"); + d_error("Decoding of IE e_RABReleasedList failed\n"); if (s1apERABList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); return -1; @@ -7008,10 +6505,13 @@ int s1ap_decode_s1ap_e_rabreleaseindicationies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABList, s1apERABList_p); - memcpy(&s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList, s1apERABList_p, sizeof(S1ap_E_RABList_t)); + if (s1ap_decode_s1ap_e_rablist(&s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList, s1apERABList_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABList failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABList, s1apERABList_p); + } } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabreleaseindicationies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabreleaseindicationies\n", (int)ie_p->id); return -1; } } @@ -7029,7 +6529,7 @@ int s1ap_decode_s1ap_s1setuprequesties( assert(any_p != NULL); assert(s1ap_S1SetupRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_S1SetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_S1SetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_S1SetupRequest, (void**)&s1ap_S1SetupRequest_p); @@ -7042,7 +6542,7 @@ int s1ap_decode_s1ap_s1setuprequesties( S1ap_Global_ENB_ID_t *s1apGlobalENBID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Global_ENB_ID, (void**)&s1apGlobalENBID_p); if (tempDecoded < 0 || s1apGlobalENBID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE global_ENB_ID failed\n"); + d_error("Decoding of IE global_ENB_ID failed\n"); if (s1apGlobalENBID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Global_ENB_ID, s1apGlobalENBID_p); return -1; @@ -7059,7 +6559,7 @@ int s1ap_decode_s1ap_s1setuprequesties( s1ap_S1SetupRequestIEs->presenceMask |= S1AP_S1SETUPREQUESTIES_ENBNAME_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENBname, (void**)&s1apENBname_p); if (tempDecoded < 0 || s1apENBname_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNBname failed\n"); + d_error("Decoding of IE eNBname failed\n"); if (s1apENBname_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENBname, s1apENBname_p); return -1; @@ -7074,7 +6574,7 @@ int s1ap_decode_s1ap_s1setuprequesties( S1ap_SupportedTAs_t *s1apSupportedTAs_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_SupportedTAs, (void**)&s1apSupportedTAs_p); if (tempDecoded < 0 || s1apSupportedTAs_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE supportedTAs failed\n"); + d_error("Decoding of IE supportedTAs failed\n"); if (s1apSupportedTAs_p) ASN_STRUCT_FREE(asn_DEF_S1ap_SupportedTAs, s1apSupportedTAs_p); return -1; @@ -7089,7 +6589,7 @@ int s1ap_decode_s1ap_s1setuprequesties( S1ap_PagingDRX_t *s1apPagingDRX_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PagingDRX, (void**)&s1apPagingDRX_p); if (tempDecoded < 0 || s1apPagingDRX_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE defaultPagingDRX failed\n"); + d_error("Decoding of IE defaultPagingDRX failed\n"); if (s1apPagingDRX_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PagingDRX, s1apPagingDRX_p); return -1; @@ -7106,7 +6606,7 @@ int s1ap_decode_s1ap_s1setuprequesties( s1ap_S1SetupRequestIEs->presenceMask |= S1AP_S1SETUPREQUESTIES_CSG_IDLIST_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CSG_IdList, (void**)&s1apCSGIdList_p); if (tempDecoded < 0 || s1apCSGIdList_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE csG_IdList failed\n"); + d_error("Decoding of IE csG_IdList failed\n"); if (s1apCSGIdList_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CSG_IdList, s1apCSGIdList_p); return -1; @@ -7117,7 +6617,7 @@ int s1ap_decode_s1ap_s1setuprequesties( memcpy(&s1ap_S1SetupRequestIEs->csG_IdList, s1apCSGIdList_p, sizeof(S1ap_CSG_IdList_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_s1setuprequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_s1setuprequesties\n", (int)ie_p->id); return -1; } } @@ -7135,7 +6635,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( assert(any_p != NULL); assert(s1ap_NASNonDeliveryIndication_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_NASNonDeliveryIndication_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_NASNonDeliveryIndication_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_NASNonDeliveryIndication, (void**)&s1ap_NASNonDeliveryIndication_p); @@ -7148,7 +6648,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7163,7 +6663,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7178,7 +6678,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( S1ap_NAS_PDU_t *s1apNASPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_NAS_PDU, (void**)&s1apNASPDU_p); if (tempDecoded < 0 || s1apNASPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE nas_pdu failed\n"); + d_error("Decoding of IE nas_pdu failed\n"); if (s1apNASPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_NAS_PDU, s1apNASPDU_p); return -1; @@ -7193,7 +6693,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( S1ap_Cause_t *s1apCause_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Cause, (void**)&s1apCause_p); if (tempDecoded < 0 || s1apCause_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE cause failed\n"); + d_error("Decoding of IE cause failed\n"); if (s1apCause_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Cause, s1apCause_p); return -1; @@ -7204,7 +6704,7 @@ int s1ap_decode_s1ap_nasnondeliveryindication_ies( memcpy(&s1ap_NASNonDeliveryIndication_IEs->cause, s1apCause_p, sizeof(S1ap_Cause_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_nasnondeliveryindication_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_nasnondeliveryindication_ies\n", (int)ie_p->id); return -1; } } @@ -7222,7 +6722,7 @@ int s1ap_decode_s1ap_celltraffictraceies( assert(any_p != NULL); assert(s1ap_CellTrafficTraceIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_CellTrafficTraceIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_CellTrafficTraceIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_CellTrafficTrace, (void**)&s1ap_CellTrafficTrace_p); @@ -7235,7 +6735,7 @@ int s1ap_decode_s1ap_celltraffictraceies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7250,7 +6750,7 @@ int s1ap_decode_s1ap_celltraffictraceies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7265,7 +6765,7 @@ int s1ap_decode_s1ap_celltraffictraceies( S1ap_E_UTRAN_Trace_ID_t *s1apEUTRANTraceID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_UTRAN_Trace_ID, (void**)&s1apEUTRANTraceID_p); if (tempDecoded < 0 || s1apEUTRANTraceID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_UTRAN_Trace_ID failed\n"); + d_error("Decoding of IE e_UTRAN_Trace_ID failed\n"); if (s1apEUTRANTraceID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_UTRAN_Trace_ID, s1apEUTRANTraceID_p); return -1; @@ -7280,7 +6780,7 @@ int s1ap_decode_s1ap_celltraffictraceies( S1ap_EUTRAN_CGI_t *s1apEUTRANCGI_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_EUTRAN_CGI, (void**)&s1apEUTRANCGI_p); if (tempDecoded < 0 || s1apEUTRANCGI_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eutran_cgi failed\n"); + d_error("Decoding of IE eutran_cgi failed\n"); if (s1apEUTRANCGI_p) ASN_STRUCT_FREE(asn_DEF_S1ap_EUTRAN_CGI, s1apEUTRANCGI_p); return -1; @@ -7295,7 +6795,7 @@ int s1ap_decode_s1ap_celltraffictraceies( S1ap_TransportLayerAddress_t *s1apTransportLayerAddress_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TransportLayerAddress, (void**)&s1apTransportLayerAddress_p); if (tempDecoded < 0 || s1apTransportLayerAddress_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE traceCollectionEntityIPAddress failed\n"); + d_error("Decoding of IE traceCollectionEntityIPAddress failed\n"); if (s1apTransportLayerAddress_p) ASN_STRUCT_FREE(asn_DEF_S1ap_TransportLayerAddress, s1apTransportLayerAddress_p); return -1; @@ -7312,7 +6812,7 @@ int s1ap_decode_s1ap_celltraffictraceies( s1ap_CellTrafficTraceIEs->presenceMask |= S1AP_CELLTRAFFICTRACEIES_PRIVACYINDICATOR_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_PrivacyIndicator, (void**)&s1apPrivacyIndicator_p); if (tempDecoded < 0 || s1apPrivacyIndicator_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE privacyIndicator failed\n"); + d_error("Decoding of IE privacyIndicator failed\n"); if (s1apPrivacyIndicator_p) ASN_STRUCT_FREE(asn_DEF_S1ap_PrivacyIndicator, s1apPrivacyIndicator_p); return -1; @@ -7323,7 +6823,7 @@ int s1ap_decode_s1ap_celltraffictraceies( memcpy(&s1ap_CellTrafficTraceIEs->privacyIndicator, s1apPrivacyIndicator_p, sizeof(S1ap_PrivacyIndicator_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_celltraffictraceies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_celltraffictraceies\n", (int)ie_p->id); return -1; } } @@ -7341,7 +6841,7 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( assert(any_p != NULL); assert(s1ap_E_RABSetupRequestIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_E_RABSetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_E_RABSetupRequestIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_E_RABSetupRequest, (void**)&s1ap_E_RABSetupRequest_p); @@ -7354,7 +6854,7 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7369,7 +6869,7 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7386,7 +6886,7 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( s1ap_E_RABSetupRequestIEs->presenceMask |= S1AP_E_RABSETUPREQUESTIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UEAggregateMaximumBitrate, (void**)&s1apUEAggregateMaximumBitrate_p); if (tempDecoded < 0 || s1apUEAggregateMaximumBitrate_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uEaggregateMaximumBitrate failed\n"); + d_error("Decoding of IE uEaggregateMaximumBitrate failed\n"); if (s1apUEAggregateMaximumBitrate_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UEAggregateMaximumBitrate, s1apUEAggregateMaximumBitrate_p); return -1; @@ -7401,7 +6901,7 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( S1ap_E_RABToBeSetupListBearerSUReq_t *s1apERABToBeSetupListBearerSUReq_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, (void**)&s1apERABToBeSetupListBearerSUReq_p); if (tempDecoded < 0 || s1apERABToBeSetupListBearerSUReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupListBearerSUReq failed\n"); + d_error("Decoding of IE e_RABToBeSetupListBearerSUReq failed\n"); if (s1apERABToBeSetupListBearerSUReq_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, s1apERABToBeSetupListBearerSUReq_p); return -1; @@ -7409,10 +6909,13 @@ int s1ap_decode_s1ap_e_rabsetuprequesties( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, s1apERABToBeSetupListBearerSUReq_p); - memcpy(&s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq, s1apERABToBeSetupListBearerSUReq_p, sizeof(S1ap_E_RABToBeSetupListBearerSUReq_t)); + if (s1ap_decode_s1ap_e_rabtobesetuplistbearersureq(&s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq, s1apERABToBeSetupListBearerSUReq_p) < 0) { + d_error("Decoding of encapsulated IE s1apERABToBeSetupListBearerSUReq failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, s1apERABToBeSetupListBearerSUReq_p); + } } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_e_rabsetuprequesties\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_e_rabsetuprequesties\n", (int)ie_p->id); return -1; } } @@ -7430,7 +6933,7 @@ int s1ap_decode_s1ap_enbstatustransferies( assert(any_p != NULL); assert(s1ap_ENBStatusTransferIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ENBStatusTransferIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ENBStatusTransferIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ENBStatusTransfer, (void**)&s1ap_ENBStatusTransfer_p); @@ -7443,7 +6946,7 @@ int s1ap_decode_s1ap_enbstatustransferies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7458,7 +6961,7 @@ int s1ap_decode_s1ap_enbstatustransferies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7473,7 +6976,7 @@ int s1ap_decode_s1ap_enbstatustransferies( S1ap_ENB_StatusTransfer_TransparentContainer_t *s1apENBStatusTransferTransparentContainer_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, (void**)&s1apENBStatusTransferTransparentContainer_p); if (tempDecoded < 0 || s1apENBStatusTransferTransparentContainer_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_StatusTransfer_TransparentContainer failed\n"); + d_error("Decoding of IE eNB_StatusTransfer_TransparentContainer failed\n"); if (s1apENBStatusTransferTransparentContainer_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, s1apENBStatusTransferTransparentContainer_p); return -1; @@ -7484,7 +6987,7 @@ int s1ap_decode_s1ap_enbstatustransferies( memcpy(&s1ap_ENBStatusTransferIEs->eNB_StatusTransfer_TransparentContainer, s1apENBStatusTransferTransparentContainer_p, sizeof(S1ap_ENB_StatusTransfer_TransparentContainer_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_enbstatustransferies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_enbstatustransferies\n", (int)ie_p->id); return -1; } } @@ -7502,7 +7005,7 @@ int s1ap_decode_s1ap_resetacknowledgeies( assert(any_p != NULL); assert(s1ap_ResetAcknowledgeIEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_ResetAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_ResetAcknowledgeIEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_ResetAcknowledge, (void**)&s1ap_ResetAcknowledge_p); @@ -7517,7 +7020,7 @@ int s1ap_decode_s1ap_resetacknowledgeies( s1ap_ResetAcknowledgeIEs->presenceMask |= S1AP_RESETACKNOWLEDGEIES_UE_ASSOCIATEDLOGICALS1_CONNECTIONLISTRESACK_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, (void**)&s1apUEassociatedLogicalS1ConnectionListResAck_p); if (tempDecoded < 0 || s1apUEassociatedLogicalS1ConnectionListResAck_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE uE_associatedLogicalS1_ConnectionListResAck failed\n"); + d_error("Decoding of IE uE_associatedLogicalS1_ConnectionListResAck failed\n"); if (s1apUEassociatedLogicalS1ConnectionListResAck_p) ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, s1apUEassociatedLogicalS1ConnectionListResAck_p); return -1; @@ -7525,7 +7028,10 @@ int s1ap_decode_s1ap_resetacknowledgeies( decoded += tempDecoded; if (asn1_xer_print) xer_fprint(stdout, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, s1apUEassociatedLogicalS1ConnectionListResAck_p); - memcpy(&s1ap_ResetAcknowledgeIEs->uE_associatedLogicalS1_ConnectionListResAck, s1apUEassociatedLogicalS1ConnectionListResAck_p, sizeof(S1ap_UE_associatedLogicalS1_ConnectionListResAck_t)); + if (s1ap_decode_s1ap_ue_associatedlogicals1_connectionlistresack(&s1ap_ResetAcknowledgeIEs->uE_associatedLogicalS1_ConnectionListResAck, s1apUEassociatedLogicalS1ConnectionListResAck_p) < 0) { + d_error("Decoding of encapsulated IE s1apUEassociatedLogicalS1ConnectionListResAck failed\n"); + ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, s1apUEassociatedLogicalS1ConnectionListResAck_p); + } } break; /* Optional field */ case S1ap_ProtocolIE_ID_id_CriticalityDiagnostics: @@ -7534,7 +7040,7 @@ int s1ap_decode_s1ap_resetacknowledgeies( s1ap_ResetAcknowledgeIEs->presenceMask |= S1AP_RESETACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -7545,7 +7051,7 @@ int s1ap_decode_s1ap_resetacknowledgeies( memcpy(&s1ap_ResetAcknowledgeIEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_resetacknowledgeies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_resetacknowledgeies\n", (int)ie_p->id); return -1; } } @@ -7563,7 +7069,7 @@ int s1ap_decode_s1ap_uecontextreleasecomplete_ies( assert(any_p != NULL); assert(s1ap_UEContextReleaseComplete_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UEContextReleaseComplete_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UEContextReleaseComplete_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UEContextReleaseComplete, (void**)&s1ap_UEContextReleaseComplete_p); @@ -7576,7 +7082,7 @@ int s1ap_decode_s1ap_uecontextreleasecomplete_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7591,7 +7097,7 @@ int s1ap_decode_s1ap_uecontextreleasecomplete_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7608,7 +7114,7 @@ int s1ap_decode_s1ap_uecontextreleasecomplete_ies( s1ap_UEContextReleaseComplete_IEs->presenceMask |= S1AP_UECONTEXTRELEASECOMPLETE_IES_CRITICALITYDIAGNOSTICS_PRESENT; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_CriticalityDiagnostics, (void**)&s1apCriticalityDiagnostics_p); if (tempDecoded < 0 || s1apCriticalityDiagnostics_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE criticalityDiagnostics failed\n"); + d_error("Decoding of IE criticalityDiagnostics failed\n"); if (s1apCriticalityDiagnostics_p) ASN_STRUCT_FREE(asn_DEF_S1ap_CriticalityDiagnostics, s1apCriticalityDiagnostics_p); return -1; @@ -7619,7 +7125,7 @@ int s1ap_decode_s1ap_uecontextreleasecomplete_ies( memcpy(&s1ap_UEContextReleaseComplete_IEs->criticalityDiagnostics, s1apCriticalityDiagnostics_p, sizeof(S1ap_CriticalityDiagnostics_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uecontextreleasecomplete_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uecontextreleasecomplete_ies\n", (int)ie_p->id); return -1; } } @@ -7637,7 +7143,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( assert(any_p != NULL); assert(s1ap_UplinkUEAssociatedLPPaTransport_IEs != NULL); - OAILOG_DEBUG (LOG_S1AP, "Decoding message S1ap_UplinkUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); + d_trace(3, "Decoding message S1ap_UplinkUEAssociatedLPPaTransport_IEs (%s:%d)\n", __FILE__, __LINE__); ANY_to_type_aper(any_p, &asn_DEF_S1ap_UplinkUEAssociatedLPPaTransport, (void**)&s1ap_UplinkUEAssociatedLPPaTransport_p); @@ -7650,7 +7156,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( S1ap_MME_UE_S1AP_ID_t *s1apMMEUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_MME_UE_S1AP_ID, (void**)&s1apMMEUES1APID_p); if (tempDecoded < 0 || s1apMMEUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE mme_ue_s1ap_id failed\n"); + d_error("Decoding of IE mme_ue_s1ap_id failed\n"); if (s1apMMEUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_MME_UE_S1AP_ID, s1apMMEUES1APID_p); return -1; @@ -7665,7 +7171,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( S1ap_ENB_UE_S1AP_ID_t *s1apENBUES1APID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_ENB_UE_S1AP_ID, (void**)&s1apENBUES1APID_p); if (tempDecoded < 0 || s1apENBUES1APID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE eNB_UE_S1AP_ID failed\n"); + d_error("Decoding of IE eNB_UE_S1AP_ID failed\n"); if (s1apENBUES1APID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_ENB_UE_S1AP_ID, s1apENBUES1APID_p); return -1; @@ -7680,7 +7186,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( S1ap_Routing_ID_t *s1apRoutingID_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Routing_ID, (void**)&s1apRoutingID_p); if (tempDecoded < 0 || s1apRoutingID_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE routing_ID failed\n"); + d_error("Decoding of IE routing_ID failed\n"); if (s1apRoutingID_p) ASN_STRUCT_FREE(asn_DEF_S1ap_Routing_ID, s1apRoutingID_p); return -1; @@ -7695,7 +7201,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( S1ap_LPPa_PDU_t *s1apLPPaPDU_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_LPPa_PDU, (void**)&s1apLPPaPDU_p); if (tempDecoded < 0 || s1apLPPaPDU_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE lpPa_PDU failed\n"); + d_error("Decoding of IE lpPa_PDU failed\n"); if (s1apLPPaPDU_p) ASN_STRUCT_FREE(asn_DEF_S1ap_LPPa_PDU, s1apLPPaPDU_p); return -1; @@ -7706,7 +7212,7 @@ int s1ap_decode_s1ap_uplinkueassociatedlppatransport_ies( memcpy(&s1ap_UplinkUEAssociatedLPPaTransport_IEs->lpPa_PDU, s1apLPPaPDU_p, sizeof(S1ap_LPPa_PDU_t)); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7731,7 +7237,7 @@ int s1ap_decode_s1ap_e_rabfailedtosetuplisthoreqack( S1ap_E_RABFailedToSetupItemHOReqAck_t *s1apERABFailedToSetupItemHOReqAck_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABFailedToSetupItemHOReqAck, (void**)&s1apERABFailedToSetupItemHOReqAck_p); if (tempDecoded < 0 || s1apERABFailedToSetupItemHOReqAck_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABFailedtoSetupItemHOReqAck for message S1ap_E_RABFailedtoSetupListHOReqAck failed\n"); + d_error("Decoding of IE e_RABFailedtoSetupItemHOReqAck for message S1ap_E_RABFailedtoSetupListHOReqAck failed\n"); if (s1apERABFailedToSetupItemHOReqAck_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABFailedToSetupItemHOReqAck, s1apERABFailedToSetupItemHOReqAck_p); return -1; @@ -7742,7 +7248,43 @@ int s1ap_decode_s1ap_e_rabfailedtosetuplisthoreqack( ASN_SEQUENCE_ADD(&s1ap_E_RABFailedtoSetupListHOReqAckIEs->s1ap_E_RABFailedtoSetupItemHOReqAck, s1apERABFailedToSetupItemHOReqAck_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabreleaselistbearerrelcomp( + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs, + S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABReleaseListBearerRelComp != NULL); + assert(s1ap_E_RABReleaseListBearerRelCompIEs != NULL); + + for (i = 0; i < s1ap_E_RABReleaseListBearerRelComp->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABReleaseListBearerRelComp->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABReleaseItemBearerRelComp: + { + S1ap_E_RABReleaseItemBearerRelComp_t *s1apERABReleaseItemBearerRelComp_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, (void**)&s1apERABReleaseItemBearerRelComp_p); + if (tempDecoded < 0 || s1apERABReleaseItemBearerRelComp_p == NULL) { + d_error("Decoding of IE e_RABReleaseItemBearerRelComp for message S1ap_E_RABReleaseListBearerRelComp failed\n"); + if (s1apERABReleaseItemBearerRelComp_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseListBearerRelCompIEs->s1ap_E_RABReleaseItemBearerRelComp, s1apERABReleaseItemBearerRelComp_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7767,7 +7309,7 @@ int s1ap_decode_s1ap_e_rabtobesetuplisthoreq( S1ap_E_RABToBeSetupItemHOReq_t *s1apERABToBeSetupItemHOReq_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupItemHOReq, (void**)&s1apERABToBeSetupItemHOReq_p); if (tempDecoded < 0 || s1apERABToBeSetupItemHOReq_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSetupItemHOReq for message S1ap_E_RABToBeSetupListHOReq failed\n"); + d_error("Decoding of IE e_RABToBeSetupItemHOReq for message S1ap_E_RABToBeSetupListHOReq failed\n"); if (s1apERABToBeSetupItemHOReq_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupItemHOReq, s1apERABToBeSetupItemHOReq_p); return -1; @@ -7778,7 +7320,43 @@ int s1ap_decode_s1ap_e_rabtobesetuplisthoreq( ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListHOReqIEs->s1ap_E_RABToBeSetupItemHOReq, s1apERABToBeSetupItemHOReq_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabtobemodifiedlistbearermodreq( + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs, + S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABToBeModifiedListBearerModReq != NULL); + assert(s1ap_E_RABToBeModifiedListBearerModReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeModifiedListBearerModReq->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABToBeModifiedListBearerModReq->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABToBeModifiedItemBearerModReq: + { + S1ap_E_RABToBeModifiedItemBearerModReq_t *s1apERABToBeModifiedItemBearerModReq_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, (void**)&s1apERABToBeModifiedItemBearerModReq_p); + if (tempDecoded < 0 || s1apERABToBeModifiedItemBearerModReq_p == NULL) { + d_error("Decoding of IE e_RABToBeModifiedItemBearerModReq for message S1ap_E_RABToBeModifiedListBearerModReq failed\n"); + if (s1apERABToBeModifiedItemBearerModReq_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeModifiedListBearerModReqIEs->s1ap_E_RABToBeModifiedItemBearerModReq, s1apERABToBeModifiedItemBearerModReq_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7803,7 +7381,7 @@ int s1ap_decode_s1ap_e_rabadmittedlist( S1ap_E_RABAdmittedItem_t *s1apERABAdmittedItem_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABAdmittedItem, (void**)&s1apERABAdmittedItem_p); if (tempDecoded < 0 || s1apERABAdmittedItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABAdmittedItem for message S1ap_E_RABAdmittedList failed\n"); + d_error("Decoding of IE e_RABAdmittedItem for message S1ap_E_RABAdmittedList failed\n"); if (s1apERABAdmittedItem_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABAdmittedItem, s1apERABAdmittedItem_p); return -1; @@ -7814,7 +7392,43 @@ int s1ap_decode_s1ap_e_rabadmittedlist( ASN_SEQUENCE_ADD(&s1ap_E_RABAdmittedListIEs->s1ap_E_RABAdmittedItem, s1apERABAdmittedItem_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabtobesetuplistbearersureq( + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs, + S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABToBeSetupListBearerSUReq != NULL); + assert(s1ap_E_RABToBeSetupListBearerSUReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeSetupListBearerSUReq->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABToBeSetupListBearerSUReq->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemBearerSUReq: + { + S1ap_E_RABToBeSetupItemBearerSUReq_t *s1apERABToBeSetupItemBearerSUReq_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, (void**)&s1apERABToBeSetupItemBearerSUReq_p); + if (tempDecoded < 0 || s1apERABToBeSetupItemBearerSUReq_p == NULL) { + d_error("Decoding of IE e_RABToBeSetupItemBearerSUReq for message S1ap_E_RABToBeSetupListBearerSUReq failed\n"); + if (s1apERABToBeSetupItemBearerSUReq_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListBearerSUReqIEs->s1ap_E_RABToBeSetupItemBearerSUReq, s1apERABToBeSetupItemBearerSUReq_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7839,7 +7453,7 @@ int s1ap_decode_s1ap_e_rabdataforwardinglist( S1ap_E_RABDataForwardingItem_t *s1apERABDataForwardingItem_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABDataForwardingItem, (void**)&s1apERABDataForwardingItem_p); if (tempDecoded < 0 || s1apERABDataForwardingItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABDataForwardingItem for message S1ap_E_RABDataForwardingList failed\n"); + d_error("Decoding of IE e_RABDataForwardingItem for message S1ap_E_RABDataForwardingList failed\n"); if (s1apERABDataForwardingItem_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABDataForwardingItem, s1apERABDataForwardingItem_p); return -1; @@ -7850,7 +7464,7 @@ int s1ap_decode_s1ap_e_rabdataforwardinglist( ASN_SEQUENCE_ADD(&s1ap_E_RABDataForwardingListIEs->s1ap_E_RABDataForwardingItem, s1apERABDataForwardingItem_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7875,7 +7489,7 @@ int s1ap_decode_s1ap_e_rabtobeswitcheddllist( S1ap_E_RABToBeSwitchedDLItem_t *s1apERABToBeSwitchedDLItem_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSwitchedDLItem, (void**)&s1apERABToBeSwitchedDLItem_p); if (tempDecoded < 0 || s1apERABToBeSwitchedDLItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSwitchedDLItem for message S1ap_E_RABToBeSwitchedDLList failed\n"); + d_error("Decoding of IE e_RABToBeSwitchedDLItem for message S1ap_E_RABToBeSwitchedDLList failed\n"); if (s1apERABToBeSwitchedDLItem_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedDLItem, s1apERABToBeSwitchedDLItem_p); return -1; @@ -7886,7 +7500,43 @@ int s1ap_decode_s1ap_e_rabtobeswitcheddllist( ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSwitchedDLListIEs->s1ap_E_RABToBeSwitchedDLItem, s1apERABToBeSwitchedDLItem_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabsetuplistctxtsures( + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs, + S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABSetupListCtxtSURes != NULL); + assert(s1ap_E_RABSetupListCtxtSUResIEs != NULL); + + for (i = 0; i < s1ap_E_RABSetupListCtxtSURes->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABSetupListCtxtSURes->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABSetupItemCtxtSURes: + { + S1ap_E_RABSetupItemCtxtSURes_t *s1apERABSetupItemCtxtSURes_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, (void**)&s1apERABSetupItemCtxtSURes_p); + if (tempDecoded < 0 || s1apERABSetupItemCtxtSURes_p == NULL) { + d_error("Decoding of IE e_RABSetupItemCtxtSURes for message S1ap_E_RABSetupListCtxtSURes failed\n"); + if (s1apERABSetupItemCtxtSURes_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListCtxtSUResIEs->s1ap_E_RABSetupItemCtxtSURes, s1apERABSetupItemCtxtSURes_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } @@ -7911,7 +7561,7 @@ int s1ap_decode_s1ap_e_rabtobeswitchedullist( S1ap_E_RABToBeSwitchedULItem_t *s1apERABToBeSwitchedULItem_p = NULL; tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSwitchedULItem, (void**)&s1apERABToBeSwitchedULItem_p); if (tempDecoded < 0 || s1apERABToBeSwitchedULItem_p == NULL) { - OAILOG_ERROR (LOG_S1AP, "Decoding of IE e_RABToBeSwitchedULItem for message S1ap_E_RABToBeSwitchedULList failed\n"); + d_error("Decoding of IE e_RABToBeSwitchedULItem for message S1ap_E_RABToBeSwitchedULList failed\n"); if (s1apERABToBeSwitchedULItem_p) ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSwitchedULItem, s1apERABToBeSwitchedULItem_p); return -1; @@ -7922,7 +7572,331 @@ int s1ap_decode_s1ap_e_rabtobeswitchedullist( ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSwitchedULListIEs->s1ap_E_RABToBeSwitchedULItem, s1apERABToBeSwitchedULItem_p); } break; default: - OAILOG_ERROR (LOG_S1AP, "Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_bearers_subjecttostatustransfer_list( + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs, + S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_Bearers_SubjectToStatusTransfer_List != NULL); + assert(s1ap_Bearers_SubjectToStatusTransfer_ListIEs != NULL); + + for (i = 0; i < s1ap_Bearers_SubjectToStatusTransfer_List->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_Bearers_SubjectToStatusTransfer_List->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_Bearers_SubjectToStatusTransfer_Item: + { + S1ap_Bearers_SubjectToStatusTransfer_Item_t *s1apBearersSubjectToStatusTransferItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, (void**)&s1apBearersSubjectToStatusTransferItem_p); + if (tempDecoded < 0 || s1apBearersSubjectToStatusTransferItem_p == NULL) { + d_error("Decoding of IE bearers_SubjectToStatusTransfer_Item for message S1ap_Bearers_SubjectToStatusTransfer_List failed\n"); + if (s1apBearersSubjectToStatusTransferItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p); + ASN_SEQUENCE_ADD(&s1ap_Bearers_SubjectToStatusTransfer_ListIEs->s1ap_Bearers_SubjectToStatusTransfer_Item, s1apBearersSubjectToStatusTransferItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rablist( + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs, + S1ap_E_RABList_t *s1ap_E_RABList) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABList != NULL); + assert(s1ap_E_RABListIEs != NULL); + + for (i = 0; i < s1ap_E_RABList->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABList->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABItem: + { + S1ap_E_RABItem_t *s1apERABItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABItem, (void**)&s1apERABItem_p); + if (tempDecoded < 0 || s1apERABItem_p == NULL) { + d_error("Decoding of IE e_RABItem for message S1ap_E_RABList failed\n"); + if (s1apERABItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABItem, s1apERABItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABItem, s1apERABItem_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABListIEs->s1ap_E_RABItem, s1apERABItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_tailist( + S1ap_TAIListIEs_t *s1ap_TAIListIEs, + S1ap_TAIList_t *s1ap_TAIList) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_TAIList != NULL); + assert(s1ap_TAIListIEs != NULL); + + for (i = 0; i < s1ap_TAIList->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_TAIList->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_TAIItem: + { + S1ap_TAIItem_t *s1apTAIItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_TAIItem, (void**)&s1apTAIItem_p); + if (tempDecoded < 0 || s1apTAIItem_p == NULL) { + d_error("Decoding of IE taiItem for message S1ap_TAIList failed\n"); + if (s1apTAIItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_TAIItem, s1apTAIItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_TAIItem, s1apTAIItem_p); + ASN_SEQUENCE_ADD(&s1ap_TAIListIEs->s1ap_TAIItem, s1apTAIItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_ue_associatedlogicals1_connectionlistres( + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResIEs, + S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_UE_associatedLogicalS1_ConnectionListRes != NULL); + assert(s1ap_UE_associatedLogicalS1_ConnectionListResIEs != NULL); + + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListRes->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_UE_associatedLogicalS1_ConnectionListRes->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem: + { + S1ap_UE_associatedLogicalS1_ConnectionItem_t *s1apUEassociatedLogicalS1ConnectionItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, (void**)&s1apUEassociatedLogicalS1ConnectionItem_p); + if (tempDecoded < 0 || s1apUEassociatedLogicalS1ConnectionItem_p == NULL) { + d_error("Decoding of IE uE_associatedLogicalS1_ConnectionItem for message S1ap_UE_associatedLogicalS1_ConnectionListRes failed\n"); + if (s1apUEassociatedLogicalS1ConnectionItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); + ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListResIEs->s1ap_UE_associatedLogicalS1_ConnectionItemRes, s1apUEassociatedLogicalS1ConnectionItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabsetuplistbearersures( + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs, + S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABSetupListBearerSURes != NULL); + assert(s1ap_E_RABSetupListBearerSUResIEs != NULL); + + for (i = 0; i < s1ap_E_RABSetupListBearerSURes->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABSetupListBearerSURes->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABSetupItemBearerSURes: + { + S1ap_E_RABSetupItemBearerSURes_t *s1apERABSetupItemBearerSURes_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABSetupItemBearerSURes, (void**)&s1apERABSetupItemBearerSURes_p); + if (tempDecoded < 0 || s1apERABSetupItemBearerSURes_p == NULL) { + d_error("Decoding of IE e_RABSetupItemBearerSURes for message S1ap_E_RABSetupListBearerSURes failed\n"); + if (s1apERABSetupItemBearerSURes_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListBearerSUResIEs->s1ap_E_RABSetupItemBearerSURes, s1apERABSetupItemBearerSURes_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabmodifylistbearermodres( + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs, + S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABModifyListBearerModRes != NULL); + assert(s1ap_E_RABModifyListBearerModResIEs != NULL); + + for (i = 0; i < s1ap_E_RABModifyListBearerModRes->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABModifyListBearerModRes->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABModifyItemBearerModRes: + { + S1ap_E_RABModifyItemBearerModRes_t *s1apERABModifyItemBearerModRes_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABModifyItemBearerModRes, (void**)&s1apERABModifyItemBearerModRes_p); + if (tempDecoded < 0 || s1apERABModifyItemBearerModRes_p == NULL) { + d_error("Decoding of IE e_RABModifyItemBearerModRes for message S1ap_E_RABModifyListBearerModRes failed\n"); + if (s1apERABModifyItemBearerModRes_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABModifyListBearerModResIEs->s1ap_E_RABModifyItemBearerModRes, s1apERABModifyItemBearerModRes_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabtobesetuplistctxtsureq( + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs, + S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABToBeSetupListCtxtSUReq != NULL); + assert(s1ap_E_RABToBeSetupListCtxtSUReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeSetupListCtxtSUReq->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABToBeSetupListCtxtSUReq->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemCtxtSUReq: + { + S1ap_E_RABToBeSetupItemCtxtSUReq_t *s1apERABToBeSetupItemCtxtSUReq_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, (void**)&s1apERABToBeSetupItemCtxtSUReq_p); + if (tempDecoded < 0 || s1apERABToBeSetupItemCtxtSUReq_p == NULL) { + d_error("Decoding of IE e_RABToBeSetupItemCtxtSUReq for message S1ap_E_RABToBeSetupListCtxtSUReq failed\n"); + if (s1apERABToBeSetupItemCtxtSUReq_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListCtxtSUReqIEs->s1ap_E_RABToBeSetupItemCtxtSUReq, s1apERABToBeSetupItemCtxtSUReq_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_e_rabinformationlist( + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs, + S1ap_E_RABInformationList_t *s1ap_E_RABInformationList) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_E_RABInformationList != NULL); + assert(s1ap_E_RABInformationListIEs != NULL); + + for (i = 0; i < s1ap_E_RABInformationList->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_E_RABInformationList->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_E_RABInformationListItem: + { + S1ap_E_RABInformationListItem_t *s1apERABInformationListItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_E_RABInformationListItem, (void**)&s1apERABInformationListItem_p); + if (tempDecoded < 0 || s1apERABInformationListItem_p == NULL) { + d_error("Decoding of IE e_RABInformationListItem for message S1ap_E_RABInformationList failed\n"); + if (s1apERABInformationListItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_E_RABInformationListItem, s1apERABInformationListItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_E_RABInformationListItem, s1apERABInformationListItem_p); + ASN_SEQUENCE_ADD(&s1ap_E_RABInformationListIEs->s1ap_E_RABInformationList, s1apERABInformationListItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); + return -1; + } + } + return decoded; +} + +int s1ap_decode_s1ap_ue_associatedlogicals1_connectionlistresack( + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs, + S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck) { + + int i, decoded = 0; + int tempDecoded = 0; + + assert(s1ap_UE_associatedLogicalS1_ConnectionListResAck != NULL); + assert(s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs != NULL); + + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListResAck->list.count; i++) { + S1ap_IE_t *ie_p = s1ap_UE_associatedLogicalS1_ConnectionListResAck->list.array[i]; + switch (ie_p->id) { + case S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem: + { + S1ap_UE_associatedLogicalS1_ConnectionItem_t *s1apUEassociatedLogicalS1ConnectionItem_p = NULL; + tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, (void**)&s1apUEassociatedLogicalS1ConnectionItem_p); + if (tempDecoded < 0 || s1apUEassociatedLogicalS1ConnectionItem_p == NULL) { + d_error("Decoding of IE uE_associatedLogicalS1_ConnectionItem for message S1ap_UE_associatedLogicalS1_ConnectionListResAck failed\n"); + if (s1apUEassociatedLogicalS1ConnectionItem_p) + ASN_STRUCT_FREE(asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); + return -1; + } + decoded += tempDecoded; + if (asn1_xer_print) + xer_fprint(stdout, &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1apUEassociatedLogicalS1ConnectionItem_p); + ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs->s1ap_UE_associatedLogicalS1_ConnectionItemResAck, s1apUEassociatedLogicalS1ConnectionItem_p); + } break; + default: + d_error("Unknown protocol IE id (%d) for message s1ap_uplinkueassociatedlppatransport_ies\n", (int)ie_p->id); return -1; } } diff --git a/lib/asn/s1ap_encoder.c b/lib/asn/s1ap_encoder.c index 157b46c0c..6a07030b7 100644 --- a/lib/asn/s1ap_encoder.c +++ b/lib/asn/s1ap_encoder.c @@ -30,7 +30,7 @@ /******************************************************************************* * This file had been created by asn1tostruct.py script v1.0.2 * Please do not modify this file but regenerate it via script. - * Created on: 2017-02-03 13:33:42.683855 by acetcom + * Created on: 2017-02-03 16:04:58.994273 by acetcom * from ['S1AP-PDU.asn'] ******************************************************************************/ #include "s1ap_common.h" @@ -72,26 +72,6 @@ int s1ap_encode_s1ap_deactivatetraceies( return 0; } -int s1ap_encode_s1ap_e_rabreleaseitembearerrelcompies( - S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp, - S1ap_E_RABReleaseItemBearerRelCompIEs_t *s1ap_E_RABReleaseItemBearerRelCompIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABReleaseListBearerRelComp != NULL); - assert(s1ap_E_RABReleaseItemBearerRelCompIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABReleaseItemBearerRelComp, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, - &s1ap_E_RABReleaseItemBearerRelCompIEs->e_RABReleaseItemBearerRelComp)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseListBearerRelComp->s1ap_E_RABReleaseListBearerRelComp_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_enbdirectinformationtransferies( S1ap_ENBDirectInformationTransfer_t *s1ap_ENBDirectInformationTransfer, S1ap_ENBDirectInformationTransferIEs_t *s1ap_ENBDirectInformationTransferIEs) { @@ -370,26 +350,6 @@ int s1ap_encode_s1ap_handoverpreparationfailureies( return 0; } -int s1ap_encode_s1ap_e_rabtobemodifieditembearermodreqies( - S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq, - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t *s1ap_E_RABToBeModifiedItemBearerModReqIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABToBeModifiedListBearerModReq != NULL); - assert(s1ap_E_RABToBeModifiedItemBearerModReqIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeModifiedItemBearerModReq, - S1ap_Criticality_reject, - &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, - &s1ap_E_RABToBeModifiedItemBearerModReqIEs->e_RABToBeModifiedItemBearerModReq)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABToBeModifiedListBearerModReq->s1ap_E_RABToBeModifiedListBearerModReq_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_uecontextreleaserequest_ies( S1ap_UEContextReleaseRequest_t *s1ap_UEContextReleaseRequest, S1ap_UEContextReleaseRequest_IEs_t *s1ap_UEContextReleaseRequest_IEs) { @@ -531,11 +491,11 @@ int s1ap_encode_s1ap_initialuemessage_ies( } /* Optional field */ - if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT) { - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_GW_S1ap_TransportLayerAddress, + if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_GW_TRANSPORTLAYERADDRESS_PRESENT) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_GW_TransportLayerAddress, S1ap_Criticality_ignore, &asn_DEF_S1ap_TransportLayerAddress, - &s1ap_InitialUEMessage_IEs->gW_S1ap_TransportLayerAddress)) == NULL) { + &s1ap_InitialUEMessage_IEs->gW_TransportLayerAddress)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_InitialUEMessage->s1ap_InitialUEMessage_ies.list, ie); @@ -751,26 +711,6 @@ int s1ap_encode_s1ap_uecapabilityinfoindicationies( return 0; } -int s1ap_encode_s1ap_e_rabtobesetupitembearersureqies( - S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq, - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t *s1ap_E_RABToBeSetupItemBearerSUReqIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABToBeSetupListBearerSUReq != NULL); - assert(s1ap_E_RABToBeSetupItemBearerSUReqIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemBearerSUReq, - S1ap_Criticality_reject, - &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, - &s1ap_E_RABToBeSetupItemBearerSUReqIEs->e_RABToBeSetupItemBearerSUReq)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListBearerSUReq->s1ap_E_RABToBeSetupListBearerSUReq_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_locationreportingfailureindicationies( S1ap_LocationReportingFailureIndication_t *s1ap_LocationReportingFailureIndication, S1ap_LocationReportingFailureIndicationIEs_t *s1ap_LocationReportingFailureIndicationIEs) { @@ -840,14 +780,22 @@ int s1ap_encode_s1ap_initialcontextsetuprequesties( } ASN_SEQUENCE_ADD(&s1ap_InitialContextSetupRequest->s1ap_InitialContextSetupRequest_ies.list, ie); + S1ap_E_RABToBeSetupListCtxtSUReq_t e_RABToBeSetupListCtxtSUReq; + + memset(&e_RABToBeSetupListCtxtSUReq, 0, sizeof(S1ap_E_RABToBeSetupListCtxtSUReq_t)); + + if (s1ap_encode_s1ap_e_rabtobesetuplistctxtsureq(&e_RABToBeSetupListCtxtSUReq, &s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupListCtxtSUReq, S1ap_Criticality_reject, &asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, - &s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq)) == NULL) { + &e_RABToBeSetupListCtxtSUReq)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_InitialContextSetupRequest->s1ap_InitialContextSetupRequest_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, &e_RABToBeSetupListCtxtSUReq); + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_UESecurityCapabilities, S1ap_Criticality_reject, &asn_DEF_S1ap_UESecurityCapabilities, @@ -1090,11 +1038,11 @@ int s1ap_encode_s1ap_uplinknastransport_ies( ASN_SEQUENCE_ADD(&s1ap_UplinkNASTransport->s1ap_UplinkNASTransport_ies.list, ie); /* Optional field */ - if (s1ap_UplinkNASTransport_IEs->presenceMask & S1AP_UPLINKNASTRANSPORT_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT) { - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_GW_S1ap_TransportLayerAddress, + if (s1ap_UplinkNASTransport_IEs->presenceMask & S1AP_UPLINKNASTRANSPORT_IES_GW_TRANSPORTLAYERADDRESS_PRESENT) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_GW_TransportLayerAddress, S1ap_Criticality_ignore, &asn_DEF_S1ap_TransportLayerAddress, - &s1ap_UplinkNASTransport_IEs->gW_S1ap_TransportLayerAddress)) == NULL) { + &s1ap_UplinkNASTransport_IEs->gW_TransportLayerAddress)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_UplinkNASTransport->s1ap_UplinkNASTransport_ies.list, ie); @@ -1900,33 +1848,21 @@ int s1ap_encode_s1ap_e_rabmodifyrequesties( ASN_SEQUENCE_ADD(&s1ap_E_RABModifyRequest->s1ap_E_RABModifyRequest_ies.list, ie); } + S1ap_E_RABToBeModifiedListBearerModReq_t e_RABToBeModifiedListBearerModReq; + + memset(&e_RABToBeModifiedListBearerModReq, 0, sizeof(S1ap_E_RABToBeModifiedListBearerModReq_t)); + + if (s1ap_encode_s1ap_e_rabtobemodifiedlistbearermodreq(&e_RABToBeModifiedListBearerModReq, &s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeModifiedListBearerModReq, S1ap_Criticality_reject, &asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, - &s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq)) == NULL) { + &e_RABToBeModifiedListBearerModReq)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_E_RABModifyRequest->s1ap_E_RABModifyRequest_ies.list, ie); - return 0; -} - -int s1ap_encode_s1ap_e_rabsetupitemctxtsuresies( - S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes, - S1ap_E_RABSetupItemCtxtSUResIEs_t *s1ap_E_RABSetupItemCtxtSUResIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABSetupListCtxtSURes != NULL); - assert(s1ap_E_RABSetupItemCtxtSUResIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABSetupItemCtxtSURes, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, - &s1ap_E_RABSetupItemCtxtSUResIEs->e_RABSetupItemCtxtSURes)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListCtxtSURes->s1ap_E_RABSetupListCtxtSURes_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, &e_RABToBeModifiedListBearerModReq); return 0; } @@ -2001,46 +1937,6 @@ int s1ap_encode_s1ap_reseties( return 0; } -int s1ap_encode_s1ap_bearers_subjecttostatustransfer_itemies( - S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List, - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ItemIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_Bearers_SubjectToStatusTransfer_List != NULL); - assert(s1ap_Bearers_SubjectToStatusTransfer_ItemIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_Bearers_SubjectToStatusTransfer_Item, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, - &s1ap_Bearers_SubjectToStatusTransfer_ItemIEs->bearers_SubjectToStatusTransfer_Item)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_Bearers_SubjectToStatusTransfer_List->s1ap_Bearers_SubjectToStatusTransfer_List_ies.list, ie); - - return 0; -} - -int s1ap_encode_s1ap_e_rabitemies( - S1ap_E_RABList_t *s1ap_E_RABList, - S1ap_E_RABItemIEs_t *s1ap_E_RABItemIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABList != NULL); - assert(s1ap_E_RABItemIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABItem, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABItem, - &s1ap_E_RABItemIEs->e_RABItem)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABList->s1ap_E_RABList_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_s1setupresponseies( S1ap_S1SetupResponse_t *s1ap_S1SetupResponse, S1ap_S1SetupResponseIEs_t *s1ap_S1SetupResponseIEs) { @@ -2146,14 +2042,22 @@ int s1ap_encode_s1ap_pagingies( } ASN_SEQUENCE_ADD(&s1ap_Paging->s1ap_Paging_ies.list, ie); + S1ap_TAIList_t taiList; + + memset(&taiList, 0, sizeof(S1ap_TAIList_t)); + + if (s1ap_encode_s1ap_tailist(&taiList, &s1ap_PagingIEs->taiList) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_TAIList, S1ap_Criticality_ignore, &asn_DEF_S1ap_TAIList, - &s1ap_PagingIEs->taiList)) == NULL) { + &taiList)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_Paging->s1ap_Paging_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_TAIList, &taiList); + /* Optional field */ if (s1ap_PagingIEs->presenceMask & S1AP_PAGINGIES_CSG_IDLIST_PRESENT) { if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_CSG_IdList, @@ -2238,14 +2142,22 @@ int s1ap_encode_s1ap_e_rabreleasecommandies( ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseCommand->s1ap_E_RABReleaseCommand_ies.list, ie); } + S1ap_E_RABList_t e_RABToBeReleasedList; + + memset(&e_RABToBeReleasedList, 0, sizeof(S1ap_E_RABList_t)); + + if (s1ap_encode_s1ap_e_rablist(&e_RABToBeReleasedList, &s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeReleasedList, S1ap_Criticality_ignore, &asn_DEF_S1ap_E_RABList, - &s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList)) == NULL) { + &e_RABToBeReleasedList)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseCommand->s1ap_E_RABReleaseCommand_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABList, &e_RABToBeReleasedList); + /* Optional field */ if (s1ap_E_RABReleaseCommandIEs->presenceMask & S1AP_E_RABRELEASECOMMANDIES_NAS_PDU_PRESENT) { if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_NAS_PDU, @@ -2662,26 +2574,6 @@ int s1ap_encode_s1ap_errorindicationies( return 0; } -int s1ap_encode_s1ap_taiitemies( - S1ap_TAIList_t *s1ap_TAIList, - S1ap_TAIItemIEs_t *s1ap_TAIItemIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_TAIList != NULL); - assert(s1ap_TAIItemIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_TAIItem, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_TAIItem, - &s1ap_TAIItemIEs->taiItem)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_TAIList->s1ap_TAIList_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_overloadstarties( S1ap_OverloadStart_t *s1ap_OverloadStart, S1ap_OverloadStartIEs_t *s1ap_OverloadStartIEs) { @@ -3042,26 +2934,6 @@ int s1ap_encode_s1ap_pathswitchrequestacknowledgeies( return 0; } -int s1ap_encode_s1ap_ue_associatedlogicals1_connectionitemres( - S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes, - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t *s1ap_UE_associatedLogicalS1_ConnectionItemRes) { - - S1ap_IE_t *ie; - - assert(s1ap_UE_associatedLogicalS1_ConnectionListRes != NULL); - assert(s1ap_UE_associatedLogicalS1_ConnectionItemRes != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem, - S1ap_Criticality_reject, - &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, - &s1ap_UE_associatedLogicalS1_ConnectionItemRes->uE_associatedLogicalS1_ConnectionItem)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListRes->s1ap_UE_associatedLogicalS1_ConnectionListRes_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_s1setupfailureies( S1ap_S1SetupFailure_t *s1ap_S1SetupFailure, S1ap_S1SetupFailureIEs_t *s1ap_S1SetupFailureIEs) { @@ -3171,14 +3043,22 @@ int s1ap_encode_s1ap_initialcontextsetupresponseies( } ASN_SEQUENCE_ADD(&s1ap_InitialContextSetupResponse->s1ap_InitialContextSetupResponse_ies.list, ie); + S1ap_E_RABSetupListCtxtSURes_t e_RABSetupListCtxtSURes; + + memset(&e_RABSetupListCtxtSURes, 0, sizeof(S1ap_E_RABSetupListCtxtSURes_t)); + + if (s1ap_encode_s1ap_e_rabsetuplistctxtsures(&e_RABSetupListCtxtSURes, &s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABSetupListCtxtSURes, S1ap_Criticality_ignore, &asn_DEF_S1ap_E_RABSetupListCtxtSURes, - &s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes)) == NULL) { + &e_RABSetupListCtxtSURes)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_InitialContextSetupResponse->s1ap_InitialContextSetupResponse_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABSetupListCtxtSURes, &e_RABSetupListCtxtSURes); + /* Optional field */ if (s1ap_InitialContextSetupResponseIEs->presenceMask & S1AP_INITIALCONTEXTSETUPRESPONSEIES_E_RABFAILEDTOSETUPLISTCTXTSURES_PRESENT) { if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABFailedToSetupListCtxtSURes, @@ -3293,66 +3173,6 @@ int s1ap_encode_s1ap_overloadstopies( return 0; } -int s1ap_encode_s1ap_e_rabsetupitembearersuresies( - S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes, - S1ap_E_RABSetupItemBearerSUResIEs_t *s1ap_E_RABSetupItemBearerSUResIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABSetupListBearerSURes != NULL); - assert(s1ap_E_RABSetupItemBearerSUResIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABSetupItemBearerSURes, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABSetupItemBearerSURes, - &s1ap_E_RABSetupItemBearerSUResIEs->e_RABSetupItemBearerSURes)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListBearerSURes->s1ap_E_RABSetupListBearerSURes_ies.list, ie); - - return 0; -} - -int s1ap_encode_s1ap_e_rabmodifyitembearermodresies( - S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes, - S1ap_E_RABModifyItemBearerModResIEs_t *s1ap_E_RABModifyItemBearerModResIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABModifyListBearerModRes != NULL); - assert(s1ap_E_RABModifyItemBearerModResIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABModifyItemBearerModRes, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABModifyItemBearerModRes, - &s1ap_E_RABModifyItemBearerModResIEs->e_RABModifyItemBearerModRes)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABModifyListBearerModRes->s1ap_E_RABModifyListBearerModRes_ies.list, ie); - - return 0; -} - -int s1ap_encode_s1ap_e_rabtobesetupitemctxtsureqies( - S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq, - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t *s1ap_E_RABToBeSetupItemCtxtSUReqIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABToBeSetupListCtxtSUReq != NULL); - assert(s1ap_E_RABToBeSetupItemCtxtSUReqIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemCtxtSUReq, - S1ap_Criticality_reject, - &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, - &s1ap_E_RABToBeSetupItemCtxtSUReqIEs->e_RABToBeSetupItemCtxtSUReq)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListCtxtSUReq->s1ap_E_RABToBeSetupListCtxtSUReq_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_enbconfigurationupdateies( S1ap_ENBConfigurationUpdate_t *s1ap_ENBConfigurationUpdate, S1ap_ENBConfigurationUpdateIEs_t *s1ap_ENBConfigurationUpdateIEs) { @@ -3453,26 +3273,6 @@ int s1ap_encode_s1ap_tracefailureindicationies( return 0; } -int s1ap_encode_s1ap_e_rabinformationlisties( - S1ap_E_RABInformationList_t *s1ap_E_RABInformationList, - S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs) { - - S1ap_IE_t *ie; - - assert(s1ap_E_RABInformationList != NULL); - assert(s1ap_E_RABInformationListIEs != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABInformationListItem, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_E_RABInformationListItem, - &s1ap_E_RABInformationListIEs->e_RABInformationListItem)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_E_RABInformationList->s1ap_E_RABInformationList_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_enbconfigurationtransferies( S1ap_ENBConfigurationTransfer_t *s1ap_ENBConfigurationTransfer, S1ap_ENBConfigurationTransferIEs_t *s1ap_ENBConfigurationTransferIEs) { @@ -3535,26 +3335,6 @@ int s1ap_encode_s1ap_handoverfailureies( return 0; } -int s1ap_encode_s1ap_ue_associatedlogicals1_connectionitemresack( - S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck, - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t *s1ap_UE_associatedLogicalS1_ConnectionItemResAck) { - - S1ap_IE_t *ie; - - assert(s1ap_UE_associatedLogicalS1_ConnectionListResAck != NULL); - assert(s1ap_UE_associatedLogicalS1_ConnectionItemResAck != NULL); - - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem, - S1ap_Criticality_ignore, - &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, - &s1ap_UE_associatedLogicalS1_ConnectionItemResAck->uE_associatedLogicalS1_ConnectionItem)) == NULL) { - return -1; - } - ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListResAck->s1ap_UE_associatedLogicalS1_ConnectionListResAck_ies.list, ie); - - return 0; -} - int s1ap_encode_s1ap_e_rabsetupresponseies( S1ap_E_RABSetupResponse_t *s1ap_E_RABSetupResponse, S1ap_E_RABSetupResponseIEs_t *s1ap_E_RABSetupResponseIEs) { @@ -3732,11 +3512,11 @@ int s1ap_encode_s1ap_pathswitchrequesties( } /* Optional field */ - if (s1ap_PathSwitchRequestIEs->presenceMask & S1AP_PATHSWITCHREQUESTIES_SOURCEMME_S1AP_GUMMEI_PRESENT) { - if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_SourceMME_S1ap_GUMMEI, + if (s1ap_PathSwitchRequestIEs->presenceMask & S1AP_PATHSWITCHREQUESTIES_SOURCEMME_GUMMEI_PRESENT) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_SourceMME_GUMMEI, S1ap_Criticality_ignore, &asn_DEF_S1ap_GUMMEI, - &s1ap_PathSwitchRequestIEs->sourceMME_S1ap_GUMMEI)) == NULL) { + &s1ap_PathSwitchRequestIEs->sourceMME_GUMMEI)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_PathSwitchRequest->s1ap_PathSwitchRequest_ies.list, ie); @@ -3828,14 +3608,22 @@ int s1ap_encode_s1ap_e_rabreleaseindicationies( } ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseIndication->s1ap_E_RABReleaseIndication_ies.list, ie); + S1ap_E_RABList_t e_RABReleasedList; + + memset(&e_RABReleasedList, 0, sizeof(S1ap_E_RABList_t)); + + if (s1ap_encode_s1ap_e_rablist(&e_RABReleasedList, &s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABReleasedList, S1ap_Criticality_ignore, &asn_DEF_S1ap_E_RABList, - &s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList)) == NULL) { + &e_RABReleasedList)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseIndication->s1ap_E_RABReleaseIndication_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABList, &e_RABReleasedList); + return 0; } @@ -4040,14 +3828,22 @@ int s1ap_encode_s1ap_e_rabsetuprequesties( ASN_SEQUENCE_ADD(&s1ap_E_RABSetupRequest->s1ap_E_RABSetupRequest_ies.list, ie); } + S1ap_E_RABToBeSetupListBearerSUReq_t e_RABToBeSetupListBearerSUReq; + + memset(&e_RABToBeSetupListBearerSUReq, 0, sizeof(S1ap_E_RABToBeSetupListBearerSUReq_t)); + + if (s1ap_encode_s1ap_e_rabtobesetuplistbearersureq(&e_RABToBeSetupListBearerSUReq, &s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq) < 0) return -1; if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupListBearerSUReq, S1ap_Criticality_reject, &asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, - &s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq)) == NULL) { + &e_RABToBeSetupListBearerSUReq)) == NULL) { return -1; } ASN_SEQUENCE_ADD(&s1ap_E_RABSetupRequest->s1ap_E_RABSetupRequest_ies.list, ie); + /* Free any dynamic allocation that is no more used */ + ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, &e_RABToBeSetupListBearerSUReq); + return 0; } @@ -4226,6 +4022,28 @@ int s1ap_encode_s1ap_e_rabfailedtosetuplisthoreqack( return 0; } +int s1ap_encode_s1ap_e_rabreleaselistbearerrelcomp( + S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp, + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABReleaseListBearerRelComp != NULL); + assert(s1ap_E_RABReleaseListBearerRelCompIEs != NULL); + + for (i = 0; i < s1ap_E_RABReleaseListBearerRelCompIEs->s1ap_E_RABReleaseItemBearerRelComp.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABReleaseItemBearerRelComp, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, + s1ap_E_RABReleaseListBearerRelCompIEs->s1ap_E_RABReleaseItemBearerRelComp.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABReleaseListBearerRelComp->list, ie); + } + return 0; +} + int s1ap_encode_s1ap_e_rabtobesetuplisthoreq( S1ap_E_RABToBeSetupListHOReq_t *s1ap_E_RABToBeSetupListHOReq, S1ap_E_RABToBeSetupListHOReqIEs_t *s1ap_E_RABToBeSetupListHOReqIEs) { @@ -4248,6 +4066,28 @@ int s1ap_encode_s1ap_e_rabtobesetuplisthoreq( return 0; } +int s1ap_encode_s1ap_e_rabtobemodifiedlistbearermodreq( + S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq, + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABToBeModifiedListBearerModReq != NULL); + assert(s1ap_E_RABToBeModifiedListBearerModReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeModifiedListBearerModReqIEs->s1ap_E_RABToBeModifiedItemBearerModReq.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeModifiedItemBearerModReq, + S1ap_Criticality_reject, + &asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, + s1ap_E_RABToBeModifiedListBearerModReqIEs->s1ap_E_RABToBeModifiedItemBearerModReq.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeModifiedListBearerModReq->list, ie); + } + return 0; +} + int s1ap_encode_s1ap_e_rabadmittedlist( S1ap_E_RABAdmittedList_t *s1ap_E_RABAdmittedList, S1ap_E_RABAdmittedListIEs_t *s1ap_E_RABAdmittedListIEs) { @@ -4270,6 +4110,28 @@ int s1ap_encode_s1ap_e_rabadmittedlist( return 0; } +int s1ap_encode_s1ap_e_rabtobesetuplistbearersureq( + S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq, + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABToBeSetupListBearerSUReq != NULL); + assert(s1ap_E_RABToBeSetupListBearerSUReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeSetupListBearerSUReqIEs->s1ap_E_RABToBeSetupItemBearerSUReq.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemBearerSUReq, + S1ap_Criticality_reject, + &asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, + s1ap_E_RABToBeSetupListBearerSUReqIEs->s1ap_E_RABToBeSetupItemBearerSUReq.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListBearerSUReq->list, ie); + } + return 0; +} + int s1ap_encode_s1ap_e_rabdataforwardinglist( S1ap_E_RABDataForwardingList_t *s1ap_E_RABDataForwardingList, S1ap_E_RABDataForwardingListIEs_t *s1ap_E_RABDataForwardingListIEs) { @@ -4314,6 +4176,28 @@ int s1ap_encode_s1ap_e_rabtobeswitcheddllist( return 0; } +int s1ap_encode_s1ap_e_rabsetuplistctxtsures( + S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes, + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABSetupListCtxtSURes != NULL); + assert(s1ap_E_RABSetupListCtxtSUResIEs != NULL); + + for (i = 0; i < s1ap_E_RABSetupListCtxtSUResIEs->s1ap_E_RABSetupItemCtxtSURes.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABSetupItemCtxtSURes, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABSetupItemCtxtSURes, + s1ap_E_RABSetupListCtxtSUResIEs->s1ap_E_RABSetupItemCtxtSURes.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListCtxtSURes->list, ie); + } + return 0; +} + int s1ap_encode_s1ap_e_rabtobeswitchedullist( S1ap_E_RABToBeSwitchedULList_t *s1ap_E_RABToBeSwitchedULList, S1ap_E_RABToBeSwitchedULListIEs_t *s1ap_E_RABToBeSwitchedULListIEs) { @@ -4336,3 +4220,201 @@ int s1ap_encode_s1ap_e_rabtobeswitchedullist( return 0; } +int s1ap_encode_s1ap_bearers_subjecttostatustransfer_list( + S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List, + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_Bearers_SubjectToStatusTransfer_List != NULL); + assert(s1ap_Bearers_SubjectToStatusTransfer_ListIEs != NULL); + + for (i = 0; i < s1ap_Bearers_SubjectToStatusTransfer_ListIEs->s1ap_Bearers_SubjectToStatusTransfer_Item.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_Bearers_SubjectToStatusTransfer_Item, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, + s1ap_Bearers_SubjectToStatusTransfer_ListIEs->s1ap_Bearers_SubjectToStatusTransfer_Item.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_Bearers_SubjectToStatusTransfer_List->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_e_rablist( + S1ap_E_RABList_t *s1ap_E_RABList, + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABList != NULL); + assert(s1ap_E_RABListIEs != NULL); + + for (i = 0; i < s1ap_E_RABListIEs->s1ap_E_RABItem.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABItem, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABItem, + s1ap_E_RABListIEs->s1ap_E_RABItem.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABList->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_tailist( + S1ap_TAIList_t *s1ap_TAIList, + S1ap_TAIListIEs_t *s1ap_TAIListIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_TAIList != NULL); + assert(s1ap_TAIListIEs != NULL); + + for (i = 0; i < s1ap_TAIListIEs->s1ap_TAIItem.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_TAIItem, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_TAIItem, + s1ap_TAIListIEs->s1ap_TAIItem.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_TAIList->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_ue_associatedlogicals1_connectionlistres( + S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes, + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_UE_associatedLogicalS1_ConnectionListRes != NULL); + assert(s1ap_UE_associatedLogicalS1_ConnectionListResIEs != NULL); + + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListResIEs->s1ap_UE_associatedLogicalS1_ConnectionItemRes.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem, + S1ap_Criticality_reject, + &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, + s1ap_UE_associatedLogicalS1_ConnectionListResIEs->s1ap_UE_associatedLogicalS1_ConnectionItemRes.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListRes->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_e_rabsetuplistbearersures( + S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes, + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABSetupListBearerSURes != NULL); + assert(s1ap_E_RABSetupListBearerSUResIEs != NULL); + + for (i = 0; i < s1ap_E_RABSetupListBearerSUResIEs->s1ap_E_RABSetupItemBearerSURes.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABSetupItemBearerSURes, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABSetupItemBearerSURes, + s1ap_E_RABSetupListBearerSUResIEs->s1ap_E_RABSetupItemBearerSURes.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABSetupListBearerSURes->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_e_rabmodifylistbearermodres( + S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes, + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABModifyListBearerModRes != NULL); + assert(s1ap_E_RABModifyListBearerModResIEs != NULL); + + for (i = 0; i < s1ap_E_RABModifyListBearerModResIEs->s1ap_E_RABModifyItemBearerModRes.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABModifyItemBearerModRes, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABModifyItemBearerModRes, + s1ap_E_RABModifyListBearerModResIEs->s1ap_E_RABModifyItemBearerModRes.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABModifyListBearerModRes->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_e_rabtobesetuplistctxtsureq( + S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq, + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABToBeSetupListCtxtSUReq != NULL); + assert(s1ap_E_RABToBeSetupListCtxtSUReqIEs != NULL); + + for (i = 0; i < s1ap_E_RABToBeSetupListCtxtSUReqIEs->s1ap_E_RABToBeSetupItemCtxtSUReq.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABToBeSetupItemCtxtSUReq, + S1ap_Criticality_reject, + &asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, + s1ap_E_RABToBeSetupListCtxtSUReqIEs->s1ap_E_RABToBeSetupItemCtxtSUReq.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABToBeSetupListCtxtSUReq->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_e_rabinformationlist( + S1ap_E_RABInformationList_t *s1ap_E_RABInformationList, + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_E_RABInformationList != NULL); + assert(s1ap_E_RABInformationListIEs != NULL); + + for (i = 0; i < s1ap_E_RABInformationListIEs->s1ap_E_RABInformationList.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_E_RABInformationListItem, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_E_RABInformationListItem, + s1ap_E_RABInformationListIEs->s1ap_E_RABInformationList.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_E_RABInformationList->list, ie); + } + return 0; +} + +int s1ap_encode_s1ap_ue_associatedlogicals1_connectionlistresack( + S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck, + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs) { + + int i; + S1ap_IE_t *ie; + + assert(s1ap_UE_associatedLogicalS1_ConnectionListResAck != NULL); + assert(s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs != NULL); + + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs->s1ap_UE_associatedLogicalS1_ConnectionItemResAck.count; i++) { + if ((ie = s1ap_new_ie(S1ap_ProtocolIE_ID_id_UE_associatedLogicalS1_ConnectionItem, + S1ap_Criticality_ignore, + &asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, + s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs->s1ap_UE_associatedLogicalS1_ConnectionItemResAck.array[i])) == NULL) { + return -1; + } + ASN_SEQUENCE_ADD(&s1ap_UE_associatedLogicalS1_ConnectionListResAck->list, ie); + } + return 0; +} + diff --git a/lib/asn/s1ap_ies_defs.h b/lib/asn/s1ap_ies_defs.h index f43882315..7df686e75 100644 --- a/lib/asn/s1ap_ies_defs.h +++ b/lib/asn/s1ap_ies_defs.h @@ -30,7 +30,7 @@ /******************************************************************************* * This file had been created by asn1tostruct.py script v1.0.2 * Please do not modify this file but regenerate it via script. - * Created on: 2017-02-03 13:33:42.632772 by acetcom + * Created on: 2017-02-03 16:04:58.954200 by acetcom * from ['S1AP-PDU.asn'] ******************************************************************************/ #include "s1ap_common.h" @@ -45,14 +45,26 @@ typedef struct S1ap_E_RABFailedtoSetupListHOReqAckIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABFailedtoSetupItemHOReqAck_s) s1ap_E_RABFailedtoSetupItemHOReqAck; } S1ap_E_RABFailedtoSetupListHOReqAckIEs_t; +typedef struct S1ap_E_RABReleaseListBearerRelCompIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABReleaseItemBearerRelComp_s) s1ap_E_RABReleaseItemBearerRelComp; +} S1ap_E_RABReleaseListBearerRelCompIEs_t; + typedef struct S1ap_E_RABToBeSetupListHOReqIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABToBeSetupItemHOReq_s) s1ap_E_RABToBeSetupItemHOReq; } S1ap_E_RABToBeSetupListHOReqIEs_t; +typedef struct S1ap_E_RABToBeModifiedListBearerModReqIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABToBeModifiedItemBearerModReq_s) s1ap_E_RABToBeModifiedItemBearerModReq; +} S1ap_E_RABToBeModifiedListBearerModReqIEs_t; + typedef struct S1ap_E_RABAdmittedListIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABAdmittedItem_s) s1ap_E_RABAdmittedItem; } S1ap_E_RABAdmittedListIEs_t; +typedef struct S1ap_E_RABToBeSetupListBearerSUReqIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABToBeSetupItemBearerSUReq_s) s1ap_E_RABToBeSetupItemBearerSUReq; +} S1ap_E_RABToBeSetupListBearerSUReqIEs_t; + typedef struct S1ap_E_RABDataForwardingListIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABDataForwardingItem_s) s1ap_E_RABDataForwardingItem; } S1ap_E_RABDataForwardingListIEs_t; @@ -61,10 +73,50 @@ typedef struct S1ap_E_RABToBeSwitchedDLListIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABToBeSwitchedDLItem_s) s1ap_E_RABToBeSwitchedDLItem; } S1ap_E_RABToBeSwitchedDLListIEs_t; +typedef struct S1ap_E_RABSetupListCtxtSUResIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABSetupItemCtxtSURes_s) s1ap_E_RABSetupItemCtxtSURes; +} S1ap_E_RABSetupListCtxtSUResIEs_t; + typedef struct S1ap_E_RABToBeSwitchedULListIEs_s { A_SEQUENCE_OF(struct S1ap_E_RABToBeSwitchedULItem_s) s1ap_E_RABToBeSwitchedULItem; } S1ap_E_RABToBeSwitchedULListIEs_t; +typedef struct S1ap_Bearers_SubjectToStatusTransfer_ListIEs_s { + A_SEQUENCE_OF(struct S1ap_Bearers_SubjectToStatusTransfer_Item_s) s1ap_Bearers_SubjectToStatusTransfer_Item; +} S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t; + +typedef struct S1ap_E_RABListIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABItem_s) s1ap_E_RABItem; +} S1ap_E_RABListIEs_t; + +typedef struct S1ap_TAIListIEs_s { + A_SEQUENCE_OF(struct S1ap_TAIItem_s) s1ap_TAIItem; +} S1ap_TAIListIEs_t; + +typedef struct S1ap_UE_associatedLogicalS1_ConnectionListResIEs_s { + A_SEQUENCE_OF(struct S1ap_UE_associatedLogicalS1_ConnectionItemRes_s) s1ap_UE_associatedLogicalS1_ConnectionItemRes; +} S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t; + +typedef struct S1ap_E_RABSetupListBearerSUResIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABSetupItemBearerSURes_s) s1ap_E_RABSetupItemBearerSURes; +} S1ap_E_RABSetupListBearerSUResIEs_t; + +typedef struct S1ap_E_RABModifyListBearerModResIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABModifyItemBearerModRes_s) s1ap_E_RABModifyItemBearerModRes; +} S1ap_E_RABModifyListBearerModResIEs_t; + +typedef struct S1ap_E_RABToBeSetupListCtxtSUReqIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABToBeSetupItemCtxtSUReq_s) s1ap_E_RABToBeSetupItemCtxtSUReq; +} S1ap_E_RABToBeSetupListCtxtSUReqIEs_t; + +typedef struct S1ap_E_RABInformationListIEs_s { + A_SEQUENCE_OF(struct S1ap_E_RABInformationList_s) s1ap_E_RABInformationList; +} S1ap_E_RABInformationListIEs_t; + +typedef struct S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_s { + A_SEQUENCE_OF(struct S1ap_UE_associatedLogicalS1_ConnectionItemResAck_s) s1ap_UE_associatedLogicalS1_ConnectionItemResAck; +} S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t; + typedef struct S1ap_E_RABFailedtoSetupItemHOReqAckIEs_s { S1ap_E_RABFailedToSetupItemHOReqAck_t e_RABFailedtoSetupItemHOReqAck; } S1ap_E_RABFailedtoSetupItemHOReqAckIEs_t; @@ -91,8 +143,8 @@ typedef struct S1ap_E_RABReleaseResponseIEs_s { uint16_t presenceMask; S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; - S1ap_E_RABReleaseListBearerRelComp_t e_RABReleaseListBearerRelComp; ///< Optional field - S1ap_E_RABList_t e_RABFailedToReleaseList; ///< Optional field + S1ap_E_RABReleaseListBearerRelCompIEs_t e_RABReleaseListBearerRelComp; ///< Optional field + S1ap_E_RABListIEs_t e_RABFailedToReleaseList; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field } S1ap_E_RABReleaseResponseIEs_t; @@ -160,7 +212,7 @@ typedef struct S1ap_E_RABAdmittedItemIEs_s { #define S1AP_INITIALUEMESSAGE_IES_CSG_ID_PRESENT (1 << 1) #define S1AP_INITIALUEMESSAGE_IES_GUMMEI_ID_PRESENT (1 << 2) #define S1AP_INITIALUEMESSAGE_IES_CELLACCESSMODE_PRESENT (1 << 3) -#define S1AP_INITIALUEMESSAGE_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT (1 << 4) +#define S1AP_INITIALUEMESSAGE_IES_GW_TRANSPORTLAYERADDRESS_PRESENT (1 << 4) #define S1AP_INITIALUEMESSAGE_IES_RELAYNODE_INDICATOR_PRESENT (1 << 5) typedef struct S1ap_InitialUEMessage_IEs_s { @@ -174,7 +226,7 @@ typedef struct S1ap_InitialUEMessage_IEs_s { S1ap_CSG_Id_t csG_Id; ///< Optional field S1ap_GUMMEI_t gummei_id; ///< Optional field S1ap_CellAccessMode_t cellAccessMode; ///< Optional field - S1ap_TransportLayerAddress_t gW_S1ap_TransportLayerAddress; ///< Optional field + S1ap_TransportLayerAddress_t gW_TransportLayerAddress; ///< Optional field S1ap_RelayNode_Indicator_t relayNode_Indicator; ///< Optional field } S1ap_InitialUEMessage_IEs_t; @@ -247,7 +299,7 @@ typedef struct S1ap_InitialContextSetupRequestIEs_s { S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_UEAggregateMaximumBitrate_t uEaggregateMaximumBitrate; - S1ap_E_RABToBeSetupListCtxtSUReq_t e_RABToBeSetupListCtxtSUReq; + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t e_RABToBeSetupListCtxtSUReq; S1ap_UESecurityCapabilities_t ueSecurityCapabilities; S1ap_SecurityKey_t securityKey; S1ap_TraceActivation_t traceActivation; ///< Optional field @@ -271,7 +323,7 @@ typedef struct S1ap_LocationReportIEs_s { S1ap_RequestType_t requestType; } S1ap_LocationReportIEs_t; -#define S1AP_UPLINKNASTRANSPORT_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT (1 << 0) +#define S1AP_UPLINKNASTRANSPORT_IES_GW_TRANSPORTLAYERADDRESS_PRESENT (1 << 0) typedef struct S1ap_UplinkNASTransport_IEs_s { uint16_t presenceMask; @@ -280,7 +332,7 @@ typedef struct S1ap_UplinkNASTransport_IEs_s { S1ap_NAS_PDU_t nas_pdu; S1ap_EUTRAN_CGI_t eutran_cgi; S1ap_TAI_t tai; - S1ap_TransportLayerAddress_t gW_S1ap_TransportLayerAddress; ///< Optional field + S1ap_TransportLayerAddress_t gW_TransportLayerAddress; ///< Optional field } S1ap_UplinkNASTransport_IEs_t; #define S1AP_UECONTEXTMODIFICATIONRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT (1 << 0) @@ -441,7 +493,7 @@ typedef struct S1ap_E_RABModifyRequestIEs_s { S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_UEAggregateMaximumBitrate_t uEaggregateMaximumBitrate; ///< Optional field - S1ap_E_RABToBeModifiedListBearerModReq_t e_RABToBeModifiedListBearerModReq; + S1ap_E_RABToBeModifiedListBearerModReqIEs_t e_RABToBeModifiedListBearerModReq; } S1ap_E_RABModifyRequestIEs_t; typedef struct S1ap_E_RABSetupItemCtxtSUResIEs_s { @@ -498,7 +550,7 @@ typedef struct S1ap_PagingIEs_s { S1ap_UEPagingID_t uePagingID; S1ap_PagingDRX_t pagingDRX; ///< Optional field S1ap_CNDomain_t cnDomain; - S1ap_TAIList_t taiList; + S1ap_TAIListIEs_t taiList; S1ap_CSG_IdList_t csG_IdList; ///< Optional field S1ap_PagingPriority_t pagingPriority; ///< Optional field } S1ap_PagingIEs_t; @@ -518,7 +570,7 @@ typedef struct S1ap_E_RABReleaseCommandIEs_s { S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_UEAggregateMaximumBitrate_t uEaggregateMaximumBitrate; ///< Optional field - S1ap_E_RABList_t e_RABToBeReleasedList; + S1ap_E_RABListIEs_t e_RABToBeReleasedList; S1ap_NAS_PDU_t nas_pdu; ///< Optional field } S1ap_E_RABReleaseCommandIEs_t; @@ -540,8 +592,8 @@ typedef struct S1ap_E_RABModifyResponseIEs_s { uint16_t presenceMask; S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; - S1ap_E_RABModifyListBearerModRes_t e_RABModifyListBearerModRes; ///< Optional field - S1ap_E_RABList_t e_RABFailedToModifyList; ///< Optional field + S1ap_E_RABModifyListBearerModResIEs_t e_RABModifyListBearerModRes; ///< Optional field + S1ap_E_RABListIEs_t e_RABFailedToModifyList; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field } S1ap_E_RABModifyResponseIEs_t; @@ -582,7 +634,7 @@ typedef struct S1ap_HandoverCommandIEs_s { S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_HandoverType_t handoverType; S1ap_E_RABDataForwardingListIEs_t e_RABDataForwardingList; ///< Optional field - S1ap_E_RABList_t e_RABtoReleaseListHOCmd; ///< Optional field + S1ap_E_RABListIEs_t e_RABtoReleaseListHOCmd; ///< Optional field S1ap_Target_ToSource_TransparentContainer_t target_ToSource_TransparentContainer; S1ap_Target_ToSource_TransparentContainer_t target_ToSource_TransparentContainer_Secondary; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field @@ -675,7 +727,7 @@ typedef struct S1ap_PathSwitchRequestAcknowledgeIEs_s { S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_UEAggregateMaximumBitrate_t uEaggregateMaximumBitrate; ///< Optional field S1ap_E_RABToBeSwitchedULListIEs_t e_RABToBeSwitchedULList; ///< Optional field - S1ap_E_RABList_t e_RABToBeReleasedList; ///< Optional field + S1ap_E_RABListIEs_t e_RABToBeReleasedList; ///< Optional field S1ap_SecurityContext_t securityContext; S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id_2; ///< Optional field @@ -712,8 +764,8 @@ typedef struct S1ap_InitialContextSetupResponseIEs_s { uint16_t presenceMask; S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; - S1ap_E_RABSetupListCtxtSURes_t e_RABSetupListCtxtSURes; - S1ap_E_RABList_t e_RABFailedToSetupListCtxtSURes; ///< Optional field + S1ap_E_RABSetupListCtxtSUResIEs_t e_RABSetupListCtxtSURes; + S1ap_E_RABListIEs_t e_RABFailedToSetupListCtxtSURes; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field } S1ap_InitialContextSetupResponseIEs_t; @@ -769,9 +821,11 @@ typedef struct S1ap_TraceFailureIndicationIEs_s { S1ap_Cause_t cause; } S1ap_TraceFailureIndicationIEs_t; +#if 0 /* modified by acetcom */ typedef struct S1ap_E_RABInformationListIEs_s { S1ap_E_RABInformationListItem_t e_RABInformationListItem; } S1ap_E_RABInformationListIEs_t; +#endif #define S1AP_ENBCONFIGURATIONTRANSFERIES_SONCONFIGURATIONTRANSFERECT_PRESENT (1 << 0) @@ -801,8 +855,8 @@ typedef struct S1ap_E_RABSetupResponseIEs_s { uint16_t presenceMask; S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; - S1ap_E_RABSetupListBearerSURes_t e_RABSetupListBearerSURes; ///< Optional field - S1ap_E_RABList_t e_RABFailedToSetupListBearerSURes; ///< Optional field + S1ap_E_RABSetupListBearerSUResIEs_t e_RABSetupListBearerSURes; ///< Optional field + S1ap_E_RABListIEs_t e_RABFailedToSetupListBearerSURes; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field } S1ap_E_RABSetupResponseIEs_t; @@ -813,7 +867,7 @@ typedef struct S1ap_UEContextReleaseCommand_IEs_s { #define S1AP_PATHSWITCHREQUESTIES_CSG_ID_PRESENT (1 << 0) #define S1AP_PATHSWITCHREQUESTIES_CELLACCESSMODE_PRESENT (1 << 1) -#define S1AP_PATHSWITCHREQUESTIES_SOURCEMME_S1AP_GUMMEI_PRESENT (1 << 2) +#define S1AP_PATHSWITCHREQUESTIES_SOURCEMME_GUMMEI_PRESENT (1 << 2) typedef struct S1ap_PathSwitchRequestIEs_s { uint16_t presenceMask; @@ -825,7 +879,7 @@ typedef struct S1ap_PathSwitchRequestIEs_s { S1ap_UESecurityCapabilities_t ueSecurityCapabilities; S1ap_CSG_Id_t csG_Id; ///< Optional field S1ap_CellAccessMode_t cellAccessMode; ///< Optional field - S1ap_GUMMEI_t sourceMME_S1ap_GUMMEI; ///< Optional field + S1ap_GUMMEI_t sourceMME_GUMMEI; ///< Optional field } S1ap_PathSwitchRequestIEs_t; #define S1AP_DOWNLINKNASTRANSPORT_IES_HANDOVERRESTRICTIONLIST_PRESENT (1 << 0) @@ -843,7 +897,7 @@ typedef struct S1ap_DownlinkNASTransport_IEs_s { typedef struct S1ap_E_RABReleaseIndicationIEs_s { S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; - S1ap_E_RABList_t e_RABReleasedList; + S1ap_E_RABListIEs_t e_RABReleasedList; } S1ap_E_RABReleaseIndicationIEs_t; #define S1AP_S1SETUPREQUESTIES_ENBNAME_PRESENT (1 << 0) @@ -884,7 +938,7 @@ typedef struct S1ap_E_RABSetupRequestIEs_s { S1ap_MME_UE_S1AP_ID_t mme_ue_s1ap_id; S1ap_ENB_UE_S1AP_ID_t eNB_UE_S1AP_ID; S1ap_UEAggregateMaximumBitrate_t uEaggregateMaximumBitrate; ///< Optional field - S1ap_E_RABToBeSetupListBearerSUReq_t e_RABToBeSetupListBearerSUReq; + S1ap_E_RABToBeSetupListBearerSUReqIEs_t e_RABToBeSetupListBearerSUReq; } S1ap_E_RABSetupRequestIEs_t; typedef struct S1ap_ENBStatusTransferIEs_s { @@ -898,7 +952,7 @@ typedef struct S1ap_ENBStatusTransferIEs_s { typedef struct S1ap_ResetAcknowledgeIEs_s { uint16_t presenceMask; - S1ap_UE_associatedLogicalS1_ConnectionListResAck_t uE_associatedLogicalS1_ConnectionListResAck; ///< Optional field + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t uE_associatedLogicalS1_ConnectionListResAck; ///< Optional field S1ap_CriticalityDiagnostics_t criticalityDiagnostics; ///< Optional field } S1ap_ResetAcknowledgeIEs_t; @@ -923,29 +977,19 @@ typedef struct s1ap_message_s { S1ap_Criticality_t criticality; uint8_t direction; union { - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t s1ap_Bearers_SubjectToStatusTransfer_ItemIEs; S1ap_CellTrafficTraceIEs_t s1ap_CellTrafficTraceIEs; S1ap_DeactivateTraceIEs_t s1ap_DeactivateTraceIEs; S1ap_DownlinkNASTransport_IEs_t s1ap_DownlinkNASTransport_IEs; S1ap_DownlinkNonUEAssociatedLPPaTransport_IEs_t s1ap_DownlinkNonUEAssociatedLPPaTransport_IEs; S1ap_DownlinkS1cdma2000tunnelingIEs_t s1ap_DownlinkS1cdma2000tunnelingIEs; S1ap_DownlinkUEAssociatedLPPaTransport_IEs_t s1ap_DownlinkUEAssociatedLPPaTransport_IEs; - S1ap_E_RABInformationListIEs_t s1ap_E_RABInformationListIEs; - S1ap_E_RABItemIEs_t s1ap_E_RABItemIEs; - S1ap_E_RABModifyItemBearerModResIEs_t s1ap_E_RABModifyItemBearerModResIEs; S1ap_E_RABModifyRequestIEs_t s1ap_E_RABModifyRequestIEs; S1ap_E_RABModifyResponseIEs_t s1ap_E_RABModifyResponseIEs; S1ap_E_RABReleaseCommandIEs_t s1ap_E_RABReleaseCommandIEs; S1ap_E_RABReleaseIndicationIEs_t s1ap_E_RABReleaseIndicationIEs; - S1ap_E_RABReleaseItemBearerRelCompIEs_t s1ap_E_RABReleaseItemBearerRelCompIEs; S1ap_E_RABReleaseResponseIEs_t s1ap_E_RABReleaseResponseIEs; - S1ap_E_RABSetupItemBearerSUResIEs_t s1ap_E_RABSetupItemBearerSUResIEs; - S1ap_E_RABSetupItemCtxtSUResIEs_t s1ap_E_RABSetupItemCtxtSUResIEs; S1ap_E_RABSetupRequestIEs_t s1ap_E_RABSetupRequestIEs; S1ap_E_RABSetupResponseIEs_t s1ap_E_RABSetupResponseIEs; - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t s1ap_E_RABToBeModifiedItemBearerModReqIEs; - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t s1ap_E_RABToBeSetupItemBearerSUReqIEs; - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t s1ap_E_RABToBeSetupItemCtxtSUReqIEs; S1ap_ENBConfigurationTransferIEs_t s1ap_ENBConfigurationTransferIEs; S1ap_ENBConfigurationUpdateAcknowledgeIEs_t s1ap_ENBConfigurationUpdateAcknowledgeIEs; S1ap_ENBConfigurationUpdateFailureIEs_t s1ap_ENBConfigurationUpdateFailureIEs; @@ -989,11 +1033,8 @@ typedef struct s1ap_message_s { S1ap_S1SetupFailureIEs_t s1ap_S1SetupFailureIEs; S1ap_S1SetupRequestIEs_t s1ap_S1SetupRequestIEs; S1ap_S1SetupResponseIEs_t s1ap_S1SetupResponseIEs; - S1ap_TAIItemIEs_t s1ap_TAIItemIEs; S1ap_TraceFailureIndicationIEs_t s1ap_TraceFailureIndicationIEs; S1ap_TraceStartIEs_t s1ap_TraceStartIEs; - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t s1ap_UE_associatedLogicalS1_ConnectionItemRes; - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t s1ap_UE_associatedLogicalS1_ConnectionItemResAck; S1ap_UECapabilityInfoIndicationIEs_t s1ap_UECapabilityInfoIndicationIEs; S1ap_UEContextModificationFailureIEs_t s1ap_UEContextModificationFailureIEs; S1ap_UEContextModificationRequestIEs_t s1ap_UEContextModificationRequestIEs; @@ -1026,22 +1067,6 @@ int s1ap_encode_s1ap_deactivatetraceies( S1ap_DeactivateTrace_t *s1ap_DeactivateTrace, S1ap_DeactivateTraceIEs_t *s1ap_DeactivateTraceIEs); -/** \brief Decode function for S1ap-E-RABReleaseItemBearerRelCompIEs ies. - * \param s1ap_E_RABReleaseItemBearerRelCompIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabreleaseitembearerrelcompies( - S1ap_E_RABReleaseItemBearerRelCompIEs_t *s1ap_E_RABReleaseItemBearerRelCompIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABReleaseItemBearerRelCompIEs ies. - * \param s1ap_E_RABReleaseListBearerRelComp Pointer to the ASN1 structure. - * \param s1ap_E_RABReleaseItemBearerRelCompIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabreleaseitembearerrelcompies( - S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp, - S1ap_E_RABReleaseItemBearerRelCompIEs_t *s1ap_E_RABReleaseItemBearerRelCompIEs); - /** \brief Decode function for S1ap-ENBDirectInformationTransferIEs ies. * \param s1ap_ENBDirectInformationTransferIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1154,22 +1179,6 @@ int s1ap_encode_s1ap_handoverpreparationfailureies( S1ap_HandoverPreparationFailure_t *s1ap_HandoverPreparationFailure, S1ap_HandoverPreparationFailureIEs_t *s1ap_HandoverPreparationFailureIEs); -/** \brief Decode function for S1ap-E-RABToBeModifiedItemBearerModReqIEs ies. - * \param s1ap_E_RABToBeModifiedItemBearerModReqIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabtobemodifieditembearermodreqies( - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t *s1ap_E_RABToBeModifiedItemBearerModReqIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABToBeModifiedItemBearerModReqIEs ies. - * \param s1ap_E_RABToBeModifiedListBearerModReq Pointer to the ASN1 structure. - * \param s1ap_E_RABToBeModifiedItemBearerModReqIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabtobemodifieditembearermodreqies( - S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq, - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t *s1ap_E_RABToBeModifiedItemBearerModReqIEs); - /** \brief Decode function for S1ap-UEContextReleaseRequest-IEs ies. * \param s1ap_UEContextReleaseRequest_IEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1250,22 +1259,6 @@ int s1ap_encode_s1ap_uecapabilityinfoindicationies( S1ap_UECapabilityInfoIndication_t *s1ap_UECapabilityInfoIndication, S1ap_UECapabilityInfoIndicationIEs_t *s1ap_UECapabilityInfoIndicationIEs); -/** \brief Decode function for S1ap-E-RABToBeSetupItemBearerSUReqIEs ies. - * \param s1ap_E_RABToBeSetupItemBearerSUReqIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabtobesetupitembearersureqies( - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t *s1ap_E_RABToBeSetupItemBearerSUReqIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABToBeSetupItemBearerSUReqIEs ies. - * \param s1ap_E_RABToBeSetupListBearerSUReq Pointer to the ASN1 structure. - * \param s1ap_E_RABToBeSetupItemBearerSUReqIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabtobesetupitembearersureqies( - S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq, - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t *s1ap_E_RABToBeSetupItemBearerSUReqIEs); - /** \brief Decode function for S1ap-LocationReportingFailureIndicationIEs ies. * \param s1ap_LocationReportingFailureIndicationIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1506,22 +1499,6 @@ int s1ap_encode_s1ap_e_rabmodifyrequesties( S1ap_E_RABModifyRequest_t *s1ap_E_RABModifyRequest, S1ap_E_RABModifyRequestIEs_t *s1ap_E_RABModifyRequestIEs); -/** \brief Decode function for S1ap-E-RABSetupItemCtxtSUResIEs ies. - * \param s1ap_E_RABSetupItemCtxtSUResIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabsetupitemctxtsuresies( - S1ap_E_RABSetupItemCtxtSUResIEs_t *s1ap_E_RABSetupItemCtxtSUResIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABSetupItemCtxtSUResIEs ies. - * \param s1ap_E_RABSetupListCtxtSURes Pointer to the ASN1 structure. - * \param s1ap_E_RABSetupItemCtxtSUResIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabsetupitemctxtsuresies( - S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes, - S1ap_E_RABSetupItemCtxtSUResIEs_t *s1ap_E_RABSetupItemCtxtSUResIEs); - /** \brief Decode function for S1ap-ENBConfigurationUpdateFailureIEs ies. * \param s1ap_ENBConfigurationUpdateFailureIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1554,38 +1531,6 @@ int s1ap_encode_s1ap_reseties( S1ap_Reset_t *s1ap_Reset, S1ap_ResetIEs_t *s1ap_ResetIEs); -/** \brief Decode function for S1ap-Bearers-SubjectToStatusTransfer-ItemIEs ies. - * \param s1ap_Bearers_SubjectToStatusTransfer_ItemIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_bearers_subjecttostatustransfer_itemies( - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ItemIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-Bearers-SubjectToStatusTransfer-ItemIEs ies. - * \param s1ap_Bearers_SubjectToStatusTransfer_List Pointer to the ASN1 structure. - * \param s1ap_Bearers_SubjectToStatusTransfer_ItemIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_bearers_subjecttostatustransfer_itemies( - S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List, - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ItemIEs); - -/** \brief Decode function for S1ap-E-RABItemIEs ies. - * \param s1ap_E_RABItemIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabitemies( - S1ap_E_RABItemIEs_t *s1ap_E_RABItemIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABItemIEs ies. - * \param s1ap_E_RABList Pointer to the ASN1 structure. - * \param s1ap_E_RABItemIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabitemies( - S1ap_E_RABList_t *s1ap_E_RABList, - S1ap_E_RABItemIEs_t *s1ap_E_RABItemIEs); - /** \brief Decode function for S1ap-S1SetupResponseIEs ies. * \param s1ap_S1SetupResponseIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1778,22 +1723,6 @@ int s1ap_encode_s1ap_errorindicationies( S1ap_ErrorIndication_t *s1ap_ErrorIndication, S1ap_ErrorIndicationIEs_t *s1ap_ErrorIndicationIEs); -/** \brief Decode function for S1ap-TAIItemIEs ies. - * \param s1ap_TAIItemIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_taiitemies( - S1ap_TAIItemIEs_t *s1ap_TAIItemIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-TAIItemIEs ies. - * \param s1ap_TAIList Pointer to the ASN1 structure. - * \param s1ap_TAIItemIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_taiitemies( - S1ap_TAIList_t *s1ap_TAIList, - S1ap_TAIItemIEs_t *s1ap_TAIItemIEs); - /** \brief Decode function for S1ap-OverloadStartIEs ies. * \param s1ap_OverloadStartIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -1906,22 +1835,6 @@ int s1ap_encode_s1ap_pathswitchrequestacknowledgeies( S1ap_PathSwitchRequestAcknowledge_t *s1ap_PathSwitchRequestAcknowledge, S1ap_PathSwitchRequestAcknowledgeIEs_t *s1ap_PathSwitchRequestAcknowledgeIEs); -/** \brief Decode function for S1ap-UE-associatedLogicalS1-ConnectionItemRes ies. - * \param s1ap_UE_associatedLogicalS1_ConnectionItemRes Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_ue_associatedlogicals1_connectionitemres( - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t *s1ap_UE_associatedLogicalS1_ConnectionItemRes, - ANY_t *any_p); - -/** \brief Encode function for S1ap-UE-associatedLogicalS1-ConnectionItemRes ies. - * \param s1ap_UE_associatedLogicalS1_ConnectionListRes Pointer to the ASN1 structure. - * \param s1ap_UE_associatedLogicalS1_ConnectionItemRes Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_ue_associatedlogicals1_connectionitemres( - S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes, - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t *s1ap_UE_associatedLogicalS1_ConnectionItemRes); - /** \brief Decode function for S1ap-S1SetupFailureIEs ies. * \param s1ap_S1SetupFailureIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -2002,54 +1915,6 @@ int s1ap_encode_s1ap_overloadstopies( S1ap_OverloadStop_t *s1ap_OverloadStop, S1ap_OverloadStopIEs_t *s1ap_OverloadStopIEs); -/** \brief Decode function for S1ap-E-RABSetupItemBearerSUResIEs ies. - * \param s1ap_E_RABSetupItemBearerSUResIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabsetupitembearersuresies( - S1ap_E_RABSetupItemBearerSUResIEs_t *s1ap_E_RABSetupItemBearerSUResIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABSetupItemBearerSUResIEs ies. - * \param s1ap_E_RABSetupListBearerSURes Pointer to the ASN1 structure. - * \param s1ap_E_RABSetupItemBearerSUResIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabsetupitembearersuresies( - S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes, - S1ap_E_RABSetupItemBearerSUResIEs_t *s1ap_E_RABSetupItemBearerSUResIEs); - -/** \brief Decode function for S1ap-E-RABModifyItemBearerModResIEs ies. - * \param s1ap_E_RABModifyItemBearerModResIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabmodifyitembearermodresies( - S1ap_E_RABModifyItemBearerModResIEs_t *s1ap_E_RABModifyItemBearerModResIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABModifyItemBearerModResIEs ies. - * \param s1ap_E_RABModifyListBearerModRes Pointer to the ASN1 structure. - * \param s1ap_E_RABModifyItemBearerModResIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabmodifyitembearermodresies( - S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes, - S1ap_E_RABModifyItemBearerModResIEs_t *s1ap_E_RABModifyItemBearerModResIEs); - -/** \brief Decode function for S1ap-E-RABToBeSetupItemCtxtSUReqIEs ies. - * \param s1ap_E_RABToBeSetupItemCtxtSUReqIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabtobesetupitemctxtsureqies( - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t *s1ap_E_RABToBeSetupItemCtxtSUReqIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABToBeSetupItemCtxtSUReqIEs ies. - * \param s1ap_E_RABToBeSetupListCtxtSUReq Pointer to the ASN1 structure. - * \param s1ap_E_RABToBeSetupItemCtxtSUReqIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabtobesetupitemctxtsureqies( - S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq, - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t *s1ap_E_RABToBeSetupItemCtxtSUReqIEs); - /** \brief Decode function for S1ap-ENBConfigurationUpdateIEs ies. * \param s1ap_ENBConfigurationUpdateIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -2082,22 +1947,6 @@ int s1ap_encode_s1ap_tracefailureindicationies( S1ap_TraceFailureIndication_t *s1ap_TraceFailureIndication, S1ap_TraceFailureIndicationIEs_t *s1ap_TraceFailureIndicationIEs); -/** \brief Decode function for S1ap-E-RABInformationListIEs ies. - * \param s1ap_E_RABInformationListIEs Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_e_rabinformationlisties( - S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs, - ANY_t *any_p); - -/** \brief Encode function for S1ap-E-RABInformationListIEs ies. - * \param s1ap_E_RABInformationList Pointer to the ASN1 structure. - * \param s1ap_E_RABInformationListIEs Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_e_rabinformationlisties( - S1ap_E_RABInformationList_t *s1ap_E_RABInformationList, - S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs); - /** \brief Decode function for S1ap-ENBConfigurationTransferIEs ies. * \param s1ap_ENBConfigurationTransferIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -2130,22 +1979,6 @@ int s1ap_encode_s1ap_handoverfailureies( S1ap_HandoverFailure_t *s1ap_HandoverFailure, S1ap_HandoverFailureIEs_t *s1ap_HandoverFailureIEs); -/** \brief Decode function for S1ap-UE-associatedLogicalS1-ConnectionItemResAck ies. - * \param s1ap_UE_associatedLogicalS1_ConnectionItemResAck Pointer to ASN1 structure in which data will be stored - * \param any_p Pointer to the ANY value to decode. - **/ -int s1ap_decode_s1ap_ue_associatedlogicals1_connectionitemresack( - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t *s1ap_UE_associatedLogicalS1_ConnectionItemResAck, - ANY_t *any_p); - -/** \brief Encode function for S1ap-UE-associatedLogicalS1-ConnectionItemResAck ies. - * \param s1ap_UE_associatedLogicalS1_ConnectionListResAck Pointer to the ASN1 structure. - * \param s1ap_UE_associatedLogicalS1_ConnectionItemResAck Pointer to the IES structure. - **/ -int s1ap_encode_s1ap_ue_associatedlogicals1_connectionitemresack( - S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck, - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t *s1ap_UE_associatedLogicalS1_ConnectionItemResAck); - /** \brief Decode function for S1ap-E-RABSetupResponseIEs ies. * \param s1ap_E_RABSetupResponseIEs Pointer to ASN1 structure in which data will be stored * \param any_p Pointer to the ANY value to decode. @@ -2370,6 +2203,22 @@ int s1ap_decode_s1ap_e_rabfailedtosetuplisthoreqack( S1ap_E_RABFailedtoSetupListHOReqAckIEs_t *s1ap_E_RABFailedtoSetupListHOReqAckIEs, S1ap_E_RABFailedtoSetupListHOReqAck_t *s1ap_E_RABFailedtoSetupListHOReqAck); +/** \brief Encode function for S1ap-E-RABReleaseItemBearerRelCompIEs ies. + * \param s1ap_E_RABReleaseListBearerRelComp Pointer to the ASN1 structure. + * \param s1ap_E_RABReleaseItemBearerRelCompIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabreleaselistbearerrelcomp( + S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp, + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs); + +/** \brief Decode function for S1ap-E-RABReleaseItemBearerRelCompIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabreleaselistbearerrelcomp( + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs, + S1ap_E_RABReleaseListBearerRelComp_t *s1ap_E_RABReleaseListBearerRelComp); + /** \brief Encode function for S1ap-E-RABToBeSetupItemHOReqIEs ies. * \param s1ap_E_RABToBeSetupListHOReq Pointer to the ASN1 structure. * \param s1ap_E_RABToBeSetupItemHOReqIEs Pointer to the IES structure. @@ -2386,6 +2235,22 @@ int s1ap_decode_s1ap_e_rabtobesetuplisthoreq( S1ap_E_RABToBeSetupListHOReqIEs_t *s1ap_E_RABToBeSetupListHOReqIEs, S1ap_E_RABToBeSetupListHOReq_t *s1ap_E_RABToBeSetupListHOReq); +/** \brief Encode function for S1ap-E-RABToBeModifiedItemBearerModReqIEs ies. + * \param s1ap_E_RABToBeModifiedListBearerModReq Pointer to the ASN1 structure. + * \param s1ap_E_RABToBeModifiedItemBearerModReqIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabtobemodifiedlistbearermodreq( + S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq, + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs); + +/** \brief Decode function for S1ap-E-RABToBeModifiedItemBearerModReqIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabtobemodifiedlistbearermodreq( + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs, + S1ap_E_RABToBeModifiedListBearerModReq_t *s1ap_E_RABToBeModifiedListBearerModReq); + /** \brief Encode function for S1ap-E-RABAdmittedItemIEs ies. * \param s1ap_E_RABAdmittedList Pointer to the ASN1 structure. * \param s1ap_E_RABAdmittedItemIEs Pointer to the IES structure. @@ -2402,6 +2267,22 @@ int s1ap_decode_s1ap_e_rabadmittedlist( S1ap_E_RABAdmittedListIEs_t *s1ap_E_RABAdmittedListIEs, S1ap_E_RABAdmittedList_t *s1ap_E_RABAdmittedList); +/** \brief Encode function for S1ap-E-RABToBeSetupItemBearerSUReqIEs ies. + * \param s1ap_E_RABToBeSetupListBearerSUReq Pointer to the ASN1 structure. + * \param s1ap_E_RABToBeSetupItemBearerSUReqIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabtobesetuplistbearersureq( + S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq, + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs); + +/** \brief Decode function for S1ap-E-RABToBeSetupItemBearerSUReqIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabtobesetuplistbearersureq( + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs, + S1ap_E_RABToBeSetupListBearerSUReq_t *s1ap_E_RABToBeSetupListBearerSUReq); + /** \brief Encode function for S1ap-E-RABDataForwardingItemIEs ies. * \param s1ap_E_RABDataForwardingList Pointer to the ASN1 structure. * \param s1ap_E_RABDataForwardingItemIEs Pointer to the IES structure. @@ -2434,6 +2315,22 @@ int s1ap_decode_s1ap_e_rabtobeswitcheddllist( S1ap_E_RABToBeSwitchedDLListIEs_t *s1ap_E_RABToBeSwitchedDLListIEs, S1ap_E_RABToBeSwitchedDLList_t *s1ap_E_RABToBeSwitchedDLList); +/** \brief Encode function for S1ap-E-RABSetupItemCtxtSUResIEs ies. + * \param s1ap_E_RABSetupListCtxtSURes Pointer to the ASN1 structure. + * \param s1ap_E_RABSetupItemCtxtSUResIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabsetuplistctxtsures( + S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes, + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs); + +/** \brief Decode function for S1ap-E-RABSetupItemCtxtSUResIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabsetuplistctxtsures( + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs, + S1ap_E_RABSetupListCtxtSURes_t *s1ap_E_RABSetupListCtxtSURes); + /** \brief Encode function for S1ap-E-RABToBeSwitchedULItemIEs ies. * \param s1ap_E_RABToBeSwitchedULList Pointer to the ASN1 structure. * \param s1ap_E_RABToBeSwitchedULItemIEs Pointer to the IES structure. @@ -2450,6 +2347,150 @@ int s1ap_decode_s1ap_e_rabtobeswitchedullist( S1ap_E_RABToBeSwitchedULListIEs_t *s1ap_E_RABToBeSwitchedULListIEs, S1ap_E_RABToBeSwitchedULList_t *s1ap_E_RABToBeSwitchedULList); +/** \brief Encode function for S1ap-Bearers-SubjectToStatusTransfer-ItemIEs ies. + * \param s1ap_Bearers_SubjectToStatusTransfer_List Pointer to the ASN1 structure. + * \param s1ap_Bearers_SubjectToStatusTransfer_ItemIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_bearers_subjecttostatustransfer_list( + S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List, + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs); + +/** \brief Decode function for S1ap-Bearers-SubjectToStatusTransfer-ItemIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_bearers_subjecttostatustransfer_list( + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs, + S1ap_Bearers_SubjectToStatusTransfer_List_t *s1ap_Bearers_SubjectToStatusTransfer_List); + +/** \brief Encode function for S1ap-E-RABItemIEs ies. + * \param s1ap_E_RABList Pointer to the ASN1 structure. + * \param s1ap_E_RABItemIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rablist( + S1ap_E_RABList_t *s1ap_E_RABList, + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs); + +/** \brief Decode function for S1ap-E-RABItemIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rablist( + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs, + S1ap_E_RABList_t *s1ap_E_RABList); + +/** \brief Encode function for S1ap-TAIItemIEs ies. + * \param s1ap_TAIList Pointer to the ASN1 structure. + * \param s1ap_TAIItemIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_tailist( + S1ap_TAIList_t *s1ap_TAIList, + S1ap_TAIListIEs_t *s1ap_TAIListIEs); + +/** \brief Decode function for S1ap-TAIItemIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_tailist( + S1ap_TAIListIEs_t *s1ap_TAIListIEs, + S1ap_TAIList_t *s1ap_TAIList); + +/** \brief Encode function for S1ap-UE-associatedLogicalS1-ConnectionItemRes ies. + * \param s1ap_UE_associatedLogicalS1_ConnectionListRes Pointer to the ASN1 structure. + * \param s1ap_UE_associatedLogicalS1_ConnectionItemRes Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_ue_associatedlogicals1_connectionlistres( + S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes, + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResIEs); + +/** \brief Decode function for S1ap-UE-associatedLogicalS1-ConnectionItemRes ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_ue_associatedlogicals1_connectionlistres( + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResIEs, + S1ap_UE_associatedLogicalS1_ConnectionListRes_t *s1ap_UE_associatedLogicalS1_ConnectionListRes); + +/** \brief Encode function for S1ap-E-RABSetupItemBearerSUResIEs ies. + * \param s1ap_E_RABSetupListBearerSURes Pointer to the ASN1 structure. + * \param s1ap_E_RABSetupItemBearerSUResIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabsetuplistbearersures( + S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes, + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs); + +/** \brief Decode function for S1ap-E-RABSetupItemBearerSUResIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabsetuplistbearersures( + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs, + S1ap_E_RABSetupListBearerSURes_t *s1ap_E_RABSetupListBearerSURes); + +/** \brief Encode function for S1ap-E-RABModifyItemBearerModResIEs ies. + * \param s1ap_E_RABModifyListBearerModRes Pointer to the ASN1 structure. + * \param s1ap_E_RABModifyItemBearerModResIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabmodifylistbearermodres( + S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes, + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs); + +/** \brief Decode function for S1ap-E-RABModifyItemBearerModResIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabmodifylistbearermodres( + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs, + S1ap_E_RABModifyListBearerModRes_t *s1ap_E_RABModifyListBearerModRes); + +/** \brief Encode function for S1ap-E-RABToBeSetupItemCtxtSUReqIEs ies. + * \param s1ap_E_RABToBeSetupListCtxtSUReq Pointer to the ASN1 structure. + * \param s1ap_E_RABToBeSetupItemCtxtSUReqIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabtobesetuplistctxtsureq( + S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq, + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs); + +/** \brief Decode function for S1ap-E-RABToBeSetupItemCtxtSUReqIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabtobesetuplistctxtsureq( + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs, + S1ap_E_RABToBeSetupListCtxtSUReq_t *s1ap_E_RABToBeSetupListCtxtSUReq); + +/** \brief Encode function for S1ap-E-RABInformationListIEs ies. + * \param s1ap_E_RABInformationList Pointer to the ASN1 structure. + * \param s1ap_E_RABInformationListIEs Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_e_rabinformationlist( + S1ap_E_RABInformationList_t *s1ap_E_RABInformationList, + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs); + +/** \brief Decode function for S1ap-E-RABInformationListIEs ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_e_rabinformationlist( + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs, + S1ap_E_RABInformationList_t *s1ap_E_RABInformationList); + +/** \brief Encode function for S1ap-UE-associatedLogicalS1-ConnectionItemResAck ies. + * \param s1ap_UE_associatedLogicalS1_ConnectionListResAck Pointer to the ASN1 structure. + * \param s1ap_UE_associatedLogicalS1_ConnectionItemResAck Pointer to the IES structure. + **/ +int s1ap_encode_s1ap_ue_associatedlogicals1_connectionlistresack( + S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck, + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs); + +/** \brief Decode function for S1ap-UE-associatedLogicalS1-ConnectionItemResAck ies. + * \param any_p Pointer to the ANY value to decode. + * \param callback Callback function called when any_p is successfully decoded. + **/ +int s1ap_decode_s1ap_ue_associatedlogicals1_connectionlistresack( + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs, + S1ap_UE_associatedLogicalS1_ConnectionListResAck_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck); + /** \brief Display S1ap_E_RABFailedtoSetupListHOReqAck encapsulated IE using XER encoding. * \param s1ap_E_RABFailedtoSetupItemHOReqAckIEs Pointer to the IES structure. * \param file File descriptor to write output. @@ -2468,14 +2509,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_deactivatetrace( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABReleaseListBearerRelComp message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABReleaseListBearerRelComp encapsulated IE using XER encoding. + * \param s1ap_E_RABReleaseItemBearerRelCompIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaselistbearerrelcomp( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs); /** \brief Display S1ap_ENBDirectInformationTransfer message using XER encoding. * \param message_p Pointer to root message. @@ -2549,14 +2590,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverpreparationfailure( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABToBeModifiedListBearerModReq message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABToBeModifiedListBearerModReq encapsulated IE using XER encoding. + * \param s1ap_E_RABToBeModifiedItemBearerModReqIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobemodifiedlistbearermodreq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs); /** \brief Display S1ap_UEContextReleaseRequest_ message using XER encoding. * \param message_p Pointer to root message. @@ -2612,14 +2653,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecapabilityinfoindication( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABToBeSetupListBearerSUReq message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABToBeSetupListBearerSUReq encapsulated IE using XER encoding. + * \param s1ap_E_RABToBeSetupItemBearerSUReqIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplistbearersureq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs); /** \brief Display S1ap_E_RABDataForwardingList encapsulated IE using XER encoding. * \param s1ap_E_RABDataForwardingItemIEs Pointer to the IES structure. @@ -2774,14 +2815,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyrequest( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABSetupListCtxtSURes message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABSetupListCtxtSURes encapsulated IE using XER encoding. + * \param s1ap_E_RABSetupItemCtxtSUResIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuplistctxtsures( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs); /** \brief Display S1ap_E_RABToBeSwitchedULList encapsulated IE using XER encoding. * \param s1ap_E_RABToBeSwitchedULItemIEs Pointer to the IES structure. @@ -2810,23 +2851,23 @@ asn_enc_rval_t s1ap_xer_print_s1ap_reset( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_Bearers_SubjectToStatusTransfer_List message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_Bearers_SubjectToStatusTransfer_List encapsulated IE using XER encoding. + * \param s1ap_Bearers_SubjectToStatusTransfer_ItemIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_bearers_subjecttostatustransfer_list( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs); -/** \brief Display S1ap_E_RABList message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABList encapsulated IE using XER encoding. + * \param s1ap_E_RABItemIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rablist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs); /** \brief Display S1ap_S1SetupResponse message using XER encoding. * \param message_p Pointer to root message. @@ -2936,14 +2977,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_errorindication( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_TAIList message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_TAIList encapsulated IE using XER encoding. + * \param s1ap_TAIItemIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_tailist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_TAIListIEs_t *s1ap_TAIListIEs); /** \brief Display S1ap_OverloadStart message using XER encoding. * \param message_p Pointer to root message. @@ -3008,14 +3049,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestacknowledge( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_UE_associatedLogicalS1_ConnectionListRes message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_UE_associatedLogicalS1_ConnectionListRes encapsulated IE using XER encoding. + * \param s1ap_UE_associatedLogicalS1_ConnectionItemRes Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionlistres( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResIEs); /** \brief Display S1ap_S1SetupFailure message using XER encoding. * \param message_p Pointer to root message. @@ -3062,32 +3103,32 @@ asn_enc_rval_t s1ap_xer_print_s1ap_overloadstop( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABSetupListBearerSURes message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABSetupListBearerSURes encapsulated IE using XER encoding. + * \param s1ap_E_RABSetupItemBearerSUResIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuplistbearersures( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs); -/** \brief Display S1ap_E_RABModifyListBearerModRes message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABModifyListBearerModRes encapsulated IE using XER encoding. + * \param s1ap_E_RABModifyItemBearerModResIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifylistbearermodres( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs); -/** \brief Display S1ap_E_RABToBeSetupListCtxtSUReq message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABToBeSetupListCtxtSUReq encapsulated IE using XER encoding. + * \param s1ap_E_RABToBeSetupItemCtxtSUReqIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplistctxtsureq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs); /** \brief Display S1ap_ENBConfigurationUpdate message using XER encoding. * \param message_p Pointer to root message. @@ -3107,14 +3148,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_tracefailureindication( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_E_RABInformationList message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_E_RABInformationList encapsulated IE using XER encoding. + * \param s1ap_E_RABInformationListIEs Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabinformationlist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs); /** \brief Display S1ap_ENBConfigurationTransfer message using XER encoding. * \param message_p Pointer to root message. @@ -3134,14 +3175,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverfailure( void *app_key, s1ap_message *message_p); -/** \brief Display S1ap_UE_associatedLogicalS1_ConnectionListResAck message using XER encoding. - * \param message_p Pointer to root message. +/** \brief Display S1ap_UE_associatedLogicalS1_ConnectionListResAck encapsulated IE using XER encoding. + * \param s1ap_UE_associatedLogicalS1_ConnectionItemResAck Pointer to the IES structure. * \param file File descriptor to write output. **/ asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionlistresack( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p); + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAckIEs); /** \brief Display S1ap_E_RABSetupResponse message using XER encoding. * \param message_p Pointer to root message. diff --git a/lib/asn/s1ap_xer_print.c b/lib/asn/s1ap_xer_print.c index 375841fc3..f17fb6c9b 100644 --- a/lib/asn/s1ap_xer_print.c +++ b/lib/asn/s1ap_xer_print.c @@ -30,7 +30,7 @@ /******************************************************************************* * This file had been created by asn1tostruct.py script v1.0.2 * Please do not modify this file but regenerate it via script. - * Created on: 2017-02-03 13:33:42.703530 by acetcom + * Created on: 2017-02-03 16:04:59.016341 by acetcom * from ['S1AP-PDU.asn'] ******************************************************************************/ #include @@ -78,19 +78,19 @@ xer_encode_local(asn_TYPE_descriptor_t *td, void *sptr, mname = td->xml_tag; mlen = strlen(mname); - _i_ASN_TEXT_INDENT(0, indent); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + ASN__TEXT_INDENT(0, indent); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); tmper = td->xer_encoder(td, sptr, indent + 1, XER_F_BASIC, cb, app_key); if(tmper.encoded == -1) return tmper; - _ASN_CALLBACK3("\n", xcan); + ASN__CALLBACK3("\n", xcan); er.encoded = 4 + xcan + (2 * mlen) + tmper.encoded; - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); cb_failed: - _ASN_ENCODE_FAILED; + ASN__ENCODE_FAILED; } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabfailedtosetuplisthoreqack( asn_app_consume_bytes_f *cb, @@ -102,7 +102,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabfailedtosetuplisthoreqack( for (i = 0; i < s1ap_E_RABFailedtoSetupListHOReqAckIEs->s1ap_E_RABFailedtoSetupItemHOReqAck.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABFailedToSetupItemHOReqAck, s1ap_E_RABFailedtoSetupListHOReqAckIEs->s1ap_E_RABFailedtoSetupItemHOReqAck.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_deactivatetrace( @@ -123,26 +123,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_deactivatetrace( xer_encode_local(&asn_DEF_S1ap_E_UTRAN_Trace_ID, &s1ap_DeactivateTraceIEs->e_UTRAN_Trace_ID, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaseitembearerrelcomp( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaselistbearerrelcomp( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABReleaseItemBearerRelCompIEs_t *s1ap_E_RABReleaseItemBearerRelCompIEs; - asn_enc_rval_t er; - s1ap_E_RABReleaseItemBearerRelCompIEs = &message_p->msg.s1ap_E_RABReleaseItemBearerRelCompIEs; + S1ap_E_RABReleaseListBearerRelCompIEs_t *s1ap_E_RABReleaseListBearerRelCompIEs) { - cb("\n", 44, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 44, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, &s1ap_E_RABReleaseItemBearerRelCompIEs->e_RABReleaseItemBearerRelComp, cb, app_key, 2); - cb(" \n", 45, app_key); - cb("\n", 45, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABReleaseListBearerRelCompIEs->s1ap_E_RABReleaseItemBearerRelComp.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABReleaseItemBearerRelComp, s1ap_E_RABReleaseListBearerRelCompIEs->s1ap_E_RABReleaseItemBearerRelComp.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbdirectinformationtransfer( @@ -161,7 +155,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbdirectinformationtransfer( xer_encode_local(&asn_DEF_S1ap_Inter_SystemInformationTransferType, &s1ap_ENBDirectInformationTransferIEs->inter_SystemInformationTransferTypeEDT, cb, app_key, 2); cb(" \n", 44, app_key); cb("\n", 44, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaseresponse( @@ -181,16 +175,16 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaseresponse( xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_E_RABReleaseResponseIEs->eNB_UE_S1AP_ID, cb, app_key, 2); /* Optional field */ if (s1ap_E_RABReleaseResponseIEs->presenceMask & S1AP_E_RABRELEASERESPONSEIES_E_RABRELEASELISTBEARERRELCOMP_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABReleaseListBearerRelComp, &s1ap_E_RABReleaseResponseIEs->e_RABReleaseListBearerRelComp, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabreleaselistbearerrelcomp(cb, app_key, &s1ap_E_RABReleaseResponseIEs->e_RABReleaseListBearerRelComp); /* Optional field */ if (s1ap_E_RABReleaseResponseIEs->presenceMask & S1AP_E_RABRELEASERESPONSEIES_E_RABFAILEDTORELEASELIST_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_E_RABReleaseResponseIEs->e_RABFailedToReleaseList, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_E_RABReleaseResponseIEs->e_RABFailedToReleaseList); /* Optional field */ if (s1ap_E_RABReleaseResponseIEs->presenceMask & S1AP_E_RABRELEASERESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT) xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_E_RABReleaseResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 36, app_key); cb("\n", 36, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uplinknonueassociatedlppatransport_( @@ -210,7 +204,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uplinknonueassociatedlppatransport_( xer_encode_local(&asn_DEF_S1ap_LPPa_PDU, &s1ap_UplinkNonUEAssociatedLPPaTransport_IEs->lpPa_PDU, cb, app_key, 2); cb(" \n", 51, app_key); cb("\n", 51, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplisthoreq( @@ -223,7 +217,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplisthoreq( for (i = 0; i < s1ap_E_RABToBeSetupListHOReqIEs->s1ap_E_RABToBeSetupItemHOReq.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABToBeSetupItemHOReq, s1ap_E_RABToBeSetupListHOReqIEs->s1ap_E_RABToBeSetupItemHOReq.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_tracestart( @@ -244,7 +238,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_tracestart( xer_encode_local(&asn_DEF_S1ap_TraceActivation, &s1ap_TraceStartIEs->traceActivation, cb, app_key, 2); cb(" \n", 26, app_key); cb("\n", 26, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_writereplacewarningresponse( @@ -270,7 +264,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_writereplacewarningresponse( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_WriteReplaceWarningResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 43, app_key); cb("\n", 43, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handovercancel( @@ -291,7 +285,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handovercancel( xer_encode_local(&asn_DEF_S1ap_Cause, &s1ap_HandoverCancelIEs->cause, cb, app_key, 2); cb(" \n", 30, app_key); cb("\n", 30, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handoverpreparationfailure( @@ -315,26 +309,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverpreparationfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_HandoverPreparationFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobemodifieditembearermodreq( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobemodifiedlistbearermodreq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABToBeModifiedItemBearerModReqIEs_t *s1ap_E_RABToBeModifiedItemBearerModReqIEs; - asn_enc_rval_t er; - s1ap_E_RABToBeModifiedItemBearerModReqIEs = &message_p->msg.s1ap_E_RABToBeModifiedItemBearerModReqIEs; + S1ap_E_RABToBeModifiedListBearerModReqIEs_t *s1ap_E_RABToBeModifiedListBearerModReqIEs) { - cb("\n", 48, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 48, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, &s1ap_E_RABToBeModifiedItemBearerModReqIEs->e_RABToBeModifiedItemBearerModReq, cb, app_key, 2); - cb(" \n", 49, app_key); - cb("\n", 49, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABToBeModifiedListBearerModReqIEs->s1ap_E_RABToBeModifiedItemBearerModReq.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABToBeModifiedItemBearerModReq, s1ap_E_RABToBeModifiedListBearerModReqIEs->s1ap_E_RABToBeModifiedItemBearerModReq.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleaserequest_( @@ -358,7 +346,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleaserequest_( xer_encode_local(&asn_DEF_S1ap_GWContextReleaseIndication, &s1ap_UEContextReleaseRequest_IEs->gwContextReleaseIndication, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabadmittedlist( @@ -371,7 +359,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabadmittedlist( for (i = 0; i < s1ap_E_RABAdmittedListIEs->s1ap_E_RABAdmittedItem.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABAdmittedItem, s1ap_E_RABAdmittedListIEs->s1ap_E_RABAdmittedItem.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_initialuemessage_( @@ -405,14 +393,14 @@ asn_enc_rval_t s1ap_xer_print_s1ap_initialuemessage_( if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_CELLACCESSMODE_PRESENT) xer_encode_local(&asn_DEF_S1ap_CellAccessMode, &s1ap_InitialUEMessage_IEs->cellAccessMode, cb, app_key, 2); /* Optional field */ - if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT) - xer_encode_local(&asn_DEF_S1ap_TransportLayerAddress, &s1ap_InitialUEMessage_IEs->gW_S1ap_TransportLayerAddress, cb, app_key, 2); + if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_GW_TRANSPORTLAYERADDRESS_PRESENT) + xer_encode_local(&asn_DEF_S1ap_TransportLayerAddress, &s1ap_InitialUEMessage_IEs->gW_TransportLayerAddress, cb, app_key, 2); /* Optional field */ if (s1ap_InitialUEMessage_IEs->presenceMask & S1AP_INITIALUEMESSAGE_IES_RELAYNODE_INDICATOR_PRESENT) xer_encode_local(&asn_DEF_S1ap_RelayNode_Indicator, &s1ap_InitialUEMessage_IEs->relayNode_Indicator, cb, app_key, 2); cb(" \n", 33, app_key); cb("\n", 33, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_killrequest( @@ -435,7 +423,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_killrequest( xer_encode_local(&asn_DEF_S1ap_WarningAreaList, &s1ap_KillRequestIEs->warningAreaList, cb, app_key, 2); cb(" \n", 27, app_key); cb("\n", 27, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_writereplacewarningrequest( @@ -478,7 +466,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_writereplacewarningrequest( xer_encode_local(&asn_DEF_S1ap_ConcurrentWarningMessageIndicator, &s1ap_WriteReplaceWarningRequestIEs->concurrentWarningMessageIndicator, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecapabilityinfoindication( @@ -499,26 +487,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecapabilityinfoindication( xer_encode_local(&asn_DEF_S1ap_UERadioCapability, &s1ap_UECapabilityInfoIndicationIEs->ueRadioCapability, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetupitembearersureq( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplistbearersureq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABToBeSetupItemBearerSUReqIEs_t *s1ap_E_RABToBeSetupItemBearerSUReqIEs; - asn_enc_rval_t er; - s1ap_E_RABToBeSetupItemBearerSUReqIEs = &message_p->msg.s1ap_E_RABToBeSetupItemBearerSUReqIEs; + S1ap_E_RABToBeSetupListBearerSUReqIEs_t *s1ap_E_RABToBeSetupListBearerSUReqIEs) { - cb("\n", 44, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 44, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, &s1ap_E_RABToBeSetupItemBearerSUReqIEs->e_RABToBeSetupItemBearerSUReq, cb, app_key, 2); - cb(" \n", 45, app_key); - cb("\n", 45, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABToBeSetupListBearerSUReqIEs->s1ap_E_RABToBeSetupItemBearerSUReq.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABToBeSetupItemBearerSUReq, s1ap_E_RABToBeSetupListBearerSUReqIEs->s1ap_E_RABToBeSetupItemBearerSUReq.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabdataforwardinglist( @@ -531,7 +513,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabdataforwardinglist( for (i = 0; i < s1ap_E_RABDataForwardingListIEs->s1ap_E_RABDataForwardingItem.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABDataForwardingItem, s1ap_E_RABDataForwardingListIEs->s1ap_E_RABDataForwardingItem.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_locationreportingfailureindication( @@ -552,7 +534,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_locationreportingfailureindication( xer_encode_local(&asn_DEF_S1ap_Cause, &s1ap_LocationReportingFailureIndicationIEs->cause, cb, app_key, 2); cb(" \n", 50, app_key); cb("\n", 50, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetuprequest( @@ -571,7 +553,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetuprequest( xer_encode_local(&asn_DEF_S1ap_MME_UE_S1AP_ID, &s1ap_InitialContextSetupRequestIEs->mme_ue_s1ap_id, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_InitialContextSetupRequestIEs->eNB_UE_S1AP_ID, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_UEAggregateMaximumBitrate, &s1ap_InitialContextSetupRequestIEs->uEaggregateMaximumBitrate, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeSetupListCtxtSUReq, &s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabtobesetuplistctxtsureq(cb, app_key, &s1ap_InitialContextSetupRequestIEs->e_RABToBeSetupListCtxtSUReq); xer_encode_local(&asn_DEF_S1ap_UESecurityCapabilities, &s1ap_InitialContextSetupRequestIEs->ueSecurityCapabilities, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_SecurityKey, &s1ap_InitialContextSetupRequestIEs->securityKey, cb, app_key, 2); /* Optional field */ @@ -609,7 +591,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetuprequest( xer_encode_local(&asn_DEF_S1ap_ManagementBasedMDTAllowed, &s1ap_InitialContextSetupRequestIEs->managementBasedMDTAllowed, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_locationreport( @@ -632,7 +614,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_locationreport( xer_encode_local(&asn_DEF_S1ap_RequestType, &s1ap_LocationReportIEs->requestType, cb, app_key, 2); cb(" \n", 30, app_key); cb("\n", 30, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uplinknastransport_( @@ -654,11 +636,11 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uplinknastransport_( xer_encode_local(&asn_DEF_S1ap_EUTRAN_CGI, &s1ap_UplinkNASTransport_IEs->eutran_cgi, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_TAI, &s1ap_UplinkNASTransport_IEs->tai, cb, app_key, 2); /* Optional field */ - if (s1ap_UplinkNASTransport_IEs->presenceMask & S1AP_UPLINKNASTRANSPORT_IES_GW_S1AP_TRANSPORTLAYERADDRESS_PRESENT) - xer_encode_local(&asn_DEF_S1ap_TransportLayerAddress, &s1ap_UplinkNASTransport_IEs->gW_S1ap_TransportLayerAddress, cb, app_key, 2); + if (s1ap_UplinkNASTransport_IEs->presenceMask & S1AP_UPLINKNASTRANSPORT_IES_GW_TRANSPORTLAYERADDRESS_PRESENT) + xer_encode_local(&asn_DEF_S1ap_TransportLayerAddress, &s1ap_UplinkNASTransport_IEs->gW_TransportLayerAddress, cb, app_key, 2); cb(" \n", 35, app_key); cb("\n", 35, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationresponse( @@ -681,7 +663,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationresponse( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_UEContextModificationResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 45, app_key); cb("\n", 45, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationrequest( @@ -722,7 +704,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationrequest( xer_encode_local(&asn_DEF_S1ap_LAI, &s1ap_UEContextModificationRequestIEs->registeredLAI, cb, app_key, 2); cb(" \n", 44, app_key); cb("\n", 44, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_locationreportingcontrol( @@ -743,7 +725,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_locationreportingcontrol( xer_encode_local(&asn_DEF_S1ap_RequestType, &s1ap_LocationReportingControlIEs->requestType, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uplinks1cdma2000tunneling( @@ -778,7 +760,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uplinks1cdma2000tunneling( xer_encode_local(&asn_DEF_S1ap_EUTRANRoundTripDelayEstimationInfo, &s1ap_UplinkS1cdma2000tunnelingIEs->eutranRoundTripDelayEstimationInfo, cb, app_key, 2); cb(" \n", 41, app_key); cb("\n", 41, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequest( @@ -831,7 +813,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequest( xer_encode_local(&asn_DEF_S1ap_ManagementBasedMDTAllowed, &s1ap_HandoverRequestIEs->managementBasedMDTAllowed, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequired( @@ -879,7 +861,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequired( xer_encode_local(&asn_DEF_S1ap_PS_ServiceNotAvailable, &s1ap_HandoverRequiredIEs->pS_ServiceNotAvailable, cb, app_key, 2); cb(" \n", 32, app_key); cb("\n", 32, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobeswitcheddllist( @@ -892,7 +874,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobeswitcheddllist( for (i = 0; i < s1ap_E_RABToBeSwitchedDLListIEs->s1ap_E_RABToBeSwitchedDLItem.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABToBeSwitchedDLItem, s1ap_E_RABToBeSwitchedDLListIEs->s1ap_E_RABToBeSwitchedDLItem.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdateacknowledge( @@ -913,7 +895,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdateacknowledge( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_MMEConfigurationUpdateAcknowledgeIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 49, app_key); cb("\n", 49, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_killresponse( @@ -939,7 +921,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_killresponse( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_KillResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 28, app_key); cb("\n", 28, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmestatustransfer( @@ -960,7 +942,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmestatustransfer( xer_encode_local(&asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, &s1ap_MMEStatusTransferIEs->eNB_StatusTransfer_TransparentContainer, cb, app_key, 2); cb(" \n", 33, app_key); cb("\n", 33, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdate( @@ -987,7 +969,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdate( xer_encode_local(&asn_DEF_S1ap_RelativeMMECapacity, &s1ap_MMEConfigurationUpdateIEs->relativeMMECapacity, cb, app_key, 2); cb(" \n", 38, app_key); cb("\n", 38, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyrequest( @@ -1008,29 +990,23 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyrequest( /* Optional field */ if (s1ap_E_RABModifyRequestIEs->presenceMask & S1AP_E_RABMODIFYREQUESTIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT) xer_encode_local(&asn_DEF_S1ap_UEAggregateMaximumBitrate, &s1ap_E_RABModifyRequestIEs->uEaggregateMaximumBitrate, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeModifiedListBearerModReq, &s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabtobemodifiedlistbearermodreq(cb, app_key, &s1ap_E_RABModifyRequestIEs->e_RABToBeModifiedListBearerModReq); cb(" \n", 34, app_key); cb("\n", 34, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetupitemctxtsures( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuplistctxtsures( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABSetupItemCtxtSUResIEs_t *s1ap_E_RABSetupItemCtxtSUResIEs; - asn_enc_rval_t er; - s1ap_E_RABSetupItemCtxtSUResIEs = &message_p->msg.s1ap_E_RABSetupItemCtxtSUResIEs; + S1ap_E_RABSetupListCtxtSUResIEs_t *s1ap_E_RABSetupListCtxtSUResIEs) { - cb("\n", 38, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 38, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABSetupItemCtxtSURes, &s1ap_E_RABSetupItemCtxtSUResIEs->e_RABSetupItemCtxtSURes, cb, app_key, 2); - cb(" \n", 39, app_key); - cb("\n", 39, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABSetupListCtxtSUResIEs->s1ap_E_RABSetupItemCtxtSURes.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABSetupItemCtxtSURes, s1ap_E_RABSetupListCtxtSUResIEs->s1ap_E_RABSetupItemCtxtSURes.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobeswitchedullist( @@ -1043,7 +1019,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobeswitchedullist( for (i = 0; i < s1ap_E_RABToBeSwitchedULListIEs->s1ap_E_RABToBeSwitchedULItem.count; i++) { er = xer_encode(&asn_DEF_S1ap_E_RABToBeSwitchedULItem, s1ap_E_RABToBeSwitchedULListIEs->s1ap_E_RABToBeSwitchedULItem.array[i], XER_F_BASIC, cb, app_key); } - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdatefailure( @@ -1068,7 +1044,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdatefailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_ENBConfigurationUpdateFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 45, app_key); cb("\n", 45, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_reset( @@ -1088,45 +1064,33 @@ asn_enc_rval_t s1ap_xer_print_s1ap_reset( xer_encode_local(&asn_DEF_S1ap_ResetType, &s1ap_ResetIEs->resetType, cb, app_key, 2); cb(" \n", 21, app_key); cb("\n", 21, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_bearers_subjecttostatustransfer_item( +asn_enc_rval_t s1ap_xer_print_s1ap_bearers_subjecttostatustransfer_list( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_Bearers_SubjectToStatusTransfer_ItemIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ItemIEs; - asn_enc_rval_t er; - s1ap_Bearers_SubjectToStatusTransfer_ItemIEs = &message_p->msg.s1ap_Bearers_SubjectToStatusTransfer_ItemIEs; + S1ap_Bearers_SubjectToStatusTransfer_ListIEs_t *s1ap_Bearers_SubjectToStatusTransfer_ListIEs) { - cb("\n", 51, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 51, app_key); - xer_encode_local(&asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, &s1ap_Bearers_SubjectToStatusTransfer_ItemIEs->bearers_SubjectToStatusTransfer_Item, cb, app_key, 2); - cb(" \n", 52, app_key); - cb("\n", 52, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_Bearers_SubjectToStatusTransfer_ListIEs->s1ap_Bearers_SubjectToStatusTransfer_Item.count; i++) { + er = xer_encode(&asn_DEF_S1ap_Bearers_SubjectToStatusTransfer_Item, s1ap_Bearers_SubjectToStatusTransfer_ListIEs->s1ap_Bearers_SubjectToStatusTransfer_Item.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabitem( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rablist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABItemIEs_t *s1ap_E_RABItemIEs; - asn_enc_rval_t er; - s1ap_E_RABItemIEs = &message_p->msg.s1ap_E_RABItemIEs; + S1ap_E_RABListIEs_t *s1ap_E_RABListIEs) { - cb("\n", 24, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 24, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABItem, &s1ap_E_RABItemIEs->e_RABItem, cb, app_key, 2); - cb(" \n", 25, app_key); - cb("\n", 25, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABListIEs->s1ap_E_RABItem.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABItem, s1ap_E_RABListIEs->s1ap_E_RABItem.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_s1setupresponse( @@ -1155,7 +1119,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_s1setupresponse( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_S1SetupResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_paging( @@ -1177,7 +1141,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_paging( if (s1ap_PagingIEs->presenceMask & S1AP_PAGINGIES_PAGINGDRX_PRESENT) xer_encode_local(&asn_DEF_S1ap_PagingDRX, &s1ap_PagingIEs->pagingDRX, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_CNDomain, &s1ap_PagingIEs->cnDomain, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_TAIList, &s1ap_PagingIEs->taiList, cb, app_key, 2); + s1ap_xer_print_s1ap_tailist(cb, app_key, &s1ap_PagingIEs->taiList); /* Optional field */ if (s1ap_PagingIEs->presenceMask & S1AP_PAGINGIES_CSG_IDLIST_PRESENT) xer_encode_local(&asn_DEF_S1ap_CSG_IdList, &s1ap_PagingIEs->csG_IdList, cb, app_key, 2); @@ -1186,7 +1150,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_paging( xer_encode_local(&asn_DEF_S1ap_PagingPriority, &s1ap_PagingIEs->pagingPriority, cb, app_key, 2); cb(" \n", 22, app_key); cb("\n", 22, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdateacknowledge( @@ -1207,7 +1171,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdateacknowledge( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_ENBConfigurationUpdateAcknowledgeIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 49, app_key); cb("\n", 49, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleasecommand( @@ -1228,13 +1192,13 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleasecommand( /* Optional field */ if (s1ap_E_RABReleaseCommandIEs->presenceMask & S1AP_E_RABRELEASECOMMANDIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT) xer_encode_local(&asn_DEF_S1ap_UEAggregateMaximumBitrate, &s1ap_E_RABReleaseCommandIEs->uEaggregateMaximumBitrate, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_E_RABReleaseCommandIEs->e_RABToBeReleasedList); /* Optional field */ if (s1ap_E_RABReleaseCommandIEs->presenceMask & S1AP_E_RABRELEASECOMMANDIES_NAS_PDU_PRESENT) xer_encode_local(&asn_DEF_S1ap_NAS_PDU, &s1ap_E_RABReleaseCommandIEs->nas_pdu, cb, app_key, 2); cb(" \n", 35, app_key); cb("\n", 35, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestfailure( @@ -1258,7 +1222,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_PathSwitchRequestFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyresponse( @@ -1278,16 +1242,16 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyresponse( xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_E_RABModifyResponseIEs->eNB_UE_S1AP_ID, cb, app_key, 2); /* Optional field */ if (s1ap_E_RABModifyResponseIEs->presenceMask & S1AP_E_RABMODIFYRESPONSEIES_E_RABMODIFYLISTBEARERMODRES_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABModifyListBearerModRes, &s1ap_E_RABModifyResponseIEs->e_RABModifyListBearerModRes, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabmodifylistbearermodres(cb, app_key, &s1ap_E_RABModifyResponseIEs->e_RABModifyListBearerModRes); /* Optional field */ if (s1ap_E_RABModifyResponseIEs->presenceMask & S1AP_E_RABMODIFYRESPONSEIES_E_RABFAILEDTOMODIFYLIST_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_E_RABModifyResponseIEs->e_RABFailedToModifyList, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_E_RABModifyResponseIEs->e_RABFailedToModifyList); /* Optional field */ if (s1ap_E_RABModifyResponseIEs->presenceMask & S1AP_E_RABMODIFYRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT) xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_E_RABModifyResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 35, app_key); cb("\n", 35, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handovernotify( @@ -1309,7 +1273,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handovernotify( xer_encode_local(&asn_DEF_S1ap_TAI, &s1ap_HandoverNotifyIEs->tai, cb, app_key, 2); cb(" \n", 30, app_key); cb("\n", 30, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handovercancelacknowledge( @@ -1332,7 +1296,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handovercancelacknowledge( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_HandoverCancelAcknowledgeIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 41, app_key); cb("\n", 41, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetupfailure( @@ -1356,7 +1320,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetupfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_InitialContextSetupFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handovercommand( @@ -1380,7 +1344,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handovercommand( s1ap_xer_print_s1ap_e_rabdataforwardinglist(cb, app_key, &s1ap_HandoverCommandIEs->e_RABDataForwardingList); /* Optional field */ if (s1ap_HandoverCommandIEs->presenceMask & S1AP_HANDOVERCOMMANDIES_E_RABTORELEASELISTHOCMD_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_HandoverCommandIEs->e_RABtoReleaseListHOCmd, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_HandoverCommandIEs->e_RABtoReleaseListHOCmd); xer_encode_local(&asn_DEF_S1ap_Target_ToSource_TransparentContainer, &s1ap_HandoverCommandIEs->target_ToSource_TransparentContainer, cb, app_key, 2); /* Optional field */ if (s1ap_HandoverCommandIEs->presenceMask & S1AP_HANDOVERCOMMANDIES_TARGET_TOSOURCE_TRANSPARENTCONTAINER_SECONDARY_PRESENT) @@ -1390,7 +1354,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handovercommand( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_HandoverCommandIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmedirectinformationtransfer( @@ -1409,7 +1373,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmedirectinformationtransfer( xer_encode_local(&asn_DEF_S1ap_Inter_SystemInformationTransferType, &s1ap_MMEDirectInformationTransferIEs->inter_SystemInformationTransferTypeMDT, cb, app_key, 2); cb(" \n", 44, app_key); cb("\n", 44, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_errorindication( @@ -1439,26 +1403,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_errorindication( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_ErrorIndicationIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_taiitem( +asn_enc_rval_t s1ap_xer_print_s1ap_tailist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_TAIItemIEs_t *s1ap_TAIItemIEs; - asn_enc_rval_t er; - s1ap_TAIItemIEs = &message_p->msg.s1ap_TAIItemIEs; + S1ap_TAIListIEs_t *s1ap_TAIListIEs) { - cb("\n", 22, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 22, app_key); - xer_encode_local(&asn_DEF_S1ap_TAIItem, &s1ap_TAIItemIEs->taiItem, cb, app_key, 2); - cb(" \n", 23, app_key); - cb("\n", 23, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_TAIListIEs->s1ap_TAIItem.count; i++) { + er = xer_encode(&asn_DEF_S1ap_TAIItem, s1ap_TAIListIEs->s1ap_TAIItem.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_overloadstart( @@ -1483,7 +1441,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_overloadstart( xer_encode_local(&asn_DEF_S1ap_TrafficLoadReductionIndication, &s1ap_OverloadStartIEs->trafficLoadReductionIndication, cb, app_key, 2); cb(" \n", 29, app_key); cb("\n", 29, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_downlinknonueassociatedlppatransport_( @@ -1503,7 +1461,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_downlinknonueassociatedlppatransport_( xer_encode_local(&asn_DEF_S1ap_LPPa_PDU, &s1ap_DownlinkNonUEAssociatedLPPaTransport_IEs->lpPa_PDU, cb, app_key, 2); cb(" \n", 53, app_key); cb("\n", 53, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequestacknowledge( @@ -1534,7 +1492,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverrequestacknowledge( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_HandoverRequestAcknowledgeIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 42, app_key); cb("\n", 42, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_downlinkueassociatedlppatransport_( @@ -1556,7 +1514,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_downlinkueassociatedlppatransport_( xer_encode_local(&asn_DEF_S1ap_LPPa_PDU, &s1ap_DownlinkUEAssociatedLPPaTransport_IEs->lpPa_PDU, cb, app_key, 2); cb(" \n", 50, app_key); cb("\n", 50, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationfailure( @@ -1580,7 +1538,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextmodificationfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_UEContextModificationFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 44, app_key); cb("\n", 44, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationtransfer( @@ -1601,7 +1559,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationtransfer( xer_encode_local(&asn_DEF_S1ap_SONConfigurationTransfer, &s1ap_MMEConfigurationTransferIEs->sonConfigurationTransferMCT, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestacknowledge( @@ -1627,7 +1585,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestacknowledge( s1ap_xer_print_s1ap_e_rabtobeswitchedullist(cb, app_key, &s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeSwitchedULList); /* Optional field */ if (s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask & S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_E_RABTOBERELEASEDLIST_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeReleasedList, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_PathSwitchRequestAcknowledgeIEs->e_RABToBeReleasedList); xer_encode_local(&asn_DEF_S1ap_SecurityContext, &s1ap_PathSwitchRequestAcknowledgeIEs->securityContext, cb, app_key, 2); /* Optional field */ if (s1ap_PathSwitchRequestAcknowledgeIEs->presenceMask & S1AP_PATHSWITCHREQUESTACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT) @@ -1637,26 +1595,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequestacknowledge( xer_encode_local(&asn_DEF_S1ap_MME_UE_S1AP_ID, &s1ap_PathSwitchRequestAcknowledgeIEs->mme_ue_s1ap_id_2, cb, app_key, 2); cb(" \n", 44, app_key); cb("\n", 44, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionitemres( +asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionlistres( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_UE_associatedLogicalS1_ConnectionItemRes_t *s1ap_UE_associatedLogicalS1_ConnectionItemRes; - asn_enc_rval_t er; - s1ap_UE_associatedLogicalS1_ConnectionItemRes = &message_p->msg.s1ap_UE_associatedLogicalS1_ConnectionItemRes; + S1ap_UE_associatedLogicalS1_ConnectionListResIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListRes) { - cb("\n", 52, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 52, app_key); - xer_encode_local(&asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, &s1ap_UE_associatedLogicalS1_ConnectionItemRes->uE_associatedLogicalS1_ConnectionItem, cb, app_key, 2); - cb(" \n", 53, app_key); - cb("\n", 53, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListRes->s1ap_UE_associatedLogicalS1_ConnectionItemRes.count; i++) { + er = xer_encode(&asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1ap_UE_associatedLogicalS1_ConnectionListRes->s1ap_UE_associatedLogicalS1_ConnectionItemRes.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_s1setupfailure( @@ -1681,7 +1633,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_s1setupfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_S1SetupFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 30, app_key); cb("\n", 30, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdatefailure( @@ -1706,7 +1658,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_mmeconfigurationupdatefailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_MMEConfigurationUpdateFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 45, app_key); cb("\n", 45, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetupresponse( @@ -1724,16 +1676,16 @@ asn_enc_rval_t s1ap_xer_print_s1ap_initialcontextsetupresponse( cb(" \n", 42, app_key); xer_encode_local(&asn_DEF_S1ap_MME_UE_S1AP_ID, &s1ap_InitialContextSetupResponseIEs->mme_ue_s1ap_id, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_InitialContextSetupResponseIEs->eNB_UE_S1AP_ID, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABSetupListCtxtSURes, &s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabsetuplistctxtsures(cb, app_key, &s1ap_InitialContextSetupResponseIEs->e_RABSetupListCtxtSURes); /* Optional field */ if (s1ap_InitialContextSetupResponseIEs->presenceMask & S1AP_INITIALCONTEXTSETUPRESPONSEIES_E_RABFAILEDTOSETUPLISTCTXTSURES_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_InitialContextSetupResponseIEs->e_RABFailedToSetupListCtxtSURes, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_InitialContextSetupResponseIEs->e_RABFailedToSetupListCtxtSURes); /* Optional field */ if (s1ap_InitialContextSetupResponseIEs->presenceMask & S1AP_INITIALCONTEXTSETUPRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT) xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_InitialContextSetupResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 43, app_key); cb("\n", 43, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_downlinks1cdma2000tunneling( @@ -1761,7 +1713,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_downlinks1cdma2000tunneling( xer_encode_local(&asn_DEF_S1ap_Cdma2000PDU, &s1ap_DownlinkS1cdma2000tunnelingIEs->cdma2000PDU, cb, app_key, 2); cb(" \n", 43, app_key); cb("\n", 43, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_overloadstop( @@ -1782,64 +1734,46 @@ asn_enc_rval_t s1ap_xer_print_s1ap_overloadstop( xer_encode_local(&asn_DEF_S1ap_GUMMEIList, &s1ap_OverloadStopIEs->gummeiList, cb, app_key, 2); cb(" \n", 28, app_key); cb("\n", 28, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetupitembearersures( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuplistbearersures( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABSetupItemBearerSUResIEs_t *s1ap_E_RABSetupItemBearerSUResIEs; - asn_enc_rval_t er; - s1ap_E_RABSetupItemBearerSUResIEs = &message_p->msg.s1ap_E_RABSetupItemBearerSUResIEs; + S1ap_E_RABSetupListBearerSUResIEs_t *s1ap_E_RABSetupListBearerSUResIEs) { - cb("\n", 40, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 40, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABSetupItemBearerSURes, &s1ap_E_RABSetupItemBearerSUResIEs->e_RABSetupItemBearerSURes, cb, app_key, 2); - cb(" \n", 41, app_key); - cb("\n", 41, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABSetupListBearerSUResIEs->s1ap_E_RABSetupItemBearerSURes.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABSetupItemBearerSURes, s1ap_E_RABSetupListBearerSUResIEs->s1ap_E_RABSetupItemBearerSURes.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifyitembearermodres( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabmodifylistbearermodres( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABModifyItemBearerModResIEs_t *s1ap_E_RABModifyItemBearerModResIEs; - asn_enc_rval_t er; - s1ap_E_RABModifyItemBearerModResIEs = &message_p->msg.s1ap_E_RABModifyItemBearerModResIEs; + S1ap_E_RABModifyListBearerModResIEs_t *s1ap_E_RABModifyListBearerModResIEs) { - cb("\n", 42, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 42, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABModifyItemBearerModRes, &s1ap_E_RABModifyItemBearerModResIEs->e_RABModifyItemBearerModRes, cb, app_key, 2); - cb(" \n", 43, app_key); - cb("\n", 43, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABModifyListBearerModResIEs->s1ap_E_RABModifyItemBearerModRes.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABModifyItemBearerModRes, s1ap_E_RABModifyListBearerModResIEs->s1ap_E_RABModifyItemBearerModRes.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetupitemctxtsureq( +asn_enc_rval_t s1ap_xer_print_s1ap_e_rabtobesetuplistctxtsureq( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABToBeSetupItemCtxtSUReqIEs_t *s1ap_E_RABToBeSetupItemCtxtSUReqIEs; - asn_enc_rval_t er; - s1ap_E_RABToBeSetupItemCtxtSUReqIEs = &message_p->msg.s1ap_E_RABToBeSetupItemCtxtSUReqIEs; + S1ap_E_RABToBeSetupListCtxtSUReqIEs_t *s1ap_E_RABToBeSetupListCtxtSUReqIEs) { - cb("\n", 42, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 42, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, &s1ap_E_RABToBeSetupItemCtxtSUReqIEs->e_RABToBeSetupItemCtxtSUReq, cb, app_key, 2); - cb(" \n", 43, app_key); - cb("\n", 43, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABToBeSetupListCtxtSUReqIEs->s1ap_E_RABToBeSetupItemCtxtSUReq.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABToBeSetupItemCtxtSUReq, s1ap_E_RABToBeSetupListCtxtSUReqIEs->s1ap_E_RABToBeSetupItemCtxtSUReq.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdate( @@ -1869,7 +1803,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationupdate( xer_encode_local(&asn_DEF_S1ap_PagingDRX, &s1ap_ENBConfigurationUpdateIEs->defaultPagingDRX, cb, app_key, 2); cb(" \n", 38, app_key); cb("\n", 38, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_tracefailureindication( @@ -1891,26 +1825,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_tracefailureindication( xer_encode_local(&asn_DEF_S1ap_Cause, &s1ap_TraceFailureIndicationIEs->cause, cb, app_key, 2); cb(" \n", 38, app_key); cb("\n", 38, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabinformationlist( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs; - asn_enc_rval_t er; - s1ap_E_RABInformationListIEs = &message_p->msg.s1ap_E_RABInformationListIEs; + S1ap_E_RABInformationListIEs_t *s1ap_E_RABInformationListIEs) { - cb("\n", 35, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 35, app_key); - xer_encode_local(&asn_DEF_S1ap_E_RABInformationListItem, &s1ap_E_RABInformationListIEs->e_RABInformationListItem, cb, app_key, 2); - cb(" \n", 36, app_key); - cb("\n", 36, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_E_RABInformationListIEs->s1ap_E_RABInformationList.count; i++) { + er = xer_encode(&asn_DEF_S1ap_E_RABInformationListItem, s1ap_E_RABInformationListIEs->s1ap_E_RABInformationList.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationtransfer( @@ -1931,7 +1859,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbconfigurationtransfer( xer_encode_local(&asn_DEF_S1ap_SONConfigurationTransfer, &s1ap_ENBConfigurationTransferIEs->sonConfigurationTransferECT, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_handoverfailure( @@ -1954,26 +1882,20 @@ asn_enc_rval_t s1ap_xer_print_s1ap_handoverfailure( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_HandoverFailureIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 31, app_key); cb("\n", 31, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } -asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionitemresack( +asn_enc_rval_t s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionlistresack( asn_app_consume_bytes_f *cb, void *app_key, - s1ap_message *message_p) -{ - S1ap_UE_associatedLogicalS1_ConnectionItemResAck_t *s1ap_UE_associatedLogicalS1_ConnectionItemResAck; - asn_enc_rval_t er; - s1ap_UE_associatedLogicalS1_ConnectionItemResAck = &message_p->msg.s1ap_UE_associatedLogicalS1_ConnectionItemResAck; + S1ap_UE_associatedLogicalS1_ConnectionListResAckIEs_t *s1ap_UE_associatedLogicalS1_ConnectionListResAck) { - cb("\n", 55, app_key); - xer_encode_local(&asn_DEF_S1ap_Criticality, &message_p->criticality, cb, app_key, 1); - xer_encode_local(&asn_DEF_S1ap_ProcedureCode, &message_p->procedureCode, cb, app_key, 1); - cb(" \n", 55, app_key); - xer_encode_local(&asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, &s1ap_UE_associatedLogicalS1_ConnectionItemResAck->uE_associatedLogicalS1_ConnectionItem, cb, app_key, 2); - cb(" \n", 56, app_key); - cb("\n", 56, app_key); - _ASN_ENCODED_OK(er); + int i; + asn_enc_rval_t er; + for (i = 0; i < s1ap_UE_associatedLogicalS1_ConnectionListResAck->s1ap_UE_associatedLogicalS1_ConnectionItemResAck.count; i++) { + er = xer_encode(&asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionItem, s1ap_UE_associatedLogicalS1_ConnectionListResAck->s1ap_UE_associatedLogicalS1_ConnectionItemResAck.array[i], XER_F_BASIC, cb, app_key); + } + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetupresponse( @@ -1993,16 +1915,16 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetupresponse( xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_E_RABSetupResponseIEs->eNB_UE_S1AP_ID, cb, app_key, 2); /* Optional field */ if (s1ap_E_RABSetupResponseIEs->presenceMask & S1AP_E_RABSETUPRESPONSEIES_E_RABSETUPLISTBEARERSURES_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABSetupListBearerSURes, &s1ap_E_RABSetupResponseIEs->e_RABSetupListBearerSURes, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabsetuplistbearersures(cb, app_key, &s1ap_E_RABSetupResponseIEs->e_RABSetupListBearerSURes); /* Optional field */ if (s1ap_E_RABSetupResponseIEs->presenceMask & S1AP_E_RABSETUPRESPONSEIES_E_RABFAILEDTOSETUPLISTBEARERSURES_PRESENT) - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_E_RABSetupResponseIEs->e_RABFailedToSetupListBearerSURes, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_E_RABSetupResponseIEs->e_RABFailedToSetupListBearerSURes); /* Optional field */ if (s1ap_E_RABSetupResponseIEs->presenceMask & S1AP_E_RABSETUPRESPONSEIES_CRITICALITYDIAGNOSTICS_PRESENT) xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_E_RABSetupResponseIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 34, app_key); cb("\n", 34, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleasecommand_( @@ -2022,7 +1944,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleasecommand_( xer_encode_local(&asn_DEF_S1ap_Cause, &s1ap_UEContextReleaseCommand_IEs->cause, cb, app_key, 2); cb(" \n", 40, app_key); cb("\n", 40, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequest( @@ -2051,11 +1973,11 @@ asn_enc_rval_t s1ap_xer_print_s1ap_pathswitchrequest( if (s1ap_PathSwitchRequestIEs->presenceMask & S1AP_PATHSWITCHREQUESTIES_CELLACCESSMODE_PRESENT) xer_encode_local(&asn_DEF_S1ap_CellAccessMode, &s1ap_PathSwitchRequestIEs->cellAccessMode, cb, app_key, 2); /* Optional field */ - if (s1ap_PathSwitchRequestIEs->presenceMask & S1AP_PATHSWITCHREQUESTIES_SOURCEMME_S1AP_GUMMEI_PRESENT) - xer_encode_local(&asn_DEF_S1ap_GUMMEI, &s1ap_PathSwitchRequestIEs->sourceMME_S1ap_GUMMEI, cb, app_key, 2); + if (s1ap_PathSwitchRequestIEs->presenceMask & S1AP_PATHSWITCHREQUESTIES_SOURCEMME_GUMMEI_PRESENT) + xer_encode_local(&asn_DEF_S1ap_GUMMEI, &s1ap_PathSwitchRequestIEs->sourceMME_GUMMEI, cb, app_key, 2); cb(" \n", 33, app_key); cb("\n", 33, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_downlinknastransport_( @@ -2082,7 +2004,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_downlinknastransport_( xer_encode_local(&asn_DEF_S1ap_SubscriberProfileIDforRFP, &s1ap_DownlinkNASTransport_IEs->subscriberProfileIDforRFP, cb, app_key, 2); cb(" \n", 37, app_key); cb("\n", 37, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaseindication( @@ -2100,10 +2022,10 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabreleaseindication( cb(" \n", 37, app_key); xer_encode_local(&asn_DEF_S1ap_MME_UE_S1AP_ID, &s1ap_E_RABReleaseIndicationIEs->mme_ue_s1ap_id, cb, app_key, 2); xer_encode_local(&asn_DEF_S1ap_ENB_UE_S1AP_ID, &s1ap_E_RABReleaseIndicationIEs->eNB_UE_S1AP_ID, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABList, &s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rablist(cb, app_key, &s1ap_E_RABReleaseIndicationIEs->e_RABReleasedList); cb(" \n", 38, app_key); cb("\n", 38, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_s1setuprequest( @@ -2130,7 +2052,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_s1setuprequest( xer_encode_local(&asn_DEF_S1ap_CSG_IdList, &s1ap_S1SetupRequestIEs->csG_IdList, cb, app_key, 2); cb(" \n", 30, app_key); cb("\n", 30, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_nasnondeliveryindication_( @@ -2152,7 +2074,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_nasnondeliveryindication_( xer_encode_local(&asn_DEF_S1ap_Cause, &s1ap_NASNonDeliveryIndication_IEs->cause, cb, app_key, 2); cb(" \n", 41, app_key); cb("\n", 41, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_celltraffictrace( @@ -2178,7 +2100,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_celltraffictrace( xer_encode_local(&asn_DEF_S1ap_PrivacyIndicator, &s1ap_CellTrafficTraceIEs->privacyIndicator, cb, app_key, 2); cb(" \n", 32, app_key); cb("\n", 32, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuprequest( @@ -2199,10 +2121,10 @@ asn_enc_rval_t s1ap_xer_print_s1ap_e_rabsetuprequest( /* Optional field */ if (s1ap_E_RABSetupRequestIEs->presenceMask & S1AP_E_RABSETUPREQUESTIES_UEAGGREGATEMAXIMUMBITRATE_PRESENT) xer_encode_local(&asn_DEF_S1ap_UEAggregateMaximumBitrate, &s1ap_E_RABSetupRequestIEs->uEaggregateMaximumBitrate, cb, app_key, 2); - xer_encode_local(&asn_DEF_S1ap_E_RABToBeSetupListBearerSUReq, &s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq, cb, app_key, 2); + s1ap_xer_print_s1ap_e_rabtobesetuplistbearersureq(cb, app_key, &s1ap_E_RABSetupRequestIEs->e_RABToBeSetupListBearerSUReq); cb(" \n", 33, app_key); cb("\n", 33, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_enbstatustransfer( @@ -2223,7 +2145,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_enbstatustransfer( xer_encode_local(&asn_DEF_S1ap_ENB_StatusTransfer_TransparentContainer, &s1ap_ENBStatusTransferIEs->eNB_StatusTransfer_TransparentContainer, cb, app_key, 2); cb(" \n", 33, app_key); cb("\n", 33, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_resetacknowledge( @@ -2241,13 +2163,13 @@ asn_enc_rval_t s1ap_xer_print_s1ap_resetacknowledge( cb(" \n", 31, app_key); /* Optional field */ if (s1ap_ResetAcknowledgeIEs->presenceMask & S1AP_RESETACKNOWLEDGEIES_UE_ASSOCIATEDLOGICALS1_CONNECTIONLISTRESACK_PRESENT) - xer_encode_local(&asn_DEF_S1ap_UE_associatedLogicalS1_ConnectionListResAck, &s1ap_ResetAcknowledgeIEs->uE_associatedLogicalS1_ConnectionListResAck, cb, app_key, 2); + s1ap_xer_print_s1ap_ue_associatedlogicals1_connectionlistresack(cb, app_key, &s1ap_ResetAcknowledgeIEs->uE_associatedLogicalS1_ConnectionListResAck); /* Optional field */ if (s1ap_ResetAcknowledgeIEs->presenceMask & S1AP_RESETACKNOWLEDGEIES_CRITICALITYDIAGNOSTICS_PRESENT) xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_ResetAcknowledgeIEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 32, app_key); cb("\n", 32, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleasecomplete_( @@ -2270,7 +2192,7 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uecontextreleasecomplete_( xer_encode_local(&asn_DEF_S1ap_CriticalityDiagnostics, &s1ap_UEContextReleaseComplete_IEs->criticalityDiagnostics, cb, app_key, 2); cb(" \n", 41, app_key); cb("\n", 41, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } asn_enc_rval_t s1ap_xer_print_s1ap_uplinkueassociatedlppatransport_( @@ -2292,6 +2214,6 @@ asn_enc_rval_t s1ap_xer_print_s1ap_uplinkueassociatedlppatransport_( xer_encode_local(&asn_DEF_S1ap_LPPa_PDU, &s1ap_UplinkUEAssociatedLPPaTransport_IEs->lpPa_PDU, cb, app_key, 2); cb(" \n", 48, app_key); cb("\n", 48, app_key); - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); } diff --git a/lib/asn/support/S1AP-PDU.asn b/lib/asn/support/S1AP-PDU.asn index f35d4d7b9..20a06b642 100644 --- a/lib/asn/support/S1AP-PDU.asn +++ b/lib/asn/support/S1AP-PDU.asn @@ -965,9 +965,9 @@ FROM S1AP-Containers id-PS-ServiceNotAvailable, id-RegisteredLAI, id-GUMMEIList, - id-SourceMME-S1ap-GUMMEI, + id-SourceMME-GUMMEI, id-MME-UE-S1AP-ID-2, - id-GW-S1ap-TransportLayerAddress, + id-GW-TransportLayerAddress, id-RelayNode-Indicator, id-Correlation-ID, id-MMERelaySupportIndicator, @@ -1338,7 +1338,7 @@ S1ap-PathSwitchRequestIEs S1AP-PROTOCOL-IES ::= { { ID id-UESecurityCapabilities CRITICALITY ignore TYPE S1ap-UESecurityCapabilities PRESENCE mandatory}| { ID id-CSG-Id CRITICALITY ignore TYPE S1ap-CSG-Id PRESENCE optional}| { ID id-CellAccessMode CRITICALITY ignore TYPE S1ap-CellAccessMode PRESENCE optional}| - { ID id-SourceMME-S1ap-GUMMEI CRITICALITY ignore TYPE S1ap-GUMMEI PRESENCE optional}, + { ID id-SourceMME-GUMMEI CRITICALITY ignore TYPE S1ap-GUMMEI PRESENCE optional}, ... } @@ -1517,7 +1517,7 @@ S1ap-E-RABSetupRequestIEs S1AP-PROTOCOL-IES ::= { } -S1ap-E-RABToBeSetupListBearerSUReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABToBeSetupListBearerSUReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABToBeSetupItemBearerSUReqIEs} } S1ap-E-RABToBeSetupItemBearerSUReqIEs S1AP-PROTOCOL-IES ::= { @@ -1572,7 +1572,7 @@ S1ap-E-RABSetupResponseIEs S1AP-PROTOCOL-IES ::= { -S1ap-E-RABSetupListBearerSURes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABSetupListBearerSURes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABSetupItemBearerSUResIEs} } S1ap-E-RABSetupItemBearerSUResIEs S1AP-PROTOCOL-IES ::= { @@ -1630,7 +1630,7 @@ S1ap-E-RABModifyRequestIEs S1AP-PROTOCOL-IES ::= { } -S1ap-E-RABToBeModifiedListBearerModReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABToBeModifiedListBearerModReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABToBeModifiedItemBearerModReqIEs} } S1ap-E-RABToBeModifiedItemBearerModReqIEs S1AP-PROTOCOL-IES ::= { @@ -1684,7 +1684,7 @@ S1ap-E-RABModifyResponseIEs S1AP-PROTOCOL-IES ::= { -S1ap-E-RABModifyListBearerModRes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABModifyListBearerModRes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABModifyItemBearerModResIEs} } S1ap-E-RABModifyItemBearerModResIEs S1AP-PROTOCOL-IES ::= { @@ -1770,7 +1770,7 @@ S1ap-E-RABReleaseResponseIEs S1AP-PROTOCOL-IES ::= { -S1ap-E-RABReleaseListBearerRelComp ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABReleaseListBearerRelComp ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABReleaseItemBearerRelCompIEs} } S1ap-E-RABReleaseItemBearerRelCompIEs S1AP-PROTOCOL-IES ::= { @@ -1871,7 +1871,7 @@ S1ap-InitialContextSetupRequestIEs S1AP-PROTOCOL-IES ::= { -S1ap-E-RABToBeSetupListCtxtSUReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABToBeSetupListCtxtSUReq ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABToBeSetupItemCtxtSUReqIEs} } S1ap-E-RABToBeSetupItemCtxtSUReqIEs S1AP-PROTOCOL-IES ::= { @@ -1926,7 +1926,7 @@ S1ap-InitialContextSetupResponseIEs S1AP-PROTOCOL-IES ::= { -S1ap-E-RABSetupListCtxtSURes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABSetupListCtxtSURes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABSetupItemCtxtSUResIEs} } S1ap-E-RABSetupItemCtxtSUResIEs S1AP-PROTOCOL-IES ::= { @@ -2009,7 +2009,7 @@ S1ap-PagingIEs S1AP-PROTOCOL-IES ::= { } -S1ap-TAIList::= SEQUENCE (SIZE(1.. s1ap-maxnoofTAIs)) OF S1ap-IE +S1ap-TAIList::= SEQUENCE (SIZE(1.. s1ap-maxnoofTAIs)) OF ProtocolIE-SingleContainer {{S1ap-TAIItemIEs}} S1ap-TAIItemIEs S1AP-PROTOCOL-IES ::= { @@ -2232,7 +2232,7 @@ S1ap-InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= { { ID id-CSG-Id CRITICALITY reject TYPE S1ap-CSG-Id PRESENCE optional} | { ID id-GUMMEI-ID CRITICALITY reject TYPE S1ap-GUMMEI PRESENCE optional} | { ID id-CellAccessMode CRITICALITY reject TYPE S1ap-CellAccessMode PRESENCE optional} | - { ID id-GW-S1ap-TransportLayerAddress CRITICALITY ignore TYPE S1ap-TransportLayerAddress PRESENCE optional} | + { ID id-GW-TransportLayerAddress CRITICALITY ignore TYPE S1ap-TransportLayerAddress PRESENCE optional} | { ID id-RelayNode-Indicator CRITICALITY reject TYPE S1ap-RelayNode-Indicator PRESENCE optional}, ... } @@ -2259,7 +2259,7 @@ S1ap-UplinkNASTransport-IEs S1AP-PROTOCOL-IES ::= { { ID id-NAS-PDU CRITICALITY reject TYPE S1ap-NAS-PDU PRESENCE mandatory} | { ID id-EUTRAN-CGI CRITICALITY ignore TYPE S1ap-EUTRAN-CGI PRESENCE mandatory} | { ID id-TAI CRITICALITY ignore TYPE S1ap-TAI PRESENCE mandatory} | - { ID id-GW-S1ap-TransportLayerAddress CRITICALITY ignore TYPE S1ap-TransportLayerAddress PRESENCE optional}, + { ID id-GW-TransportLayerAddress CRITICALITY ignore TYPE S1ap-TransportLayerAddress PRESENCE optional}, ... } -- ************************************************************** @@ -2328,7 +2328,7 @@ S1ap-ResetAll ::= ENUMERATED { } -S1ap-UE-associatedLogicalS1-ConnectionListRes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfIndividualS1ConnectionsToReset)) OF S1ap-IE +S1ap-UE-associatedLogicalS1-ConnectionListRes ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfIndividualS1ConnectionsToReset)) OF ProtocolIE-SingleContainer { { S1ap-UE-associatedLogicalS1-ConnectionItemRes } } S1ap-UE-associatedLogicalS1-ConnectionItemRes S1AP-PROTOCOL-IES ::= { @@ -2359,7 +2359,7 @@ S1ap-ResetAcknowledgeIEs S1AP-PROTOCOL-IES ::= { } -S1ap-UE-associatedLogicalS1-ConnectionListResAck ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfIndividualS1ConnectionsToReset)) OF S1ap-IE +S1ap-UE-associatedLogicalS1-ConnectionListResAck ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfIndividualS1ConnectionsToReset)) OF ProtocolIE-SingleContainer { { S1ap-UE-associatedLogicalS1-ConnectionItemResAck } } S1ap-UE-associatedLogicalS1-ConnectionItemResAck S1AP-PROTOCOL-IES ::= { @@ -3438,7 +3438,7 @@ S1ap-AllocationAndRetentionPriority-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { -- B -S1ap-Bearers-SubjectToStatusTransfer-List ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-Bearers-SubjectToStatusTransfer-List ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { S1ap-Bearers-SubjectToStatusTransfer-ItemIEs } } S1ap-Bearers-SubjectToStatusTransfer-ItemIEs S1AP-PROTOCOL-IES ::= { @@ -4009,7 +4009,7 @@ S1ap-EventType ::= ENUMERATED { S1ap-E-RAB-ID ::= INTEGER (0..15, ...) -S1ap-E-RABInformationList ::= SEQUENCE (SIZE (1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABInformationList ::= SEQUENCE (SIZE (1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { S1ap-E-RABInformationListIEs } } S1ap-E-RABInformationListIEs S1AP-PROTOCOL-IES ::= { @@ -4031,7 +4031,7 @@ S1ap-E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= { } -S1ap-E-RABList ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF S1ap-IE +S1ap-E-RABList ::= SEQUENCE (SIZE(1.. s1ap-maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {S1ap-E-RABItemIEs} } S1ap-E-RABItemIEs S1AP-PROTOCOL-IES ::= { @@ -5429,9 +5429,9 @@ S1ap-ProtocolIE-ID ::= INTEGER { id-x2TNLConfigurationInfo(152), id-eNBX2ExtendedTransportLayerAddresses(153), id-GUMMEIList(154), - id-GW-S1ap-S1ap-TransportLayerAddress(155), + id-GW-TransportLayerAddress(155), id-Correlation-ID(156), - id-SourceMME-S1ap-S1ap-GUMMEI(157), + id-SourceMME-GUMMEI(157), id-MME-UE-S1AP-ID-2(158), id-RegisteredLAI(159), id-RelayNode-Indicator(160), @@ -5735,9 +5735,9 @@ id-PagingPriority id-x2TNLConfigurationInfo S1ap-ProtocolIE-ID ::= 152 id-eNBX2ExtendedTransportLayerAddresses S1ap-ProtocolIE-ID ::= 153 id-GUMMEIList S1ap-ProtocolIE-ID ::= 154 -id-GW-S1ap-TransportLayerAddress S1ap-ProtocolIE-ID ::= 155 +id-GW-TransportLayerAddress S1ap-ProtocolIE-ID ::= 155 id-Correlation-ID S1ap-ProtocolIE-ID ::= 156 -id-SourceMME-S1ap-GUMMEI S1ap-ProtocolIE-ID ::= 157 +id-SourceMME-GUMMEI S1ap-ProtocolIE-ID ::= 157 id-MME-UE-S1AP-ID-2 S1ap-ProtocolIE-ID ::= 158 id-RegisteredLAI S1ap-ProtocolIE-ID ::= 159 id-RelayNode-Indicator S1ap-ProtocolIE-ID ::= 160 diff --git a/lib/asn/support/asn1prefix.py b/lib/asn/support/asn1prefix.py index a7ce59e7c..9a1cc1367 100644 --- a/lib/asn/support/asn1prefix.py +++ b/lib/asn/support/asn1prefix.py @@ -123,7 +123,11 @@ for line in in_file: line = structPattern.sub(lambda x: structReplacements[x.group()], line) line = constantPattern.sub(lambda x: constantReplacements[x.group()], line) line = line.replace('id-S1ap', 'id') - line = re.sub(r'OF\sProtocolIE-SingleContainer\s*{\s*{\s*[\w-]+\s*}\s*}', 'OF S1ap-IE', line) + line = line.replace('GW-S1ap-S1ap-TransportLayerAddress', 'GW-TransportLayerAddress') + line = line.replace('GW-S1ap-TransportLayerAddress', 'GW-TransportLayerAddress') + line = line.replace('SourceMME-S1ap-S1ap-GUMMEI', 'SourceMME-GUMMEI') + line = line.replace('SourceMME-S1ap-GUMMEI', 'SourceMME-GUMMEI') +# line = re.sub(r'OF\sProtocolIE-SingleContainer\s*{\s*{\s*[\w-]+\s*}\s*}', 'OF S1ap-IE', line) out_file.write(line) in_file.close() diff --git a/lib/asn/support/asn1tostruct.py b/lib/asn/support/asn1tostruct.py index d3f035764..95397713b 100644 --- a/lib/asn/support/asn1tostruct.py +++ b/lib/asn/support/asn1tostruct.py @@ -352,7 +352,7 @@ f.write("#endif /* %s_IES_DEFS_H_ */\n\n" % (fileprefix.upper())) #Generate Decode functions f = open(outdir + fileprefix + '_decoder.c', 'w') outputHeaderToFile(f, filename) -f.write("#include \"%s_common.h\"\n#include \"%s_ies_defs.h\"\n#include \"log.h\"\n\n" % (fileprefix, fileprefix)) +f.write("#define TRACE_MODULE s1ap_decoder\n#include \"%s_common.h\"\n#include \"%s_ies_defs.h\"\n#include \"core_debug.h\"\n\n" % (fileprefix, fileprefix)) for key in iesDefs: if key in ieofielist.values(): continue @@ -386,7 +386,7 @@ for key in iesDefs: if len(iesDefs[key]["ies"]) != 0: f.write(" assert(%s != NULL);\n\n" % (lowerFirstCamelWord(re.sub('-', '_', key)))) - f.write(" OAILOG_DEBUG (LOG_%s, \"Decoding message %s (%%s:%%d)\\n\", __FILE__, __LINE__);\n\n" % (fileprefix.upper(), re.sub('-', '_', keyName))) + f.write(" d_trace(3, \"Decoding message %s (%%s:%%d)\\n\", __FILE__, __LINE__);\n\n" % re.sub('-', '_', keyName)) f.write(" ANY_to_type_aper(any_p, &asn_DEF_%s, (void**)&%s_p);\n\n" % (asn1cStruct, asn1cStructfirstlower)) f.write(" for (i = 0; i < %s_p->%slist.count; i++) {\n" % (asn1cStructfirstlower, iesaccess)) f.write(" %s_IE_t *ie_p;\n" % (fileprefix[0].upper() + fileprefix[1:])) @@ -411,7 +411,7 @@ for key in iesDefs: f.write(" %s->presenceMask |= %s_%s_PRESENT;\n" % (lowerFirstCamelWord(re.sub('-', '_', key)), keyupperunderscore, ieupperunderscore)) f.write(" tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_%s, (void**)&%s_p);\n" % (ietypeunderscore, lowerFirstCamelWord(ietypesubst))) f.write(" if (tempDecoded < 0 || %s_p == NULL) {\n" % (lowerFirstCamelWord(ietypesubst))) - f.write(" OAILOG_ERROR (LOG_%s, \"Decoding of IE %s failed\\n\");\n" % (fileprefix.upper(), ienameunderscore)) + f.write(" d_error(\"Decoding of IE %s failed\\n\");\n" % (ienameunderscore)) f.write(" if (%s_p)\n" % (lowerFirstCamelWord(ietypesubst))) f.write(" ASN_STRUCT_FREE(asn_DEF_%s, %s_p);\n" % (ietypeunderscore, lowerFirstCamelWord(ietypesubst))) f.write(" return -1;\n") @@ -421,7 +421,7 @@ for key in iesDefs: f.write(" xer_fprint(stdout, &asn_DEF_%s, %s_p);\n" % (ietypeunderscore, lowerFirstCamelWord(ietypesubst))) if ie[2] in ieofielist.keys(): f.write(" if (%s_decode_%s(&%s->%s, %s_p) < 0) {\n" % (fileprefix, ietypeunderscore.lower(), lowerFirstCamelWord(re.sub('-', '_', key)), ienameunderscore, lowerFirstCamelWord(ietypesubst))) - f.write(" OAILOG_ERROR (LOG_%s, \"Decoding of encapsulated IE %s failed\\n\");\n" % (fileprefix.upper(), lowerFirstCamelWord(ietypesubst))) + f.write(" d_error(\"Decoding of encapsulated IE %s failed\\n\");\n" % (lowerFirstCamelWord(ietypesubst))) f.write(" ASN_STRUCT_FREE(asn_DEF_%s, %s_p);\n" % (ietypeunderscore, lowerFirstCamelWord(ietypesubst))) f.write(" }\n") else: @@ -429,7 +429,7 @@ for key in iesDefs: #f.write(" ASN_STRUCT_FREE(asn_DEF_%s, %s_p);\n" % (ietypeunderscore, lowerFirstCamelWord(ietypesubst))) f.write(" } break;\n") f.write(" default:\n") - f.write(" OAILOG_ERROR (LOG_%s, \"Unknown protocol IE id (%%d) for message %s\\n\", (int)ie_p->id);\n" % (fileprefix.upper(), re.sub('-', '_', structName.lower()))) + f.write(" d_error(\"Unknown protocol IE id (%%d) for message %s\\n\", (int)ie_p->id);\n" % (re.sub('-', '_', structName.lower()))) f.write(" return -1;\n") f.write(" }\n") f.write(" }\n") @@ -462,7 +462,7 @@ for key in iesDefs: f.write(" %s_t *%s_p = NULL;\n" % (re.sub('-', '_', ie[2]), lowerFirstCamelWord(re.sub('-', '', ie[2])))) f.write(" tempDecoded = ANY_to_type_aper(&ie_p->value, &asn_DEF_%s, (void**)&%s_p);\n" % (re.sub('-', '_', ie[2]), lowerFirstCamelWord(re.sub('-', '', ie[2])))) f.write(" if (tempDecoded < 0 || %s_p == NULL) {\n" % (lowerFirstCamelWord(re.sub('-', '', ie[2])))) - f.write(" OAILOG_ERROR (LOG_%s, \"Decoding of IE %s for message %s failed\\n\");\n" % (fileprefix.upper(), ienameunderscore, re.sub('-', '_', keyname))) + f.write(" d_error(\"Decoding of IE %s for message %s failed\\n\");\n" % (ienameunderscore, re.sub('-', '_', keyname))) f.write(" if (%s_p)\n" % (lowerFirstCamelWord(re.sub('-', '', ie[2])))) #f.write(" free(%s_p);\n" % (lowerFirstCamelWord(re.sub('-', '', ie[2])))) f.write(" ASN_STRUCT_FREE(asn_DEF_%s, %s_p);\n" % (re.sub('-', '_', ie[2]), lowerFirstCamelWord(re.sub('-', '', ie[2])))) @@ -475,7 +475,7 @@ for key in iesDefs: re.sub('IEs', '', lowerFirstCamelWord(re.sub('-', '_', key))), lowerFirstCamelWord(re.sub('-', '', ie[2])))) f.write(" } break;\n") f.write(" default:\n") - f.write(" OAILOG_ERROR (LOG_%s, \"Unknown protocol IE id (%%d) for message %s\\n\", (int)ie_p->id);\n" % (fileprefix.upper(), re.sub('-', '_', structName.lower()))) + f.write(" d_error(\"Unknown protocol IE id (%%d) for message %s\\n\", (int)ie_p->id);\n" % (re.sub('-', '_', structName.lower()))) f.write(" return -1;\n") f.write(" }\n") f.write(" }\n") @@ -646,19 +646,19 @@ xer_encode_local(asn_TYPE_descriptor_t *td, void *sptr, mname = td->xml_tag; mlen = strlen(mname); - _i_ASN_TEXT_INDENT(0, indent); - _ASN_CALLBACK3("<", 1, mname, mlen, ">", 1); + ASN__TEXT_INDENT(0, indent); + ASN__CALLBACK3("<", 1, mname, mlen, ">", 1); tmper = td->xer_encoder(td, sptr, indent + 1, XER_F_BASIC, cb, app_key); if(tmper.encoded == -1) return tmper; - _ASN_CALLBACK3("\\n", xcan); + ASN__CALLBACK3("\\n", xcan); er.encoded = 4 + xcan + (2 * mlen) + tmper.encoded; - _ASN_ENCODED_OK(er); + ASN__ENCODED_OK(er); cb_failed: - _ASN_ENCODE_FAILED; + ASN__ENCODE_FAILED; } """) @@ -726,7 +726,7 @@ for (key, value) in iesDefs.items(): f.write(" cb(\" \\n\", %d, app_key);\n" % (key, len(" \n" % (key)))) f.write(" cb(\"\\n\", %d, app_key);\n" % (key, len("\n" % (key)))) - f.write(" _ASN_ENCODED_OK(er);\n") + f.write(" ASN__ENCODED_OK(er);\n") #if key not in ieofielist.values(): #f.write("cb_failed:\n") #f.write(" return er;\n")