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.
diff --git a/src/ranap/RANAP_SDU-FormatInformationParameters.c b/src/ranap/RANAP_SDU-FormatInformationParameters.c
index 61713f0..ae9f605 100644
--- a/src/ranap/RANAP_SDU-FormatInformationParameters.c
+++ b/src/ranap/RANAP_SDU-FormatInformationParameters.c
@@ -11,87 +11,11 @@
{ APC_CONSTRAINED, 6, 6, 1l, 64l } /* (SIZE(1..64)) */,
0, 0 /* No PER value map */
};
-static asn_TYPE_member_t asn_MBR_MemberE_2[] = {
- { ATF_POINTER, 3, offsetof(struct MemberE, subflowSDU_Size),
- (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
- -1, /* IMPLICIT tag at current level */
- &asn_DEF_RANAP_SubflowSDU_Size,
- 0, /* Defer constraints checking to the member type */
- 0, /* No PER visible constraints */
- 0,
- "subflowSDU-Size"
- },
- { ATF_POINTER, 2, offsetof(struct MemberE, rAB_SubflowCombinationBitRate),
- (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
- -1, /* IMPLICIT tag at current level */
- &asn_DEF_RANAP_RAB_SubflowCombinationBitRate,
- 0, /* Defer constraints checking to the member type */
- 0, /* No PER visible constraints */
- 0,
- "rAB-SubflowCombinationBitRate"
- },
- { ATF_POINTER, 1, offsetof(struct MemberE, 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_MemberE_oms_2[] = { 0, 1, 2 };
-static const ber_tlv_tag_t asn_DEF_MemberE_tags_2[] = {
- (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_MemberE_tag2el_2[] = {
- { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* subflowSDU-Size */
- { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rAB-SubflowCombinationBitRate */
- { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
-};
-static asn_SEQUENCE_specifics_t asn_SPC_MemberE_specs_2 = {
- sizeof(struct MemberE),
- offsetof(struct MemberE, _asn_ctx),
- asn_MAP_MemberE_tag2el_2,
- 3, /* Count of tags in the map */
- asn_MAP_MemberE_oms_2, /* Optional members */
- 3, 0, /* Root/Additions */
- 2, /* Start extensions */
- 4 /* Stop extensions */
-};
-static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_MemberE_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_MemberE_tags_2,
- sizeof(asn_DEF_MemberE_tags_2)
- /sizeof(asn_DEF_MemberE_tags_2[0]), /* 1 */
- asn_DEF_MemberE_tags_2, /* Same as above */
- sizeof(asn_DEF_MemberE_tags_2)
- /sizeof(asn_DEF_MemberE_tags_2[0]), /* 1 */
- 0, /* No PER visible constraints */
- asn_MBR_MemberE_2,
- 3, /* Elements count */
- &asn_SPC_MemberE_specs_2 /* Additional specs */
-};
-
static asn_TYPE_member_t asn_MBR_RANAP_SDU_FormatInformationParameters_1[] = {
{ ATF_POINTER, 0, 0,
- (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+ -1 /* Ambiguous tag (CHOICE?) */,
0,
- &asn_DEF_MemberE_2,
+ &asn_DEF_RANAP_SDU_FormatInformationParameterItem,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,