blob: 4211c0cbe5a27d006b1b3f69aa33c1ec27f0068a [file] [log] [blame]
Lev Walkin0ef9f142005-02-14 20:40:57 +00001
2/*** <<< INCLUDES [PDU] >>> ***/
3
Lev Walkin22b5ed42006-09-13 02:51:20 +00004#include "Sequence.h"
5#include "Set.h"
6#include "SequenceOf.h"
7#include "ExtensibleSet.h"
8#include "ExtensibleSequence.h"
9#include "ExtensibleSequence2.h"
10#include "SetOfNULL.h"
11#include "SetOfREAL.h"
12#include "SetOfEnums.h"
13#include "NamedSetOfNULL.h"
14#include "NamedSetOfREAL.h"
15#include "NamedSetOfEnums.h"
16#include "SeqOfZuka.h"
17#include "SetOfChoice.h"
18#include "NamedSetOfChoice.h"
Lev Walkin0ef9f142005-02-14 20:40:57 +000019#include <constr_CHOICE.h>
20
21/*** <<< DEPS [PDU] >>> ***/
22
23typedef enum PDU_PR {
24 PDU_PR_NOTHING, /* No components present */
25 PDU_PR_sequence,
26 PDU_PR_set,
Lev Walkin843a2462005-02-18 16:30:26 +000027 PDU_PR_sequenceOf,
28 PDU_PR_extensibleSet,
29 PDU_PR_extensibleSequence,
Lev Walkin15750402005-07-03 05:27:19 +000030 PDU_PR_extensibleSequence2,
Lev Walkinf5db6142005-02-24 22:38:43 +000031 PDU_PR_setOfNULL,
Lev Walkin5ab96cd2005-11-07 15:26:47 +000032 PDU_PR_setOfREAL,
Lev Walkinf5db6142005-02-24 22:38:43 +000033 PDU_PR_setOfEnums,
Lev Walkin5ab96cd2005-11-07 15:26:47 +000034 PDU_PR_namedSetOfNULL,
35 PDU_PR_namedSetOfREAL,
36 PDU_PR_namedSetOfEnums,
Lev Walkinf5db6142005-02-24 22:38:43 +000037 PDU_PR_seqOfZuka,
Lev Walkin5ab96cd2005-11-07 15:26:47 +000038 PDU_PR_setOfChoice,
johvik792216e2017-04-11 10:42:21 +020039 PDU_PR_namedSetOfChoice
Lev Walkin843a2462005-02-18 16:30:26 +000040 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000041
Lev Walkin0ef9f142005-02-14 20:40:57 +000042} PDU_PR;
Lev Walkin0ef9f142005-02-14 20:40:57 +000043
44/*** <<< TYPE-DECLS [PDU] >>> ***/
45
Lev Walkin0ef9f142005-02-14 20:40:57 +000046typedef struct PDU {
47 PDU_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +000048 union PDU_u {
Lev Walkin0ef9f142005-02-14 20:40:57 +000049 Sequence_t sequence;
50 Set_t set;
Lev Walkin843a2462005-02-18 16:30:26 +000051 SequenceOf_t sequenceOf;
52 ExtensibleSet_t extensibleSet;
53 ExtensibleSequence_t extensibleSequence;
Lev Walkin15750402005-07-03 05:27:19 +000054 ExtensibleSequence2_t extensibleSequence2;
Lev Walkinf5db6142005-02-24 22:38:43 +000055 SetOfNULL_t setOfNULL;
Lev Walkin5ab96cd2005-11-07 15:26:47 +000056 SetOfREAL_t setOfREAL;
Lev Walkinf5db6142005-02-24 22:38:43 +000057 SetOfEnums_t setOfEnums;
Lev Walkin5ab96cd2005-11-07 15:26:47 +000058 NamedSetOfNULL_t namedSetOfNULL;
59 NamedSetOfREAL_t namedSetOfREAL;
60 NamedSetOfEnums_t namedSetOfEnums;
Lev Walkinf5db6142005-02-24 22:38:43 +000061 SeqOfZuka_t seqOfZuka;
Lev Walkin5ab96cd2005-11-07 15:26:47 +000062 SetOfChoice_t setOfChoice;
63 NamedSetOfChoice_t namedSetOfChoice;
Lev Walkin843a2462005-02-18 16:30:26 +000064 /*
65 * This type is extensible,
66 * possible extensions are below.
67 */
Lev Walkin0ef9f142005-02-14 20:40:57 +000068 } choice;
69
70 /* Context for parsing across buffer boundaries */
71 asn_struct_ctx_t _asn_ctx;
72} PDU_t;
73
Lev Walkinc8285712005-03-04 22:18:20 +000074/*** <<< FUNC-DECLS [PDU] >>> ***/
75
76extern asn_TYPE_descriptor_t asn_DEF_PDU;
77
Lev Walkin0ef9f142005-02-14 20:40:57 +000078/*** <<< STAT-DEFS [PDU] >>> ***/
79
Lev Walkine0272aa2005-03-04 11:26:08 +000080static asn_TYPE_member_t asn_MBR_PDU_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +000081 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequence),
82 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
83 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000084 .type = &asn_DEF_Sequence,
Lev Walkin0ef9f142005-02-14 20:40:57 +000085 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040086 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000087 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
88 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +000089 .name = "sequence"
90 },
91 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.set),
92 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
93 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000094 .type = &asn_DEF_Set,
Lev Walkin0ef9f142005-02-14 20:40:57 +000095 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040096 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000097 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
98 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +000099 .name = "set"
100 },
Lev Walkin843a2462005-02-18 16:30:26 +0000101 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.sequenceOf),
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000102 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkin0ef9f142005-02-14 20:40:57 +0000103 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000104 .type = &asn_DEF_SequenceOf,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000105 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400106 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000107 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
108 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000109 .name = "sequenceOf"
110 },
111 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSet),
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000112 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
Lev Walkin843a2462005-02-18 16:30:26 +0000113 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000114 .type = &asn_DEF_ExtensibleSet,
Lev Walkin843a2462005-02-18 16:30:26 +0000115 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400116 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000117 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
118 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000119 .name = "extensibleSet"
120 },
121 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence),
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000122 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
Lev Walkin843a2462005-02-18 16:30:26 +0000123 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000124 .type = &asn_DEF_ExtensibleSequence,
Lev Walkin843a2462005-02-18 16:30:26 +0000125 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400126 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000127 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
128 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000129 .name = "extensibleSequence"
Lev Walkin0ef9f142005-02-14 20:40:57 +0000130 },
Lev Walkin15750402005-07-03 05:27:19 +0000131 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.extensibleSequence2),
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000132 .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
Lev Walkinf5db6142005-02-24 22:38:43 +0000133 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000134 .type = &asn_DEF_ExtensibleSequence2,
Lev Walkin15750402005-07-03 05:27:19 +0000135 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400136 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000137 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
138 .default_value = 0,
Lev Walkin15750402005-07-03 05:27:19 +0000139 .name = "extensibleSequence2"
140 },
141 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfNULL),
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000142 .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
Lev Walkin15750402005-07-03 05:27:19 +0000143 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000144 .type = &asn_DEF_SetOfNULL,
Lev Walkinf5db6142005-02-24 22:38:43 +0000145 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400146 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000147 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
148 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +0000149 .name = "setOfNULL"
150 },
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000151 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfREAL),
152 .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
153 .tag_mode = -1, /* IMPLICIT tag at current level */
154 .type = &asn_DEF_SetOfREAL,
155 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400156 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000157 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
158 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000159 .name = "setOfREAL"
160 },
Lev Walkinf5db6142005-02-24 22:38:43 +0000161 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfEnums),
Lev Walkin15750402005-07-03 05:27:19 +0000162 .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
Lev Walkinf5db6142005-02-24 22:38:43 +0000163 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000164 .type = &asn_DEF_SetOfEnums,
Lev Walkinf5db6142005-02-24 22:38:43 +0000165 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400166 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000167 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
168 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +0000169 .name = "setOfEnums"
170 },
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000171 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfNULL),
Lev Walkin15750402005-07-03 05:27:19 +0000172 .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
Lev Walkinf5db6142005-02-24 22:38:43 +0000173 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000174 .type = &asn_DEF_NamedSetOfNULL,
175 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400176 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000177 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
178 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000179 .name = "namedSetOfNULL"
180 },
181 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfREAL),
182 .tag = (ASN_TAG_CLASS_CONTEXT | (10 << 2)),
183 .tag_mode = -1, /* IMPLICIT tag at current level */
184 .type = &asn_DEF_NamedSetOfREAL,
185 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400186 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000187 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
188 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000189 .name = "namedSetOfREAL"
190 },
191 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfEnums),
192 .tag = (ASN_TAG_CLASS_CONTEXT | (11 << 2)),
193 .tag_mode = -1, /* IMPLICIT tag at current level */
194 .type = &asn_DEF_NamedSetOfEnums,
195 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400196 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000197 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
198 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000199 .name = "namedSetOfEnums"
200 },
201 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.seqOfZuka),
202 .tag = (ASN_TAG_CLASS_CONTEXT | (12 << 2)),
203 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000204 .type = &asn_DEF_SeqOfZuka,
Lev Walkinf5db6142005-02-24 22:38:43 +0000205 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400206 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000207 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
208 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +0000209 .name = "seqOfZuka"
210 },
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000211 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.setOfChoice),
212 .tag = (ASN_TAG_CLASS_CONTEXT | (13 << 2)),
213 .tag_mode = -1, /* IMPLICIT tag at current level */
214 .type = &asn_DEF_SetOfChoice,
215 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400216 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000217 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
218 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000219 .name = "setOfChoice"
220 },
221 { ATF_NOFLAGS, 0, offsetof(struct PDU, choice.namedSetOfChoice),
222 .tag = (ASN_TAG_CLASS_CONTEXT | (14 << 2)),
223 .tag_mode = -1, /* IMPLICIT tag at current level */
224 .type = &asn_DEF_NamedSetOfChoice,
225 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400226 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000227 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
228 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000229 .name = "namedSetOfChoice"
230 },
Lev Walkin0ef9f142005-02-14 20:40:57 +0000231};
Lev Walkina7591b52014-10-12 18:37:35 -0700232static const asn_TYPE_tag2member_t asn_MAP_PDU_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700233 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sequence */
234 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set */
235 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* sequenceOf */
236 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* extensibleSet */
237 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* extensibleSequence */
238 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* extensibleSequence2 */
239 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* setOfNULL */
240 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* setOfREAL */
241 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* setOfEnums */
242 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* namedSetOfNULL */
243 { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* namedSetOfREAL */
244 { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* namedSetOfEnums */
245 { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* seqOfZuka */
246 { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* setOfChoice */
247 { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 } /* namedSetOfChoice */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000248};
Lev Walkin59b176e2005-11-26 11:25:14 +0000249static asn_CHOICE_specifics_t asn_SPC_PDU_specs_1 = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000250 sizeof(struct PDU),
251 offsetof(struct PDU, _asn_ctx),
252 offsetof(struct PDU, present),
253 sizeof(((struct PDU *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000254 asn_MAP_PDU_tag2el_1,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000255 15, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000256 .canonical_order = 0,
257 .ext_start = 15 /* Extensions start */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000258};
259asn_TYPE_descriptor_t asn_DEF_PDU = {
260 "PDU",
261 "PDU",
262 CHOICE_free,
263 CHOICE_print,
264 CHOICE_constraint,
265 CHOICE_decode_ber,
266 CHOICE_encode_der,
267 CHOICE_decode_xer,
268 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700269 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400270 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000271 CHOICE_outmost_tag,
272 0, /* No effective tags (pointer) */
273 0, /* No effective tags (count) */
274 0, /* No tags (pointer) */
275 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400276 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000277 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000278 asn_MBR_PDU_1,
Lev Walkin5ab96cd2005-11-07 15:26:47 +0000279 15, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000280 &asn_SPC_PDU_specs_1 /* Additional specs */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000281};
282
283
284/*** <<< INCLUDES [Sequence] >>> ***/
285
286#include <INTEGER.h>
Lev Walkin0ef9f142005-02-14 20:40:57 +0000287#include <BIT_STRING.h>
288#include <UTF8String.h>
289#include <constr_SEQUENCE.h>
290
Lev Walkinc8285712005-03-04 22:18:20 +0000291/*** <<< FWD-DECLS [Sequence] >>> ***/
Lev Walkin0ef9f142005-02-14 20:40:57 +0000292
Lev Walkinbf56d542005-03-04 23:50:56 +0000293struct Sequence;
Lev Walkin0ef9f142005-02-14 20:40:57 +0000294
295/*** <<< TYPE-DECLS [Sequence] >>> ***/
296
Lev Walkin0ef9f142005-02-14 20:40:57 +0000297typedef struct Sequence {
298 INTEGER_t integer;
299 struct Sequence *sequence /* OPTIONAL */;
300 BIT_STRING_t *bits /* OPTIONAL */;
301 UTF8String_t string;
302
303 /* Context for parsing across buffer boundaries */
304 asn_struct_ctx_t _asn_ctx;
305} Sequence_t;
306
Lev Walkinc8285712005-03-04 22:18:20 +0000307/*** <<< FUNC-DECLS [Sequence] >>> ***/
308
309extern asn_TYPE_descriptor_t asn_DEF_Sequence;
310
311/*** <<< POST-INCLUDE [Sequence] >>> ***/
312
Lev Walkin22b5ed42006-09-13 02:51:20 +0000313#include "Sequence.h"
Lev Walkinc8285712005-03-04 22:18:20 +0000314
Lev Walkin0ef9f142005-02-14 20:40:57 +0000315/*** <<< STAT-DEFS [Sequence] >>> ***/
316
Lev Walkine0272aa2005-03-04 11:26:08 +0000317static asn_TYPE_member_t asn_MBR_Sequence_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000318 { ATF_NOFLAGS, 0, offsetof(struct Sequence, integer),
319 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
320 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000321 .type = &asn_DEF_INTEGER,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000322 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400323 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000324 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
325 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000326 .name = "integer"
327 },
328 { ATF_POINTER, 2, offsetof(struct Sequence, sequence),
329 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
330 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000331 .type = &asn_DEF_Sequence,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000332 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400333 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000334 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
335 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000336 .name = "sequence"
337 },
338 { ATF_POINTER, 1, offsetof(struct Sequence, bits),
339 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
340 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000341 .type = &asn_DEF_BIT_STRING,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000342 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400343 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000344 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
345 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000346 .name = "bits"
347 },
348 { ATF_NOFLAGS, 0, offsetof(struct Sequence, string),
349 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
350 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000351 .type = &asn_DEF_UTF8String,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000352 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400353 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000354 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
355 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000356 .name = "string"
357 },
358};
Lev Walkina7591b52014-10-12 18:37:35 -0700359static const ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000360 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
361};
Lev Walkina7591b52014-10-12 18:37:35 -0700362static const asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700363 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* integer */
364 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sequence */
365 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bits */
366 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* string */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000367};
Lev Walkin59b176e2005-11-26 11:25:14 +0000368static asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000369 sizeof(struct Sequence),
370 offsetof(struct Sequence, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000371 asn_MAP_Sequence_tag2el_1,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000372 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000373 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000374 -1, /* Start extensions */
375 -1 /* Stop extensions */
376};
377asn_TYPE_descriptor_t asn_DEF_Sequence = {
378 "Sequence",
379 "Sequence",
380 SEQUENCE_free,
381 SEQUENCE_print,
382 SEQUENCE_constraint,
383 SEQUENCE_decode_ber,
384 SEQUENCE_encode_der,
385 SEQUENCE_decode_xer,
386 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700387 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400388 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000389 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000390 asn_DEF_Sequence_tags_1,
391 sizeof(asn_DEF_Sequence_tags_1)
392 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
393 asn_DEF_Sequence_tags_1, /* Same as above */
394 sizeof(asn_DEF_Sequence_tags_1)
395 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400396 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000397 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000398 asn_MBR_Sequence_1,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000399 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000400 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000401};
402
403
404/*** <<< INCLUDES [Set] >>> ***/
405
406#include <RELATIVE-OID.h>
407#include <OCTET_STRING.h>
408#include <constr_SET.h>
409
410/*** <<< DEPS [Set] >>> ***/
411
412
413/*
414 * Method of determining the components presence
415 */
416typedef enum Set_PR {
417 Set_PR_roid, /* Member roid is present */
418 Set_PR_opaque, /* Member opaque is present */
419} Set_PR;
Lev Walkin0ef9f142005-02-14 20:40:57 +0000420
421/*** <<< TYPE-DECLS [Set] >>> ***/
422
Lev Walkin0ef9f142005-02-14 20:40:57 +0000423typedef struct Set {
424 RELATIVE_OID_t roid;
425 OCTET_STRING_t *opaque /* OPTIONAL */;
426
427 /* Presence bitmask: ASN_SET_ISPRESENT(pSet, Set_PR_x) */
428 unsigned int _presence_map
429 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
430
431 /* Context for parsing across buffer boundaries */
432 asn_struct_ctx_t _asn_ctx;
433} Set_t;
434
Lev Walkinc8285712005-03-04 22:18:20 +0000435/*** <<< FUNC-DECLS [Set] >>> ***/
436
437extern asn_TYPE_descriptor_t asn_DEF_Set;
438
Lev Walkin0ef9f142005-02-14 20:40:57 +0000439/*** <<< STAT-DEFS [Set] >>> ***/
440
Lev Walkine0272aa2005-03-04 11:26:08 +0000441static asn_TYPE_member_t asn_MBR_Set_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000442 { ATF_NOFLAGS, 0, offsetof(struct Set, roid),
443 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
444 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000445 .type = &asn_DEF_RELATIVE_OID,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000446 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400447 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000448 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
449 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000450 .name = "roid"
451 },
452 { ATF_POINTER, 1, offsetof(struct Set, opaque),
453 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
454 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000455 .type = &asn_DEF_OCTET_STRING,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000456 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400457 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000458 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
459 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000460 .name = "opaque"
461 },
462};
Lev Walkina7591b52014-10-12 18:37:35 -0700463static const ber_tlv_tag_t asn_DEF_Set_tags_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000464 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
465};
Lev Walkina7591b52014-10-12 18:37:35 -0700466static const asn_TYPE_tag2member_t asn_MAP_Set_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700467 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* roid */
468 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* opaque */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000469};
Lev Walkina7591b52014-10-12 18:37:35 -0700470static const uint8_t asn_MAP_Set_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000471 (1 << 7) | (0 << 6)
472};
Lev Walkin59b176e2005-11-26 11:25:14 +0000473static asn_SET_specifics_t asn_SPC_Set_specs_1 = {
Lev Walkin0ef9f142005-02-14 20:40:57 +0000474 sizeof(struct Set),
475 offsetof(struct Set, _asn_ctx),
476 offsetof(struct Set, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +0000477 asn_MAP_Set_tag2el_1,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000478 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000479 asn_MAP_Set_tag2el_1, /* Same as above */
Lev Walkinf5db6142005-02-24 22:38:43 +0000480 2, /* Count of tags in the CXER map */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000481 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700482 (const unsigned int *)asn_MAP_Set_mmap_1 /* Mandatory elements map */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000483};
484asn_TYPE_descriptor_t asn_DEF_Set = {
485 "Set",
486 "Set",
487 SET_free,
488 SET_print,
489 SET_constraint,
490 SET_decode_ber,
491 SET_encode_der,
492 SET_decode_xer,
493 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700494 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400495 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000496 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000497 asn_DEF_Set_tags_1,
498 sizeof(asn_DEF_Set_tags_1)
499 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
500 asn_DEF_Set_tags_1, /* Same as above */
501 sizeof(asn_DEF_Set_tags_1)
502 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400503 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000504 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000505 asn_MBR_Set_1,
Lev Walkin0ef9f142005-02-14 20:40:57 +0000506 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000507 &asn_SPC_Set_specs_1 /* Additional specs */
Lev Walkin0ef9f142005-02-14 20:40:57 +0000508};
509
510
Lev Walkin843a2462005-02-18 16:30:26 +0000511/*** <<< INCLUDES [ExtensibleSet] >>> ***/
512
513#include <UTF8String.h>
Lev Walkinc92a7462005-03-10 11:20:47 +0000514#include <ENUMERATED.h>
Lev Walkin843a2462005-02-18 16:30:26 +0000515#include <constr_SET.h>
516
517/*** <<< DEPS [ExtensibleSet] >>> ***/
518
519
520/*
521 * Method of determining the components presence
522 */
523typedef enum ExtensibleSet_PR {
524 ExtensibleSet_PR_string, /* Member string is present */
Lev Walkinc92a7462005-03-10 11:20:47 +0000525 ExtensibleSet_PR_enum, /* Member enum is present */
Lev Walkin843a2462005-02-18 16:30:26 +0000526} ExtensibleSet_PR;
Lev Walkinc92a7462005-03-10 11:20:47 +0000527typedef enum Enum {
528 enum_b = 0,
529 enum_a = 1
Lev Walkin171487e2006-03-21 07:25:18 +0000530} e_enum;
Lev Walkin843a2462005-02-18 16:30:26 +0000531
532/*** <<< TYPE-DECLS [ExtensibleSet] >>> ***/
533
Lev Walkin843a2462005-02-18 16:30:26 +0000534typedef struct ExtensibleSet {
535 UTF8String_t *string /* OPTIONAL */;
536 /*
537 * This type is extensible,
538 * possible extensions are below.
539 */
Lev Walkinc92a7462005-03-10 11:20:47 +0000540 ENUMERATED_t *Enum;
Lev Walkin843a2462005-02-18 16:30:26 +0000541
542 /* Presence bitmask: ASN_SET_ISPRESENT(pExtensibleSet, ExtensibleSet_PR_x) */
543 unsigned int _presence_map
Lev Walkinc92a7462005-03-10 11:20:47 +0000544 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
Lev Walkin843a2462005-02-18 16:30:26 +0000545
546 /* Context for parsing across buffer boundaries */
547 asn_struct_ctx_t _asn_ctx;
548} ExtensibleSet_t;
549
Lev Walkinc8285712005-03-04 22:18:20 +0000550/*** <<< FUNC-DECLS [ExtensibleSet] >>> ***/
551
Lev Walkinc92a7462005-03-10 11:20:47 +0000552/* extern asn_TYPE_descriptor_t asn_DEF_enum_4; // (Use -fall-defs-global to expose) */
Lev Walkinc8285712005-03-04 22:18:20 +0000553extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSet;
554
Lev Walkinc92a7462005-03-10 11:20:47 +0000555/*** <<< CODE [ExtensibleSet] >>> ***/
556
557static int
558enum_4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000559 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinc92a7462005-03-10 11:20:47 +0000560 /* Replace with underlying type checker */
561 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +0000562 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinc92a7462005-03-10 11:20:47 +0000563}
564
565/*
566 * This type is implemented using ENUMERATED,
567 * so here we adjust the DEF accordingly.
568 */
569static void
570enum_4_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
571 td->free_struct = asn_DEF_ENUMERATED.free_struct;
572 td->print_struct = asn_DEF_ENUMERATED.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800573 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkinc92a7462005-03-10 11:20:47 +0000574 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
575 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
576 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
577 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000578 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000579 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700580 td->oer_decoder = asn_DEF_ENUMERATED.oer_decoder;
581 td->oer_encoder = asn_DEF_ENUMERATED.oer_encoder;
Lev Walkinb33425f2017-07-14 14:59:52 +0400582 if(!td->oer_constraints)
583 td->oer_constraints = asn_DEF_ENUMERATED.oer_constraints;
Lev Walkin59b176e2005-11-26 11:25:14 +0000584 if(!td->per_constraints)
585 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
Lev Walkinc92a7462005-03-10 11:20:47 +0000586 td->elements = asn_DEF_ENUMERATED.elements;
587 td->elements_count = asn_DEF_ENUMERATED.elements_count;
Lev Walkin29a82192005-03-29 19:05:37 +0000588 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
Lev Walkinc92a7462005-03-10 11:20:47 +0000589}
590
591static void
592enum_4_free(asn_TYPE_descriptor_t *td,
593 void *struct_ptr, int contents_only) {
594 enum_4_inherit_TYPE_descriptor(td);
595 td->free_struct(td, struct_ptr, contents_only);
596}
597
598static int
599enum_4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
600 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
601 enum_4_inherit_TYPE_descriptor(td);
602 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
603}
604
605static asn_dec_rval_t
606enum_4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +0000607 void **structure, const void *bufptr, size_t size, int tag_mode) {
Lev Walkinc92a7462005-03-10 11:20:47 +0000608 enum_4_inherit_TYPE_descriptor(td);
609 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
610}
611
612static asn_enc_rval_t
613enum_4_encode_der(asn_TYPE_descriptor_t *td,
614 void *structure, int tag_mode, ber_tlv_tag_t tag,
615 asn_app_consume_bytes_f *cb, void *app_key) {
616 enum_4_inherit_TYPE_descriptor(td);
617 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
618}
619
620static asn_dec_rval_t
621enum_4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +0000622 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
Lev Walkinc92a7462005-03-10 11:20:47 +0000623 enum_4_inherit_TYPE_descriptor(td);
624 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
625}
626
627static asn_enc_rval_t
628enum_4_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
629 int ilevel, enum xer_encoder_flags_e flags,
630 asn_app_consume_bytes_f *cb, void *app_key) {
631 enum_4_inherit_TYPE_descriptor(td);
632 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
633}
634
635
Lev Walkin843a2462005-02-18 16:30:26 +0000636/*** <<< STAT-DEFS [ExtensibleSet] >>> ***/
637
Lev Walkina7591b52014-10-12 18:37:35 -0700638static const asn_INTEGER_enum_map_t asn_MAP_enum_value2enum_4[] = {
Lev Walkinc92a7462005-03-10 11:20:47 +0000639 { 0, 1, "b" },
640 { 1, 1, "a" }
641};
Lev Walkina7591b52014-10-12 18:37:35 -0700642static const unsigned int asn_MAP_enum_enum2value_4[] = {
Lev Walkinc92a7462005-03-10 11:20:47 +0000643 1, /* a(1) */
644 0 /* b(0) */
645};
johvike70c4072017-05-09 11:06:12 +0200646static asn_INTEGER_specifics_t asn_SPC_enum_specs_4 = {
Lev Walkin59b176e2005-11-26 11:25:14 +0000647 asn_MAP_enum_value2enum_4, /* "tag" => N; sorted by tag */
648 asn_MAP_enum_enum2value_4, /* N => "tag"; sorted by N */
Lev Walkinc92a7462005-03-10 11:20:47 +0000649 2, /* Number of elements in the maps */
650 0, /* Enumeration is not extensible */
Lev Walkin8bb57a22007-12-03 13:41:36 +0000651 1, /* Strict enumeration */
652 0, /* Native long size */
653 0
Lev Walkinc92a7462005-03-10 11:20:47 +0000654};
Lev Walkina7591b52014-10-12 18:37:35 -0700655static const ber_tlv_tag_t asn_DEF_enum_tags_4[] = {
Lev Walkinc92a7462005-03-10 11:20:47 +0000656 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
657 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
658};
659static /* Use -fall-defs-global to expose */
660asn_TYPE_descriptor_t asn_DEF_enum_4 = {
661 "enum",
662 "enum",
663 enum_4_free,
664 enum_4_print,
665 enum_4_constraint,
666 enum_4_decode_ber,
667 enum_4_encode_der,
668 enum_4_decode_xer,
669 enum_4_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700670 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400671 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinc92a7462005-03-10 11:20:47 +0000672 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000673 asn_DEF_enum_tags_4,
674 sizeof(asn_DEF_enum_tags_4)
675 /sizeof(asn_DEF_enum_tags_4[0]) - 1, /* 1 */
676 asn_DEF_enum_tags_4, /* Same as above */
677 sizeof(asn_DEF_enum_tags_4)
678 /sizeof(asn_DEF_enum_tags_4[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400679 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000680 0, /* No PER visible constraints */
Lev Walkinc92a7462005-03-10 11:20:47 +0000681 0, 0, /* Defined elsewhere */
Lev Walkin59b176e2005-11-26 11:25:14 +0000682 &asn_SPC_enum_specs_4 /* Additional specs */
Lev Walkinc92a7462005-03-10 11:20:47 +0000683};
684
Lev Walkine0272aa2005-03-04 11:26:08 +0000685static asn_TYPE_member_t asn_MBR_ExtensibleSet_1[] = {
Lev Walkinc92a7462005-03-10 11:20:47 +0000686 { ATF_POINTER, 2, offsetof(struct ExtensibleSet, string),
Lev Walkin843a2462005-02-18 16:30:26 +0000687 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
688 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000689 .type = &asn_DEF_UTF8String,
Lev Walkin843a2462005-02-18 16:30:26 +0000690 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400691 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000692 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
693 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000694 .name = "string"
695 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000696 { ATF_POINTER, 1, offsetof(struct ExtensibleSet, Enum),
Lev Walkinc92a7462005-03-10 11:20:47 +0000697 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
698 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000699 .type = &asn_DEF_enum_4,
Lev Walkinc92a7462005-03-10 11:20:47 +0000700 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400701 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000702 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
703 .default_value = 0,
Lev Walkinc92a7462005-03-10 11:20:47 +0000704 .name = "enum"
705 },
Lev Walkin843a2462005-02-18 16:30:26 +0000706};
Lev Walkina7591b52014-10-12 18:37:35 -0700707static const ber_tlv_tag_t asn_DEF_ExtensibleSet_tags_1[] = {
Lev Walkin843a2462005-02-18 16:30:26 +0000708 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
709};
Lev Walkina7591b52014-10-12 18:37:35 -0700710static const asn_TYPE_tag2member_t asn_MAP_ExtensibleSet_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700711 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string */
712 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* enum */
Lev Walkin843a2462005-02-18 16:30:26 +0000713};
Lev Walkina7591b52014-10-12 18:37:35 -0700714static const uint8_t asn_MAP_ExtensibleSet_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinc92a7462005-03-10 11:20:47 +0000715 (0 << 7) | (0 << 6)
Lev Walkin843a2462005-02-18 16:30:26 +0000716};
Lev Walkin59b176e2005-11-26 11:25:14 +0000717static asn_SET_specifics_t asn_SPC_ExtensibleSet_specs_1 = {
Lev Walkin843a2462005-02-18 16:30:26 +0000718 sizeof(struct ExtensibleSet),
719 offsetof(struct ExtensibleSet, _asn_ctx),
720 offsetof(struct ExtensibleSet, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +0000721 asn_MAP_ExtensibleSet_tag2el_1,
Lev Walkinc92a7462005-03-10 11:20:47 +0000722 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000723 asn_MAP_ExtensibleSet_tag2el_1, /* Same as above */
Lev Walkinc92a7462005-03-10 11:20:47 +0000724 2, /* Count of tags in the CXER map */
Lev Walkin843a2462005-02-18 16:30:26 +0000725 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700726 (const unsigned int *)asn_MAP_ExtensibleSet_mmap_1 /* Mandatory elements map */
Lev Walkin843a2462005-02-18 16:30:26 +0000727};
728asn_TYPE_descriptor_t asn_DEF_ExtensibleSet = {
729 "ExtensibleSet",
730 "ExtensibleSet",
731 SET_free,
732 SET_print,
733 SET_constraint,
734 SET_decode_ber,
735 SET_encode_der,
736 SET_decode_xer,
737 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700738 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400739 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin843a2462005-02-18 16:30:26 +0000740 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000741 asn_DEF_ExtensibleSet_tags_1,
742 sizeof(asn_DEF_ExtensibleSet_tags_1)
743 /sizeof(asn_DEF_ExtensibleSet_tags_1[0]), /* 1 */
744 asn_DEF_ExtensibleSet_tags_1, /* Same as above */
745 sizeof(asn_DEF_ExtensibleSet_tags_1)
746 /sizeof(asn_DEF_ExtensibleSet_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400747 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000748 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000749 asn_MBR_ExtensibleSet_1,
Lev Walkinc92a7462005-03-10 11:20:47 +0000750 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000751 &asn_SPC_ExtensibleSet_specs_1 /* Additional specs */
Lev Walkin843a2462005-02-18 16:30:26 +0000752};
753
754
755/*** <<< INCLUDES [ExtensibleSequence] >>> ***/
756
757#include <UTF8String.h>
758#include <INTEGER.h>
Lev Walkin15750402005-07-03 05:27:19 +0000759#include <GeneralizedTime.h>
Lev Walkin843a2462005-02-18 16:30:26 +0000760#include <constr_SEQUENCE.h>
761
Lev Walkin843a2462005-02-18 16:30:26 +0000762/*** <<< TYPE-DECLS [ExtensibleSequence] >>> ***/
763
Lev Walkin843a2462005-02-18 16:30:26 +0000764typedef struct ExtensibleSequence {
765 UTF8String_t *string /* OPTIONAL */;
766 /*
767 * This type is extensible,
768 * possible extensions are below.
769 */
770 INTEGER_t *integer /* OPTIONAL */;
Lev Walkin15750402005-07-03 05:27:19 +0000771 GeneralizedTime_t *gtime;
Lev Walkin843a2462005-02-18 16:30:26 +0000772
773 /* Context for parsing across buffer boundaries */
774 asn_struct_ctx_t _asn_ctx;
775} ExtensibleSequence_t;
776
Lev Walkinc8285712005-03-04 22:18:20 +0000777/*** <<< FUNC-DECLS [ExtensibleSequence] >>> ***/
778
779extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence;
780
Lev Walkin843a2462005-02-18 16:30:26 +0000781/*** <<< STAT-DEFS [ExtensibleSequence] >>> ***/
782
Lev Walkine0272aa2005-03-04 11:26:08 +0000783static asn_TYPE_member_t asn_MBR_ExtensibleSequence_1[] = {
Lev Walkin15750402005-07-03 05:27:19 +0000784 { ATF_POINTER, 3, offsetof(struct ExtensibleSequence, string),
Lev Walkin843a2462005-02-18 16:30:26 +0000785 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
786 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000787 .type = &asn_DEF_UTF8String,
Lev Walkin843a2462005-02-18 16:30:26 +0000788 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400789 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000790 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
791 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000792 .name = "string"
793 },
Lev Walkin15750402005-07-03 05:27:19 +0000794 { ATF_POINTER, 2, offsetof(struct ExtensibleSequence, integer),
Lev Walkin843a2462005-02-18 16:30:26 +0000795 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
796 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000797 .type = &asn_DEF_INTEGER,
Lev Walkin843a2462005-02-18 16:30:26 +0000798 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400799 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000800 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
801 .default_value = 0,
Lev Walkin843a2462005-02-18 16:30:26 +0000802 .name = "integer"
803 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000804 { ATF_POINTER, 1, offsetof(struct ExtensibleSequence, gtime),
Lev Walkin15750402005-07-03 05:27:19 +0000805 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
806 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000807 .type = &asn_DEF_GeneralizedTime,
Lev Walkin15750402005-07-03 05:27:19 +0000808 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400809 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000810 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
811 .default_value = 0,
Lev Walkin15750402005-07-03 05:27:19 +0000812 .name = "gtime"
813 },
Lev Walkin843a2462005-02-18 16:30:26 +0000814};
Lev Walkina7591b52014-10-12 18:37:35 -0700815static const ber_tlv_tag_t asn_DEF_ExtensibleSequence_tags_1[] = {
Lev Walkin843a2462005-02-18 16:30:26 +0000816 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
817};
Lev Walkina7591b52014-10-12 18:37:35 -0700818static const asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700819 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string */
820 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* integer */
821 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gtime */
Lev Walkin843a2462005-02-18 16:30:26 +0000822};
Lev Walkin59b176e2005-11-26 11:25:14 +0000823static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence_specs_1 = {
Lev Walkin843a2462005-02-18 16:30:26 +0000824 sizeof(struct ExtensibleSequence),
825 offsetof(struct ExtensibleSequence, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000826 asn_MAP_ExtensibleSequence_tag2el_1,
Lev Walkin15750402005-07-03 05:27:19 +0000827 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000828 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin843a2462005-02-18 16:30:26 +0000829 0, /* Start extensions */
Lev Walkin15750402005-07-03 05:27:19 +0000830 4 /* Stop extensions */
Lev Walkin843a2462005-02-18 16:30:26 +0000831};
832asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence = {
833 "ExtensibleSequence",
834 "ExtensibleSequence",
835 SEQUENCE_free,
836 SEQUENCE_print,
837 SEQUENCE_constraint,
838 SEQUENCE_decode_ber,
839 SEQUENCE_encode_der,
840 SEQUENCE_decode_xer,
841 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700842 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400843 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin843a2462005-02-18 16:30:26 +0000844 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000845 asn_DEF_ExtensibleSequence_tags_1,
846 sizeof(asn_DEF_ExtensibleSequence_tags_1)
847 /sizeof(asn_DEF_ExtensibleSequence_tags_1[0]), /* 1 */
848 asn_DEF_ExtensibleSequence_tags_1, /* Same as above */
849 sizeof(asn_DEF_ExtensibleSequence_tags_1)
850 /sizeof(asn_DEF_ExtensibleSequence_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400851 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000852 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000853 asn_MBR_ExtensibleSequence_1,
Lev Walkin15750402005-07-03 05:27:19 +0000854 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000855 &asn_SPC_ExtensibleSequence_specs_1 /* Additional specs */
Lev Walkin843a2462005-02-18 16:30:26 +0000856};
857
858
Lev Walkin15750402005-07-03 05:27:19 +0000859/*** <<< INCLUDES [ExtensibleSequence2] >>> ***/
860
861#include <UTF8String.h>
862#include <INTEGER.h>
863#include <constr_SEQUENCE.h>
864
865/*** <<< TYPE-DECLS [ExtensibleSequence2] >>> ***/
866
867typedef struct ExtensibleSequence2 {
868 UTF8String_t *string /* OPTIONAL */;
869 /*
870 * This type is extensible,
871 * possible extensions are below.
872 */
873 INTEGER_t *integer /* OPTIONAL */;
874
875 /* Context for parsing across buffer boundaries */
876 asn_struct_ctx_t _asn_ctx;
877} ExtensibleSequence2_t;
878
879/*** <<< FUNC-DECLS [ExtensibleSequence2] >>> ***/
880
881extern asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2;
882
883/*** <<< STAT-DEFS [ExtensibleSequence2] >>> ***/
884
885static asn_TYPE_member_t asn_MBR_ExtensibleSequence2_1[] = {
886 { ATF_POINTER, 2, offsetof(struct ExtensibleSequence2, string),
887 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
888 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000889 .type = &asn_DEF_UTF8String,
Lev Walkin15750402005-07-03 05:27:19 +0000890 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400891 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000892 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
893 .default_value = 0,
Lev Walkin15750402005-07-03 05:27:19 +0000894 .name = "string"
895 },
896 { ATF_POINTER, 1, offsetof(struct ExtensibleSequence2, integer),
897 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
898 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000899 .type = &asn_DEF_INTEGER,
Lev Walkin15750402005-07-03 05:27:19 +0000900 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400901 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000902 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
903 .default_value = 0,
Lev Walkin15750402005-07-03 05:27:19 +0000904 .name = "integer"
905 },
906};
Lev Walkina7591b52014-10-12 18:37:35 -0700907static const ber_tlv_tag_t asn_DEF_ExtensibleSequence2_tags_1[] = {
Lev Walkin15750402005-07-03 05:27:19 +0000908 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
909};
Lev Walkina7591b52014-10-12 18:37:35 -0700910static const asn_TYPE_tag2member_t asn_MAP_ExtensibleSequence2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700911 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* string */
912 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* integer */
Lev Walkin15750402005-07-03 05:27:19 +0000913};
Lev Walkin59b176e2005-11-26 11:25:14 +0000914static asn_SEQUENCE_specifics_t asn_SPC_ExtensibleSequence2_specs_1 = {
Lev Walkin15750402005-07-03 05:27:19 +0000915 sizeof(struct ExtensibleSequence2),
916 offsetof(struct ExtensibleSequence2, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000917 asn_MAP_ExtensibleSequence2_tag2el_1,
Lev Walkin15750402005-07-03 05:27:19 +0000918 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000919 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin15750402005-07-03 05:27:19 +0000920 0, /* Start extensions */
921 3 /* Stop extensions */
922};
923asn_TYPE_descriptor_t asn_DEF_ExtensibleSequence2 = {
924 "ExtensibleSequence2",
925 "ExtensibleSequence2",
926 SEQUENCE_free,
927 SEQUENCE_print,
928 SEQUENCE_constraint,
929 SEQUENCE_decode_ber,
930 SEQUENCE_encode_der,
931 SEQUENCE_decode_xer,
932 SEQUENCE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700933 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400934 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin15750402005-07-03 05:27:19 +0000935 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000936 asn_DEF_ExtensibleSequence2_tags_1,
937 sizeof(asn_DEF_ExtensibleSequence2_tags_1)
938 /sizeof(asn_DEF_ExtensibleSequence2_tags_1[0]), /* 1 */
939 asn_DEF_ExtensibleSequence2_tags_1, /* Same as above */
940 sizeof(asn_DEF_ExtensibleSequence2_tags_1)
941 /sizeof(asn_DEF_ExtensibleSequence2_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400942 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000943 0, /* No PER visible constraints */
Lev Walkin15750402005-07-03 05:27:19 +0000944 asn_MBR_ExtensibleSequence2_1,
945 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000946 &asn_SPC_ExtensibleSequence2_specs_1 /* Additional specs */
Lev Walkin15750402005-07-03 05:27:19 +0000947};
948
949
Lev Walkinf5db6142005-02-24 22:38:43 +0000950/*** <<< INCLUDES [SetOfNULL] >>> ***/
951
952#include <NULL.h>
953#include <asn_SET_OF.h>
954#include <constr_SET_OF.h>
955
Lev Walkinf5db6142005-02-24 22:38:43 +0000956/*** <<< TYPE-DECLS [SetOfNULL] >>> ***/
957
Lev Walkinf5db6142005-02-24 22:38:43 +0000958typedef struct SetOfNULL {
959 A_SET_OF(NULL_t) list;
960
961 /* Context for parsing across buffer boundaries */
962 asn_struct_ctx_t _asn_ctx;
963} SetOfNULL_t;
964
Lev Walkinc8285712005-03-04 22:18:20 +0000965/*** <<< FUNC-DECLS [SetOfNULL] >>> ***/
966
967extern asn_TYPE_descriptor_t asn_DEF_SetOfNULL;
968
Lev Walkinf5db6142005-02-24 22:38:43 +0000969/*** <<< STAT-DEFS [SetOfNULL] >>> ***/
970
Lev Walkine0272aa2005-03-04 11:26:08 +0000971static asn_TYPE_member_t asn_MBR_SetOfNULL_1[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +0000972 { ATF_POINTER, 0, 0,
Lev Walkinf5db6142005-02-24 22:38:43 +0000973 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
974 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000975 .type = &asn_DEF_NULL,
Lev Walkinf5db6142005-02-24 22:38:43 +0000976 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400977 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000978 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
979 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +0000980 .name = ""
981 },
982};
Lev Walkina7591b52014-10-12 18:37:35 -0700983static const ber_tlv_tag_t asn_DEF_SetOfNULL_tags_1[] = {
Lev Walkinf5db6142005-02-24 22:38:43 +0000984 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
985};
Lev Walkin59b176e2005-11-26 11:25:14 +0000986static asn_SET_OF_specifics_t asn_SPC_SetOfNULL_specs_1 = {
Lev Walkinf5db6142005-02-24 22:38:43 +0000987 sizeof(struct SetOfNULL),
988 offsetof(struct SetOfNULL, _asn_ctx),
989 1, /* XER encoding is XMLValueList */
990};
991asn_TYPE_descriptor_t asn_DEF_SetOfNULL = {
992 "SetOfNULL",
993 "SetOfNULL",
994 SET_OF_free,
995 SET_OF_print,
996 SET_OF_constraint,
997 SET_OF_decode_ber,
998 SET_OF_encode_der,
999 SET_OF_decode_xer,
1000 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001001 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001002 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinf5db6142005-02-24 22:38:43 +00001003 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001004 asn_DEF_SetOfNULL_tags_1,
1005 sizeof(asn_DEF_SetOfNULL_tags_1)
1006 /sizeof(asn_DEF_SetOfNULL_tags_1[0]), /* 1 */
1007 asn_DEF_SetOfNULL_tags_1, /* Same as above */
1008 sizeof(asn_DEF_SetOfNULL_tags_1)
1009 /sizeof(asn_DEF_SetOfNULL_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001010 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001011 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +00001012 asn_MBR_SetOfNULL_1,
Lev Walkinf5db6142005-02-24 22:38:43 +00001013 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001014 &asn_SPC_SetOfNULL_specs_1 /* Additional specs */
Lev Walkinf5db6142005-02-24 22:38:43 +00001015};
1016
1017
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001018/*** <<< INCLUDES [SetOfREAL] >>> ***/
1019
1020#include <REAL.h>
1021#include <asn_SET_OF.h>
1022#include <constr_SET_OF.h>
1023
1024/*** <<< TYPE-DECLS [SetOfREAL] >>> ***/
1025
1026typedef struct SetOfREAL {
1027 A_SET_OF(REAL_t) list;
1028
1029 /* Context for parsing across buffer boundaries */
1030 asn_struct_ctx_t _asn_ctx;
1031} SetOfREAL_t;
1032
1033/*** <<< FUNC-DECLS [SetOfREAL] >>> ***/
1034
1035extern asn_TYPE_descriptor_t asn_DEF_SetOfREAL;
1036
1037/*** <<< STAT-DEFS [SetOfREAL] >>> ***/
1038
1039static asn_TYPE_member_t asn_MBR_SetOfREAL_1[] = {
1040 { ATF_POINTER, 0, 0,
1041 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
1042 .tag_mode = 0,
1043 .type = &asn_DEF_REAL,
1044 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001045 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001046 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1047 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001048 .name = ""
1049 },
1050};
Lev Walkina7591b52014-10-12 18:37:35 -07001051static const ber_tlv_tag_t asn_DEF_SetOfREAL_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001052 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1053};
Lev Walkin59b176e2005-11-26 11:25:14 +00001054static asn_SET_OF_specifics_t asn_SPC_SetOfREAL_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001055 sizeof(struct SetOfREAL),
1056 offsetof(struct SetOfREAL, _asn_ctx),
1057 0, /* XER encoding is XMLDelimitedItemList */
1058};
1059asn_TYPE_descriptor_t asn_DEF_SetOfREAL = {
1060 "SetOfREAL",
1061 "SetOfREAL",
1062 SET_OF_free,
1063 SET_OF_print,
1064 SET_OF_constraint,
1065 SET_OF_decode_ber,
1066 SET_OF_encode_der,
1067 SET_OF_decode_xer,
1068 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001069 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001070 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001071 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001072 asn_DEF_SetOfREAL_tags_1,
1073 sizeof(asn_DEF_SetOfREAL_tags_1)
1074 /sizeof(asn_DEF_SetOfREAL_tags_1[0]), /* 1 */
1075 asn_DEF_SetOfREAL_tags_1, /* Same as above */
1076 sizeof(asn_DEF_SetOfREAL_tags_1)
1077 /sizeof(asn_DEF_SetOfREAL_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001078 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001079 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001080 asn_MBR_SetOfREAL_1,
1081 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001082 &asn_SPC_SetOfREAL_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001083};
1084
1085
Lev Walkinf5db6142005-02-24 22:38:43 +00001086/*** <<< INCLUDES [SetOfEnums] >>> ***/
1087
1088#include <ENUMERATED.h>
1089#include <asn_SET_OF.h>
1090#include <constr_SET_OF.h>
1091
1092/*** <<< DEPS [SetOfEnums] >>> ***/
1093
Lev Walkine0272aa2005-03-04 11:26:08 +00001094typedef enum Member {
1095 Member_one = 0,
1096 Member_oneMore = 1
Lev Walkin171487e2006-03-21 07:25:18 +00001097} e_Member;
Lev Walkinf5db6142005-02-24 22:38:43 +00001098
1099/*** <<< TYPE-DECLS [SetOfEnums] >>> ***/
1100
Lev Walkinf5db6142005-02-24 22:38:43 +00001101typedef struct SetOfEnums {
1102 A_SET_OF(ENUMERATED_t) list;
1103
1104 /* Context for parsing across buffer boundaries */
1105 asn_struct_ctx_t _asn_ctx;
1106} SetOfEnums_t;
1107
Lev Walkinb47df092005-02-25 08:35:54 +00001108/*** <<< FUNC-DECLS [SetOfEnums] >>> ***/
1109
Lev Walkine0272aa2005-03-04 11:26:08 +00001110/* extern asn_TYPE_descriptor_t asn_DEF_Member_2; // (Use -fall-defs-global to expose) */
Lev Walkinc8285712005-03-04 22:18:20 +00001111extern asn_TYPE_descriptor_t asn_DEF_SetOfEnums;
Lev Walkinb47df092005-02-25 08:35:54 +00001112
1113/*** <<< CODE [SetOfEnums] >>> ***/
1114
1115static int
Lev Walkine0272aa2005-03-04 11:26:08 +00001116Member_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001117 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinb47df092005-02-25 08:35:54 +00001118 /* Replace with underlying type checker */
1119 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00001120 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinb47df092005-02-25 08:35:54 +00001121}
1122
1123/*
1124 * This type is implemented using ENUMERATED,
1125 * so here we adjust the DEF accordingly.
1126 */
1127static void
Lev Walkine0272aa2005-03-04 11:26:08 +00001128Member_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinb47df092005-02-25 08:35:54 +00001129 td->free_struct = asn_DEF_ENUMERATED.free_struct;
1130 td->print_struct = asn_DEF_ENUMERATED.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001131 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkinb47df092005-02-25 08:35:54 +00001132 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
1133 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
1134 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
1135 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001136 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001137 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001138 td->oer_decoder = asn_DEF_ENUMERATED.oer_decoder;
1139 td->oer_encoder = asn_DEF_ENUMERATED.oer_encoder;
Lev Walkinb33425f2017-07-14 14:59:52 +04001140 if(!td->oer_constraints)
1141 td->oer_constraints = asn_DEF_ENUMERATED.oer_constraints;
Lev Walkin59b176e2005-11-26 11:25:14 +00001142 if(!td->per_constraints)
1143 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
Lev Walkinb47df092005-02-25 08:35:54 +00001144 td->elements = asn_DEF_ENUMERATED.elements;
1145 td->elements_count = asn_DEF_ENUMERATED.elements_count;
Lev Walkin29a82192005-03-29 19:05:37 +00001146 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
Lev Walkinb47df092005-02-25 08:35:54 +00001147}
1148
1149static void
Lev Walkine0272aa2005-03-04 11:26:08 +00001150Member_2_free(asn_TYPE_descriptor_t *td,
Lev Walkinb47df092005-02-25 08:35:54 +00001151 void *struct_ptr, int contents_only) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001152 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001153 td->free_struct(td, struct_ptr, contents_only);
1154}
1155
1156static int
Lev Walkine0272aa2005-03-04 11:26:08 +00001157Member_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
Lev Walkinb47df092005-02-25 08:35:54 +00001158 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001159 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001160 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1161}
1162
1163static asn_dec_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +00001164Member_2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +00001165 void **structure, const void *bufptr, size_t size, int tag_mode) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001166 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001167 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1168}
1169
1170static asn_enc_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +00001171Member_2_encode_der(asn_TYPE_descriptor_t *td,
Lev Walkinb47df092005-02-25 08:35:54 +00001172 void *structure, int tag_mode, ber_tlv_tag_t tag,
1173 asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001174 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001175 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1176}
1177
1178static asn_dec_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +00001179Member_2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +00001180 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001181 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001182 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1183}
1184
1185static asn_enc_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +00001186Member_2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
Lev Walkinb47df092005-02-25 08:35:54 +00001187 int ilevel, enum xer_encoder_flags_e flags,
1188 asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +00001189 Member_2_inherit_TYPE_descriptor(td);
Lev Walkinb47df092005-02-25 08:35:54 +00001190 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1191}
1192
1193
Lev Walkinf5db6142005-02-24 22:38:43 +00001194/*** <<< STAT-DEFS [SetOfEnums] >>> ***/
1195
Lev Walkina7591b52014-10-12 18:37:35 -07001196static const asn_INTEGER_enum_map_t asn_MAP_Member_value2enum_2[] = {
Lev Walkin9f30ef12005-02-25 11:08:02 +00001197 { 0, 3, "one" },
1198 { 1, 7, "oneMore" }
1199};
Lev Walkina7591b52014-10-12 18:37:35 -07001200static const unsigned int asn_MAP_Member_enum2value_2[] = {
Lev Walkin9f30ef12005-02-25 11:08:02 +00001201 0, /* one(0) */
1202 1 /* oneMore(1) */
Lev Walkinb47df092005-02-25 08:35:54 +00001203};
johvike70c4072017-05-09 11:06:12 +02001204static asn_INTEGER_specifics_t asn_SPC_Member_specs_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +00001205 asn_MAP_Member_value2enum_2, /* "tag" => N; sorted by tag */
1206 asn_MAP_Member_enum2value_2, /* N => "tag"; sorted by N */
Lev Walkinb47df092005-02-25 08:35:54 +00001207 2, /* Number of elements in the maps */
Lev Walkin295e2452005-02-25 11:47:59 +00001208 0, /* Enumeration is not extensible */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001209 1, /* Strict enumeration */
1210 0, /* Native long size */
1211 0
Lev Walkinb47df092005-02-25 08:35:54 +00001212};
Lev Walkina7591b52014-10-12 18:37:35 -07001213static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
Lev Walkinb47df092005-02-25 08:35:54 +00001214 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1215};
1216static /* Use -fall-defs-global to expose */
Lev Walkine0272aa2005-03-04 11:26:08 +00001217asn_TYPE_descriptor_t asn_DEF_Member_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +00001218 "ENUMERATED",
1219 "ENUMERATED",
Lev Walkine0272aa2005-03-04 11:26:08 +00001220 Member_2_free,
1221 Member_2_print,
1222 Member_2_constraint,
1223 Member_2_decode_ber,
1224 Member_2_encode_der,
1225 Member_2_decode_xer,
1226 Member_2_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001227 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001228 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinb47df092005-02-25 08:35:54 +00001229 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001230 asn_DEF_Member_tags_2,
1231 sizeof(asn_DEF_Member_tags_2)
1232 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
1233 asn_DEF_Member_tags_2, /* Same as above */
1234 sizeof(asn_DEF_Member_tags_2)
1235 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001236 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001237 0, /* No PER visible constraints */
Lev Walkinb47df092005-02-25 08:35:54 +00001238 0, 0, /* Defined elsewhere */
Lev Walkin59b176e2005-11-26 11:25:14 +00001239 &asn_SPC_Member_specs_2 /* Additional specs */
Lev Walkinb47df092005-02-25 08:35:54 +00001240};
1241
Lev Walkine0272aa2005-03-04 11:26:08 +00001242static asn_TYPE_member_t asn_MBR_SetOfEnums_1[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +00001243 { ATF_POINTER, 0, 0,
Lev Walkinf5db6142005-02-24 22:38:43 +00001244 .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
1245 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001246 .type = &asn_DEF_Member_2,
Lev Walkinf5db6142005-02-24 22:38:43 +00001247 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001248 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001249 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1250 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +00001251 .name = ""
1252 },
1253};
Lev Walkina7591b52014-10-12 18:37:35 -07001254static const ber_tlv_tag_t asn_DEF_SetOfEnums_tags_1[] = {
Lev Walkinf5db6142005-02-24 22:38:43 +00001255 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1256};
Lev Walkin59b176e2005-11-26 11:25:14 +00001257static asn_SET_OF_specifics_t asn_SPC_SetOfEnums_specs_1 = {
Lev Walkinf5db6142005-02-24 22:38:43 +00001258 sizeof(struct SetOfEnums),
1259 offsetof(struct SetOfEnums, _asn_ctx),
Lev Walkinb47df092005-02-25 08:35:54 +00001260 1, /* XER encoding is XMLValueList */
Lev Walkinf5db6142005-02-24 22:38:43 +00001261};
1262asn_TYPE_descriptor_t asn_DEF_SetOfEnums = {
1263 "SetOfEnums",
1264 "SetOfEnums",
1265 SET_OF_free,
1266 SET_OF_print,
1267 SET_OF_constraint,
1268 SET_OF_decode_ber,
1269 SET_OF_encode_der,
1270 SET_OF_decode_xer,
1271 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001272 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001273 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinf5db6142005-02-24 22:38:43 +00001274 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001275 asn_DEF_SetOfEnums_tags_1,
1276 sizeof(asn_DEF_SetOfEnums_tags_1)
1277 /sizeof(asn_DEF_SetOfEnums_tags_1[0]), /* 1 */
1278 asn_DEF_SetOfEnums_tags_1, /* Same as above */
1279 sizeof(asn_DEF_SetOfEnums_tags_1)
1280 /sizeof(asn_DEF_SetOfEnums_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001281 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001282 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +00001283 asn_MBR_SetOfEnums_1,
Lev Walkinf5db6142005-02-24 22:38:43 +00001284 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001285 &asn_SPC_SetOfEnums_specs_1 /* Additional specs */
Lev Walkinf5db6142005-02-24 22:38:43 +00001286};
1287
1288
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001289/*** <<< INCLUDES [NamedSetOfNULL] >>> ***/
1290
1291#include <NULL.h>
1292#include <asn_SET_OF.h>
1293#include <constr_SET_OF.h>
1294
1295/*** <<< TYPE-DECLS [NamedSetOfNULL] >>> ***/
1296
1297typedef struct NamedSetOfNULL {
1298 A_SET_OF(NULL_t) list;
1299
1300 /* Context for parsing across buffer boundaries */
1301 asn_struct_ctx_t _asn_ctx;
1302} NamedSetOfNULL_t;
1303
1304/*** <<< FUNC-DECLS [NamedSetOfNULL] >>> ***/
1305
1306extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL;
1307
1308/*** <<< STAT-DEFS [NamedSetOfNULL] >>> ***/
1309
1310static asn_TYPE_member_t asn_MBR_NamedSetOfNULL_1[] = {
1311 { ATF_POINTER, 0, 0,
1312 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
1313 .tag_mode = 0,
1314 .type = &asn_DEF_NULL,
1315 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001316 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001317 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1318 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001319 .name = "y"
1320 },
1321};
Lev Walkina7591b52014-10-12 18:37:35 -07001322static const ber_tlv_tag_t asn_DEF_NamedSetOfNULL_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001323 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1324};
Lev Walkin59b176e2005-11-26 11:25:14 +00001325static asn_SET_OF_specifics_t asn_SPC_NamedSetOfNULL_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001326 sizeof(struct NamedSetOfNULL),
1327 offsetof(struct NamedSetOfNULL, _asn_ctx),
1328 1, /* XER encoding is XMLValueList */
1329};
1330asn_TYPE_descriptor_t asn_DEF_NamedSetOfNULL = {
1331 "NamedSetOfNULL",
1332 "NamedSetOfNULL",
1333 SET_OF_free,
1334 SET_OF_print,
1335 SET_OF_constraint,
1336 SET_OF_decode_ber,
1337 SET_OF_encode_der,
1338 SET_OF_decode_xer,
1339 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001340 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001341 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001342 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001343 asn_DEF_NamedSetOfNULL_tags_1,
1344 sizeof(asn_DEF_NamedSetOfNULL_tags_1)
1345 /sizeof(asn_DEF_NamedSetOfNULL_tags_1[0]), /* 1 */
1346 asn_DEF_NamedSetOfNULL_tags_1, /* Same as above */
1347 sizeof(asn_DEF_NamedSetOfNULL_tags_1)
1348 /sizeof(asn_DEF_NamedSetOfNULL_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001349 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001350 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001351 asn_MBR_NamedSetOfNULL_1,
1352 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001353 &asn_SPC_NamedSetOfNULL_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001354};
1355
1356
1357/*** <<< INCLUDES [NamedSetOfREAL] >>> ***/
1358
1359#include <REAL.h>
1360#include <asn_SET_OF.h>
1361#include <constr_SET_OF.h>
1362
1363/*** <<< TYPE-DECLS [NamedSetOfREAL] >>> ***/
1364
1365typedef struct NamedSetOfREAL {
1366 A_SET_OF(REAL_t) list;
1367
1368 /* Context for parsing across buffer boundaries */
1369 asn_struct_ctx_t _asn_ctx;
1370} NamedSetOfREAL_t;
1371
1372/*** <<< FUNC-DECLS [NamedSetOfREAL] >>> ***/
1373
1374extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL;
1375
1376/*** <<< STAT-DEFS [NamedSetOfREAL] >>> ***/
1377
1378static asn_TYPE_member_t asn_MBR_NamedSetOfREAL_1[] = {
1379 { ATF_POINTER, 0, 0,
1380 .tag = (ASN_TAG_CLASS_UNIVERSAL | (9 << 2)),
1381 .tag_mode = 0,
1382 .type = &asn_DEF_REAL,
1383 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001384 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001385 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1386 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001387 .name = "name"
1388 },
1389};
Lev Walkina7591b52014-10-12 18:37:35 -07001390static const ber_tlv_tag_t asn_DEF_NamedSetOfREAL_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001391 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1392};
Lev Walkin59b176e2005-11-26 11:25:14 +00001393static asn_SET_OF_specifics_t asn_SPC_NamedSetOfREAL_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001394 sizeof(struct NamedSetOfREAL),
1395 offsetof(struct NamedSetOfREAL, _asn_ctx),
1396 0, /* XER encoding is XMLDelimitedItemList */
1397};
1398asn_TYPE_descriptor_t asn_DEF_NamedSetOfREAL = {
1399 "NamedSetOfREAL",
1400 "NamedSetOfREAL",
1401 SET_OF_free,
1402 SET_OF_print,
1403 SET_OF_constraint,
1404 SET_OF_decode_ber,
1405 SET_OF_encode_der,
1406 SET_OF_decode_xer,
1407 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001408 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001409 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001410 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001411 asn_DEF_NamedSetOfREAL_tags_1,
1412 sizeof(asn_DEF_NamedSetOfREAL_tags_1)
1413 /sizeof(asn_DEF_NamedSetOfREAL_tags_1[0]), /* 1 */
1414 asn_DEF_NamedSetOfREAL_tags_1, /* Same as above */
1415 sizeof(asn_DEF_NamedSetOfREAL_tags_1)
1416 /sizeof(asn_DEF_NamedSetOfREAL_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001417 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001418 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001419 asn_MBR_NamedSetOfREAL_1,
1420 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001421 &asn_SPC_NamedSetOfREAL_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001422};
1423
1424
1425/*** <<< INCLUDES [NamedSetOfEnums] >>> ***/
1426
1427#include <ENUMERATED.h>
1428#include <asn_SET_OF.h>
1429#include <constr_SET_OF.h>
1430
1431/*** <<< DEPS [NamedSetOfEnums] >>> ***/
1432
1433typedef enum name {
1434 name_one = 0,
1435 name_oneMore = 1
Lev Walkin171487e2006-03-21 07:25:18 +00001436} e_name;
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001437
1438/*** <<< TYPE-DECLS [NamedSetOfEnums] >>> ***/
1439
1440typedef struct NamedSetOfEnums {
1441 A_SET_OF(ENUMERATED_t) list;
1442
1443 /* Context for parsing across buffer boundaries */
1444 asn_struct_ctx_t _asn_ctx;
1445} NamedSetOfEnums_t;
1446
1447/*** <<< FUNC-DECLS [NamedSetOfEnums] >>> ***/
1448
1449/* extern asn_TYPE_descriptor_t asn_DEF_name_2; // (Use -fall-defs-global to expose) */
1450extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums;
1451
1452/*** <<< CODE [NamedSetOfEnums] >>> ***/
1453
1454static int
1455name_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001456 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001457 /* Replace with underlying type checker */
1458 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00001459 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001460}
1461
1462/*
1463 * This type is implemented using ENUMERATED,
1464 * so here we adjust the DEF accordingly.
1465 */
1466static void
1467name_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1468 td->free_struct = asn_DEF_ENUMERATED.free_struct;
1469 td->print_struct = asn_DEF_ENUMERATED.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001470 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001471 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
1472 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
1473 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
1474 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001475 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001476 td->uper_encoder = asn_DEF_ENUMERATED.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001477 td->oer_decoder = asn_DEF_ENUMERATED.oer_decoder;
1478 td->oer_encoder = asn_DEF_ENUMERATED.oer_encoder;
Lev Walkinb33425f2017-07-14 14:59:52 +04001479 if(!td->oer_constraints)
1480 td->oer_constraints = asn_DEF_ENUMERATED.oer_constraints;
Lev Walkin59b176e2005-11-26 11:25:14 +00001481 if(!td->per_constraints)
1482 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001483 td->elements = asn_DEF_ENUMERATED.elements;
1484 td->elements_count = asn_DEF_ENUMERATED.elements_count;
1485 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
1486}
1487
1488static void
1489name_2_free(asn_TYPE_descriptor_t *td,
1490 void *struct_ptr, int contents_only) {
1491 name_2_inherit_TYPE_descriptor(td);
1492 td->free_struct(td, struct_ptr, contents_only);
1493}
1494
1495static int
1496name_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1497 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1498 name_2_inherit_TYPE_descriptor(td);
1499 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1500}
1501
1502static asn_dec_rval_t
1503name_2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1504 void **structure, const void *bufptr, size_t size, int tag_mode) {
1505 name_2_inherit_TYPE_descriptor(td);
1506 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1507}
1508
1509static asn_enc_rval_t
1510name_2_encode_der(asn_TYPE_descriptor_t *td,
1511 void *structure, int tag_mode, ber_tlv_tag_t tag,
1512 asn_app_consume_bytes_f *cb, void *app_key) {
1513 name_2_inherit_TYPE_descriptor(td);
1514 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1515}
1516
1517static asn_dec_rval_t
1518name_2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1519 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1520 name_2_inherit_TYPE_descriptor(td);
1521 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1522}
1523
1524static asn_enc_rval_t
1525name_2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1526 int ilevel, enum xer_encoder_flags_e flags,
1527 asn_app_consume_bytes_f *cb, void *app_key) {
1528 name_2_inherit_TYPE_descriptor(td);
1529 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1530}
1531
1532
1533/*** <<< STAT-DEFS [NamedSetOfEnums] >>> ***/
1534
Lev Walkina7591b52014-10-12 18:37:35 -07001535static const asn_INTEGER_enum_map_t asn_MAP_name_value2enum_2[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001536 { 0, 3, "one" },
1537 { 1, 7, "oneMore" }
1538};
Lev Walkina7591b52014-10-12 18:37:35 -07001539static const unsigned int asn_MAP_name_enum2value_2[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001540 0, /* one(0) */
1541 1 /* oneMore(1) */
1542};
johvike70c4072017-05-09 11:06:12 +02001543static asn_INTEGER_specifics_t asn_SPC_name_specs_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +00001544 asn_MAP_name_value2enum_2, /* "tag" => N; sorted by tag */
1545 asn_MAP_name_enum2value_2, /* N => "tag"; sorted by N */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001546 2, /* Number of elements in the maps */
1547 0, /* Enumeration is not extensible */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001548 1, /* Strict enumeration */
1549 0, /* Native long size */
1550 0
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001551};
Lev Walkina7591b52014-10-12 18:37:35 -07001552static const ber_tlv_tag_t asn_DEF_name_tags_2[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001553 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
1554};
1555static /* Use -fall-defs-global to expose */
1556asn_TYPE_descriptor_t asn_DEF_name_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +00001557 "ENUMERATED",
1558 "ENUMERATED",
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001559 name_2_free,
1560 name_2_print,
1561 name_2_constraint,
1562 name_2_decode_ber,
1563 name_2_encode_der,
1564 name_2_decode_xer,
1565 name_2_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001566 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001567 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001568 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001569 asn_DEF_name_tags_2,
1570 sizeof(asn_DEF_name_tags_2)
1571 /sizeof(asn_DEF_name_tags_2[0]), /* 1 */
1572 asn_DEF_name_tags_2, /* Same as above */
1573 sizeof(asn_DEF_name_tags_2)
1574 /sizeof(asn_DEF_name_tags_2[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001575 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001576 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001577 0, 0, /* Defined elsewhere */
Lev Walkin59b176e2005-11-26 11:25:14 +00001578 &asn_SPC_name_specs_2 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001579};
1580
1581static asn_TYPE_member_t asn_MBR_NamedSetOfEnums_1[] = {
1582 { ATF_POINTER, 0, 0,
1583 .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
1584 .tag_mode = 0,
1585 .type = &asn_DEF_name_2,
1586 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001587 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001588 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1589 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001590 .name = "name"
1591 },
1592};
Lev Walkina7591b52014-10-12 18:37:35 -07001593static const ber_tlv_tag_t asn_DEF_NamedSetOfEnums_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001594 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1595};
Lev Walkin59b176e2005-11-26 11:25:14 +00001596static asn_SET_OF_specifics_t asn_SPC_NamedSetOfEnums_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001597 sizeof(struct NamedSetOfEnums),
1598 offsetof(struct NamedSetOfEnums, _asn_ctx),
1599 1, /* XER encoding is XMLValueList */
1600};
1601asn_TYPE_descriptor_t asn_DEF_NamedSetOfEnums = {
1602 "NamedSetOfEnums",
1603 "NamedSetOfEnums",
1604 SET_OF_free,
1605 SET_OF_print,
1606 SET_OF_constraint,
1607 SET_OF_decode_ber,
1608 SET_OF_encode_der,
1609 SET_OF_decode_xer,
1610 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001611 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001612 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001613 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001614 asn_DEF_NamedSetOfEnums_tags_1,
1615 sizeof(asn_DEF_NamedSetOfEnums_tags_1)
1616 /sizeof(asn_DEF_NamedSetOfEnums_tags_1[0]), /* 1 */
1617 asn_DEF_NamedSetOfEnums_tags_1, /* Same as above */
1618 sizeof(asn_DEF_NamedSetOfEnums_tags_1)
1619 /sizeof(asn_DEF_NamedSetOfEnums_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001620 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001621 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001622 asn_MBR_NamedSetOfEnums_1,
1623 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001624 &asn_SPC_NamedSetOfEnums_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001625};
1626
1627
Lev Walkin843a2462005-02-18 16:30:26 +00001628/*** <<< INCLUDES [SequenceOf] >>> ***/
Lev Walkin0ef9f142005-02-14 20:40:57 +00001629
1630#include <INTEGER.h>
1631#include <asn_SEQUENCE_OF.h>
1632#include <constr_SEQUENCE_OF.h>
1633
Lev Walkin843a2462005-02-18 16:30:26 +00001634/*** <<< TYPE-DECLS [SequenceOf] >>> ***/
Lev Walkin0ef9f142005-02-14 20:40:57 +00001635
Lev Walkin843a2462005-02-18 16:30:26 +00001636typedef struct SequenceOf {
Lev Walkin0ef9f142005-02-14 20:40:57 +00001637 A_SEQUENCE_OF(INTEGER_t) list;
1638
1639 /* Context for parsing across buffer boundaries */
1640 asn_struct_ctx_t _asn_ctx;
Lev Walkin843a2462005-02-18 16:30:26 +00001641} SequenceOf_t;
Lev Walkin0ef9f142005-02-14 20:40:57 +00001642
Lev Walkinc8285712005-03-04 22:18:20 +00001643/*** <<< FUNC-DECLS [SequenceOf] >>> ***/
1644
1645extern asn_TYPE_descriptor_t asn_DEF_SequenceOf;
1646
Lev Walkin843a2462005-02-18 16:30:26 +00001647/*** <<< STAT-DEFS [SequenceOf] >>> ***/
Lev Walkin0ef9f142005-02-14 20:40:57 +00001648
Lev Walkine0272aa2005-03-04 11:26:08 +00001649static asn_TYPE_member_t asn_MBR_SequenceOf_1[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +00001650 { ATF_POINTER, 0, 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +00001651 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
1652 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001653 .type = &asn_DEF_INTEGER,
Lev Walkin0ef9f142005-02-14 20:40:57 +00001654 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001655 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001656 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1657 .default_value = 0,
Lev Walkin0ef9f142005-02-14 20:40:57 +00001658 .name = "id"
1659 },
1660};
Lev Walkina7591b52014-10-12 18:37:35 -07001661static const ber_tlv_tag_t asn_DEF_SequenceOf_tags_1[] = {
Lev Walkin0ef9f142005-02-14 20:40:57 +00001662 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1663};
Lev Walkin59b176e2005-11-26 11:25:14 +00001664static asn_SET_OF_specifics_t asn_SPC_SequenceOf_specs_1 = {
Lev Walkin843a2462005-02-18 16:30:26 +00001665 sizeof(struct SequenceOf),
1666 offsetof(struct SequenceOf, _asn_ctx),
Lev Walkin0ef9f142005-02-14 20:40:57 +00001667 0, /* XER encoding is XMLDelimitedItemList */
1668};
Lev Walkin843a2462005-02-18 16:30:26 +00001669asn_TYPE_descriptor_t asn_DEF_SequenceOf = {
1670 "SequenceOf",
1671 "SequenceOf",
Lev Walkin0ef9f142005-02-14 20:40:57 +00001672 SEQUENCE_OF_free,
1673 SEQUENCE_OF_print,
1674 SEQUENCE_OF_constraint,
1675 SEQUENCE_OF_decode_ber,
1676 SEQUENCE_OF_encode_der,
1677 SEQUENCE_OF_decode_xer,
1678 SEQUENCE_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001679 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001680 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin0ef9f142005-02-14 20:40:57 +00001681 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001682 asn_DEF_SequenceOf_tags_1,
1683 sizeof(asn_DEF_SequenceOf_tags_1)
1684 /sizeof(asn_DEF_SequenceOf_tags_1[0]), /* 1 */
1685 asn_DEF_SequenceOf_tags_1, /* Same as above */
1686 sizeof(asn_DEF_SequenceOf_tags_1)
1687 /sizeof(asn_DEF_SequenceOf_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001688 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001689 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +00001690 asn_MBR_SequenceOf_1,
Lev Walkin0ef9f142005-02-14 20:40:57 +00001691 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001692 &asn_SPC_SequenceOf_specs_1 /* Additional specs */
Lev Walkin0ef9f142005-02-14 20:40:57 +00001693};
1694
Lev Walkinf5db6142005-02-24 22:38:43 +00001695
1696/*** <<< INCLUDES [SeqOfZuka] >>> ***/
1697
1698#include <NULL.h>
1699#include <asn_SEQUENCE_OF.h>
1700#include <constr_SEQUENCE_OF.h>
1701
Lev Walkinf5db6142005-02-24 22:38:43 +00001702/*** <<< TYPE-DECLS [SeqOfZuka] >>> ***/
1703
Lev Walkinf5db6142005-02-24 22:38:43 +00001704typedef struct SeqOfZuka {
1705 A_SEQUENCE_OF(NULL_t) list;
1706
1707 /* Context for parsing across buffer boundaries */
1708 asn_struct_ctx_t _asn_ctx;
1709} SeqOfZuka_t;
1710
Lev Walkinc8285712005-03-04 22:18:20 +00001711/*** <<< FUNC-DECLS [SeqOfZuka] >>> ***/
1712
1713extern asn_TYPE_descriptor_t asn_DEF_SeqOfZuka;
1714
Lev Walkinf5db6142005-02-24 22:38:43 +00001715/*** <<< STAT-DEFS [SeqOfZuka] >>> ***/
1716
Lev Walkine0272aa2005-03-04 11:26:08 +00001717static asn_TYPE_member_t asn_MBR_SeqOfZuka_1[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +00001718 { ATF_POINTER, 0, 0,
Lev Walkinf5db6142005-02-24 22:38:43 +00001719 .tag = (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)),
1720 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001721 .type = &asn_DEF_NULL,
Lev Walkinf5db6142005-02-24 22:38:43 +00001722 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001723 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001724 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1725 .default_value = 0,
Lev Walkinf5db6142005-02-24 22:38:43 +00001726 .name = "zuka"
1727 },
1728};
Lev Walkina7591b52014-10-12 18:37:35 -07001729static const ber_tlv_tag_t asn_DEF_SeqOfZuka_tags_1[] = {
Lev Walkinf5db6142005-02-24 22:38:43 +00001730 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1731};
Lev Walkin59b176e2005-11-26 11:25:14 +00001732static asn_SET_OF_specifics_t asn_SPC_SeqOfZuka_specs_1 = {
Lev Walkinf5db6142005-02-24 22:38:43 +00001733 sizeof(struct SeqOfZuka),
1734 offsetof(struct SeqOfZuka, _asn_ctx),
1735 1, /* XER encoding is XMLValueList */
1736};
1737asn_TYPE_descriptor_t asn_DEF_SeqOfZuka = {
1738 "SeqOfZuka",
1739 "SeqOfZuka",
1740 SEQUENCE_OF_free,
1741 SEQUENCE_OF_print,
1742 SEQUENCE_OF_constraint,
1743 SEQUENCE_OF_decode_ber,
1744 SEQUENCE_OF_encode_der,
1745 SEQUENCE_OF_decode_xer,
1746 SEQUENCE_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001747 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001748 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinf5db6142005-02-24 22:38:43 +00001749 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001750 asn_DEF_SeqOfZuka_tags_1,
1751 sizeof(asn_DEF_SeqOfZuka_tags_1)
1752 /sizeof(asn_DEF_SeqOfZuka_tags_1[0]), /* 1 */
1753 asn_DEF_SeqOfZuka_tags_1, /* Same as above */
1754 sizeof(asn_DEF_SeqOfZuka_tags_1)
1755 /sizeof(asn_DEF_SeqOfZuka_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001756 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001757 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +00001758 asn_MBR_SeqOfZuka_1,
Lev Walkinf5db6142005-02-24 22:38:43 +00001759 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001760 &asn_SPC_SeqOfZuka_specs_1 /* Additional specs */
Lev Walkinf5db6142005-02-24 22:38:43 +00001761};
1762
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001763
1764/*** <<< INCLUDES [SetOfChoice] >>> ***/
1765
1766#include <asn_SET_OF.h>
1767#include <constr_SET_OF.h>
1768
1769/*** <<< FWD-DECLS [SetOfChoice] >>> ***/
1770
1771struct SimpleChoice;
1772
1773/*** <<< TYPE-DECLS [SetOfChoice] >>> ***/
1774
1775typedef struct SetOfChoice {
1776 A_SET_OF(struct SimpleChoice) list;
1777
1778 /* Context for parsing across buffer boundaries */
1779 asn_struct_ctx_t _asn_ctx;
1780} SetOfChoice_t;
1781
1782/*** <<< FUNC-DECLS [SetOfChoice] >>> ***/
1783
1784extern asn_TYPE_descriptor_t asn_DEF_SetOfChoice;
1785
1786/*** <<< POST-INCLUDE [SetOfChoice] >>> ***/
1787
Lev Walkin22b5ed42006-09-13 02:51:20 +00001788#include "SimpleChoice.h"
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001789
1790/*** <<< STAT-DEFS [SetOfChoice] >>> ***/
1791
1792static asn_TYPE_member_t asn_MBR_SetOfChoice_1[] = {
1793 { ATF_POINTER, 0, 0,
1794 .tag = -1 /* Ambiguous tag (CHOICE?) */,
1795 .tag_mode = 0,
1796 .type = &asn_DEF_SimpleChoice,
1797 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001798 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001799 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1800 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001801 .name = ""
1802 },
1803};
Lev Walkina7591b52014-10-12 18:37:35 -07001804static const ber_tlv_tag_t asn_DEF_SetOfChoice_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001805 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1806};
Lev Walkin59b176e2005-11-26 11:25:14 +00001807static asn_SET_OF_specifics_t asn_SPC_SetOfChoice_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001808 sizeof(struct SetOfChoice),
1809 offsetof(struct SetOfChoice, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +00001810 2, /* XER encoding is XMLValueList */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001811};
1812asn_TYPE_descriptor_t asn_DEF_SetOfChoice = {
1813 "SetOfChoice",
1814 "SetOfChoice",
1815 SET_OF_free,
1816 SET_OF_print,
1817 SET_OF_constraint,
1818 SET_OF_decode_ber,
1819 SET_OF_encode_der,
1820 SET_OF_decode_xer,
1821 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001822 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001823 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001824 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001825 asn_DEF_SetOfChoice_tags_1,
1826 sizeof(asn_DEF_SetOfChoice_tags_1)
1827 /sizeof(asn_DEF_SetOfChoice_tags_1[0]), /* 1 */
1828 asn_DEF_SetOfChoice_tags_1, /* Same as above */
1829 sizeof(asn_DEF_SetOfChoice_tags_1)
1830 /sizeof(asn_DEF_SetOfChoice_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001831 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001832 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001833 asn_MBR_SetOfChoice_1,
1834 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001835 &asn_SPC_SetOfChoice_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001836};
1837
1838
1839/*** <<< INCLUDES [NamedSetOfChoice] >>> ***/
1840
1841#include <asn_SET_OF.h>
1842#include <constr_SET_OF.h>
1843
1844/*** <<< FWD-DECLS [NamedSetOfChoice] >>> ***/
1845
1846struct SimpleChoice;
1847
1848/*** <<< TYPE-DECLS [NamedSetOfChoice] >>> ***/
1849
1850typedef struct NamedSetOfChoice {
1851 A_SET_OF(struct SimpleChoice) list;
1852
1853 /* Context for parsing across buffer boundaries */
1854 asn_struct_ctx_t _asn_ctx;
1855} NamedSetOfChoice_t;
1856
1857/*** <<< FUNC-DECLS [NamedSetOfChoice] >>> ***/
1858
1859extern asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice;
1860
1861/*** <<< POST-INCLUDE [NamedSetOfChoice] >>> ***/
1862
Lev Walkin22b5ed42006-09-13 02:51:20 +00001863#include "SimpleChoice.h"
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001864
1865/*** <<< STAT-DEFS [NamedSetOfChoice] >>> ***/
1866
1867static asn_TYPE_member_t asn_MBR_NamedSetOfChoice_1[] = {
1868 { ATF_POINTER, 0, 0,
1869 .tag = -1 /* Ambiguous tag (CHOICE?) */,
1870 .tag_mode = 0,
1871 .type = &asn_DEF_SimpleChoice,
1872 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001873 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001874 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1875 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001876 .name = "whatever"
1877 },
1878};
Lev Walkina7591b52014-10-12 18:37:35 -07001879static const ber_tlv_tag_t asn_DEF_NamedSetOfChoice_tags_1[] = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001880 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1881};
Lev Walkin59b176e2005-11-26 11:25:14 +00001882static asn_SET_OF_specifics_t asn_SPC_NamedSetOfChoice_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001883 sizeof(struct NamedSetOfChoice),
1884 offsetof(struct NamedSetOfChoice, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +00001885 2, /* XER encoding is XMLValueList */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001886};
1887asn_TYPE_descriptor_t asn_DEF_NamedSetOfChoice = {
1888 "NamedSetOfChoice",
1889 "NamedSetOfChoice",
1890 SET_OF_free,
1891 SET_OF_print,
1892 SET_OF_constraint,
1893 SET_OF_decode_ber,
1894 SET_OF_encode_der,
1895 SET_OF_decode_xer,
1896 SET_OF_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001897 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001898 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001899 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001900 asn_DEF_NamedSetOfChoice_tags_1,
1901 sizeof(asn_DEF_NamedSetOfChoice_tags_1)
1902 /sizeof(asn_DEF_NamedSetOfChoice_tags_1[0]), /* 1 */
1903 asn_DEF_NamedSetOfChoice_tags_1, /* Same as above */
1904 sizeof(asn_DEF_NamedSetOfChoice_tags_1)
1905 /sizeof(asn_DEF_NamedSetOfChoice_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001906 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001907 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001908 asn_MBR_NamedSetOfChoice_1,
1909 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +00001910 &asn_SPC_NamedSetOfChoice_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001911};
1912
1913
1914/*** <<< INCLUDES [SimpleChoice] >>> ***/
1915
1916#include <NULL.h>
1917#include <INTEGER.h>
1918#include <constr_CHOICE.h>
1919
1920/*** <<< DEPS [SimpleChoice] >>> ***/
1921
1922typedef enum SimpleChoice_PR {
1923 SimpleChoice_PR_NOTHING, /* No components present */
1924 SimpleChoice_PR_a,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001925 SimpleChoice_PR_b
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001926} SimpleChoice_PR;
1927
1928/*** <<< TYPE-DECLS [SimpleChoice] >>> ***/
1929
1930typedef struct SimpleChoice {
1931 SimpleChoice_PR present;
1932 union SimpleChoice_u {
1933 NULL_t a;
1934 INTEGER_t b;
1935 } choice;
1936
1937 /* Context for parsing across buffer boundaries */
1938 asn_struct_ctx_t _asn_ctx;
1939} SimpleChoice_t;
1940
1941/*** <<< FUNC-DECLS [SimpleChoice] >>> ***/
1942
1943extern asn_TYPE_descriptor_t asn_DEF_SimpleChoice;
1944
1945/*** <<< STAT-DEFS [SimpleChoice] >>> ***/
1946
1947static asn_TYPE_member_t asn_MBR_SimpleChoice_1[] = {
1948 { ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.a),
1949 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1950 .tag_mode = -1, /* IMPLICIT tag at current level */
1951 .type = &asn_DEF_NULL,
1952 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001953 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001954 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1955 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001956 .name = "a"
1957 },
1958 { ATF_NOFLAGS, 0, offsetof(struct SimpleChoice, choice.b),
1959 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1960 .tag_mode = -1, /* IMPLICIT tag at current level */
1961 .type = &asn_DEF_INTEGER,
1962 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001963 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001964 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1965 .default_value = 0,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001966 .name = "b"
1967 },
1968};
Lev Walkina7591b52014-10-12 18:37:35 -07001969static const asn_TYPE_tag2member_t asn_MAP_SimpleChoice_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001970 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
1971 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001972};
Lev Walkin59b176e2005-11-26 11:25:14 +00001973static asn_CHOICE_specifics_t asn_SPC_SimpleChoice_specs_1 = {
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001974 sizeof(struct SimpleChoice),
1975 offsetof(struct SimpleChoice, _asn_ctx),
1976 offsetof(struct SimpleChoice, present),
1977 sizeof(((struct SimpleChoice *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +00001978 asn_MAP_SimpleChoice_tag2el_1,
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001979 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001980 .canonical_order = 0,
1981 .ext_start = -1 /* Extensions start */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001982};
1983asn_TYPE_descriptor_t asn_DEF_SimpleChoice = {
1984 "SimpleChoice",
1985 "SimpleChoice",
1986 CHOICE_free,
1987 CHOICE_print,
1988 CHOICE_constraint,
1989 CHOICE_decode_ber,
1990 CHOICE_encode_der,
1991 CHOICE_decode_xer,
1992 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -07001993 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +04001994 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00001995 CHOICE_outmost_tag,
1996 0, /* No effective tags (pointer) */
1997 0, /* No effective tags (count) */
1998 0, /* No tags (pointer) */
1999 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +04002000 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00002001 0, /* No PER visible constraints */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00002002 asn_MBR_SimpleChoice_1,
2003 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00002004 &asn_SPC_SimpleChoice_specs_1 /* Additional specs */
Lev Walkin5ab96cd2005-11-07 15:26:47 +00002005};
2006