add asn1c generated C source for RANAP (and Makefile to regenerate)

This commit is contained in:
Harald Welte 2015-09-10 10:22:03 +02:00
parent 019830c460
commit ee0918971f
993 changed files with 90548 additions and 0 deletions

1031
src/ranap/Makefile Normal file

File diff suppressed because it is too large Load Diff

166
src/ranap/RANAP_APN.c Normal file
View File

@ -0,0 +1,166 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_APN.h"
int
RANAP_APN_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
size = st->size;
if((size >= 1l && size <= 255l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using OCTET_STRING,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_APN_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_OCTET_STRING.free_struct;
td->print_struct = asn_DEF_OCTET_STRING.print_struct;
td->check_constraints = asn_DEF_OCTET_STRING.check_constraints;
td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder;
td->der_encoder = asn_DEF_OCTET_STRING.der_encoder;
td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder;
td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder;
td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder;
td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder;
td->aper_decoder = asn_DEF_OCTET_STRING.aper_decoder;
td->aper_encoder = asn_DEF_OCTET_STRING.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_OCTET_STRING.per_constraints;
td->elements = asn_DEF_OCTET_STRING.elements;
td->elements_count = asn_DEF_OCTET_STRING.elements_count;
td->specifics = asn_DEF_OCTET_STRING.specifics;
}
void
RANAP_APN_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_APN_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_APN_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_APN_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_APN_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) {
RANAP_APN_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_APN_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 8, 8, 1l, 255l } /* (SIZE(1..255)) */,
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_APN_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (4 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_APN = {
"RANAP_APN",
"RANAP_APN",
RANAP_APN_free,
RANAP_APN_print,
RANAP_APN_constraint,
RANAP_APN_decode_ber,
RANAP_APN_encode_der,
RANAP_APN_decode_xer,
RANAP_APN_encode_xer,
RANAP_APN_decode_uper,
RANAP_APN_encode_uper,
RANAP_APN_decode_aper,
RANAP_APN_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_APN_tags_1,
sizeof(asn_DEF_RANAP_APN_tags_1)
/sizeof(asn_DEF_RANAP_APN_tags_1[0]), /* 1 */
asn_DEF_RANAP_APN_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_APN_tags_1)
/sizeof(asn_DEF_RANAP_APN_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_APN_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

42
src/ranap/RANAP_APN.h Normal file
View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_APN_H_
#define _RANAP_APN_H_
#include <asn_application.h>
/* Including external dependencies */
#include <OCTET_STRING.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_APN */
typedef OCTET_STRING_t RANAP_APN_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_APN;
asn_struct_free_f RANAP_APN_free;
asn_struct_print_f RANAP_APN_print;
asn_constr_check_f RANAP_APN_constraint;
ber_type_decoder_f RANAP_APN_decode_ber;
der_type_encoder_f RANAP_APN_encode_der;
xer_type_decoder_f RANAP_APN_decode_xer;
xer_type_encoder_f RANAP_APN_encode_xer;
per_type_decoder_f RANAP_APN_decode_uper;
per_type_encoder_f RANAP_APN_encode_uper;
per_type_decoder_f RANAP_APN_decode_aper;
per_type_encoder_f RANAP_APN_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_APN_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,167 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AccuracyFulfilmentIndicator.h"
int
RANAP_AccuracyFulfilmentIndicator_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_AccuracyFulfilmentIndicator_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_AccuracyFulfilmentIndicator_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_AccuracyFulfilmentIndicator_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_AccuracyFulfilmentIndicator_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_AccuracyFulfilmentIndicator_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) {
RANAP_AccuracyFulfilmentIndicator_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_AccuracyFulfilmentIndicator_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0l, 1l } /* (0..1,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_AccuracyFulfilmentIndicator_value2enum_1[] = {
{ 0, 28, "requested-Accuracy-Fulfilled" },
{ 1, 32, "requested-Accuracy-Not-Fulfilled" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_AccuracyFulfilmentIndicator_enum2value_1[] = {
0, /* requested-Accuracy-Fulfilled(0) */
1 /* requested-Accuracy-Not-Fulfilled(1) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_AccuracyFulfilmentIndicator_specs_1 = {
asn_MAP_RANAP_AccuracyFulfilmentIndicator_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_AccuracyFulfilmentIndicator_enum2value_1, /* N => "tag"; sorted by N */
2, /* Number of elements in the maps */
3, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AccuracyFulfilmentIndicator = {
"RANAP_AccuracyFulfilmentIndicator",
"RANAP_AccuracyFulfilmentIndicator",
RANAP_AccuracyFulfilmentIndicator_free,
RANAP_AccuracyFulfilmentIndicator_print,
RANAP_AccuracyFulfilmentIndicator_constraint,
RANAP_AccuracyFulfilmentIndicator_decode_ber,
RANAP_AccuracyFulfilmentIndicator_encode_der,
RANAP_AccuracyFulfilmentIndicator_decode_xer,
RANAP_AccuracyFulfilmentIndicator_encode_xer,
RANAP_AccuracyFulfilmentIndicator_decode_uper,
RANAP_AccuracyFulfilmentIndicator_encode_uper,
RANAP_AccuracyFulfilmentIndicator_decode_aper,
RANAP_AccuracyFulfilmentIndicator_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1,
sizeof(asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1)
/sizeof(asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1[0]), /* 1 */
asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1)
/sizeof(asn_DEF_RANAP_AccuracyFulfilmentIndicator_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_AccuracyFulfilmentIndicator_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_AccuracyFulfilmentIndicator_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,51 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AccuracyFulfilmentIndicator_H_
#define _RANAP_AccuracyFulfilmentIndicator_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_AccuracyFulfilmentIndicator {
RANAP_AccuracyFulfilmentIndicator_requested_Accuracy_Fulfilled = 0,
RANAP_AccuracyFulfilmentIndicator_requested_Accuracy_Not_Fulfilled = 1
/*
* Enumeration is extensible
*/
} e_RANAP_AccuracyFulfilmentIndicator;
/* RANAP_AccuracyFulfilmentIndicator */
typedef long RANAP_AccuracyFulfilmentIndicator_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AccuracyFulfilmentIndicator;
asn_struct_free_f RANAP_AccuracyFulfilmentIndicator_free;
asn_struct_print_f RANAP_AccuracyFulfilmentIndicator_print;
asn_constr_check_f RANAP_AccuracyFulfilmentIndicator_constraint;
ber_type_decoder_f RANAP_AccuracyFulfilmentIndicator_decode_ber;
der_type_encoder_f RANAP_AccuracyFulfilmentIndicator_encode_der;
xer_type_decoder_f RANAP_AccuracyFulfilmentIndicator_decode_xer;
xer_type_encoder_f RANAP_AccuracyFulfilmentIndicator_encode_xer;
per_type_decoder_f RANAP_AccuracyFulfilmentIndicator_decode_uper;
per_type_encoder_f RANAP_AccuracyFulfilmentIndicator_encode_uper;
per_type_decoder_f RANAP_AccuracyFulfilmentIndicator_decode_aper;
per_type_encoder_f RANAP_AccuracyFulfilmentIndicator_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AccuracyFulfilmentIndicator_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,103 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AllocationOrRetentionPriority.h"
static asn_TYPE_member_t asn_MBR_RANAP_AllocationOrRetentionPriority_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AllocationOrRetentionPriority, priorityLevel),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_PriorityLevel,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"priorityLevel"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AllocationOrRetentionPriority, pre_emptionCapability),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Pre_emptionCapability,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"pre-emptionCapability"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AllocationOrRetentionPriority, pre_emptionVulnerability),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Pre_emptionVulnerability,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"pre-emptionVulnerability"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AllocationOrRetentionPriority, queuingAllowed),
(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_QueuingAllowed,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"queuingAllowed"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_AllocationOrRetentionPriority, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_AllocationOrRetentionPriority_oms_1[] = { 4 };
static const ber_tlv_tag_t asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_AllocationOrRetentionPriority_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* priorityLevel */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pre-emptionCapability */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pre-emptionVulnerability */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* queuingAllowed */
{ (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_AllocationOrRetentionPriority_specs_1 = {
sizeof(struct RANAP_AllocationOrRetentionPriority),
offsetof(struct RANAP_AllocationOrRetentionPriority, _asn_ctx),
asn_MAP_RANAP_AllocationOrRetentionPriority_tag2el_1,
5, /* Count of tags in the map */
asn_MAP_RANAP_AllocationOrRetentionPriority_oms_1, /* Optional members */
1, 0, /* Root/Additions */
4, /* Start extensions */
6 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AllocationOrRetentionPriority = {
"RANAP_AllocationOrRetentionPriority",
"RANAP_AllocationOrRetentionPriority",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1,
sizeof(asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1)
/sizeof(asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1[0]), /* 1 */
asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1)
/sizeof(asn_DEF_RANAP_AllocationOrRetentionPriority_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_AllocationOrRetentionPriority_1,
5, /* Elements count */
&asn_SPC_RANAP_AllocationOrRetentionPriority_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,49 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AllocationOrRetentionPriority_H_
#define _RANAP_AllocationOrRetentionPriority_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_PriorityLevel.h"
#include "RANAP_Pre-emptionCapability.h"
#include "RANAP_Pre-emptionVulnerability.h"
#include "RANAP_QueuingAllowed.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_AllocationOrRetentionPriority */
typedef struct RANAP_AllocationOrRetentionPriority {
RANAP_PriorityLevel_t priorityLevel;
RANAP_Pre_emptionCapability_t pre_emptionCapability;
RANAP_Pre_emptionVulnerability_t pre_emptionVulnerability;
RANAP_QueuingAllowed_t queuingAllowed;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_AllocationOrRetentionPriority_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AllocationOrRetentionPriority;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AllocationOrRetentionPriority_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,73 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf, altExtendedGuaranteedBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altExtendedGuaranteedBitrateType"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf, altExtendedGuaranteedBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altExtendedGuaranteedBitrates"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_oms_1[] = { 1 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altExtendedGuaranteedBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* altExtendedGuaranteedBitrates */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tag2el_1,
2, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_oms_1, /* Optional members */
1, 0, /* Root/Additions */
1, /* Start extensions */
3 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf = {
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf",
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_1,
2, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrates.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_t altExtendedGuaranteedBitrateType;
RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_t *altExtendedGuaranteedBitrates /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_ExtendedGuaranteedBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList = {
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateList",
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_ExtendedGuaranteedBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateList */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList {
A_SEQUENCE_OF(RANAP_ExtendedGuaranteedBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates = {
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrates",
"RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedGuaranteedBitrates */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates {
A_SEQUENCE_OF(RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedGuaranteedBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,73 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf, altExtendedMaxBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altExtendedMaxBitrateType"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf, altExtendedMaxBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altExtendedMaxBitrates"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_oms_1[] = { 1 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altExtendedMaxBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* altExtendedMaxBitrates */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tag2el_1,
2, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_oms_1, /* Optional members */
1, 0, /* Root/Additions */
1, /* Start extensions */
3 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf = {
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateInf",
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_1,
2, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-MaxBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-ExtendedMaxBitrates.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf {
RANAP_Alt_RAB_Parameter_MaxBitrateType_t altExtendedMaxBitrateType;
RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_t *altExtendedMaxBitrates /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_ExtendedMaxBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList = {
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateList",
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_ExtendedMaxBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateList */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList {
A_SEQUENCE_OF(RANAP_ExtendedMaxBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-ExtendedMaxBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates = {
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrates",
"RANAP_Alt-RAB-Parameter-ExtendedMaxBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_H_
#define _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-ExtendedMaxBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-ExtendedMaxBitrates */
typedef struct RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates {
A_SEQUENCE_OF(RANAP_Alt_RAB_Parameter_ExtendedMaxBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_ExtendedMaxBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,73 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf, altGuaranteedBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altGuaranteedBitrateType"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf, altGuaranteedBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altGuaranteedBitrates"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_oms_1[] = { 1 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altGuaranteedBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* altGuaranteedBitrates */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tag2el_1,
2, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_oms_1, /* Optional members */
1, 0, /* Root/Additions */
1, /* Start extensions */
3 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf = {
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateInf",
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_1,
2, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrates.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-GuaranteedBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_t altGuaranteedBitrateType;
RANAP_Alt_RAB_Parameter_GuaranteedBitrates_t *altGuaranteedBitrates /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_GuaranteedBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateList),
offsetof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList = {
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateList",
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_H_
#define _RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_GuaranteedBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-GuaranteedBitrateList */
typedef struct RANAP_Alt_RAB_Parameter_GuaranteedBitrateList {
A_SEQUENCE_OF(RANAP_GuaranteedBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,169 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateType.h"
int
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_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) {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0l, 2l } /* (0..2,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_value2enum_1[] = {
{ 0, 11, "unspecified" },
{ 1, 11, "value-range" },
{ 2, 15, "discrete-values" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_enum2value_1[] = {
2, /* discrete-values(2) */
0, /* unspecified(0) */
1 /* value-range(1) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_specs_1 = {
asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_enum2value_1, /* N => "tag"; sorted by N */
3, /* Number of elements in the maps */
4, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType = {
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateType",
"RANAP_Alt-RAB-Parameter-GuaranteedBitrateType",
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_free,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_print,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_constraint,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_ber,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_der,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_xer,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_xer,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_uper,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_uper,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_aper,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,52 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_H_
#define _RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_Alt_RAB_Parameter_GuaranteedBitrateType {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_unspecified = 0,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_value_range = 1,
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_discrete_values = 2
/*
* Enumeration is extensible
*/
} e_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType;
/* RANAP_Alt-RAB-Parameter-GuaranteedBitrateType */
typedef long RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType;
asn_struct_free_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_free;
asn_struct_print_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_print;
asn_constr_check_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_constraint;
ber_type_decoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_ber;
der_type_encoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_der;
xer_type_decoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_xer;
xer_type_encoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_xer;
per_type_decoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_uper;
per_type_encoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_uper;
per_type_decoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_decode_aper;
per_type_encoder_f RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_GuaranteedBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates = {
"RANAP_Alt-RAB-Parameter-GuaranteedBitrates",
"RANAP_Alt-RAB-Parameter-GuaranteedBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_GuaranteedBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_GuaranteedBitrates_H_
#define _RANAP_Alt_RAB_Parameter_GuaranteedBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-GuaranteedBitrates */
typedef struct RANAP_Alt_RAB_Parameter_GuaranteedBitrates {
A_SEQUENCE_OF(RANAP_Alt_RAB_Parameter_GuaranteedBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_GuaranteedBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_GuaranteedBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,73 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-MaxBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_MaxBitrateInf, altMaxBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altMaxBitrateType"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_MaxBitrateInf, altMaxBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altMaxBitrates"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateInf_oms_1[] = { 1 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altMaxBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* altMaxBitrates */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_MaxBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_MaxBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tag2el_1,
2, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateInf_oms_1, /* Optional members */
1, 0, /* Root/Additions */
1, /* Start extensions */
3 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf = {
"RANAP_Alt-RAB-Parameter-MaxBitrateInf",
"RANAP_Alt-RAB-Parameter-MaxBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrateInf_1,
2, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_MaxBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_MaxBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-MaxBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-MaxBitrates.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-MaxBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_MaxBitrateInf {
RANAP_Alt_RAB_Parameter_MaxBitrateType_t altMaxBitrateType;
RANAP_Alt_RAB_Parameter_MaxBitrates_t *altMaxBitrates /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_MaxBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_MaxBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-MaxBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_MaxBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateList_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_MaxBitrateList),
offsetof(struct RANAP_Alt_RAB_Parameter_MaxBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList = {
"RANAP_Alt-RAB-Parameter-MaxBitrateList",
"RANAP_Alt-RAB-Parameter-MaxBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrateList_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_MaxBitrateList_H_
#define _RANAP_Alt_RAB_Parameter_MaxBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_MaxBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-MaxBitrateList */
typedef struct RANAP_Alt_RAB_Parameter_MaxBitrateList {
A_SEQUENCE_OF(RANAP_MaxBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_MaxBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_MaxBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,169 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-MaxBitrateType.h"
int
RANAP_Alt_RAB_Parameter_MaxBitrateType_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_Alt_RAB_Parameter_MaxBitrateType_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_Alt_RAB_Parameter_MaxBitrateType_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_Alt_RAB_Parameter_MaxBitrateType_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) {
RANAP_Alt_RAB_Parameter_MaxBitrateType_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrateType_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0l, 2l } /* (0..2,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateType_value2enum_1[] = {
{ 0, 11, "unspecified" },
{ 1, 11, "value-range" },
{ 2, 15, "discrete-values" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateType_enum2value_1[] = {
2, /* discrete-values(2) */
0, /* unspecified(0) */
1 /* value-range(1) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateType_specs_1 = {
asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateType_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_Alt_RAB_Parameter_MaxBitrateType_enum2value_1, /* N => "tag"; sorted by N */
3, /* Number of elements in the maps */
4, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType = {
"RANAP_Alt-RAB-Parameter-MaxBitrateType",
"RANAP_Alt-RAB-Parameter-MaxBitrateType",
RANAP_Alt_RAB_Parameter_MaxBitrateType_free,
RANAP_Alt_RAB_Parameter_MaxBitrateType_print,
RANAP_Alt_RAB_Parameter_MaxBitrateType_constraint,
RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_ber,
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_der,
RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_xer,
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_xer,
RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_uper,
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_uper,
RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_aper,
RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrateType_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrateType_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,52 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_MaxBitrateType_H_
#define _RANAP_Alt_RAB_Parameter_MaxBitrateType_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_Alt_RAB_Parameter_MaxBitrateType {
RANAP_Alt_RAB_Parameter_MaxBitrateType_unspecified = 0,
RANAP_Alt_RAB_Parameter_MaxBitrateType_value_range = 1,
RANAP_Alt_RAB_Parameter_MaxBitrateType_discrete_values = 2
/*
* Enumeration is extensible
*/
} e_RANAP_Alt_RAB_Parameter_MaxBitrateType;
/* RANAP_Alt-RAB-Parameter-MaxBitrateType */
typedef long RANAP_Alt_RAB_Parameter_MaxBitrateType_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType;
asn_struct_free_f RANAP_Alt_RAB_Parameter_MaxBitrateType_free;
asn_struct_print_f RANAP_Alt_RAB_Parameter_MaxBitrateType_print;
asn_constr_check_f RANAP_Alt_RAB_Parameter_MaxBitrateType_constraint;
ber_type_decoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_ber;
der_type_encoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_der;
xer_type_decoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_xer;
xer_type_encoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_xer;
per_type_decoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_uper;
per_type_encoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_uper;
per_type_decoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_decode_aper;
per_type_encoder_f RANAP_Alt_RAB_Parameter_MaxBitrateType_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_MaxBitrateType_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-MaxBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_MaxBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_MaxBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates = {
"RANAP_Alt-RAB-Parameter-MaxBitrates",
"RANAP_Alt-RAB-Parameter-MaxBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_MaxBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_MaxBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_MaxBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_MaxBitrates_H_
#define _RANAP_Alt_RAB_Parameter_MaxBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-MaxBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-MaxBitrates */
typedef struct RANAP_Alt_RAB_Parameter_MaxBitrates {
A_SEQUENCE_OF(RANAP_Alt_RAB_Parameter_MaxBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_MaxBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_MaxBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,83 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf, altSupportedGuaranteedBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altSupportedGuaranteedBitrateType"
},
{ ATF_POINTER, 2, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf, altSupportedGuaranteedBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altSupportedGuaranteedBitrates"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_oms_1[] = { 1, 2 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altSupportedGuaranteedBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* altSupportedGuaranteedBitrates */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tag2el_1,
3, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_oms_1, /* Optional members */
2, 0, /* Root/Additions */
2, /* Start extensions */
4 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf = {
"RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrateInf",
"RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_1,
3, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,45 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrates.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf {
RANAP_Alt_RAB_Parameter_GuaranteedBitrateType_t altSupportedGuaranteedBitrateType;
RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_t *altSupportedGuaranteedBitrates /* OPTIONAL */;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_SupportedRAB_ParameterBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates = {
"RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrates",
"RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_H_
#define _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_SupportedRAB-ParameterBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-SupportedGuaranteedBitrates */
typedef struct RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates {
A_SEQUENCE_OF(RANAP_SupportedRAB_ParameterBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_SupportedGuaranteedBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,83 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-SupportedMaxBitrateInf.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf, altSupportedMaxBitrateType),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateType,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altSupportedMaxBitrateType"
},
{ ATF_POINTER, 2, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf, altSupportedMaxBitrates),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altSupportedMaxBitrates"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_oms_1[] = { 1, 2 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altSupportedMaxBitrateType */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* altSupportedMaxBitrates */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf),
offsetof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tag2el_1,
3, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_oms_1, /* Optional members */
2, 0, /* Root/Additions */
2, /* Start extensions */
4 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf = {
"RANAP_Alt-RAB-Parameter-SupportedMaxBitrateInf",
"RANAP_Alt-RAB-Parameter-SupportedMaxBitrateInf",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_1,
3, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,45 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_H_
#define _RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-MaxBitrateType.h"
#include "RANAP_Alt-RAB-Parameter-SupportedMaxBitrates.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-SupportedMaxBitrateInf */
typedef struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf {
RANAP_Alt_RAB_Parameter_MaxBitrateType_t altSupportedMaxBitrateType;
RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_t *altSupportedMaxBitrates /* OPTIONAL */;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_SupportedMaxBitrateInf_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameter-SupportedMaxBitrates.h"
static asn_per_constraints_t asn_PER_type_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 4, 4, 1l, 16l } /* (SIZE(1..16)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_SupportedRAB_ParameterBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrates),
offsetof(struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrates, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates = {
"RANAP_Alt-RAB-Parameter-SupportedMaxBitrates",
"RANAP_Alt-RAB-Parameter-SupportedMaxBitrates",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_constr_1,
asn_MBR_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_1,
1, /* Single element */
&asn_SPC_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_H_
#define _RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_SupportedRAB-ParameterBitrateList.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameter-SupportedMaxBitrates */
typedef struct RANAP_Alt_RAB_Parameter_SupportedMaxBitrates {
A_SEQUENCE_OF(RANAP_SupportedRAB_ParameterBitrateList_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameter_SupportedMaxBitrates;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameter_SupportedMaxBitrates_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,83 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Alt-RAB-Parameters.h"
static asn_TYPE_member_t asn_MBR_RANAP_Alt_RAB_Parameters_1[] = {
{ ATF_POINTER, 3, offsetof(struct RANAP_Alt_RAB_Parameters, altMaxBitrateInf),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_MaxBitrateInf,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altMaxBitrateInf"
},
{ ATF_POINTER, 2, offsetof(struct RANAP_Alt_RAB_Parameters, altGuaranteedBitRateInf),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"altGuaranteedBitRateInf"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Alt_RAB_Parameters, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_Alt_RAB_Parameters_oms_1[] = { 0, 1, 2 };
static const ber_tlv_tag_t asn_DEF_RANAP_Alt_RAB_Parameters_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Alt_RAB_Parameters_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* altMaxBitrateInf */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* altGuaranteedBitRateInf */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Alt_RAB_Parameters_specs_1 = {
sizeof(struct RANAP_Alt_RAB_Parameters),
offsetof(struct RANAP_Alt_RAB_Parameters, _asn_ctx),
asn_MAP_RANAP_Alt_RAB_Parameters_tag2el_1,
3, /* Count of tags in the map */
asn_MAP_RANAP_Alt_RAB_Parameters_oms_1, /* Optional members */
3, 0, /* Root/Additions */
2, /* Start extensions */
4 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameters = {
"RANAP_Alt-RAB-Parameters",
"RANAP_Alt-RAB-Parameters",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Alt_RAB_Parameters_tags_1,
sizeof(asn_DEF_RANAP_Alt_RAB_Parameters_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameters_tags_1[0]), /* 1 */
asn_DEF_RANAP_Alt_RAB_Parameters_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Alt_RAB_Parameters_tags_1)
/sizeof(asn_DEF_RANAP_Alt_RAB_Parameters_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Alt_RAB_Parameters_1,
3, /* Elements count */
&asn_SPC_RANAP_Alt_RAB_Parameters_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,45 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Alt_RAB_Parameters_H_
#define _RANAP_Alt_RAB_Parameters_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Alt-RAB-Parameter-MaxBitrateInf.h"
#include "RANAP_Alt-RAB-Parameter-GuaranteedBitrateInf.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Alt-RAB-Parameters */
typedef struct RANAP_Alt_RAB_Parameters {
RANAP_Alt_RAB_Parameter_MaxBitrateInf_t *altMaxBitrateInf /* OPTIONAL */;
RANAP_Alt_RAB_Parameter_GuaranteedBitrateInf_t *altGuaranteedBitRateInf /* OPTIONAL */;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Alt_RAB_Parameters_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Alt_RAB_Parameters;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Alt_RAB_Parameters_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AlternativeRABConfigurationRequest.h"
int
RANAP_AlternativeRABConfigurationRequest_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_AlternativeRABConfigurationRequest_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_AlternativeRABConfigurationRequest_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_AlternativeRABConfigurationRequest_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_AlternativeRABConfigurationRequest_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_AlternativeRABConfigurationRequest_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) {
RANAP_AlternativeRABConfigurationRequest_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_AlternativeRABConfigurationRequest_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0l, 0l } /* (0..0,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_AlternativeRABConfigurationRequest_value2enum_1[] = {
{ 0, 39, "alternative-RAB-configuration-Requested" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_AlternativeRABConfigurationRequest_enum2value_1[] = {
0 /* alternative-RAB-configuration-Requested(0) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_AlternativeRABConfigurationRequest_specs_1 = {
asn_MAP_RANAP_AlternativeRABConfigurationRequest_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_AlternativeRABConfigurationRequest_enum2value_1, /* N => "tag"; sorted by N */
1, /* Number of elements in the maps */
2, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AlternativeRABConfigurationRequest = {
"RANAP_AlternativeRABConfigurationRequest",
"RANAP_AlternativeRABConfigurationRequest",
RANAP_AlternativeRABConfigurationRequest_free,
RANAP_AlternativeRABConfigurationRequest_print,
RANAP_AlternativeRABConfigurationRequest_constraint,
RANAP_AlternativeRABConfigurationRequest_decode_ber,
RANAP_AlternativeRABConfigurationRequest_encode_der,
RANAP_AlternativeRABConfigurationRequest_decode_xer,
RANAP_AlternativeRABConfigurationRequest_encode_xer,
RANAP_AlternativeRABConfigurationRequest_decode_uper,
RANAP_AlternativeRABConfigurationRequest_encode_uper,
RANAP_AlternativeRABConfigurationRequest_decode_aper,
RANAP_AlternativeRABConfigurationRequest_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1,
sizeof(asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1)
/sizeof(asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1[0]), /* 1 */
asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1)
/sizeof(asn_DEF_RANAP_AlternativeRABConfigurationRequest_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_AlternativeRABConfigurationRequest_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_AlternativeRABConfigurationRequest_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,50 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AlternativeRABConfigurationRequest_H_
#define _RANAP_AlternativeRABConfigurationRequest_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_AlternativeRABConfigurationRequest {
RANAP_AlternativeRABConfigurationRequest_alternative_RAB_configuration_Requested = 0
/*
* Enumeration is extensible
*/
} e_RANAP_AlternativeRABConfigurationRequest;
/* RANAP_AlternativeRABConfigurationRequest */
typedef long RANAP_AlternativeRABConfigurationRequest_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AlternativeRABConfigurationRequest;
asn_struct_free_f RANAP_AlternativeRABConfigurationRequest_free;
asn_struct_print_f RANAP_AlternativeRABConfigurationRequest_print;
asn_constr_check_f RANAP_AlternativeRABConfigurationRequest_constraint;
ber_type_decoder_f RANAP_AlternativeRABConfigurationRequest_decode_ber;
der_type_encoder_f RANAP_AlternativeRABConfigurationRequest_encode_der;
xer_type_decoder_f RANAP_AlternativeRABConfigurationRequest_decode_xer;
xer_type_encoder_f RANAP_AlternativeRABConfigurationRequest_encode_xer;
per_type_decoder_f RANAP_AlternativeRABConfigurationRequest_decode_uper;
per_type_encoder_f RANAP_AlternativeRABConfigurationRequest_encode_uper;
per_type_decoder_f RANAP_AlternativeRABConfigurationRequest_decode_aper;
per_type_encoder_f RANAP_AlternativeRABConfigurationRequest_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AlternativeRABConfigurationRequest_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,72 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AreaIdentity.h"
static asn_per_constraints_t asn_PER_type_RANAP_AreaIdentity_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0l, 1l } /* (0..1,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_AreaIdentity_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AreaIdentity, choice.sAI),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_SAI,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"sAI"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_AreaIdentity, choice.geographicalArea),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+1, /* EXPLICIT tag at current level */
&asn_DEF_RANAP_GeographicalArea,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"geographicalArea"
},
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_AreaIdentity_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sAI */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* geographicalArea */
};
static asn_CHOICE_specifics_t asn_SPC_RANAP_AreaIdentity_specs_1 = {
sizeof(struct RANAP_AreaIdentity),
offsetof(struct RANAP_AreaIdentity, _asn_ctx),
offsetof(struct RANAP_AreaIdentity, present),
sizeof(((struct RANAP_AreaIdentity *)0)->present),
asn_MAP_RANAP_AreaIdentity_tag2el_1,
2, /* Count of tags in the map */
0,
2 /* Extensions start */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AreaIdentity = {
"RANAP_AreaIdentity",
"RANAP_AreaIdentity",
CHOICE_free,
CHOICE_print,
CHOICE_constraint,
CHOICE_decode_ber,
CHOICE_encode_der,
CHOICE_decode_xer,
CHOICE_encode_xer,
CHOICE_decode_uper,
CHOICE_encode_uper,
CHOICE_decode_aper,
CHOICE_encode_aper,
CHOICE_outmost_tag,
0, /* No effective tags (pointer) */
0, /* No effective tags (count) */
0, /* No tags (pointer) */
0, /* No tags (count) */
&asn_PER_type_RANAP_AreaIdentity_constr_1,
asn_MBR_RANAP_AreaIdentity_1,
2, /* Elements count */
&asn_SPC_RANAP_AreaIdentity_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,55 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AreaIdentity_H_
#define _RANAP_AreaIdentity_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_SAI.h"
#include "RANAP_GeographicalArea.h"
#include <constr_CHOICE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_AreaIdentity_PR {
RANAP_AreaIdentity_PR_NOTHING, /* No components present */
RANAP_AreaIdentity_PR_sAI,
RANAP_AreaIdentity_PR_geographicalArea,
/* Extensions may appear below */
} RANAP_AreaIdentity_PR;
/* RANAP_AreaIdentity */
typedef struct RANAP_AreaIdentity {
RANAP_AreaIdentity_PR present;
union RANAP_AreaIdentity_u {
RANAP_SAI_t sAI;
RANAP_GeographicalArea_t geographicalArea;
/*
* This type is extensible,
* possible extensions are below.
*/
} choice;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_AreaIdentity_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AreaIdentity;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AreaIdentity_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Ass-RAB-Parameter-ExtendedGuaranteedBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_ExtendedGuaranteedBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_specs_1 = {
sizeof(struct RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList),
offsetof(struct RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList = {
"RANAP_Ass-RAB-Parameter-ExtendedGuaranteedBitrateList",
"RANAP_Ass-RAB-Parameter-ExtendedGuaranteedBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_constr_1,
asn_MBR_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_H_
#define _RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_ExtendedGuaranteedBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Ass-RAB-Parameter-ExtendedGuaranteedBitrateList */
typedef struct RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList {
A_SEQUENCE_OF(RANAP_ExtendedGuaranteedBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Ass_RAB_Parameter_ExtendedGuaranteedBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Ass-RAB-Parameter-ExtendedMaxBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_ExtendedMaxBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_specs_1 = {
sizeof(struct RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList),
offsetof(struct RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList = {
"RANAP_Ass-RAB-Parameter-ExtendedMaxBitrateList",
"RANAP_Ass-RAB-Parameter-ExtendedMaxBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_constr_1,
asn_MBR_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_H_
#define _RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_ExtendedMaxBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Ass-RAB-Parameter-ExtendedMaxBitrateList */
typedef struct RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList {
A_SEQUENCE_OF(RANAP_ExtendedMaxBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Ass_RAB_Parameter_ExtendedMaxBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Ass-RAB-Parameter-GuaranteedBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_GuaranteedBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_specs_1 = {
sizeof(struct RANAP_Ass_RAB_Parameter_GuaranteedBitrateList),
offsetof(struct RANAP_Ass_RAB_Parameter_GuaranteedBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList = {
"RANAP_Ass-RAB-Parameter-GuaranteedBitrateList",
"RANAP_Ass-RAB-Parameter-GuaranteedBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_constr_1,
asn_MBR_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_H_
#define _RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_GuaranteedBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Ass-RAB-Parameter-GuaranteedBitrateList */
typedef struct RANAP_Ass_RAB_Parameter_GuaranteedBitrateList {
A_SEQUENCE_OF(RANAP_GuaranteedBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Ass-RAB-Parameter-MaxBitrateList.h"
static asn_per_constraints_t asn_PER_type_RANAP_Ass_RAB_Parameter_MaxBitrateList_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 1, 1, 1l, 2l } /* (SIZE(1..2)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Ass_RAB_Parameter_MaxBitrateList_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_MaxBitrate,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_Ass_RAB_Parameter_MaxBitrateList_specs_1 = {
sizeof(struct RANAP_Ass_RAB_Parameter_MaxBitrateList),
offsetof(struct RANAP_Ass_RAB_Parameter_MaxBitrateList, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList = {
"RANAP_Ass-RAB-Parameter-MaxBitrateList",
"RANAP_Ass-RAB-Parameter-MaxBitrateList",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1,
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1[0]), /* 1 */
asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_Ass_RAB_Parameter_MaxBitrateList_constr_1,
asn_MBR_RANAP_Ass_RAB_Parameter_MaxBitrateList_1,
1, /* Single element */
&asn_SPC_RANAP_Ass_RAB_Parameter_MaxBitrateList_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Ass_RAB_Parameter_MaxBitrateList_H_
#define _RANAP_Ass_RAB_Parameter_MaxBitrateList_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_MaxBitrate.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Ass-RAB-Parameter-MaxBitrateList */
typedef struct RANAP_Ass_RAB_Parameter_MaxBitrateList {
A_SEQUENCE_OF(RANAP_MaxBitrate_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Ass_RAB_Parameter_MaxBitrateList_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Ass_RAB_Parameter_MaxBitrateList_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,83 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Ass-RAB-Parameters.h"
static asn_TYPE_member_t asn_MBR_RANAP_Ass_RAB_Parameters_1[] = {
{ ATF_POINTER, 3, offsetof(struct RANAP_Ass_RAB_Parameters, assMaxBitrateInf),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Ass_RAB_Parameter_MaxBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"assMaxBitrateInf"
},
{ ATF_POINTER, 2, offsetof(struct RANAP_Ass_RAB_Parameters, assGuaranteedBitRateInf),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_Ass_RAB_Parameter_GuaranteedBitrateList,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"assGuaranteedBitRateInf"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_Ass_RAB_Parameters, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_Ass_RAB_Parameters_oms_1[] = { 0, 1, 2 };
static const ber_tlv_tag_t asn_DEF_RANAP_Ass_RAB_Parameters_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Ass_RAB_Parameters_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* assMaxBitrateInf */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* assGuaranteedBitRateInf */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_Ass_RAB_Parameters_specs_1 = {
sizeof(struct RANAP_Ass_RAB_Parameters),
offsetof(struct RANAP_Ass_RAB_Parameters, _asn_ctx),
asn_MAP_RANAP_Ass_RAB_Parameters_tag2el_1,
3, /* Count of tags in the map */
asn_MAP_RANAP_Ass_RAB_Parameters_oms_1, /* Optional members */
3, 0, /* Root/Additions */
2, /* Start extensions */
4 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameters = {
"RANAP_Ass-RAB-Parameters",
"RANAP_Ass-RAB-Parameters",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_Ass_RAB_Parameters_tags_1,
sizeof(asn_DEF_RANAP_Ass_RAB_Parameters_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameters_tags_1[0]), /* 1 */
asn_DEF_RANAP_Ass_RAB_Parameters_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_Ass_RAB_Parameters_tags_1)
/sizeof(asn_DEF_RANAP_Ass_RAB_Parameters_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_Ass_RAB_Parameters_1,
3, /* Elements count */
&asn_SPC_RANAP_Ass_RAB_Parameters_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,45 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Ass_RAB_Parameters_H_
#define _RANAP_Ass_RAB_Parameters_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_Ass-RAB-Parameter-MaxBitrateList.h"
#include "RANAP_Ass-RAB-Parameter-GuaranteedBitrateList.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_Ass-RAB-Parameters */
typedef struct RANAP_Ass_RAB_Parameters {
RANAP_Ass_RAB_Parameter_MaxBitrateList_t *assMaxBitrateInf /* OPTIONAL */;
RANAP_Ass_RAB_Parameter_GuaranteedBitrateList_t *assGuaranteedBitRateInf /* OPTIONAL */;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Ass_RAB_Parameters_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Ass_RAB_Parameters;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Ass_RAB_Parameters_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,135 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AuthorisedPLMNs.h"
static asn_per_constraints_t asn_PER_type_RANAP_AuthorisedPLMNs_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 5, 5, 1l, 32l } /* (SIZE(1..32)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_Member_2[] = {
{ ATF_NOFLAGS, 0, offsetof(struct Member, pLMNidentity),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_PLMNidentity,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"pLMNidentity"
},
{ ATF_POINTER, 2, offsetof(struct Member, authorisedSNAsList),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_AuthorisedSNAs,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"authorisedSNAsList"
},
{ ATF_POINTER, 1, offsetof(struct Member, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_Member_oms_2[] = { 1, 2 };
static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNidentity */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* authorisedSNAsList */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
sizeof(struct Member),
offsetof(struct Member, _asn_ctx),
asn_MAP_Member_tag2el_2,
3, /* Count of tags in the map */
asn_MAP_Member_oms_2, /* Optional members */
2, 0, /* Root/Additions */
2, /* Start extensions */
4 /* Stop extensions */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_Member_2 = {
"SEQUENCE",
"SEQUENCE",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_Member_tags_2,
sizeof(asn_DEF_Member_tags_2)
/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
asn_DEF_Member_tags_2, /* Same as above */
sizeof(asn_DEF_Member_tags_2)
/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_Member_2,
3, /* Elements count */
&asn_SPC_Member_specs_2 /* Additional specs */
};
static asn_TYPE_member_t asn_MBR_RANAP_AuthorisedPLMNs_1[] = {
{ ATF_POINTER, 0, 0,
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
0,
&asn_DEF_Member_2,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_AuthorisedPLMNs_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_AuthorisedPLMNs_specs_1 = {
sizeof(struct RANAP_AuthorisedPLMNs),
offsetof(struct RANAP_AuthorisedPLMNs, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AuthorisedPLMNs = {
"RANAP_AuthorisedPLMNs",
"RANAP_AuthorisedPLMNs",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_AuthorisedPLMNs_tags_1,
sizeof(asn_DEF_RANAP_AuthorisedPLMNs_tags_1)
/sizeof(asn_DEF_RANAP_AuthorisedPLMNs_tags_1[0]), /* 1 */
asn_DEF_RANAP_AuthorisedPLMNs_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_AuthorisedPLMNs_tags_1)
/sizeof(asn_DEF_RANAP_AuthorisedPLMNs_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_AuthorisedPLMNs_constr_1,
asn_MBR_RANAP_AuthorisedPLMNs_1,
1, /* Single element */
&asn_SPC_RANAP_AuthorisedPLMNs_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,52 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AuthorisedPLMNs_H_
#define _RANAP_AuthorisedPLMNs_H_
#include <asn_application.h>
/* Including external dependencies */
#include <asn_SEQUENCE_OF.h>
#include "RANAP_PLMNidentity.h"
#include "RANAP_AuthorisedSNAs.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_AuthorisedPLMNs */
typedef struct RANAP_AuthorisedPLMNs {
A_SEQUENCE_OF(struct Member {
RANAP_PLMNidentity_t pLMNidentity;
RANAP_AuthorisedSNAs_t *authorisedSNAsList /* OPTIONAL */;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} ) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_AuthorisedPLMNs_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AuthorisedPLMNs;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AuthorisedPLMNs_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_AuthorisedSNAs.h"
static asn_per_constraints_t asn_PER_type_RANAP_AuthorisedSNAs_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 16, -1, 1l, 65536l } /* (SIZE(1..65536)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_AuthorisedSNAs_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_SNAC,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_AuthorisedSNAs_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_AuthorisedSNAs_specs_1 = {
sizeof(struct RANAP_AuthorisedSNAs),
offsetof(struct RANAP_AuthorisedSNAs, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_AuthorisedSNAs = {
"RANAP_AuthorisedSNAs",
"RANAP_AuthorisedSNAs",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_AuthorisedSNAs_tags_1,
sizeof(asn_DEF_RANAP_AuthorisedSNAs_tags_1)
/sizeof(asn_DEF_RANAP_AuthorisedSNAs_tags_1[0]), /* 1 */
asn_DEF_RANAP_AuthorisedSNAs_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_AuthorisedSNAs_tags_1)
/sizeof(asn_DEF_RANAP_AuthorisedSNAs_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_AuthorisedSNAs_constr_1,
asn_MBR_RANAP_AuthorisedSNAs_1,
1, /* Single element */
&asn_SPC_RANAP_AuthorisedSNAs_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_AuthorisedSNAs_H_
#define _RANAP_AuthorisedSNAs_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_SNAC.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_AuthorisedSNAs */
typedef struct RANAP_AuthorisedSNAs {
A_SEQUENCE_OF(RANAP_SNAC_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_AuthorisedSNAs_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_AuthorisedSNAs;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_AuthorisedSNAs_H_ */
#include <asn_internal.h>

166
src/ranap/RANAP_BindingID.c Normal file
View File

@ -0,0 +1,166 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_BindingID.h"
int
RANAP_BindingID_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
size = st->size;
if((size == 4l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using OCTET_STRING,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_BindingID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_OCTET_STRING.free_struct;
td->print_struct = asn_DEF_OCTET_STRING.print_struct;
td->check_constraints = asn_DEF_OCTET_STRING.check_constraints;
td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder;
td->der_encoder = asn_DEF_OCTET_STRING.der_encoder;
td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder;
td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder;
td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder;
td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder;
td->aper_decoder = asn_DEF_OCTET_STRING.aper_decoder;
td->aper_encoder = asn_DEF_OCTET_STRING.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_OCTET_STRING.per_constraints;
td->elements = asn_DEF_OCTET_STRING.elements;
td->elements_count = asn_DEF_OCTET_STRING.elements_count;
td->specifics = asn_DEF_OCTET_STRING.specifics;
}
void
RANAP_BindingID_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_BindingID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_BindingID_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_BindingID_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_BindingID_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) {
RANAP_BindingID_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_BindingID_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 4l, 4l } /* (SIZE(4..4)) */,
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_BindingID_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (4 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_BindingID = {
"RANAP_BindingID",
"RANAP_BindingID",
RANAP_BindingID_free,
RANAP_BindingID_print,
RANAP_BindingID_constraint,
RANAP_BindingID_decode_ber,
RANAP_BindingID_encode_der,
RANAP_BindingID_decode_xer,
RANAP_BindingID_encode_xer,
RANAP_BindingID_decode_uper,
RANAP_BindingID_encode_uper,
RANAP_BindingID_decode_aper,
RANAP_BindingID_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_BindingID_tags_1,
sizeof(asn_DEF_RANAP_BindingID_tags_1)
/sizeof(asn_DEF_RANAP_BindingID_tags_1[0]), /* 1 */
asn_DEF_RANAP_BindingID_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_BindingID_tags_1)
/sizeof(asn_DEF_RANAP_BindingID_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_BindingID_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_BindingID_H_
#define _RANAP_BindingID_H_
#include <asn_application.h>
/* Including external dependencies */
#include <OCTET_STRING.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_BindingID */
typedef OCTET_STRING_t RANAP_BindingID_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_BindingID;
asn_struct_free_f RANAP_BindingID_free;
asn_struct_print_f RANAP_BindingID_print;
asn_constr_check_f RANAP_BindingID_constraint;
ber_type_decoder_f RANAP_BindingID_decode_ber;
der_type_encoder_f RANAP_BindingID_encode_der;
xer_type_decoder_f RANAP_BindingID_decode_xer;
xer_type_encoder_f RANAP_BindingID_encode_xer;
per_type_decoder_f RANAP_BindingID_decode_uper;
per_type_encoder_f RANAP_BindingID_encode_uper;
per_type_decoder_f RANAP_BindingID_decode_aper;
per_type_encoder_f RANAP_BindingID_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_BindingID_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,189 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_BroadcastAssistanceDataDecipheringKeys.h"
static int
memb_cipheringKeyFlag_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
if(st->size > 0) {
/* Size in bits */
size = 8 * st->size - (st->bits_unused & 0x07);
} else {
size = 0;
}
if((size == 1l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
static int
memb_currentDecipheringKey_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
if(st->size > 0) {
/* Size in bits */
size = 8 * st->size - (st->bits_unused & 0x07);
} else {
size = 0;
}
if((size == 56l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
static int
memb_nextDecipheringKey_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
if(st->size > 0) {
/* Size in bits */
size = 8 * st->size - (st->bits_unused & 0x07);
} else {
size = 0;
}
if((size == 56l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
static asn_per_constraints_t asn_PER_memb_cipheringKeyFlag_constr_2 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 1l, 1l } /* (SIZE(1..1)) */,
0, 0 /* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_currentDecipheringKey_constr_3 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 56l, 56l } /* (SIZE(56..56)) */,
0, 0 /* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_nextDecipheringKey_constr_4 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 56l, 56l } /* (SIZE(56..56)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_BroadcastAssistanceDataDecipheringKeys_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_BroadcastAssistanceDataDecipheringKeys, cipheringKeyFlag),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_BIT_STRING,
memb_cipheringKeyFlag_constraint_1,
&asn_PER_memb_cipheringKeyFlag_constr_2,
0,
"cipheringKeyFlag"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_BroadcastAssistanceDataDecipheringKeys, currentDecipheringKey),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_BIT_STRING,
memb_currentDecipheringKey_constraint_1,
&asn_PER_memb_currentDecipheringKey_constr_3,
0,
"currentDecipheringKey"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_BroadcastAssistanceDataDecipheringKeys, nextDecipheringKey),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_BIT_STRING,
memb_nextDecipheringKey_constraint_1,
&asn_PER_memb_nextDecipheringKey_constr_4,
0,
"nextDecipheringKey"
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_BroadcastAssistanceDataDecipheringKeys_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cipheringKeyFlag */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* currentDecipheringKey */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nextDecipheringKey */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_BroadcastAssistanceDataDecipheringKeys_specs_1 = {
sizeof(struct RANAP_BroadcastAssistanceDataDecipheringKeys),
offsetof(struct RANAP_BroadcastAssistanceDataDecipheringKeys, _asn_ctx),
asn_MAP_RANAP_BroadcastAssistanceDataDecipheringKeys_tag2el_1,
3, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */
2, /* Start extensions */
4 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys = {
"RANAP_BroadcastAssistanceDataDecipheringKeys",
"RANAP_BroadcastAssistanceDataDecipheringKeys",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1,
sizeof(asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1)
/sizeof(asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1[0]), /* 1 */
asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1)
/sizeof(asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_BroadcastAssistanceDataDecipheringKeys_1,
3, /* Elements count */
&asn_SPC_RANAP_BroadcastAssistanceDataDecipheringKeys_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_BroadcastAssistanceDataDecipheringKeys_H_
#define _RANAP_BroadcastAssistanceDataDecipheringKeys_H_
#include <asn_application.h>
/* Including external dependencies */
#include <BIT_STRING.h>
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_BroadcastAssistanceDataDecipheringKeys */
typedef struct RANAP_BroadcastAssistanceDataDecipheringKeys {
BIT_STRING_t cipheringKeyFlag;
BIT_STRING_t currentDecipheringKey;
BIT_STRING_t nextDecipheringKey;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_BroadcastAssistanceDataDecipheringKeys_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_BroadcastAssistanceDataDecipheringKeys;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_BroadcastAssistanceDataDecipheringKeys_H_ */
#include <asn_internal.h>

93
src/ranap/RANAP_CGI.c Normal file
View File

@ -0,0 +1,93 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CGI.h"
static asn_TYPE_member_t asn_MBR_RANAP_CGI_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_CGI, pLMNidentity),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_PLMNidentity,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"pLMNidentity"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_CGI, lAC),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_LAC,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"lAC"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_CGI, cI),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CI,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"cI"
},
{ ATF_POINTER, 1, offsetof(struct RANAP_CGI, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"iE-Extensions"
},
};
static const int asn_MAP_RANAP_CGI_oms_1[] = { 3 };
static const ber_tlv_tag_t asn_DEF_RANAP_CGI_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_CGI_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNidentity */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* lAC */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cI */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_CGI_specs_1 = {
sizeof(struct RANAP_CGI),
offsetof(struct RANAP_CGI, _asn_ctx),
asn_MAP_RANAP_CGI_tag2el_1,
4, /* Count of tags in the map */
asn_MAP_RANAP_CGI_oms_1, /* Optional members */
1, 0, /* Root/Additions */
-1, /* Start extensions */
-1 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CGI = {
"RANAP_CGI",
"RANAP_CGI",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CGI_tags_1,
sizeof(asn_DEF_RANAP_CGI_tags_1)
/sizeof(asn_DEF_RANAP_CGI_tags_1[0]), /* 1 */
asn_DEF_RANAP_CGI_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CGI_tags_1)
/sizeof(asn_DEF_RANAP_CGI_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_CGI_1,
4, /* Elements count */
&asn_SPC_RANAP_CGI_specs_1 /* Additional specs */
};

43
src/ranap/RANAP_CGI.h Normal file
View File

@ -0,0 +1,43 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CGI_H_
#define _RANAP_CGI_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_PLMNidentity.h"
#include "RANAP_LAC.h"
#include "RANAP_CI.h"
#include "RANAP_IE-Extensions.h"
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CGI */
typedef struct RANAP_CGI {
RANAP_PLMNidentity_t pLMNidentity;
RANAP_LAC_t lAC;
RANAP_CI_t cI;
RANAP_IE_Extensions_t *iE_Extensions /* OPTIONAL */;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_CGI_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CGI;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CGI_H_ */
#include <asn_internal.h>

166
src/ranap/RANAP_CI.c Normal file
View File

@ -0,0 +1,166 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CI.h"
int
RANAP_CI_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
size = st->size;
if((size == 2l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using OCTET_STRING,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CI_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_OCTET_STRING.free_struct;
td->print_struct = asn_DEF_OCTET_STRING.print_struct;
td->check_constraints = asn_DEF_OCTET_STRING.check_constraints;
td->ber_decoder = asn_DEF_OCTET_STRING.ber_decoder;
td->der_encoder = asn_DEF_OCTET_STRING.der_encoder;
td->xer_decoder = asn_DEF_OCTET_STRING.xer_decoder;
td->xer_encoder = asn_DEF_OCTET_STRING.xer_encoder;
td->uper_decoder = asn_DEF_OCTET_STRING.uper_decoder;
td->uper_encoder = asn_DEF_OCTET_STRING.uper_encoder;
td->aper_decoder = asn_DEF_OCTET_STRING.aper_decoder;
td->aper_encoder = asn_DEF_OCTET_STRING.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_OCTET_STRING.per_constraints;
td->elements = asn_DEF_OCTET_STRING.elements;
td->elements_count = asn_DEF_OCTET_STRING.elements_count;
td->specifics = asn_DEF_OCTET_STRING.specifics;
}
void
RANAP_CI_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CI_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CI_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CI_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CI_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) {
RANAP_CI_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CI_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 2l, 2l } /* (SIZE(2..2)) */,
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CI_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (4 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CI = {
"RANAP_CI",
"RANAP_CI",
RANAP_CI_free,
RANAP_CI_print,
RANAP_CI_constraint,
RANAP_CI_decode_ber,
RANAP_CI_encode_der,
RANAP_CI_decode_xer,
RANAP_CI_encode_xer,
RANAP_CI_decode_uper,
RANAP_CI_encode_uper,
RANAP_CI_decode_aper,
RANAP_CI_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CI_tags_1,
sizeof(asn_DEF_RANAP_CI_tags_1)
/sizeof(asn_DEF_RANAP_CI_tags_1[0]), /* 1 */
asn_DEF_RANAP_CI_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CI_tags_1)
/sizeof(asn_DEF_RANAP_CI_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CI_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

42
src/ranap/RANAP_CI.h Normal file
View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CI_H_
#define _RANAP_CI_H_
#include <asn_application.h>
/* Including external dependencies */
#include <OCTET_STRING.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CI */
typedef OCTET_STRING_t RANAP_CI_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CI;
asn_struct_free_f RANAP_CI_free;
asn_struct_print_f RANAP_CI_print;
asn_constr_check_f RANAP_CI_constraint;
ber_type_decoder_f RANAP_CI_decode_ber;
der_type_encoder_f RANAP_CI_encode_der;
xer_type_decoder_f RANAP_CI_decode_xer;
xer_type_encoder_f RANAP_CI_encode_xer;
per_type_decoder_f RANAP_CI_decode_uper;
per_type_encoder_f RANAP_CI_encode_uper;
per_type_decoder_f RANAP_CI_decode_aper;
per_type_encoder_f RANAP_CI_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CI_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,145 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-PDU"
* found in "../../asn1/ranap/RANAP-PDU.asn"
*/
#include "RANAP_CN-DeactivateTrace.h"
static int
memb_cN_DeactivateTrace_ies_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
/* Determine the number of elements */
size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
if((size <= 65535l)) {
/* Perform validation of the inner elements */
return td->check_constraints(td, sptr, ctfailcb, app_key);
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
static asn_per_constraints_t asn_PER_type_cN_DeactivateTrace_ies_constr_2 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 16, 16, 0l, 65535l } /* (SIZE(0..65535)) */,
0, 0 /* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_cN_DeactivateTrace_ies_constr_2 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 16, 16, 0l, 65535l } /* (SIZE(0..65535)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_cN_DeactivateTrace_ies_2[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_IE,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_cN_DeactivateTrace_ies_tags_2[] = {
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_cN_DeactivateTrace_ies_specs_2 = {
sizeof(struct cN_DeactivateTrace_ies),
offsetof(struct cN_DeactivateTrace_ies, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_cN_DeactivateTrace_ies_2 = {
"cN-DeactivateTrace-ies",
"cN-DeactivateTrace-ies",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_cN_DeactivateTrace_ies_tags_2,
sizeof(asn_DEF_cN_DeactivateTrace_ies_tags_2)
/sizeof(asn_DEF_cN_DeactivateTrace_ies_tags_2[0]) - 1, /* 1 */
asn_DEF_cN_DeactivateTrace_ies_tags_2, /* Same as above */
sizeof(asn_DEF_cN_DeactivateTrace_ies_tags_2)
/sizeof(asn_DEF_cN_DeactivateTrace_ies_tags_2[0]), /* 2 */
&asn_PER_type_cN_DeactivateTrace_ies_constr_2,
asn_MBR_cN_DeactivateTrace_ies_2,
1, /* Single element */
&asn_SPC_cN_DeactivateTrace_ies_specs_2 /* Additional specs */
};
static asn_TYPE_member_t asn_MBR_RANAP_CN_DeactivateTrace_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_CN_DeactivateTrace, cN_DeactivateTrace_ies),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
0,
&asn_DEF_cN_DeactivateTrace_ies_2,
memb_cN_DeactivateTrace_ies_constraint_1,
&asn_PER_memb_cN_DeactivateTrace_ies_constr_2,
0,
"cN-DeactivateTrace-ies"
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_CN_DeactivateTrace_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_CN_DeactivateTrace_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cN-DeactivateTrace-ies */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_CN_DeactivateTrace_specs_1 = {
sizeof(struct RANAP_CN_DeactivateTrace),
offsetof(struct RANAP_CN_DeactivateTrace, _asn_ctx),
asn_MAP_RANAP_CN_DeactivateTrace_tag2el_1,
1, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */
0, /* Start extensions */
2 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CN_DeactivateTrace = {
"RANAP_CN-DeactivateTrace",
"RANAP_CN-DeactivateTrace",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CN_DeactivateTrace_tags_1,
sizeof(asn_DEF_RANAP_CN_DeactivateTrace_tags_1)
/sizeof(asn_DEF_RANAP_CN_DeactivateTrace_tags_1[0]), /* 1 */
asn_DEF_RANAP_CN_DeactivateTrace_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CN_DeactivateTrace_tags_1)
/sizeof(asn_DEF_RANAP_CN_DeactivateTrace_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_CN_DeactivateTrace_1,
1, /* Elements count */
&asn_SPC_RANAP_CN_DeactivateTrace_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,48 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-PDU"
* found in "../../asn1/ranap/RANAP-PDU.asn"
*/
#ifndef _RANAP_CN_DeactivateTrace_H_
#define _RANAP_CN_DeactivateTrace_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_IE.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CN-DeactivateTrace */
typedef struct RANAP_CN_DeactivateTrace {
struct cN_DeactivateTrace_ies {
A_SEQUENCE_OF(RANAP_IE_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} cN_DeactivateTrace_ies;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_CN_DeactivateTrace_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CN_DeactivateTrace;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CN_DeactivateTrace_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CN-DomainIndicator.h"
int
RANAP_CN_DomainIndicator_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_CN_DomainIndicator_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CN_DomainIndicator_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CN_DomainIndicator_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CN_DomainIndicator_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CN_DomainIndicator_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) {
RANAP_CN_DomainIndicator_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CN_DomainIndicator_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 1, 1, 0l, 1l } /* (0..1) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_CN_DomainIndicator_value2enum_1[] = {
{ 0, 9, "cs-domain" },
{ 1, 9, "ps-domain" }
};
static const unsigned int asn_MAP_RANAP_CN_DomainIndicator_enum2value_1[] = {
0, /* cs-domain(0) */
1 /* ps-domain(1) */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_CN_DomainIndicator_specs_1 = {
asn_MAP_RANAP_CN_DomainIndicator_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_CN_DomainIndicator_enum2value_1, /* N => "tag"; sorted by N */
2, /* Number of elements in the maps */
0, /* Enumeration is not extensible */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_CN_DomainIndicator_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CN_DomainIndicator = {
"RANAP_CN-DomainIndicator",
"RANAP_CN-DomainIndicator",
RANAP_CN_DomainIndicator_free,
RANAP_CN_DomainIndicator_print,
RANAP_CN_DomainIndicator_constraint,
RANAP_CN_DomainIndicator_decode_ber,
RANAP_CN_DomainIndicator_encode_der,
RANAP_CN_DomainIndicator_decode_xer,
RANAP_CN_DomainIndicator_encode_xer,
RANAP_CN_DomainIndicator_decode_uper,
RANAP_CN_DomainIndicator_encode_uper,
RANAP_CN_DomainIndicator_decode_aper,
RANAP_CN_DomainIndicator_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CN_DomainIndicator_tags_1,
sizeof(asn_DEF_RANAP_CN_DomainIndicator_tags_1)
/sizeof(asn_DEF_RANAP_CN_DomainIndicator_tags_1[0]), /* 1 */
asn_DEF_RANAP_CN_DomainIndicator_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CN_DomainIndicator_tags_1)
/sizeof(asn_DEF_RANAP_CN_DomainIndicator_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CN_DomainIndicator_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_CN_DomainIndicator_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,48 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CN_DomainIndicator_H_
#define _RANAP_CN_DomainIndicator_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CN_DomainIndicator {
RANAP_CN_DomainIndicator_cs_domain = 0,
RANAP_CN_DomainIndicator_ps_domain = 1
} e_RANAP_CN_DomainIndicator;
/* RANAP_CN-DomainIndicator */
typedef long RANAP_CN_DomainIndicator_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CN_DomainIndicator;
asn_struct_free_f RANAP_CN_DomainIndicator_free;
asn_struct_print_f RANAP_CN_DomainIndicator_print;
asn_constr_check_f RANAP_CN_DomainIndicator_constraint;
ber_type_decoder_f RANAP_CN_DomainIndicator_decode_ber;
der_type_encoder_f RANAP_CN_DomainIndicator_encode_der;
xer_type_decoder_f RANAP_CN_DomainIndicator_decode_xer;
xer_type_encoder_f RANAP_CN_DomainIndicator_encode_xer;
per_type_decoder_f RANAP_CN_DomainIndicator_decode_uper;
per_type_encoder_f RANAP_CN_DomainIndicator_encode_uper;
per_type_decoder_f RANAP_CN_DomainIndicator_decode_aper;
per_type_encoder_f RANAP_CN_DomainIndicator_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CN_DomainIndicator_H_ */
#include <asn_internal.h>

165
src/ranap/RANAP_CN-ID.c Normal file
View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CN-ID.h"
int
RANAP_CN_ID_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 0l && value <= 4095l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CN_ID_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CN_ID_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CN_ID_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CN_ID_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CN_ID_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CN_ID_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) {
RANAP_CN_ID_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CN_ID_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 12, 12, 0l, 4095l } /* (0..4095) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CN_ID_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CN_ID = {
"RANAP_CN-ID",
"RANAP_CN-ID",
RANAP_CN_ID_free,
RANAP_CN_ID_print,
RANAP_CN_ID_constraint,
RANAP_CN_ID_decode_ber,
RANAP_CN_ID_encode_der,
RANAP_CN_ID_decode_xer,
RANAP_CN_ID_encode_xer,
RANAP_CN_ID_decode_uper,
RANAP_CN_ID_encode_uper,
RANAP_CN_ID_decode_aper,
RANAP_CN_ID_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CN_ID_tags_1,
sizeof(asn_DEF_RANAP_CN_ID_tags_1)
/sizeof(asn_DEF_RANAP_CN_ID_tags_1[0]), /* 1 */
asn_DEF_RANAP_CN_ID_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CN_ID_tags_1)
/sizeof(asn_DEF_RANAP_CN_ID_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CN_ID_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

42
src/ranap/RANAP_CN-ID.h Normal file
View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CN_ID_H_
#define _RANAP_CN_ID_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CN-ID */
typedef long RANAP_CN_ID_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CN_ID;
asn_struct_free_f RANAP_CN_ID_free;
asn_struct_print_f RANAP_CN_ID_print;
asn_constr_check_f RANAP_CN_ID_constraint;
ber_type_decoder_f RANAP_CN_ID_decode_ber;
der_type_encoder_f RANAP_CN_ID_encode_der;
xer_type_decoder_f RANAP_CN_ID_decode_xer;
xer_type_encoder_f RANAP_CN_ID_encode_xer;
per_type_decoder_f RANAP_CN_ID_decode_uper;
per_type_encoder_f RANAP_CN_ID_encode_uper;
per_type_decoder_f RANAP_CN_ID_decode_aper;
per_type_encoder_f RANAP_CN_ID_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CN_ID_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,145 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-PDU"
* found in "../../asn1/ranap/RANAP-PDU.asn"
*/
#include "RANAP_CN-InvokeTrace.h"
static int
memb_cN_InvokeTrace_ies_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
/* Determine the number of elements */
size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
if((size <= 65535l)) {
/* Perform validation of the inner elements */
return td->check_constraints(td, sptr, ctfailcb, app_key);
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
static asn_per_constraints_t asn_PER_type_cN_InvokeTrace_ies_constr_2 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 16, 16, 0l, 65535l } /* (SIZE(0..65535)) */,
0, 0 /* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_cN_InvokeTrace_ies_constr_2 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 16, 16, 0l, 65535l } /* (SIZE(0..65535)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_cN_InvokeTrace_ies_2[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_IE,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_cN_InvokeTrace_ies_tags_2[] = {
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_cN_InvokeTrace_ies_specs_2 = {
sizeof(struct cN_InvokeTrace_ies),
offsetof(struct cN_InvokeTrace_ies, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_cN_InvokeTrace_ies_2 = {
"cN-InvokeTrace-ies",
"cN-InvokeTrace-ies",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_cN_InvokeTrace_ies_tags_2,
sizeof(asn_DEF_cN_InvokeTrace_ies_tags_2)
/sizeof(asn_DEF_cN_InvokeTrace_ies_tags_2[0]) - 1, /* 1 */
asn_DEF_cN_InvokeTrace_ies_tags_2, /* Same as above */
sizeof(asn_DEF_cN_InvokeTrace_ies_tags_2)
/sizeof(asn_DEF_cN_InvokeTrace_ies_tags_2[0]), /* 2 */
&asn_PER_type_cN_InvokeTrace_ies_constr_2,
asn_MBR_cN_InvokeTrace_ies_2,
1, /* Single element */
&asn_SPC_cN_InvokeTrace_ies_specs_2 /* Additional specs */
};
static asn_TYPE_member_t asn_MBR_RANAP_CN_InvokeTrace_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_CN_InvokeTrace, cN_InvokeTrace_ies),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
0,
&asn_DEF_cN_InvokeTrace_ies_2,
memb_cN_InvokeTrace_ies_constraint_1,
&asn_PER_memb_cN_InvokeTrace_ies_constr_2,
0,
"cN-InvokeTrace-ies"
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_CN_InvokeTrace_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_CN_InvokeTrace_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cN-InvokeTrace-ies */
};
static asn_SEQUENCE_specifics_t asn_SPC_RANAP_CN_InvokeTrace_specs_1 = {
sizeof(struct RANAP_CN_InvokeTrace),
offsetof(struct RANAP_CN_InvokeTrace, _asn_ctx),
asn_MAP_RANAP_CN_InvokeTrace_tag2el_1,
1, /* Count of tags in the map */
0, 0, 0, /* Optional elements (not needed) */
0, /* Start extensions */
2 /* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CN_InvokeTrace = {
"RANAP_CN-InvokeTrace",
"RANAP_CN-InvokeTrace",
SEQUENCE_free,
SEQUENCE_print,
SEQUENCE_constraint,
SEQUENCE_decode_ber,
SEQUENCE_encode_der,
SEQUENCE_decode_xer,
SEQUENCE_encode_xer,
SEQUENCE_decode_uper,
SEQUENCE_encode_uper,
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CN_InvokeTrace_tags_1,
sizeof(asn_DEF_RANAP_CN_InvokeTrace_tags_1)
/sizeof(asn_DEF_RANAP_CN_InvokeTrace_tags_1[0]), /* 1 */
asn_DEF_RANAP_CN_InvokeTrace_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CN_InvokeTrace_tags_1)
/sizeof(asn_DEF_RANAP_CN_InvokeTrace_tags_1[0]), /* 1 */
0, /* No PER visible constraints */
asn_MBR_RANAP_CN_InvokeTrace_1,
1, /* Elements count */
&asn_SPC_RANAP_CN_InvokeTrace_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,48 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-PDU"
* found in "../../asn1/ranap/RANAP-PDU.asn"
*/
#ifndef _RANAP_CN_InvokeTrace_H_
#define _RANAP_CN_InvokeTrace_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_IE.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#include <constr_SEQUENCE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CN-InvokeTrace */
typedef struct RANAP_CN_InvokeTrace {
struct cN_InvokeTrace_ies {
A_SEQUENCE_OF(RANAP_IE_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} cN_InvokeTrace_ies;
/*
* This type is extensible,
* possible extensions are below.
*/
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_CN_InvokeTrace_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CN_InvokeTrace;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CN_InvokeTrace_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,167 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CSFB-Information.h"
int
RANAP_CSFB_Information_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_CSFB_Information_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CSFB_Information_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CSFB_Information_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CSFB_Information_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CSFB_Information_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) {
RANAP_CSFB_Information_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CSFB_Information_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0l, 1l } /* (0..1,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_CSFB_Information_value2enum_1[] = {
{ 0, 4, "csfb" },
{ 1, 18, "csfb-high-priority" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_CSFB_Information_enum2value_1[] = {
0, /* csfb(0) */
1 /* csfb-high-priority(1) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_CSFB_Information_specs_1 = {
asn_MAP_RANAP_CSFB_Information_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_CSFB_Information_enum2value_1, /* N => "tag"; sorted by N */
2, /* Number of elements in the maps */
3, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_CSFB_Information_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CSFB_Information = {
"RANAP_CSFB-Information",
"RANAP_CSFB-Information",
RANAP_CSFB_Information_free,
RANAP_CSFB_Information_print,
RANAP_CSFB_Information_constraint,
RANAP_CSFB_Information_decode_ber,
RANAP_CSFB_Information_encode_der,
RANAP_CSFB_Information_decode_xer,
RANAP_CSFB_Information_encode_xer,
RANAP_CSFB_Information_decode_uper,
RANAP_CSFB_Information_encode_uper,
RANAP_CSFB_Information_decode_aper,
RANAP_CSFB_Information_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CSFB_Information_tags_1,
sizeof(asn_DEF_RANAP_CSFB_Information_tags_1)
/sizeof(asn_DEF_RANAP_CSFB_Information_tags_1[0]), /* 1 */
asn_DEF_RANAP_CSFB_Information_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CSFB_Information_tags_1)
/sizeof(asn_DEF_RANAP_CSFB_Information_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CSFB_Information_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_CSFB_Information_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,51 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CSFB_Information_H_
#define _RANAP_CSFB_Information_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CSFB_Information {
RANAP_CSFB_Information_csfb = 0,
RANAP_CSFB_Information_csfb_high_priority = 1
/*
* Enumeration is extensible
*/
} e_RANAP_CSFB_Information;
/* RANAP_CSFB-Information */
typedef long RANAP_CSFB_Information_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CSFB_Information;
asn_struct_free_f RANAP_CSFB_Information_free;
asn_struct_print_f RANAP_CSFB_Information_print;
asn_constr_check_f RANAP_CSFB_Information_constraint;
ber_type_decoder_f RANAP_CSFB_Information_decode_ber;
der_type_encoder_f RANAP_CSFB_Information_encode_der;
xer_type_decoder_f RANAP_CSFB_Information_decode_xer;
xer_type_encoder_f RANAP_CSFB_Information_encode_xer;
per_type_decoder_f RANAP_CSFB_Information_decode_uper;
per_type_encoder_f RANAP_CSFB_Information_encode_uper;
per_type_decoder_f RANAP_CSFB_Information_decode_aper;
per_type_encoder_f RANAP_CSFB_Information_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CSFB_Information_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,59 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CSG-Id-List.h"
static asn_per_constraints_t asn_PER_type_RANAP_CSG_Id_List_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 8, 8, 1l, 256l } /* (SIZE(1..256)) */,
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_CSG_Id_List_1[] = {
{ ATF_POINTER, 0, 0,
-1 /* Ambiguous tag (CHOICE?) */,
0,
&asn_DEF_RANAP_CSG_Id,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
""
},
};
static const ber_tlv_tag_t asn_DEF_RANAP_CSG_Id_List_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_RANAP_CSG_Id_List_specs_1 = {
sizeof(struct RANAP_CSG_Id_List),
offsetof(struct RANAP_CSG_Id_List, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Id_List = {
"RANAP_CSG-Id-List",
"RANAP_CSG-Id-List",
SEQUENCE_OF_free,
SEQUENCE_OF_print,
SEQUENCE_OF_constraint,
SEQUENCE_OF_decode_ber,
SEQUENCE_OF_encode_der,
SEQUENCE_OF_decode_xer,
SEQUENCE_OF_encode_xer,
SEQUENCE_OF_decode_uper,
SEQUENCE_OF_encode_uper,
SEQUENCE_OF_decode_aper,
SEQUENCE_OF_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CSG_Id_List_tags_1,
sizeof(asn_DEF_RANAP_CSG_Id_List_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Id_List_tags_1[0]), /* 1 */
asn_DEF_RANAP_CSG_Id_List_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CSG_Id_List_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Id_List_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CSG_Id_List_constr_1,
asn_MBR_RANAP_CSG_Id_List_1,
1, /* Single element */
&asn_SPC_RANAP_CSG_Id_List_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,38 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CSG_Id_List_H_
#define _RANAP_CSG_Id_List_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_CSG-Id.h"
#include <asn_SEQUENCE_OF.h>
#include <constr_SEQUENCE_OF.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CSG-Id-List */
typedef struct RANAP_CSG_Id_List {
A_SEQUENCE_OF(RANAP_CSG_Id_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_CSG_Id_List_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Id_List;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CSG_Id_List_H_ */
#include <asn_internal.h>

171
src/ranap/RANAP_CSG-Id.c Normal file
View File

@ -0,0 +1,171 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CSG-Id.h"
int
RANAP_CSG_Id_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
size_t size;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
if(st->size > 0) {
/* Size in bits */
size = 8 * st->size - (st->bits_unused & 0x07);
} else {
size = 0;
}
if((size == 27l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using BIT_STRING,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CSG_Id_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_BIT_STRING.free_struct;
td->print_struct = asn_DEF_BIT_STRING.print_struct;
td->check_constraints = asn_DEF_BIT_STRING.check_constraints;
td->ber_decoder = asn_DEF_BIT_STRING.ber_decoder;
td->der_encoder = asn_DEF_BIT_STRING.der_encoder;
td->xer_decoder = asn_DEF_BIT_STRING.xer_decoder;
td->xer_encoder = asn_DEF_BIT_STRING.xer_encoder;
td->uper_decoder = asn_DEF_BIT_STRING.uper_decoder;
td->uper_encoder = asn_DEF_BIT_STRING.uper_encoder;
td->aper_decoder = asn_DEF_BIT_STRING.aper_decoder;
td->aper_encoder = asn_DEF_BIT_STRING.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_BIT_STRING.per_constraints;
td->elements = asn_DEF_BIT_STRING.elements;
td->elements_count = asn_DEF_BIT_STRING.elements_count;
td->specifics = asn_DEF_BIT_STRING.specifics;
}
void
RANAP_CSG_Id_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CSG_Id_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CSG_Id_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CSG_Id_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CSG_Id_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) {
RANAP_CSG_Id_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CSG_Id_constr_1 GCC_NOTUSED = {
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
{ APC_CONSTRAINED, 0, 0, 27l, 27l } /* (SIZE(27..27)) */,
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CSG_Id_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (3 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Id = {
"RANAP_CSG-Id",
"RANAP_CSG-Id",
RANAP_CSG_Id_free,
RANAP_CSG_Id_print,
RANAP_CSG_Id_constraint,
RANAP_CSG_Id_decode_ber,
RANAP_CSG_Id_encode_der,
RANAP_CSG_Id_decode_xer,
RANAP_CSG_Id_encode_xer,
RANAP_CSG_Id_decode_uper,
RANAP_CSG_Id_encode_uper,
RANAP_CSG_Id_decode_aper,
RANAP_CSG_Id_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CSG_Id_tags_1,
sizeof(asn_DEF_RANAP_CSG_Id_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Id_tags_1[0]), /* 1 */
asn_DEF_RANAP_CSG_Id_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CSG_Id_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Id_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CSG_Id_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

42
src/ranap/RANAP_CSG-Id.h Normal file
View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CSG_Id_H_
#define _RANAP_CSG_Id_H_
#include <asn_application.h>
/* Including external dependencies */
#include <BIT_STRING.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CSG-Id */
typedef BIT_STRING_t RANAP_CSG_Id_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Id;
asn_struct_free_f RANAP_CSG_Id_free;
asn_struct_print_f RANAP_CSG_Id_print;
asn_constr_check_f RANAP_CSG_Id_constraint;
ber_type_decoder_f RANAP_CSG_Id_decode_ber;
der_type_encoder_f RANAP_CSG_Id_encode_der;
xer_type_decoder_f RANAP_CSG_Id_decode_xer;
xer_type_encoder_f RANAP_CSG_Id_encode_xer;
per_type_decoder_f RANAP_CSG_Id_decode_uper;
per_type_encoder_f RANAP_CSG_Id_encode_uper;
per_type_decoder_f RANAP_CSG_Id_decode_aper;
per_type_encoder_f RANAP_CSG_Id_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CSG_Id_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,167 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CSG-Membership-Status.h"
int
RANAP_CSG_Membership_Status_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_NativeEnumerated.check_constraints;
return td->check_constraints(td, sptr, ctfailcb, app_key);
}
/*
* This type is implemented using NativeEnumerated,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeEnumerated.free_struct;
td->print_struct = asn_DEF_NativeEnumerated.print_struct;
td->check_constraints = asn_DEF_NativeEnumerated.check_constraints;
td->ber_decoder = asn_DEF_NativeEnumerated.ber_decoder;
td->der_encoder = asn_DEF_NativeEnumerated.der_encoder;
td->xer_decoder = asn_DEF_NativeEnumerated.xer_decoder;
td->xer_encoder = asn_DEF_NativeEnumerated.xer_encoder;
td->uper_decoder = asn_DEF_NativeEnumerated.uper_decoder;
td->uper_encoder = asn_DEF_NativeEnumerated.uper_encoder;
td->aper_decoder = asn_DEF_NativeEnumerated.aper_decoder;
td->aper_encoder = asn_DEF_NativeEnumerated.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeEnumerated.per_constraints;
td->elements = asn_DEF_NativeEnumerated.elements;
td->elements_count = asn_DEF_NativeEnumerated.elements_count;
/* td->specifics = asn_DEF_NativeEnumerated.specifics; // Defined explicitly */
}
void
RANAP_CSG_Membership_Status_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CSG_Membership_Status_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CSG_Membership_Status_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CSG_Membership_Status_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CSG_Membership_Status_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) {
RANAP_CSG_Membership_Status_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CSG_Membership_Status_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0l, 1l } /* (0..1,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_RANAP_CSG_Membership_Status_value2enum_1[] = {
{ 0, 6, "member" },
{ 1, 10, "non-member" }
/* This list is extensible */
};
static const unsigned int asn_MAP_RANAP_CSG_Membership_Status_enum2value_1[] = {
0, /* member(0) */
1 /* non-member(1) */
/* This list is extensible */
};
static const asn_INTEGER_specifics_t asn_SPC_RANAP_CSG_Membership_Status_specs_1 = {
asn_MAP_RANAP_CSG_Membership_Status_value2enum_1, /* "tag" => N; sorted by tag */
asn_MAP_RANAP_CSG_Membership_Status_enum2value_1, /* N => "tag"; sorted by N */
2, /* Number of elements in the maps */
3, /* Extensions before this member */
1, /* Strict enumeration */
0, /* Native long size */
0
};
static const ber_tlv_tag_t asn_DEF_RANAP_CSG_Membership_Status_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Membership_Status = {
"RANAP_CSG-Membership-Status",
"RANAP_CSG-Membership-Status",
RANAP_CSG_Membership_Status_free,
RANAP_CSG_Membership_Status_print,
RANAP_CSG_Membership_Status_constraint,
RANAP_CSG_Membership_Status_decode_ber,
RANAP_CSG_Membership_Status_encode_der,
RANAP_CSG_Membership_Status_decode_xer,
RANAP_CSG_Membership_Status_encode_xer,
RANAP_CSG_Membership_Status_decode_uper,
RANAP_CSG_Membership_Status_encode_uper,
RANAP_CSG_Membership_Status_decode_aper,
RANAP_CSG_Membership_Status_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CSG_Membership_Status_tags_1,
sizeof(asn_DEF_RANAP_CSG_Membership_Status_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Membership_Status_tags_1[0]), /* 1 */
asn_DEF_RANAP_CSG_Membership_Status_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CSG_Membership_Status_tags_1)
/sizeof(asn_DEF_RANAP_CSG_Membership_Status_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CSG_Membership_Status_constr_1,
0, 0, /* Defined elsewhere */
&asn_SPC_RANAP_CSG_Membership_Status_specs_1 /* Additional specs */
};

View File

@ -0,0 +1,51 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CSG_Membership_Status_H_
#define _RANAP_CSG_Membership_Status_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeEnumerated.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CSG_Membership_Status {
RANAP_CSG_Membership_Status_member = 0,
RANAP_CSG_Membership_Status_non_member = 1
/*
* Enumeration is extensible
*/
} e_RANAP_CSG_Membership_Status;
/* RANAP_CSG-Membership-Status */
typedef long RANAP_CSG_Membership_Status_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CSG_Membership_Status;
asn_struct_free_f RANAP_CSG_Membership_Status_free;
asn_struct_print_f RANAP_CSG_Membership_Status_print;
asn_constr_check_f RANAP_CSG_Membership_Status_constraint;
ber_type_decoder_f RANAP_CSG_Membership_Status_decode_ber;
der_type_encoder_f RANAP_CSG_Membership_Status_encode_der;
xer_type_decoder_f RANAP_CSG_Membership_Status_decode_xer;
xer_type_encoder_f RANAP_CSG_Membership_Status_encode_xer;
per_type_decoder_f RANAP_CSG_Membership_Status_decode_uper;
per_type_encoder_f RANAP_CSG_Membership_Status_encode_uper;
per_type_decoder_f RANAP_CSG_Membership_Status_decode_aper;
per_type_encoder_f RANAP_CSG_Membership_Status_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CSG_Membership_Status_H_ */
#include <asn_internal.h>

122
src/ranap/RANAP_Cause.c Normal file
View File

@ -0,0 +1,122 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_Cause.h"
static asn_per_constraints_t asn_PER_type_RANAP_Cause_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0l, 5l } /* (0..5,...) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static asn_TYPE_member_t asn_MBR_RANAP_Cause_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.radioNetwork),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseRadioNetwork,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"radioNetwork"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.transmissionNetwork),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseTransmissionNetwork,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"transmissionNetwork"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.nAS),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseNAS,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"nAS"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.protocol),
(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseProtocol,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"protocol"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.misc),
(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseMisc,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"misc"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.non_Standard),
(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseNon_Standard,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"non-Standard"
},
{ ATF_NOFLAGS, 0, offsetof(struct RANAP_Cause, choice.radioNetworkExtension),
(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CauseRadioNetworkExtension,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,
"radioNetworkExtension"
},
};
static const asn_TYPE_tag2member_t asn_MAP_RANAP_Cause_tag2el_1[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* radioNetwork */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* transmissionNetwork */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* nAS */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* protocol */
{ (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* misc */
{ (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* non-Standard */
{ (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* radioNetworkExtension */
};
static asn_CHOICE_specifics_t asn_SPC_RANAP_Cause_specs_1 = {
sizeof(struct RANAP_Cause),
offsetof(struct RANAP_Cause, _asn_ctx),
offsetof(struct RANAP_Cause, present),
sizeof(((struct RANAP_Cause *)0)->present),
asn_MAP_RANAP_Cause_tag2el_1,
7, /* Count of tags in the map */
0,
6 /* Extensions start */
};
asn_TYPE_descriptor_t asn_DEF_RANAP_Cause = {
"RANAP_Cause",
"RANAP_Cause",
CHOICE_free,
CHOICE_print,
CHOICE_constraint,
CHOICE_decode_ber,
CHOICE_encode_der,
CHOICE_decode_xer,
CHOICE_encode_xer,
CHOICE_decode_uper,
CHOICE_encode_uper,
CHOICE_decode_aper,
CHOICE_encode_aper,
CHOICE_outmost_tag,
0, /* No effective tags (pointer) */
0, /* No effective tags (count) */
0, /* No tags (pointer) */
0, /* No tags (count) */
&asn_PER_type_RANAP_Cause_constr_1,
asn_MBR_RANAP_Cause_1,
7, /* Elements count */
&asn_SPC_RANAP_Cause_specs_1 /* Additional specs */
};

69
src/ranap/RANAP_Cause.h Normal file
View File

@ -0,0 +1,69 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_Cause_H_
#define _RANAP_Cause_H_
#include <asn_application.h>
/* Including external dependencies */
#include "RANAP_CauseRadioNetwork.h"
#include "RANAP_CauseTransmissionNetwork.h"
#include "RANAP_CauseNAS.h"
#include "RANAP_CauseProtocol.h"
#include "RANAP_CauseMisc.h"
#include "RANAP_CauseNon-Standard.h"
#include "RANAP_CauseRadioNetworkExtension.h"
#include <constr_CHOICE.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_Cause_PR {
RANAP_Cause_PR_NOTHING, /* No components present */
RANAP_Cause_PR_radioNetwork,
RANAP_Cause_PR_transmissionNetwork,
RANAP_Cause_PR_nAS,
RANAP_Cause_PR_protocol,
RANAP_Cause_PR_misc,
RANAP_Cause_PR_non_Standard,
/* Extensions may appear below */
RANAP_Cause_PR_radioNetworkExtension
} RANAP_Cause_PR;
/* RANAP_Cause */
typedef struct RANAP_Cause {
RANAP_Cause_PR present;
union RANAP_Cause_u {
RANAP_CauseRadioNetwork_t radioNetwork;
RANAP_CauseTransmissionNetwork_t transmissionNetwork;
RANAP_CauseNAS_t nAS;
RANAP_CauseProtocol_t protocol;
RANAP_CauseMisc_t misc;
RANAP_CauseNon_Standard_t non_Standard;
/*
* This type is extensible,
* possible extensions are below.
*/
RANAP_CauseRadioNetworkExtension_t radioNetworkExtension;
} choice;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} RANAP_Cause_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_Cause;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_Cause_H_ */
#include <asn_internal.h>

165
src/ranap/RANAP_CauseMisc.c Normal file
View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseMisc.h"
int
RANAP_CauseMisc_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 113l && value <= 128l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseMisc_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseMisc_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseMisc_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseMisc_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseMisc_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseMisc_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) {
RANAP_CauseMisc_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseMisc_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 4, 4, 113l, 128l } /* (113..128) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseMisc_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseMisc = {
"RANAP_CauseMisc",
"RANAP_CauseMisc",
RANAP_CauseMisc_free,
RANAP_CauseMisc_print,
RANAP_CauseMisc_constraint,
RANAP_CauseMisc_decode_ber,
RANAP_CauseMisc_encode_der,
RANAP_CauseMisc_decode_xer,
RANAP_CauseMisc_encode_xer,
RANAP_CauseMisc_decode_uper,
RANAP_CauseMisc_encode_uper,
RANAP_CauseMisc_decode_aper,
RANAP_CauseMisc_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseMisc_tags_1,
sizeof(asn_DEF_RANAP_CauseMisc_tags_1)
/sizeof(asn_DEF_RANAP_CauseMisc_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseMisc_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseMisc_tags_1)
/sizeof(asn_DEF_RANAP_CauseMisc_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseMisc_constr_1,
0, 0, /* Defined elsewhere */
0 /* No specifics */
};

View File

@ -0,0 +1,50 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CauseMisc_H_
#define _RANAP_CauseMisc_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CauseMisc {
RANAP_CauseMisc_om_intervention = 113,
RANAP_CauseMisc_no_resource_available = 114,
RANAP_CauseMisc_unspecified_failure = 115,
RANAP_CauseMisc_network_optimisation = 116
} e_RANAP_CauseMisc;
/* RANAP_CauseMisc */
typedef long RANAP_CauseMisc_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CauseMisc;
asn_struct_free_f RANAP_CauseMisc_free;
asn_struct_print_f RANAP_CauseMisc_print;
asn_constr_check_f RANAP_CauseMisc_constraint;
ber_type_decoder_f RANAP_CauseMisc_decode_ber;
der_type_encoder_f RANAP_CauseMisc_encode_der;
xer_type_decoder_f RANAP_CauseMisc_decode_xer;
xer_type_encoder_f RANAP_CauseMisc_encode_xer;
per_type_decoder_f RANAP_CauseMisc_decode_uper;
per_type_encoder_f RANAP_CauseMisc_encode_uper;
per_type_decoder_f RANAP_CauseMisc_decode_aper;
per_type_encoder_f RANAP_CauseMisc_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CauseMisc_H_ */
#include <asn_internal.h>

165
src/ranap/RANAP_CauseNAS.c Normal file
View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseNAS.h"
int
RANAP_CauseNAS_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 81l && value <= 96l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseNAS_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseNAS_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseNAS_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseNAS_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseNAS_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseNAS_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) {
RANAP_CauseNAS_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseNAS_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 4, 4, 81l, 96l } /* (81..96) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseNAS_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseNAS = {
"RANAP_CauseNAS",
"RANAP_CauseNAS",
RANAP_CauseNAS_free,
RANAP_CauseNAS_print,
RANAP_CauseNAS_constraint,
RANAP_CauseNAS_decode_ber,
RANAP_CauseNAS_encode_der,
RANAP_CauseNAS_decode_xer,
RANAP_CauseNAS_encode_xer,
RANAP_CauseNAS_decode_uper,
RANAP_CauseNAS_encode_uper,
RANAP_CauseNAS_decode_aper,
RANAP_CauseNAS_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseNAS_tags_1,
sizeof(asn_DEF_RANAP_CauseNAS_tags_1)
/sizeof(asn_DEF_RANAP_CauseNAS_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseNAS_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseNAS_tags_1)
/sizeof(asn_DEF_RANAP_CauseNAS_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseNAS_constr_1,
0, 0, /* Defined elsewhere */
0 /* No specifics */
};

View File

@ -0,0 +1,50 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CauseNAS_H_
#define _RANAP_CauseNAS_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CauseNAS {
RANAP_CauseNAS_user_restriction_start_indication = 81,
RANAP_CauseNAS_user_restriction_end_indication = 82,
RANAP_CauseNAS_normal_release = 83,
RANAP_CauseNAS_csg_subscription_expiry = 84
} e_RANAP_CauseNAS;
/* RANAP_CauseNAS */
typedef long RANAP_CauseNAS_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CauseNAS;
asn_struct_free_f RANAP_CauseNAS_free;
asn_struct_print_f RANAP_CauseNAS_print;
asn_constr_check_f RANAP_CauseNAS_constraint;
ber_type_decoder_f RANAP_CauseNAS_decode_ber;
der_type_encoder_f RANAP_CauseNAS_encode_der;
xer_type_decoder_f RANAP_CauseNAS_decode_xer;
xer_type_encoder_f RANAP_CauseNAS_encode_xer;
per_type_decoder_f RANAP_CauseNAS_decode_uper;
per_type_encoder_f RANAP_CauseNAS_encode_uper;
per_type_decoder_f RANAP_CauseNAS_decode_aper;
per_type_encoder_f RANAP_CauseNAS_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CauseNAS_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseNon-Standard.h"
int
RANAP_CauseNon_Standard_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 129l && value <= 256l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseNon_Standard_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseNon_Standard_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseNon_Standard_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseNon_Standard_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseNon_Standard_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) {
RANAP_CauseNon_Standard_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseNon_Standard_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 7, 7, 129l, 256l } /* (129..256) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseNon_Standard_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseNon_Standard = {
"RANAP_CauseNon-Standard",
"RANAP_CauseNon-Standard",
RANAP_CauseNon_Standard_free,
RANAP_CauseNon_Standard_print,
RANAP_CauseNon_Standard_constraint,
RANAP_CauseNon_Standard_decode_ber,
RANAP_CauseNon_Standard_encode_der,
RANAP_CauseNon_Standard_decode_xer,
RANAP_CauseNon_Standard_encode_xer,
RANAP_CauseNon_Standard_decode_uper,
RANAP_CauseNon_Standard_encode_uper,
RANAP_CauseNon_Standard_decode_aper,
RANAP_CauseNon_Standard_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseNon_Standard_tags_1,
sizeof(asn_DEF_RANAP_CauseNon_Standard_tags_1)
/sizeof(asn_DEF_RANAP_CauseNon_Standard_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseNon_Standard_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseNon_Standard_tags_1)
/sizeof(asn_DEF_RANAP_CauseNon_Standard_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseNon_Standard_constr_1,
0, 0, /* No members */
0 /* No specifics */
};

View File

@ -0,0 +1,42 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CauseNon_Standard_H_
#define _RANAP_CauseNon_Standard_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* RANAP_CauseNon-Standard */
typedef long RANAP_CauseNon_Standard_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CauseNon_Standard;
asn_struct_free_f RANAP_CauseNon_Standard_free;
asn_struct_print_f RANAP_CauseNon_Standard_print;
asn_constr_check_f RANAP_CauseNon_Standard_constraint;
ber_type_decoder_f RANAP_CauseNon_Standard_decode_ber;
der_type_encoder_f RANAP_CauseNon_Standard_encode_der;
xer_type_decoder_f RANAP_CauseNon_Standard_decode_xer;
xer_type_encoder_f RANAP_CauseNon_Standard_encode_xer;
per_type_decoder_f RANAP_CauseNon_Standard_decode_uper;
per_type_encoder_f RANAP_CauseNon_Standard_encode_uper;
per_type_decoder_f RANAP_CauseNon_Standard_decode_aper;
per_type_encoder_f RANAP_CauseNon_Standard_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CauseNon_Standard_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseProtocol.h"
int
RANAP_CauseProtocol_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 97l && value <= 112l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseProtocol_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseProtocol_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseProtocol_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseProtocol_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseProtocol_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) {
RANAP_CauseProtocol_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseProtocol_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 4, 4, 97l, 112l } /* (97..112) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseProtocol_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseProtocol = {
"RANAP_CauseProtocol",
"RANAP_CauseProtocol",
RANAP_CauseProtocol_free,
RANAP_CauseProtocol_print,
RANAP_CauseProtocol_constraint,
RANAP_CauseProtocol_decode_ber,
RANAP_CauseProtocol_encode_der,
RANAP_CauseProtocol_decode_xer,
RANAP_CauseProtocol_encode_xer,
RANAP_CauseProtocol_decode_uper,
RANAP_CauseProtocol_encode_uper,
RANAP_CauseProtocol_decode_aper,
RANAP_CauseProtocol_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseProtocol_tags_1,
sizeof(asn_DEF_RANAP_CauseProtocol_tags_1)
/sizeof(asn_DEF_RANAP_CauseProtocol_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseProtocol_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseProtocol_tags_1)
/sizeof(asn_DEF_RANAP_CauseProtocol_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseProtocol_constr_1,
0, 0, /* Defined elsewhere */
0 /* No specifics */
};

View File

@ -0,0 +1,52 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CauseProtocol_H_
#define _RANAP_CauseProtocol_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CauseProtocol {
RANAP_CauseProtocol_transfer_syntax_error = 97,
RANAP_CauseProtocol_semantic_error = 98,
RANAP_CauseProtocol_message_not_compatible_with_receiver_state = 99,
RANAP_CauseProtocol_abstract_syntax_error_reject = 100,
RANAP_CauseProtocol_abstract_syntax_error_ignore_and_notify = 101,
RANAP_CauseProtocol_abstract_syntax_error_falsely_constructed_message = 102
} e_RANAP_CauseProtocol;
/* RANAP_CauseProtocol */
typedef long RANAP_CauseProtocol_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CauseProtocol;
asn_struct_free_f RANAP_CauseProtocol_free;
asn_struct_print_f RANAP_CauseProtocol_print;
asn_constr_check_f RANAP_CauseProtocol_constraint;
ber_type_decoder_f RANAP_CauseProtocol_decode_ber;
der_type_encoder_f RANAP_CauseProtocol_encode_der;
xer_type_decoder_f RANAP_CauseProtocol_decode_xer;
xer_type_encoder_f RANAP_CauseProtocol_encode_xer;
per_type_decoder_f RANAP_CauseProtocol_decode_uper;
per_type_encoder_f RANAP_CauseProtocol_encode_uper;
per_type_decoder_f RANAP_CauseProtocol_decode_aper;
per_type_encoder_f RANAP_CauseProtocol_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CauseProtocol_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseRadioNetwork.h"
int
RANAP_CauseRadioNetwork_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 1l && value <= 64l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseRadioNetwork_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseRadioNetwork_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseRadioNetwork_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseRadioNetwork_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseRadioNetwork_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) {
RANAP_CauseRadioNetwork_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseRadioNetwork_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 6, 6, 1l, 64l } /* (1..64) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseRadioNetwork_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseRadioNetwork = {
"RANAP_CauseRadioNetwork",
"RANAP_CauseRadioNetwork",
RANAP_CauseRadioNetwork_free,
RANAP_CauseRadioNetwork_print,
RANAP_CauseRadioNetwork_constraint,
RANAP_CauseRadioNetwork_decode_ber,
RANAP_CauseRadioNetwork_encode_der,
RANAP_CauseRadioNetwork_decode_xer,
RANAP_CauseRadioNetwork_encode_xer,
RANAP_CauseRadioNetwork_decode_uper,
RANAP_CauseRadioNetwork_encode_uper,
RANAP_CauseRadioNetwork_decode_aper,
RANAP_CauseRadioNetwork_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseRadioNetwork_tags_1,
sizeof(asn_DEF_RANAP_CauseRadioNetwork_tags_1)
/sizeof(asn_DEF_RANAP_CauseRadioNetwork_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseRadioNetwork_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseRadioNetwork_tags_1)
/sizeof(asn_DEF_RANAP_CauseRadioNetwork_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseRadioNetwork_constr_1,
0, 0, /* Defined elsewhere */
0 /* No specifics */
};

View File

@ -0,0 +1,110 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#ifndef _RANAP_CauseRadioNetwork_H_
#define _RANAP_CauseRadioNetwork_H_
#include <asn_application.h>
/* Including external dependencies */
#include <NativeInteger.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Dependencies */
typedef enum RANAP_CauseRadioNetwork {
RANAP_CauseRadioNetwork_rab_pre_empted = 1,
RANAP_CauseRadioNetwork_trelocoverall_expiry = 2,
RANAP_CauseRadioNetwork_trelocprep_expiry = 3,
RANAP_CauseRadioNetwork_treloccomplete_expiry = 4,
RANAP_CauseRadioNetwork_tqueing_expiry = 5,
RANAP_CauseRadioNetwork_relocation_triggered = 6,
RANAP_CauseRadioNetwork_trellocalloc_expiry = 7,
RANAP_CauseRadioNetwork_unable_to_establish_during_relocation = 8,
RANAP_CauseRadioNetwork_unknown_target_rnc = 9,
RANAP_CauseRadioNetwork_relocation_cancelled = 10,
RANAP_CauseRadioNetwork_successful_relocation = 11,
RANAP_CauseRadioNetwork_requested_ciphering_and_or_integrity_protection_algorithms_not_supported = 12,
RANAP_CauseRadioNetwork_conflict_with_already_existing_integrity_protection_and_or_ciphering_information = 13,
RANAP_CauseRadioNetwork_failure_in_the_radio_interface_procedure = 14,
RANAP_CauseRadioNetwork_release_due_to_utran_generated_reason = 15,
RANAP_CauseRadioNetwork_user_inactivity = 16,
RANAP_CauseRadioNetwork_time_critical_relocation = 17,
RANAP_CauseRadioNetwork_requested_traffic_class_not_available = 18,
RANAP_CauseRadioNetwork_invalid_rab_parameters_value = 19,
RANAP_CauseRadioNetwork_requested_maximum_bit_rate_not_available = 20,
RANAP_CauseRadioNetwork_requested_guaranteed_bit_rate_not_available = 21,
RANAP_CauseRadioNetwork_requested_transfer_delay_not_achievable = 22,
RANAP_CauseRadioNetwork_invalid_rab_parameters_combination = 23,
RANAP_CauseRadioNetwork_condition_violation_for_sdu_parameters = 24,
RANAP_CauseRadioNetwork_condition_violation_for_traffic_handling_priority = 25,
RANAP_CauseRadioNetwork_condition_violation_for_guaranteed_bit_rate = 26,
RANAP_CauseRadioNetwork_user_plane_versions_not_supported = 27,
RANAP_CauseRadioNetwork_iu_up_failure = 28,
RANAP_CauseRadioNetwork_relocation_failure_in_target_CN_RNC_or_target_system = 29,
RANAP_CauseRadioNetwork_invalid_RAB_ID = 30,
RANAP_CauseRadioNetwork_no_remaining_rab = 31,
RANAP_CauseRadioNetwork_interaction_with_other_procedure = 32,
RANAP_CauseRadioNetwork_requested_maximum_bit_rate_for_dl_not_available = 33,
RANAP_CauseRadioNetwork_requested_maximum_bit_rate_for_ul_not_available = 34,
RANAP_CauseRadioNetwork_requested_guaranteed_bit_rate_for_dl_not_available = 35,
RANAP_CauseRadioNetwork_requested_guaranteed_bit_rate_for_ul_not_available = 36,
RANAP_CauseRadioNetwork_repeated_integrity_checking_failure = 37,
RANAP_CauseRadioNetwork_requested_request_type_not_supported = 38,
RANAP_CauseRadioNetwork_request_superseded = 39,
RANAP_CauseRadioNetwork_release_due_to_UE_generated_signalling_connection_release = 40,
RANAP_CauseRadioNetwork_resource_optimisation_relocation = 41,
RANAP_CauseRadioNetwork_requested_information_not_available = 42,
RANAP_CauseRadioNetwork_relocation_desirable_for_radio_reasons = 43,
RANAP_CauseRadioNetwork_relocation_not_supported_in_target_RNC_or_target_system = 44,
RANAP_CauseRadioNetwork_directed_retry = 45,
RANAP_CauseRadioNetwork_radio_connection_with_UE_Lost = 46,
RANAP_CauseRadioNetwork_rNC_unable_to_establish_all_RFCs = 47,
RANAP_CauseRadioNetwork_deciphering_keys_not_available = 48,
RANAP_CauseRadioNetwork_dedicated_assistance_data_not_available = 49,
RANAP_CauseRadioNetwork_relocation_target_not_allowed = 50,
RANAP_CauseRadioNetwork_location_reporting_congestion = 51,
RANAP_CauseRadioNetwork_reduce_load_in_serving_cell = 52,
RANAP_CauseRadioNetwork_no_radio_resources_available_in_target_cell = 53,
RANAP_CauseRadioNetwork_gERAN_Iumode_failure = 54,
RANAP_CauseRadioNetwork_access_restricted_due_to_shared_networks = 55,
RANAP_CauseRadioNetwork_incoming_relocation_not_supported_due_to_PUESBINE_feature = 56,
RANAP_CauseRadioNetwork_traffic_load_in_the_target_cell_higher_than_in_the_source_cell = 57,
RANAP_CauseRadioNetwork_mBMS_no_multicast_service_for_this_UE = 58,
RANAP_CauseRadioNetwork_mBMS_unknown_UE_ID = 59,
RANAP_CauseRadioNetwork_successful_MBMS_session_start_no_data_bearer_necessary = 60,
RANAP_CauseRadioNetwork_mBMS_superseded_due_to_NNSF = 61,
RANAP_CauseRadioNetwork_mBMS_UE_linking_already_done = 62,
RANAP_CauseRadioNetwork_mBMS_UE_de_linking_failure_no_existing_UE_linking = 63,
RANAP_CauseRadioNetwork_tMGI_unknown = 64
} e_RANAP_CauseRadioNetwork;
/* RANAP_CauseRadioNetwork */
typedef long RANAP_CauseRadioNetwork_t;
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_RANAP_CauseRadioNetwork;
asn_struct_free_f RANAP_CauseRadioNetwork_free;
asn_struct_print_f RANAP_CauseRadioNetwork_print;
asn_constr_check_f RANAP_CauseRadioNetwork_constraint;
ber_type_decoder_f RANAP_CauseRadioNetwork_decode_ber;
der_type_encoder_f RANAP_CauseRadioNetwork_encode_der;
xer_type_decoder_f RANAP_CauseRadioNetwork_decode_xer;
xer_type_encoder_f RANAP_CauseRadioNetwork_encode_xer;
per_type_decoder_f RANAP_CauseRadioNetwork_decode_uper;
per_type_encoder_f RANAP_CauseRadioNetwork_encode_uper;
per_type_decoder_f RANAP_CauseRadioNetwork_decode_aper;
per_type_encoder_f RANAP_CauseRadioNetwork_encode_aper;
#ifdef __cplusplus
}
#endif
#endif /* _RANAP_CauseRadioNetwork_H_ */
#include <asn_internal.h>

View File

@ -0,0 +1,165 @@
/*
* Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
* From ASN.1 module "RANAP-IEs"
* found in "../../asn1/ranap/RANAP-IEs.asn"
*/
#include "RANAP_CauseRadioNetworkExtension.h"
int
RANAP_CauseRadioNetworkExtension_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
_ASN_CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 257l && value <= 512l)) {
/* Constraint check succeeded */
return 0;
} else {
_ASN_CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->aper_decoder = asn_DEF_NativeInteger.aper_decoder;
td->aper_encoder = asn_DEF_NativeInteger.aper_encoder;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
RANAP_CauseRadioNetworkExtension_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
RANAP_CauseRadioNetworkExtension_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
asn_enc_rval_t
RANAP_CauseRadioNetworkExtension_encode_uper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, per_out);
}
asn_enc_rval_t
RANAP_CauseRadioNetworkExtension_encode_aper(asn_TYPE_descriptor_t *td,
asn_per_constraints_t *constraints,
void *structure, asn_per_outp_t *per_out) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->aper_encoder(td, constraints, structure, per_out);
}
asn_dec_rval_t
RANAP_CauseRadioNetworkExtension_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) {
RANAP_CauseRadioNetworkExtension_1_inherit_TYPE_descriptor(td);
return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
}
static asn_per_constraints_t asn_PER_type_RANAP_CauseRadioNetworkExtension_constr_1 GCC_NOTUSED = {
{ APC_CONSTRAINED, 8, 8, 257l, 512l } /* (257..512) */,
{ APC_UNCONSTRAINED, -1, -1, 0, 0 },
0, 0 /* No PER value map */
};
static const ber_tlv_tag_t asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_RANAP_CauseRadioNetworkExtension = {
"RANAP_CauseRadioNetworkExtension",
"RANAP_CauseRadioNetworkExtension",
RANAP_CauseRadioNetworkExtension_free,
RANAP_CauseRadioNetworkExtension_print,
RANAP_CauseRadioNetworkExtension_constraint,
RANAP_CauseRadioNetworkExtension_decode_ber,
RANAP_CauseRadioNetworkExtension_encode_der,
RANAP_CauseRadioNetworkExtension_decode_xer,
RANAP_CauseRadioNetworkExtension_encode_xer,
RANAP_CauseRadioNetworkExtension_decode_uper,
RANAP_CauseRadioNetworkExtension_encode_uper,
RANAP_CauseRadioNetworkExtension_decode_aper,
RANAP_CauseRadioNetworkExtension_encode_aper,
0, /* Use generic outmost tag fetcher */
asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1,
sizeof(asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1)
/sizeof(asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1[0]), /* 1 */
asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1, /* Same as above */
sizeof(asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1)
/sizeof(asn_DEF_RANAP_CauseRadioNetworkExtension_tags_1[0]), /* 1 */
&asn_PER_type_RANAP_CauseRadioNetworkExtension_constr_1,
0, 0, /* Defined elsewhere */
0 /* No specifics */
};

Some files were not shown because too many files have changed in this diff Show More