Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
asn1c
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
asn1c
Commits
5ab96cda
Commit
5ab96cda
authored
Nov 07, 2005
by
Lev Walkin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
new test for Choice
parent
1c75173e
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
709 additions
and
103 deletions
+709
-103
tests/70-xer-test-OK.asn1
tests/70-xer-test-OK.asn1
+6
-0
tests/70-xer-test-OK.asn1.-EF
tests/70-xer-test-OK.asn1.-EF
+32
-9
tests/70-xer-test-OK.asn1.-P
tests/70-xer-test-OK.asn1.-P
+671
-94
No files found.
tests/70-xer-test-OK.asn1
View file @
5ab96cda
...
@@ -29,6 +29,8 @@ BEGIN
...
@@ -29,6 +29,8 @@ BEGIN
namedSetOfREAL NamedSetOfREAL,
namedSetOfREAL NamedSetOfREAL,
namedSetOfEnums NamedSetOfEnums,
namedSetOfEnums NamedSetOfEnums,
seqOfZuka SeqOfZuka,
seqOfZuka SeqOfZuka,
setOfChoice SetOfChoice,
namedSetOfChoice NamedSetOfChoice,
...
...
}
}
...
@@ -71,5 +73,9 @@ BEGIN
...
@@ -71,5 +73,9 @@ BEGIN
NamedSetOfEnums ::= SET OF name ENUMERATED { one, oneMore }
NamedSetOfEnums ::= SET OF name ENUMERATED { one, oneMore }
SequenceOf ::= SEQUENCE OF id INTEGER { one(1), two(2) }
SequenceOf ::= SEQUENCE OF id INTEGER { one(1), two(2) }
SeqOfZuka ::= SEQUENCE OF zuka NULL
SeqOfZuka ::= SEQUENCE OF zuka NULL
SetOfChoice ::= SET OF SimpleChoice
NamedSetOfChoice ::= SET OF whatever SimpleChoice
SimpleChoice ::= CHOICE { a NULL, b INTEGER }
END
END
tests/70-xer-test-OK.asn1.-EF
View file @
5ab96cda
...
@@ -6,14 +6,19 @@ BEGIN
...
@@ -6,14 +6,19 @@ BEGIN
PDU ::= CHOICE {
PDU ::= CHOICE {
sequence [0] IMPLICIT Sequence,
sequence [0] IMPLICIT Sequence,
set [1] IMPLICIT Set,
set [1] IMPLICIT Set,
se
tOf [2] IMPLICIT Set
Of,
se
quenceOf [2] IMPLICIT Sequence
Of,
sequenceOf [3] IMPLICIT SequenceOf
,
extensibleSet [3] IMPLICIT ExtensibleSet
,
extensibleSe
t [4] IMPLICIT ExtensibleSet
,
extensibleSe
quence [4] IMPLICIT ExtensibleSequence
,
extensibleSequence
[5] IMPLICIT ExtensibleSequence
,
extensibleSequence
2 [5] IMPLICIT ExtensibleSequence2
,
extensibleSequence2 [6] IMPLICIT ExtensibleSequence2
,
setOfNULL [6] IMPLICIT SetOfNULL
,
setOf
NULL [7] IMPLICIT SetOfNUL
L,
setOf
REAL [7] IMPLICIT SetOfREA
L,
setOfEnums [8] IMPLICIT SetOfEnums,
setOfEnums [8] IMPLICIT SetOfEnums,
seqOfZuka [9] IMPLICIT SeqOfZuka,
namedSetOfNULL [9] IMPLICIT NamedSetOfNULL,
namedSetOfREAL [10] IMPLICIT NamedSetOfREAL,
namedSetOfEnums [11] IMPLICIT NamedSetOfEnums,
seqOfZuka [12] IMPLICIT SeqOfZuka,
setOfChoice [13] IMPLICIT SetOfChoice,
namedSetOfChoice [14] IMPLICIT NamedSetOfChoice,
...
...
}
}
...
@@ -51,15 +56,24 @@ ExtensibleSequence2 ::= SEQUENCE {
...
@@ -51,15 +56,24 @@ ExtensibleSequence2 ::= SEQUENCE {
integer [1] IMPLICIT INTEGER OPTIONAL
integer [1] IMPLICIT INTEGER OPTIONAL
}
}
SetOf ::= SET OF REAL
SetOfNULL ::= SET OF NULL
SetOfNULL ::= SET OF NULL
SetOfREAL ::= SET OF REAL
SetOfEnums ::= SET OF ENUMERATED {
SetOfEnums ::= SET OF ENUMERATED {
one(0),
one(0),
oneMore(1)
oneMore(1)
}
}
NamedSetOfNULL ::= SET OF y NULL
NamedSetOfREAL ::= SET OF name REAL
NamedSetOfEnums ::= SET OF name ENUMERATED {
one(0),
oneMore(1)
}
SequenceOf ::= SEQUENCE OF id INTEGER {
SequenceOf ::= SEQUENCE OF id INTEGER {
one(1),
one(1),
two(2)
two(2)
...
@@ -67,4 +81,13 @@ SequenceOf ::= SEQUENCE OF id INTEGER {
...
@@ -67,4 +81,13 @@ SequenceOf ::= SEQUENCE OF id INTEGER {
SeqOfZuka ::= SEQUENCE OF zuka NULL
SeqOfZuka ::= SEQUENCE OF zuka NULL
SetOfChoice ::= SET OF SimpleChoice
NamedSetOfChoice ::= SET OF whatever SimpleChoice
SimpleChoice ::= CHOICE {
a [0] IMPLICIT NULL,
b [1] IMPLICIT INTEGER
}
END
END
tests/70-xer-test-OK.asn1.-P
View file @
5ab96cda
...
@@ -3,14 +3,19 @@
...
@@ -3,14 +3,19 @@
#include <Sequence.h>
#include <Sequence.h>
#include <Set.h>
#include <Set.h>
#include <SetOf.h>
#include <SequenceOf.h>
#include <SequenceOf.h>
#include <ExtensibleSet.h>
#include <ExtensibleSet.h>
#include <ExtensibleSequence.h>
#include <ExtensibleSequence.h>
#include <ExtensibleSequence2.h>
#include <ExtensibleSequence2.h>
#include <SetOfNULL.h>
#include <SetOfNULL.h>
#include <SetOfREAL.h>
#include <SetOfEnums.h>
#include <SetOfEnums.h>
#include <NamedSetOfNULL.h>
#include <NamedSetOfREAL.h>
#include <NamedSetOfEnums.h>
#include <SeqOfZuka.h>
#include <SeqOfZuka.h>
#include <SetOfChoice.h>
#include <NamedSetOfChoice.h>
#include <constr_CHOICE.h>
#include <constr_CHOICE.h>
/*** <<< DEPS [PDU] >>> ***/
/*** <<< DEPS [PDU] >>> ***/
...
@@ -19,14 +24,19 @@ typedef enum PDU_PR {
...
@@ -19,14 +24,19 @@ typedef enum PDU_PR {
PDU_PR_NOTHING, /* No components present */
PDU_PR_NOTHING, /* No components present */
PDU_PR_sequence,
PDU_PR_sequence,
PDU_PR_set,
PDU_PR_set,
PDU_PR_setOf,
PDU_PR_sequenceOf,
PDU_PR_sequenceOf,
PDU_PR_extensibleSet,
PDU_PR_extensibleSet,
PDU_PR_extensibleSequence,
PDU_PR_extensibleSequence,
PDU_PR_extensibleSequence2,
PDU_PR_extensibleSequence2,
PDU_PR_setOfNULL,
PDU_PR_setOfNULL,
PDU_PR_setOfREAL,
PDU_PR_setOfEnums,
PDU_PR_setOfEnums,
PDU_PR_namedSetOfNULL,
PDU_PR_namedSetOfREAL,
PDU_PR_namedSetOfEnums,
PDU_PR_seqOfZuka,
PDU_PR_seqOfZuka,
PDU_PR_setOfChoice,
PDU_PR_namedSetOfChoice,
/* Extensions may appear below */
/* Extensions may appear below */
} PDU_PR;
} PDU_PR;
...
@@ -37,14 +47,19 @@ typedef struct PDU {
...
@@ -37,14 +47,19 @@ typedef struct PDU {
union PDU_u {
union PDU_u {
Sequence_t sequence;
Sequence_t sequence;
Set_t set;
Set_t set;
SetOf_t setOf;
SequenceOf_t sequenceOf;
SequenceOf_t sequenceOf;
ExtensibleSet_t extensibleSet;
ExtensibleSet_t extensibleSet;
ExtensibleSequence_t extensibleSequence;
ExtensibleSequence_t extensibleSequence;
ExtensibleSequence2_t extensibleSequence2;
ExtensibleSequence2_t extensibleSequence2;
SetOfNULL_t setOfNULL;
SetOfNULL_t setOfNULL;
SetOfREAL_t setOfREAL;
SetOfEnums_t setOfEnums;
SetOfEnums_t setOfEnums;
NamedSetOfNULL_t namedSetOfNULL;
NamedSetOfREAL_t namedSetOfREAL;
NamedSetOfEnums_t namedSetOfEnums;
SeqOfZuka_t seqOfZuka;
SeqOfZuka_t seqOfZuka;
SetOfChoice_t setOfChoice;
NamedSetOfChoice_t namedSetOfChoice;
/*
/*
* This type is extensible,
* This type is extensible,
* possible extensions are below.
* possible extensions are below.
...
@@ -76,48 +91,48 @@ static asn_TYPE_member_t asn_MBR_PDU_1[] = {
...
@@ -76,48 +91,48 @@ static asn_TYPE_member_t asn_MBR_PDU_1[] = {
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "set"
.name = "set"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOf),
.tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SetOf,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "setOf"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequenceOf),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequenceOf),
.tag = (ASN_TAG_CLASS_CONTEXT | (
3
<< 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (
2
<< 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SequenceOf,
.type = &asn_DEF_SequenceOf,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "sequenceOf"
.name = "sequenceOf"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSet),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSet),
.tag = (ASN_TAG_CLASS_CONTEXT | (
4
<< 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (
3
<< 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_ExtensibleSet,
.type = &asn_DEF_ExtensibleSet,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "extensibleSet"
.name = "extensibleSet"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence),
.tag = (ASN_TAG_CLASS_CONTEXT | (
5
<< 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (
4
<< 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_ExtensibleSequence,
.type = &asn_DEF_ExtensibleSequence,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "extensibleSequence"
.name = "extensibleSequence"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence2),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence2),
.tag = (ASN_TAG_CLASS_CONTEXT | (
6
<< 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (
5
<< 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_ExtensibleSequence2,
.type = &asn_DEF_ExtensibleSequence2,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "extensibleSequence2"
.name = "extensibleSequence2"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfNULL),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfNULL),
.tag = (ASN_TAG_CLASS_CONTEXT | (
7
<< 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (
6
<< 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SetOfNULL,
.type = &asn_DEF_SetOfNULL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "setOfNULL"
.name = "setOfNULL"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfREAL),
.tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SetOfREAL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "setOfREAL"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfEnums),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfEnums),
.tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
...
@@ -125,25 +140,65 @@ static asn_TYPE_member_t asn_MBR_PDU_1[] = {
...
@@ -125,25 +140,65 @@ static asn_TYPE_member_t asn_MBR_PDU_1[] = {
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "setOfEnums"
.name = "setOfEnums"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.
seqOfZuka
),
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.
namedSetOfNULL
),
.tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
.tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_NamedSetOfNULL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "namedSetOfNULL"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfREAL),
.tag = (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_NamedSetOfREAL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "namedSetOfREAL"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfEnums),
.tag = (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_NamedSetOfEnums,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "namedSetOfEnums"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.seqOfZuka),
.tag = (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SeqOfZuka,
.type = &asn_DEF_SeqOfZuka,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "seqOfZuka"
.name = "seqOfZuka"
},
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfChoice),
.tag = (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_SetOfChoice,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "setOfChoice"
},
{ ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfChoice),
.tag = (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_NamedSetOfChoice,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "namedSetOfChoice"
},
};
};
static asn_TYPE_tag2member_t asn_MAP_PDU_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_PDU_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequence at 19 */
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequence at 19 */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set at 20 */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set at 20 */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* se
t
Of at 21 */
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* se
quence
Of at 21 */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /*
sequenceOf
at 22 */
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /*
extensibleSet
at 22 */
{ (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extensibleSe
t
at 23 */
{ (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extensibleSe
quence
at 23 */
{ (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* extensibleSequence at 24 */
{ (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* extensibleSequence
2
at 24 */
{ (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /*
extensibleSequence2
at 25 */
{ (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /*
setOfNULL
at 25 */
{ (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* setOf
NUL
L at 26 */
{ (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* setOf
REA
L at 26 */
{ (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* setOfEnums at 27 */
{ (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* setOfEnums at 27 */
{ (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* seqOfZuka at 28 */
{ (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* namedSetOfNULL at 28 */
{ (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* namedSetOfREAL at 29 */
{ (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* namedSetOfEnums at 30 */
{ (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* seqOfZuka at 31 */
{ (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* setOfChoice at 32 */
{ (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 } /* namedSetOfChoice at 33 */
};
};
static asn_CHOICE_specifics_t asn_SPC_PDU_1_specs = {
static asn_CHOICE_specifics_t asn_SPC_PDU_1_specs = {
sizeof(struct PDU),
sizeof(struct PDU),
...
@@ -151,7 +206,7 @@ static asn_CHOICE_specifics_t asn_SPC_PDU_1_specs = {
...
@@ -151,7 +206,7 @@ static asn_CHOICE_specifics_t asn_SPC_PDU_1_specs = {
offsetof(struct PDU, present),
offsetof(struct PDU, present),
sizeof(((struct PDU *)0)->present),
sizeof(((struct PDU *)0)->present),
asn_MAP_PDU_1_tag2el,
asn_MAP_PDU_1_tag2el,
1
0
, /* Count of tags in the map */
1
5
, /* Count of tags in the map */
1 /* Whether extensible */
1 /* Whether extensible */
};
};
asn_TYPE_descriptor_t asn_DEF_PDU = {
asn_TYPE_descriptor_t asn_DEF_PDU = {
...
@@ -170,7 +225,7 @@ asn_TYPE_descriptor_t asn_DEF_PDU = {
...
@@ -170,7 +225,7 @@ asn_TYPE_descriptor_t asn_DEF_PDU = {
0, /* No tags (pointer) */
0, /* No tags (pointer) */
0, /* No tags (count) */
0, /* No tags (count) */
asn_MBR_PDU_1,
asn_MBR_PDU_1,
1
0
, /* Elements count */
1
5
, /* Elements count */
&asn_SPC_PDU_1_specs /* Additional specs */
&asn_SPC_PDU_1_specs /* Additional specs */
};
};
...
@@ -242,10 +297,10 @@ static ber_tlv_tag_t asn_DEF_Sequence_1_tags[] = {
...
@@ -242,10 +297,10 @@ static ber_tlv_tag_t asn_DEF_Sequence_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
};
static asn_TYPE_tag2member_t asn_MAP_Sequence_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_Sequence_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* integer at 3
3
*/
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* integer at 3
8
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sequence at 3
4
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sequence at 3
9
*/
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bits at
35
*/
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bits at
40
*/
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* string at
36
*/
{ (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* string at
41
*/
};
};
static asn_SEQUENCE_specifics_t asn_SPC_Sequence_1_specs = {
static asn_SEQUENCE_specifics_t asn_SPC_Sequence_1_specs = {
sizeof(struct Sequence),
sizeof(struct Sequence),
...
@@ -335,8 +390,8 @@ static ber_tlv_tag_t asn_DEF_Set_1_tags[] = {
...
@@ -335,8 +390,8 @@ static ber_tlv_tag_t asn_DEF_Set_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
};
static asn_TYPE_tag2member_t asn_MAP_Set_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_Set_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* roid at 4
0
*/
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* roid at 4
5
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* opaque at 4
1
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* opaque at 4
6
*/
};
};
static uint8_t asn_MAP_Set_1_mmap[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
static uint8_t asn_MAP_Set_1_mmap[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
(1 << 7) | (0 << 6)
(1 << 7) | (0 << 6)
...
@@ -554,8 +609,8 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSet_1_tags[] = {
...
@@ -554,8 +609,8 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSet_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
};
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSet_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSet_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at
45
*/
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at
50
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* enum at
47
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* enum at
52
*/
};
};
static uint8_t asn_MAP_ExtensibleSet_1_mmap[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
static uint8_t asn_MAP_ExtensibleSet_1_mmap[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
(0 << 7) | (0 << 6)
(0 << 7) | (0 << 6)
...
@@ -649,9 +704,9 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSequence_1_tags[] = {
...
@@ -649,9 +704,9 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSequence_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
};
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at 5
1
*/
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at 5
6
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* integer at 5
3
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* integer at 5
8
*/
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gtime at 5
4
*/
{ (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gtime at 5
9
*/
};
};
static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence_1_specs = {
static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence_1_specs = {
sizeof(struct ExtensibleSequence),
sizeof(struct ExtensibleSequence),
...
@@ -730,8 +785,8 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSequence2_1_tags[] = {
...
@@ -730,8 +785,8 @@ static ber_tlv_tag_t asn_DEF_ExtensibleSequence2_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
};
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence2_1_tag2el[] = {
static asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence2_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at
58
*/
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string at
63
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* integer at 6
0
*/
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* integer at 6
5
*/
};
};
static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence2_1_specs = {
static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence2_1_specs = {
sizeof(struct ExtensibleSequence2),
sizeof(struct ExtensibleSequence2),
...
@@ -764,47 +819,47 @@ asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2 = {
...
@@ -764,47 +819,47 @@ asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2 = {
};
};
/*** <<< INCLUDES [SetOf] >>> ***/
/*** <<< INCLUDES [SetOf
NULL
] >>> ***/
#include <
REA
L.h>
#include <
NUL
L.h>
#include <asn_SET_OF.h>
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< TYPE-DECLS [SetOf] >>> ***/
/*** <<< TYPE-DECLS [SetOf
NULL
] >>> ***/
typedef struct SetOf {
typedef struct SetOf
NULL
{
A_SET_OF(
REA
L_t) list;
A_SET_OF(
NUL
L_t) list;
/* Context for parsing across buffer boundaries */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
asn_struct_ctx_t _asn_ctx;
} SetOf_t;
} SetOf
NULL
_t;
/*** <<< FUNC-DECLS [SetOf] >>> ***/
/*** <<< FUNC-DECLS [SetOf
NULL
] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_SetOf;
extern asn_TYPE_descriptor_t asn_DEF_SetOf
NULL
;
/*** <<< STAT-DEFS [SetOf] >>> ***/
/*** <<< STAT-DEFS [SetOf
NULL
] >>> ***/
static asn_TYPE_member_t asn_MBR_SetOf_1[] = {
static asn_TYPE_member_t asn_MBR_SetOf
NULL
_1[] = {
{ ATF_POINTER, 0, 0,
{ ATF_POINTER, 0, 0,
.tag = (ASN_TAG_CLASS_UNIVERSAL | (
9
<< 2)),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (
5
<< 2)),
.tag_mode = 0,
.tag_mode = 0,
.type = &asn_DEF_
REA
L,
.type = &asn_DEF_
NUL
L,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = ""
.name = ""
},
},
};
};
static ber_tlv_tag_t asn_DEF_SetOf_1_tags[] = {
static ber_tlv_tag_t asn_DEF_SetOf
NULL
_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
};
static asn_SET_OF_specifics_t asn_SPC_SetOf_1_specs = {
static asn_SET_OF_specifics_t asn_SPC_SetOf
NULL
_1_specs = {
sizeof(struct SetOf),
sizeof(struct SetOf
NULL
),
offsetof(struct SetOf, _asn_ctx),
offsetof(struct SetOf
NULL
, _asn_ctx),
0, /* XER encoding is XMLDelimitedItem
List */
1, /* XER encoding is XMLValue
List */
};
};
asn_TYPE_descriptor_t asn_DEF_SetOf = {
asn_TYPE_descriptor_t asn_DEF_SetOf
NULL
= {
"SetOf",
"SetOf
NULL
",
"SetOf",
"SetOf
NULL
",
SET_OF_free,
SET_OF_free,
SET_OF_print,
SET_OF_print,
SET_OF_constraint,
SET_OF_constraint,
...
@@ -813,59 +868,59 @@ asn_TYPE_descriptor_t asn_DEF_SetOf = {
...
@@ -813,59 +868,59 @@ asn_TYPE_descriptor_t asn_DEF_SetOf = {
SET_OF_decode_xer,
SET_OF_decode_xer,
SET_OF_encode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
0, /* Use generic outmost tag fetcher */
asn_DEF_SetOf_1_tags,
asn_DEF_SetOf
NULL
_1_tags,
sizeof(asn_DEF_SetOf_1_tags)
sizeof(asn_DEF_SetOf
NULL
_1_tags)
/sizeof(asn_DEF_SetOf_1_tags[0]), /* 1 */
/sizeof(asn_DEF_SetOf
NULL
_1_tags[0]), /* 1 */
asn_DEF_SetOf_1_tags, /* Same as above */
asn_DEF_SetOf
NULL
_1_tags, /* Same as above */
sizeof(asn_DEF_SetOf_1_tags)
sizeof(asn_DEF_SetOf
NULL
_1_tags)
/sizeof(asn_DEF_SetOf_1_tags[0]), /* 1 */
/sizeof(asn_DEF_SetOf
NULL
_1_tags[0]), /* 1 */
asn_MBR_SetOf_1,
asn_MBR_SetOf
NULL
_1,
1, /* Single element */
1, /* Single element */
&asn_SPC_SetOf_1_specs /* Additional specs */
&asn_SPC_SetOf
NULL
_1_specs /* Additional specs */
};
};
/*** <<< INCLUDES [SetOf
NUL
L] >>> ***/
/*** <<< INCLUDES [SetOf
REA
L] >>> ***/
#include <
NUL
L.h>
#include <
REA
L.h>
#include <asn_SET_OF.h>
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< TYPE-DECLS [SetOf
NUL
L] >>> ***/
/*** <<< TYPE-DECLS [SetOf
REA
L] >>> ***/
typedef struct SetOf
NUL
L {
typedef struct SetOf
REA
L {
A_SET_OF(
NUL
L_t) list;
A_SET_OF(
REA
L_t) list;
/* Context for parsing across buffer boundaries */
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
asn_struct_ctx_t _asn_ctx;
} SetOf
NUL
L_t;
} SetOf
REA
L_t;
/*** <<< FUNC-DECLS [SetOf
NUL
L] >>> ***/
/*** <<< FUNC-DECLS [SetOf
REA
L] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_SetOf
NUL
L;
extern asn_TYPE_descriptor_t asn_DEF_SetOf
REA
L;
/*** <<< STAT-DEFS [SetOf
NUL
L] >>> ***/
/*** <<< STAT-DEFS [SetOf
REA
L] >>> ***/
static asn_TYPE_member_t asn_MBR_SetOf
NUL
L_1[] = {
static asn_TYPE_member_t asn_MBR_SetOf
REA
L_1[] = {
{ ATF_POINTER, 0, 0,
{ ATF_POINTER, 0, 0,
.tag = (ASN_TAG_CLASS_UNIVERSAL | (
5
<< 2)),
.tag = (ASN_TAG_CLASS_UNIVERSAL | (
9
<< 2)),
.tag_mode = 0,
.tag_mode = 0,
.type = &asn_DEF_
NUL
L,
.type = &asn_DEF_
REA
L,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = ""
.name = ""
},
},
};
};
static ber_tlv_tag_t asn_DEF_SetOf
NUL
L_1_tags[] = {
static ber_tlv_tag_t asn_DEF_SetOf
REA
L_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
};
static asn_SET_OF_specifics_t asn_SPC_SetOf
NUL
L_1_specs = {
static asn_SET_OF_specifics_t asn_SPC_SetOf
REA
L_1_specs = {
sizeof(struct SetOf
NUL
L),
sizeof(struct SetOf
REA
L),
offsetof(struct SetOf
NUL
L, _asn_ctx),
offsetof(struct SetOf
REA
L, _asn_ctx),
1, /* XER encoding is XMLValue
List */
0, /* XER encoding is XMLDelimitedItem
List */
};
};
asn_TYPE_descriptor_t asn_DEF_SetOf
NUL
L = {
asn_TYPE_descriptor_t asn_DEF_SetOf
REA
L = {
"SetOf
NUL
L",
"SetOf
REA
L",
"SetOf
NUL
L",
"SetOf
REA
L",
SET_OF_free,
SET_OF_free,
SET_OF_print,
SET_OF_print,
SET_OF_constraint,
SET_OF_constraint,
...
@@ -874,15 +929,15 @@ asn_TYPE_descriptor_t asn_DEF_SetOfNULL = {
...
@@ -874,15 +929,15 @@ asn_TYPE_descriptor_t asn_DEF_SetOfNULL = {
SET_OF_decode_xer,
SET_OF_decode_xer,
SET_OF_encode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
0, /* Use generic outmost tag fetcher */
asn_DEF_SetOf
NUL
L_1_tags,
asn_DEF_SetOf
REA
L_1_tags,
sizeof(asn_DEF_SetOf
NUL
L_1_tags)
sizeof(asn_DEF_SetOf
REA
L_1_tags)
/sizeof(asn_DEF_SetOf
NUL
L_1_tags[0]), /* 1 */
/sizeof(asn_DEF_SetOf
REA
L_1_tags[0]), /* 1 */
asn_DEF_SetOf
NUL
L_1_tags, /* Same as above */
asn_DEF_SetOf
REA
L_1_tags, /* Same as above */
sizeof(asn_DEF_SetOf
NUL
L_1_tags)
sizeof(asn_DEF_SetOf
REA
L_1_tags)
/sizeof(asn_DEF_SetOf
NUL
L_1_tags[0]), /* 1 */
/sizeof(asn_DEF_SetOf
REA
L_1_tags[0]), /* 1 */
asn_MBR_SetOf
NUL
L_1,
asn_MBR_SetOf
REA
L_1,
1, /* Single element */
1, /* Single element */
&asn_SPC_SetOf
NUL
L_1_specs /* Additional specs */
&asn_SPC_SetOf
REA
L_1_specs /* Additional specs */
};
};
...
@@ -1067,6 +1122,309 @@ asn_TYPE_descriptor_t asn_DEF_SetOfEnums = {
...
@@ -1067,6 +1122,309 @@ asn_TYPE_descriptor_t asn_DEF_SetOfEnums = {
};
};
/*** <<< INCLUDES [NamedSetOfNULL] >>> ***/
#include <NULL.h>
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< TYPE-DECLS [NamedSetOfNULL] >>> ***/
typedef struct NamedSetOfNULL {
A_SET_OF(NULL_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} NamedSetOfNULL_t;
/*** <<< FUNC-DECLS [NamedSetOfNULL] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL;
/*** <<< STAT-DEFS [NamedSetOfNULL] >>> ***/
static asn_TYPE_member_t asn_MBR_NamedSetOfNULL_1[] = {
{ ATF_POINTER, 0, 0,
.tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
.tag_mode = 0,
.type = &asn_DEF_NULL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "y"
},
};
static ber_tlv_tag_t asn_DEF_NamedSetOfNULL_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_NamedSetOfNULL_1_specs = {
sizeof(struct NamedSetOfNULL),
offsetof(struct NamedSetOfNULL, _asn_ctx),
1, /* XER encoding is XMLValueList */
};
asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL = {
"NamedSetOfNULL",
"NamedSetOfNULL",
SET_OF_free,
SET_OF_print,
SET_OF_constraint,
SET_OF_decode_ber,
SET_OF_encode_der,
SET_OF_decode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_NamedSetOfNULL_1_tags,
sizeof(asn_DEF_NamedSetOfNULL_1_tags)
/sizeof(asn_DEF_NamedSetOfNULL_1_tags[0]), /* 1 */
asn_DEF_NamedSetOfNULL_1_tags, /* Same as above */
sizeof(asn_DEF_NamedSetOfNULL_1_tags)
/sizeof(asn_DEF_NamedSetOfNULL_1_tags[0]), /* 1 */
asn_MBR_NamedSetOfNULL_1,
1, /* Single element */
&asn_SPC_NamedSetOfNULL_1_specs /* Additional specs */
};
/*** <<< INCLUDES [NamedSetOfREAL] >>> ***/
#include <REAL.h>
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< TYPE-DECLS [NamedSetOfREAL] >>> ***/
typedef struct NamedSetOfREAL {
A_SET_OF(REAL_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} NamedSetOfREAL_t;
/*** <<< FUNC-DECLS [NamedSetOfREAL] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL;
/*** <<< STAT-DEFS [NamedSetOfREAL] >>> ***/
static asn_TYPE_member_t asn_MBR_NamedSetOfREAL_1[] = {
{ ATF_POINTER, 0, 0,
.tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
.tag_mode = 0,
.type = &asn_DEF_REAL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "name"
},
};
static ber_tlv_tag_t asn_DEF_NamedSetOfREAL_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_NamedSetOfREAL_1_specs = {
sizeof(struct NamedSetOfREAL),
offsetof(struct NamedSetOfREAL, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL = {
"NamedSetOfREAL",
"NamedSetOfREAL",
SET_OF_free,
SET_OF_print,
SET_OF_constraint,
SET_OF_decode_ber,
SET_OF_encode_der,
SET_OF_decode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_NamedSetOfREAL_1_tags,
sizeof(asn_DEF_NamedSetOfREAL_1_tags)
/sizeof(asn_DEF_NamedSetOfREAL_1_tags[0]), /* 1 */
asn_DEF_NamedSetOfREAL_1_tags, /* Same as above */
sizeof(asn_DEF_NamedSetOfREAL_1_tags)
/sizeof(asn_DEF_NamedSetOfREAL_1_tags[0]), /* 1 */
asn_MBR_NamedSetOfREAL_1,
1, /* Single element */
&asn_SPC_NamedSetOfREAL_1_specs /* Additional specs */
};
/*** <<< INCLUDES [NamedSetOfEnums] >>> ***/
#include <ENUMERATED.h>
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< DEPS [NamedSetOfEnums] >>> ***/
typedef enum name {
name_one = 0,
name_oneMore = 1
} name_e;
/*** <<< TYPE-DECLS [NamedSetOfEnums] >>> ***/
typedef struct NamedSetOfEnums {
A_SET_OF(ENUMERATED_t) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} NamedSetOfEnums_t;
/*** <<< FUNC-DECLS [NamedSetOfEnums] >>> ***/
/* extern asn_TYPE_descriptor_t asn_DEF_name_2; // (Use -fall-defs-global to expose) */
extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums;
/*** <<< CODE [NamedSetOfEnums] >>> ***/
static int
name_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_consume_bytes_f *app_errlog, void *app_key) {
/* Replace with underlying type checker */
td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
return td->check_constraints(td, sptr, app_errlog, app_key);
}
/*
* This type is implemented using ENUMERATED,
* so here we adjust the DEF accordingly.
*/
static void
name_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_ENUMERATED.free_struct;
td->print_struct = asn_DEF_ENUMERATED.print_struct;
td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
td->elements = asn_DEF_ENUMERATED.elements;
td->elements_count = asn_DEF_ENUMERATED.elements_count;
/* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
}
static void
name_2_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
name_2_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
static int
name_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
name_2_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
static asn_dec_rval_t
name_2_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) {
name_2_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
static asn_enc_rval_t
name_2_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) {
name_2_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
static asn_dec_rval_t
name_2_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) {
name_2_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
static asn_enc_rval_t
name_2_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) {
name_2_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
/*** <<< STAT-DEFS [NamedSetOfEnums] >>> ***/
static asn_INTEGER_enum_map_t asn_MAP_name_2_value2enum[] = {
{ 0, 3, "one" },
{ 1, 7, "oneMore" }
};
static unsigned int asn_MAP_name_2_enum2value[] = {
0, /* one(0) */
1 /* oneMore(1) */
};
static asn_INTEGER_specifics_t asn_SPC_name_2_specs = {
asn_MAP_name_2_value2enum, /* "tag" => N; sorted by tag */
asn_MAP_name_2_enum2value, /* N => "tag"; sorted by N */
2, /* Number of elements in the maps */
0, /* Enumeration is not extensible */
1 /* Strict enumeration */
};
static ber_tlv_tag_t asn_DEF_name_2_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_name_2 = {
"",
"",
name_2_free,
name_2_print,
name_2_constraint,
name_2_decode_ber,
name_2_encode_der,
name_2_decode_xer,
name_2_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_name_2_tags,
sizeof(asn_DEF_name_2_tags)
/sizeof(asn_DEF_name_2_tags[0]), /* 1 */
asn_DEF_name_2_tags, /* Same as above */
sizeof(asn_DEF_name_2_tags)
/sizeof(asn_DEF_name_2_tags[0]), /* 1 */
0, 0, /* Defined elsewhere */
&asn_SPC_name_2_specs /* Additional specs */
};
static asn_TYPE_member_t asn_MBR_NamedSetOfEnums_1[] = {
{ ATF_POINTER, 0, 0,
.tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
.tag_mode = 0,
.type = &asn_DEF_name_2,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "name"
},
};
static ber_tlv_tag_t asn_DEF_NamedSetOfEnums_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_NamedSetOfEnums_1_specs = {
sizeof(struct NamedSetOfEnums),
offsetof(struct NamedSetOfEnums, _asn_ctx),
1, /* XER encoding is XMLValueList */
};
asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums = {
"NamedSetOfEnums",
"NamedSetOfEnums",
SET_OF_free,
SET_OF_print,
SET_OF_constraint,
SET_OF_decode_ber,
SET_OF_encode_der,
SET_OF_decode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_NamedSetOfEnums_1_tags,
sizeof(asn_DEF_NamedSetOfEnums_1_tags)
/sizeof(asn_DEF_NamedSetOfEnums_1_tags[0]), /* 1 */
asn_DEF_NamedSetOfEnums_1_tags, /* Same as above */
sizeof(asn_DEF_NamedSetOfEnums_1_tags)
/sizeof(asn_DEF_NamedSetOfEnums_1_tags[0]), /* 1 */
asn_MBR_NamedSetOfEnums_1,
1, /* Single element */
&asn_SPC_NamedSetOfEnums_1_specs /* Additional specs */
};
/*** <<< INCLUDES [SequenceOf] >>> ***/
/*** <<< INCLUDES [SequenceOf] >>> ***/
#include <INTEGER.h>
#include <INTEGER.h>
...
@@ -1188,3 +1546,222 @@ asn_TYPE_descriptor_t asn_DEF_SeqOfZuka = {
...
@@ -1188,3 +1546,222 @@ asn_TYPE_descriptor_t asn_DEF_SeqOfZuka = {
&asn_SPC_SeqOfZuka_1_specs /* Additional specs */
&asn_SPC_SeqOfZuka_1_specs /* Additional specs */
};
};
/*** <<< INCLUDES [SetOfChoice] >>> ***/
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< FWD-DECLS [SetOfChoice] >>> ***/
struct SimpleChoice;
/*** <<< TYPE-DECLS [SetOfChoice] >>> ***/
typedef struct SetOfChoice {
A_SET_OF(struct SimpleChoice) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} SetOfChoice_t;
/*** <<< FUNC-DECLS [SetOfChoice] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_SetOfChoice;
/*** <<< POST-INCLUDE [SetOfChoice] >>> ***/
#include <SimpleChoice.h>
/*** <<< STAT-DEFS [SetOfChoice] >>> ***/
static asn_TYPE_member_t asn_MBR_SetOfChoice_1[] = {
{ ATF_POINTER, 0, 0,
.tag = -1 /* Ambiguous tag (CHOICE?) */,
.tag_mode = 0,
.type = &asn_DEF_SimpleChoice,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = ""
},
};
static ber_tlv_tag_t asn_DEF_SetOfChoice_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_SetOfChoice_1_specs = {
sizeof(struct SetOfChoice),
offsetof(struct SetOfChoice, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_SetOfChoice = {
"SetOfChoice",
"SetOfChoice",
SET_OF_free,
SET_OF_print,
SET_OF_constraint,
SET_OF_decode_ber,
SET_OF_encode_der,
SET_OF_decode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_SetOfChoice_1_tags,
sizeof(asn_DEF_SetOfChoice_1_tags)
/sizeof(asn_DEF_SetOfChoice_1_tags[0]), /* 1 */
asn_DEF_SetOfChoice_1_tags, /* Same as above */
sizeof(asn_DEF_SetOfChoice_1_tags)
/sizeof(asn_DEF_SetOfChoice_1_tags[0]), /* 1 */
asn_MBR_SetOfChoice_1,
1, /* Single element */
&asn_SPC_SetOfChoice_1_specs /* Additional specs */
};
/*** <<< INCLUDES [NamedSetOfChoice] >>> ***/
#include <asn_SET_OF.h>
#include <constr_SET_OF.h>
/*** <<< FWD-DECLS [NamedSetOfChoice] >>> ***/
struct SimpleChoice;
/*** <<< TYPE-DECLS [NamedSetOfChoice] >>> ***/
typedef struct NamedSetOfChoice {
A_SET_OF(struct SimpleChoice) list;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} NamedSetOfChoice_t;
/*** <<< FUNC-DECLS [NamedSetOfChoice] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice;
/*** <<< POST-INCLUDE [NamedSetOfChoice] >>> ***/
#include <SimpleChoice.h>
/*** <<< STAT-DEFS [NamedSetOfChoice] >>> ***/
static asn_TYPE_member_t asn_MBR_NamedSetOfChoice_1[] = {
{ ATF_POINTER, 0, 0,
.tag = -1 /* Ambiguous tag (CHOICE?) */,
.tag_mode = 0,
.type = &asn_DEF_SimpleChoice,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "whatever"
},
};
static ber_tlv_tag_t asn_DEF_NamedSetOfChoice_1_tags[] = {
(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
};
static asn_SET_OF_specifics_t asn_SPC_NamedSetOfChoice_1_specs = {
sizeof(struct NamedSetOfChoice),
offsetof(struct NamedSetOfChoice, _asn_ctx),
0, /* XER encoding is XMLDelimitedItemList */
};
asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice = {
"NamedSetOfChoice",
"NamedSetOfChoice",
SET_OF_free,
SET_OF_print,
SET_OF_constraint,
SET_OF_decode_ber,
SET_OF_encode_der,
SET_OF_decode_xer,
SET_OF_encode_xer,
0, /* Use generic outmost tag fetcher */
asn_DEF_NamedSetOfChoice_1_tags,
sizeof(asn_DEF_NamedSetOfChoice_1_tags)
/sizeof(asn_DEF_NamedSetOfChoice_1_tags[0]), /* 1 */
asn_DEF_NamedSetOfChoice_1_tags, /* Same as above */
sizeof(asn_DEF_NamedSetOfChoice_1_tags)
/sizeof(asn_DEF_NamedSetOfChoice_1_tags[0]), /* 1 */
asn_MBR_NamedSetOfChoice_1,
1, /* Single element */
&asn_SPC_NamedSetOfChoice_1_specs /* Additional specs */
};
/*** <<< INCLUDES [SimpleChoice] >>> ***/
#include <NULL.h>
#include <INTEGER.h>
#include <constr_CHOICE.h>
/*** <<< DEPS [SimpleChoice] >>> ***/
typedef enum SimpleChoice_PR {
SimpleChoice_PR_NOTHING, /* No components present */
SimpleChoice_PR_a,
SimpleChoice_PR_b,
} SimpleChoice_PR;
/*** <<< TYPE-DECLS [SimpleChoice] >>> ***/
typedef struct SimpleChoice {
SimpleChoice_PR present;
union SimpleChoice_u {
NULL_t a;
INTEGER_t b;
} choice;
/* Context for parsing across buffer boundaries */
asn_struct_ctx_t _asn_ctx;
} SimpleChoice_t;
/*** <<< FUNC-DECLS [SimpleChoice] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_SimpleChoice;
/*** <<< STAT-DEFS [SimpleChoice] >>> ***/
static asn_TYPE_member_t asn_MBR_SimpleChoice_1[] = {
{ ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.a),
.tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_NULL,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "a"
},
{ ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.b),
.tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
.tag_mode = -1, /* IMPLICIT tag at current level */
.type = &asn_DEF_INTEGER,
.memb_constraints = 0, /* Defer constraints checking to the member type */
.name = "b"
},
};
static asn_TYPE_tag2member_t asn_MAP_SimpleChoice_1_tag2el[] = {
{ (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 79 */
{ (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b at 79 */
};
static asn_CHOICE_specifics_t asn_SPC_SimpleChoice_1_specs = {
sizeof(struct SimpleChoice),
offsetof(struct SimpleChoice, _asn_ctx),
offsetof(struct SimpleChoice, present),
sizeof(((struct SimpleChoice *)0)->present),
asn_MAP_SimpleChoice_1_tag2el,
2, /* Count of tags in the map */
0 /* Whether extensible */
};
asn_TYPE_descriptor_t asn_DEF_SimpleChoice = {
"SimpleChoice",
"SimpleChoice",
CHOICE_free,
CHOICE_print,
CHOICE_constraint,
CHOICE_decode_ber,
CHOICE_encode_der,
CHOICE_decode_xer,
CHOICE_encode_xer,
CHOICE_outmost_tag,
0, /* No effective tags (pointer) */
0, /* No effective tags (count) */
0, /* No tags (pointer) */
0, /* No tags (count) */
asn_MBR_SimpleChoice_1,
2, /* Elements count */
&asn_SPC_SimpleChoice_1_specs /* Additional specs */
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment