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_AuthorisedPLMNs.c b/src/ranap/RANAP_AuthorisedPLMNs.c
index 0c9db50..1615045 100644
--- a/src/ranap/RANAP_AuthorisedPLMNs.c
+++ b/src/ranap/RANAP_AuthorisedPLMNs.c
@@ -11,8 +11,8 @@
{ APC_CONSTRAINED, 5, 5, 1l, 32l } /* (SIZE(1..32)) */,
0, 0 /* No PER value map */
};
-static asn_TYPE_member_t asn_MBR_MemberA_2[] = {
- { ATF_NOFLAGS, 0, offsetof(struct MemberA, pLMNidentity),
+static asn_TYPE_member_t asn_MBR_MemberC_2[] = {
+ { ATF_NOFLAGS, 0, offsetof(struct MemberC, pLMNidentity),
(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_PLMNidentity,
@@ -21,7 +21,7 @@
0,
"pLMNidentity"
},
- { ATF_POINTER, 2, offsetof(struct MemberA, authorisedSNAsList),
+ { ATF_POINTER, 2, offsetof(struct MemberC, authorisedSNAsList),
(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_AuthorisedSNAs,
@@ -30,7 +30,7 @@
0,
"authorisedSNAsList"
},
- { ATF_POINTER, 1, offsetof(struct MemberA, iE_Extensions),
+ { ATF_POINTER, 1, offsetof(struct MemberC, iE_Extensions),
(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-1, /* IMPLICIT tag at current level */
&asn_DEF_RANAP_IE_Extensions,
@@ -40,27 +40,27 @@
"iE-Extensions"
},
};
-static const int asn_MAP_MemberA_oms_2[] = { 1, 2 };
-static const ber_tlv_tag_t asn_DEF_MemberA_tags_2[] = {
+static const int asn_MAP_MemberC_oms_2[] = { 1, 2 };
+static const ber_tlv_tag_t asn_DEF_MemberC_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_MemberC_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_MemberA_specs_2 = {
- sizeof(struct MemberA),
- offsetof(struct MemberA, _asn_ctx),
- asn_MAP_MemberA_tag2el_2,
+static asn_SEQUENCE_specifics_t asn_SPC_MemberC_specs_2 = {
+ sizeof(struct MemberC),
+ offsetof(struct MemberC, _asn_ctx),
+ asn_MAP_MemberC_tag2el_2,
3, /* Count of tags in the map */
- asn_MAP_MemberA_oms_2, /* Optional members */
+ asn_MAP_MemberC_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_MemberA_2 = {
+asn_TYPE_descriptor_t asn_DEF_MemberC_2 = {
"SEQUENCE",
"SEQUENCE",
SEQUENCE_free,
@@ -75,23 +75,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_MemberC_tags_2,
+ sizeof(asn_DEF_MemberC_tags_2)
+ /sizeof(asn_DEF_MemberC_tags_2[0]), /* 1 */
+ asn_DEF_MemberC_tags_2, /* Same as above */
+ sizeof(asn_DEF_MemberC_tags_2)
+ /sizeof(asn_DEF_MemberC_tags_2[0]), /* 1 */
0, /* No PER visible constraints */
- asn_MBR_MemberA_2,
+ asn_MBR_MemberC_2,
3, /* Elements count */
- &asn_SPC_MemberA_specs_2 /* Additional specs */
+ &asn_SPC_MemberC_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_MemberA_2,
+ &asn_DEF_MemberC_2,
0, /* Defer constraints checking to the member type */
0, /* No PER visible constraints */
0,