blob: 635be8e92d83293420262e7c8a108a739154256d [file] [log] [blame]
Lev Walkinb9189732004-09-10 09:37:12 +00001
2/*** <<< INCLUDES [T1] >>> ***/
3
4#include <INTEGER.h>
5#include <ANY.h>
6#include <constr_SEQUENCE.h>
7
Lev Walkinb9189732004-09-10 09:37:12 +00008/*** <<< TYPE-DECLS [T1] >>> ***/
9
Lev Walkinb9189732004-09-10 09:37:12 +000010typedef struct T1 {
11 INTEGER_t i;
12 ANY_t any;
13
14 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000015 asn_struct_ctx_t _asn_ctx;
Lev Walkinb9189732004-09-10 09:37:12 +000016} T1_t;
17
Lev Walkinc8285712005-03-04 22:18:20 +000018/*** <<< FUNC-DECLS [T1] >>> ***/
19
20extern asn_TYPE_descriptor_t asn_DEF_T1;
21
Lev Walkinb9189732004-09-10 09:37:12 +000022/*** <<< STAT-DEFS [T1] >>> ***/
23
Lev Walkine0272aa2005-03-04 11:26:08 +000024static asn_TYPE_member_t asn_MBR_T1_1[] = {
Lev Walkinb9189732004-09-10 09:37:12 +000025 { ATF_NOFLAGS, 0, offsetof(struct T1, i),
26 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
27 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000028 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +000029 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +000030 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
31 .default_value = 0,
Lev Walkinb9189732004-09-10 09:37:12 +000032 .name = "i"
33 },
34 { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct T1, any),
35 .tag = -1 /* Ambiguous tag (ANY?) */,
36 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000037 .type = &asn_DEF_ANY,
Lev Walkinba58e1b2005-01-17 12:20:19 +000038 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +000039 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
40 .default_value = 0,
Lev Walkinb9189732004-09-10 09:37:12 +000041 .name = "any"
42 },
43};
Lev Walkina7591b52014-10-12 18:37:35 -070044static const ber_tlv_tag_t asn_DEF_T1_tags_1[] = {
Lev Walkinb9189732004-09-10 09:37:12 +000045 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
46};
Lev Walkina7591b52014-10-12 18:37:35 -070047static const asn_TYPE_tag2member_t asn_MAP_T1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070048 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkinb9189732004-09-10 09:37:12 +000049};
Lev Walkin59b176e2005-11-26 11:25:14 +000050static asn_SEQUENCE_specifics_t asn_SPC_T1_specs_1 = {
Lev Walkinb9189732004-09-10 09:37:12 +000051 sizeof(struct T1),
Lev Walkindfae9752004-09-29 13:19:37 +000052 offsetof(struct T1, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +000053 asn_MAP_T1_tag2el_1,
Lev Walkinb9189732004-09-10 09:37:12 +000054 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000055 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb9189732004-09-10 09:37:12 +000056 -1, /* Start extensions */
57 -1 /* Stop extensions */
58};
Lev Walkindfae9752004-09-29 13:19:37 +000059asn_TYPE_descriptor_t asn_DEF_T1 = {
Lev Walkinb9189732004-09-10 09:37:12 +000060 "T1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000061 "T1",
Lev Walkina9cc46e2004-09-22 16:06:28 +000062 SEQUENCE_free,
63 SEQUENCE_print,
Lev Walkinb9189732004-09-10 09:37:12 +000064 SEQUENCE_constraint,
65 SEQUENCE_decode_ber,
66 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +000067 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +000068 SEQUENCE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000069 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -070070 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb9189732004-09-10 09:37:12 +000071 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +000072 asn_DEF_T1_tags_1,
73 sizeof(asn_DEF_T1_tags_1)
74 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
75 asn_DEF_T1_tags_1, /* Same as above */
76 sizeof(asn_DEF_T1_tags_1)
77 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
78 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +000079 asn_MBR_T1_1,
Lev Walkinb9189732004-09-10 09:37:12 +000080 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000081 &asn_SPC_T1_specs_1 /* Additional specs */
Lev Walkinb9189732004-09-10 09:37:12 +000082};
83
84
85/*** <<< INCLUDES [T2] >>> ***/
86
87#include <INTEGER.h>
88#include <ANY.h>
89#include <constr_SEQUENCE.h>
90
Lev Walkinb9189732004-09-10 09:37:12 +000091/*** <<< TYPE-DECLS [T2] >>> ***/
92
Lev Walkinb9189732004-09-10 09:37:12 +000093typedef struct T2 {
94 INTEGER_t i;
95 ANY_t *any /* OPTIONAL */;
96
97 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000098 asn_struct_ctx_t _asn_ctx;
Lev Walkinb9189732004-09-10 09:37:12 +000099} T2_t;
100
Lev Walkinc8285712005-03-04 22:18:20 +0000101/*** <<< FUNC-DECLS [T2] >>> ***/
102
103extern asn_TYPE_descriptor_t asn_DEF_T2;
104
Lev Walkinb9189732004-09-10 09:37:12 +0000105/*** <<< STAT-DEFS [T2] >>> ***/
106
Lev Walkine0272aa2005-03-04 11:26:08 +0000107static asn_TYPE_member_t asn_MBR_T2_1[] = {
Lev Walkinb9189732004-09-10 09:37:12 +0000108 { ATF_NOFLAGS, 0, offsetof(struct T2, i),
109 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
110 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000111 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000112 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000113 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
114 .default_value = 0,
Lev Walkinb9189732004-09-10 09:37:12 +0000115 .name = "i"
116 },
117 { ATF_POINTER, 1, offsetof(struct T2, any),
118 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
119 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000120 .type = &asn_DEF_ANY,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000121 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000122 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
123 .default_value = 0,
Lev Walkinb9189732004-09-10 09:37:12 +0000124 .name = "any"
125 },
126};
Lev Walkina7591b52014-10-12 18:37:35 -0700127static const ber_tlv_tag_t asn_DEF_T2_tags_1[] = {
Lev Walkinb9189732004-09-10 09:37:12 +0000128 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
129};
Lev Walkina7591b52014-10-12 18:37:35 -0700130static const asn_TYPE_tag2member_t asn_MAP_T2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700131 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* i */
132 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 } /* any */
Lev Walkinb9189732004-09-10 09:37:12 +0000133};
Lev Walkin59b176e2005-11-26 11:25:14 +0000134static asn_SEQUENCE_specifics_t asn_SPC_T2_specs_1 = {
Lev Walkinb9189732004-09-10 09:37:12 +0000135 sizeof(struct T2),
Lev Walkindfae9752004-09-29 13:19:37 +0000136 offsetof(struct T2, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000137 asn_MAP_T2_tag2el_1,
Lev Walkinb9189732004-09-10 09:37:12 +0000138 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000139 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb9189732004-09-10 09:37:12 +0000140 -1, /* Start extensions */
141 -1 /* Stop extensions */
142};
Lev Walkindfae9752004-09-29 13:19:37 +0000143asn_TYPE_descriptor_t asn_DEF_T2 = {
Lev Walkinb9189732004-09-10 09:37:12 +0000144 "T2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000145 "T2",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000146 SEQUENCE_free,
147 SEQUENCE_print,
Lev Walkinb9189732004-09-10 09:37:12 +0000148 SEQUENCE_constraint,
149 SEQUENCE_decode_ber,
150 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000151 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000152 SEQUENCE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000153 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700154 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb9189732004-09-10 09:37:12 +0000155 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000156 asn_DEF_T2_tags_1,
157 sizeof(asn_DEF_T2_tags_1)
158 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
159 asn_DEF_T2_tags_1, /* Same as above */
160 sizeof(asn_DEF_T2_tags_1)
161 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
162 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000163 asn_MBR_T2_1,
Lev Walkinb9189732004-09-10 09:37:12 +0000164 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000165 &asn_SPC_T2_specs_1 /* Additional specs */
Lev Walkinb9189732004-09-10 09:37:12 +0000166};
167
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000168
169/*** <<< INCLUDES [T3] >>> ***/
170
171#include <ANY.h>
172#include <constr_SEQUENCE.h>
173
174/*** <<< TYPE-DECLS [T3] >>> ***/
175
176typedef struct T3 {
177 ANY_t any1;
178 ANY_t any2;
179
180 /* Context for parsing across buffer boundaries */
181 asn_struct_ctx_t _asn_ctx;
182} T3_t;
183
184/*** <<< FUNC-DECLS [T3] >>> ***/
185
186extern asn_TYPE_descriptor_t asn_DEF_T3;
187
188/*** <<< STAT-DEFS [T3] >>> ***/
189
190static asn_TYPE_member_t asn_MBR_T3_1[] = {
191 { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct T3, any1),
192 .tag = -1 /* Ambiguous tag (ANY?) */,
193 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000194 .type = &asn_DEF_ANY,
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000195 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000196 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
197 .default_value = 0,
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000198 .name = "any1"
199 },
200 { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct T3, any2),
201 .tag = -1 /* Ambiguous tag (ANY?) */,
202 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000203 .type = &asn_DEF_ANY,
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000204 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000205 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
206 .default_value = 0,
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000207 .name = "any2"
208 },
209};
Lev Walkina7591b52014-10-12 18:37:35 -0700210static const ber_tlv_tag_t asn_DEF_T3_tags_1[] = {
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000211 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
212};
Lev Walkin59b176e2005-11-26 11:25:14 +0000213static asn_SEQUENCE_specifics_t asn_SPC_T3_specs_1 = {
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000214 sizeof(struct T3),
215 offsetof(struct T3, _asn_ctx),
216 0, /* No top level tags */
217 0, /* No tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000218 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000219 -1, /* Start extensions */
220 -1 /* Stop extensions */
221};
222asn_TYPE_descriptor_t asn_DEF_T3 = {
223 "T3",
224 "T3",
225 SEQUENCE_free,
226 SEQUENCE_print,
227 SEQUENCE_constraint,
228 SEQUENCE_decode_ber,
229 SEQUENCE_encode_der,
230 SEQUENCE_decode_xer,
231 SEQUENCE_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000232 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700233 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000234 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000235 asn_DEF_T3_tags_1,
236 sizeof(asn_DEF_T3_tags_1)
237 /sizeof(asn_DEF_T3_tags_1[0]), /* 1 */
238 asn_DEF_T3_tags_1, /* Same as above */
239 sizeof(asn_DEF_T3_tags_1)
240 /sizeof(asn_DEF_T3_tags_1[0]), /* 1 */
241 0, /* No PER visible constraints */
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000242 asn_MBR_T3_1,
243 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000244 &asn_SPC_T3_specs_1 /* Additional specs */
Lev Walkinb3ee6a62005-05-27 21:58:41 +0000245};
246