diff options
author | Harald Welte <laforge@gnumonks.org> | 2015-12-17 23:17:21 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2015-12-18 13:35:58 +0100 |
commit | 93690184b0f44d1436189d1504409a26dbbe8157 (patch) | |
tree | 35a9936c2d06ba3e00eccbc468ef439acd0ceec0 /src/ranap/RANAP_SDU-ParameterItem.c | |
parent | 091039d47e619c01979a4d6fb278b7fb0528e29d (diff) |
RANAP: Split FormatInformationParameter / SDUParameterItem
The definition of the above data types as per 3GPP specs results in a
SEQUENCE_OF() an anonymous structure, which is slightly inconvenient to
use. So let's split the SEQUENCE OF part and the actual definition of
the item in separate types.
Diffstat (limited to 'src/ranap/RANAP_SDU-ParameterItem.c')
-rw-r--r-- | src/ranap/RANAP_SDU-ParameterItem.c | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/src/ranap/RANAP_SDU-ParameterItem.c b/src/ranap/RANAP_SDU-ParameterItem.c new file mode 100644 index 0000000..8dda924 --- /dev/null +++ b/src/ranap/RANAP_SDU-ParameterItem.c @@ -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_SDU-ParameterItem.h" + +static asn_TYPE_member_t asn_MBR_RANAP_SDU_ParameterItem_1[] = { + { ATF_POINTER, 1, offsetof(struct RANAP_SDU_ParameterItem, sDU_ErrorRatio), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANAP_SDU_ErrorRatio, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sDU-ErrorRatio" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANAP_SDU_ParameterItem, residualBitErrorRatio), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANAP_ResidualBitErrorRatio, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "residualBitErrorRatio" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANAP_SDU_ParameterItem, deliveryOfErroneousSDU), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANAP_DeliveryOfErroneousSDU, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "deliveryOfErroneousSDU" + }, + { ATF_POINTER, 2, offsetof(struct RANAP_SDU_ParameterItem, sDU_FormatInformationParameters), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANAP_SDU_FormatInformationParameters, + 0, /* Defer constraints checking to the member type */ + 0, /* No PER visible constraints */ + 0, + "sDU-FormatInformationParameters" + }, + { ATF_POINTER, 1, offsetof(struct RANAP_SDU_ParameterItem, 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_SDU_ParameterItem_oms_1[] = { 0, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_RANAP_SDU_ParameterItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANAP_SDU_ParameterItem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sDU-ErrorRatio */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* residualBitErrorRatio */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* deliveryOfErroneousSDU */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* sDU-FormatInformationParameters */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RANAP_SDU_ParameterItem_specs_1 = { + sizeof(struct RANAP_SDU_ParameterItem), + offsetof(struct RANAP_SDU_ParameterItem, _asn_ctx), + asn_MAP_RANAP_SDU_ParameterItem_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_RANAP_SDU_ParameterItem_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* Start extensions */ + 6 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_RANAP_SDU_ParameterItem = { + "RANAP_SDU-ParameterItem", + "RANAP_SDU-ParameterItem", + 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_SDU_ParameterItem_tags_1, + sizeof(asn_DEF_RANAP_SDU_ParameterItem_tags_1) + /sizeof(asn_DEF_RANAP_SDU_ParameterItem_tags_1[0]), /* 1 */ + asn_DEF_RANAP_SDU_ParameterItem_tags_1, /* Same as above */ + sizeof(asn_DEF_RANAP_SDU_ParameterItem_tags_1) + /sizeof(asn_DEF_RANAP_SDU_ParameterItem_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_RANAP_SDU_ParameterItem_1, + 5, /* Elements count */ + &asn_SPC_RANAP_SDU_ParameterItem_specs_1 /* Additional specs */ +}; + |