One further RANAP hacking session
This is not development, it is random trial and error hacking. I really
hate the fact that we have no useful asn.1 code generator and need to
work with hacks like asn1tostruct.py and asn1c without information
object classes :/
This commit is a one-day-long iteration of trial+error, manually editing
and adding the .asn source of RANAP until we get something that in the
end at least compiles and links. Do I trust the resulting code? No.
But we have no alternative :(
diff --git a/src/ranap/RANAP_RABParametersList.c b/src/ranap/RANAP_RABParametersList.c
index d9193c3..5e9288f 100644
--- a/src/ranap/RANAP_RABParametersList.c
+++ b/src/ranap/RANAP_RABParametersList.c
@@ -11,8 +11,8 @@
{ APC_CONSTRAINED, 8, 8, 1l, 256l } /* (SIZE(1..256)) */,
0, 0 /* No PER value map */
};
-static asn_TYPE_member_t asn_MBR_MemberA_2[] = {
- { ATF_NOFLAGS, 0, offsetof(struct MemberA, rab_Id),
+static asn_TYPE_member_t asn_MBR_MemberB_2[] = {
+ { ATF_NOFLAGS, 0, offsetof(struct MemberB, rab_Id),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_RAB_ID,
@@ -21,7 +21,7 @@
0,
"rab-Id"
},
- { ATF_NOFLAGS, 0, offsetof(struct MemberA, cn_domain),
+ { ATF_NOFLAGS, 0, offsetof(struct MemberB, cn_domain),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_CN_DomainIndicator,
@@ -30,7 +30,7 @@
0,
"cn-domain"
},
- { ATF_POINTER, 3, offsetof(struct MemberA, rabDataVolumeReport),
+ { ATF_POINTER, 3, offsetof(struct MemberB, rabDataVolumeReport),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_RABDataVolumeReport,
@@ -39,7 +39,7 @@
0,
"rabDataVolumeReport"
},
- { ATF_POINTER, 2, offsetof(struct MemberA, upInformation),
+ { ATF_POINTER, 2, offsetof(struct MemberB, upInformation),
(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_UPInformation,
@@ -48,7 +48,7 @@
0,
"upInformation"
},
- { ATF_POINTER, 1, offsetof(struct MemberA, iE_Extensions),
+ { ATF_POINTER, 1, offsetof(struct MemberB, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
@@ -58,29 +58,29 @@
"iE-Extensions"
},
};
-static const int asn_MAP_MemberA_oms_2[] = { 2, 3, 4 };
-static const ber_tlv_tag_t asn_DEF_MemberA_tags_2[] = {
+static const int asn_MAP_MemberB_oms_2[] = { 2, 3, 4 };
+static const ber_tlv_tag_t asn_DEF_MemberB_tags_2[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
-static const asn_TYPE_tag2member_t asn_MAP_MemberA_tag2el_2[] = {
+static const asn_TYPE_tag2member_t asn_MAP_MemberB_tag2el_2[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rab-Id */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cn-domain */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rabDataVolumeReport */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* upInformation */
{ (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
};
-static asn_SEQUENCE_specifics_t asn_SPC_MemberA_specs_2 = {
- sizeof(struct MemberA),
- offsetof(struct MemberA, _asn_ctx),
- asn_MAP_MemberA_tag2el_2,
+static asn_SEQUENCE_specifics_t asn_SPC_MemberB_specs_2 = {
+ sizeof(struct MemberB),
+ offsetof(struct MemberB, _asn_ctx),
+ asn_MAP_MemberB_tag2el_2,
5, /* Count of tags in the map */
- asn_MAP_MemberA_oms_2, /* Optional members */
+ asn_MAP_MemberB_oms_2, /* Optional members */
3, 0, /* Root/Additions */
4, /* Start extensions */
6 /* Stop extensions */
};
static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_MemberA_2 = {
+asn_TYPE_descriptor_t asn_DEF_MemberB_2 = {
"SEQUENCE",
"SEQUENCE",
SEQUENCE_free,
@@ -95,23 +95,23 @@
SEQUENCE_decode_aper,
SEQUENCE_encode_aper,
0, /* Use generic outmost tag fetcher */
- asn_DEF_MemberA_tags_2,
- sizeof(asn_DEF_MemberA_tags_2)
- /sizeof(asn_DEF_MemberA_tags_2[0]), /* 1 */
- asn_DEF_MemberA_tags_2, /* Same as above */
- sizeof(asn_DEF_MemberA_tags_2)
- /sizeof(asn_DEF_MemberA_tags_2[0]), /* 1 */
+ asn_DEF_MemberB_tags_2,
+ sizeof(asn_DEF_MemberB_tags_2)
+ /sizeof(asn_DEF_MemberB_tags_2[0]), /* 1 */
+ asn_DEF_MemberB_tags_2, /* Same as above */
+ sizeof(asn_DEF_MemberB_tags_2)
+ /sizeof(asn_DEF_MemberB_tags_2[0]), /* 1 */
0, /* No PER visible constraints */
- asn_MBR_MemberA_2,
+ asn_MBR_MemberB_2,
5, /* Elements count */
- &asn_SPC_MemberA_specs_2 /* Additional specs */
+ &asn_SPC_MemberB_specs_2 /* Additional specs */
};
static asn_TYPE_member_t asn_MBR_RANAP_RABParametersList_1[] = {
{ ATF_POINTER, 0, 0,
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
0,
- &asn_DEF_MemberA_2,
+ &asn_DEF_MemberB_2,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,