blob: 5aca4453a11feccb93f8893d654b83b1198a55b3 [file] [log] [blame]
Lev Walkin35631482004-07-01 00:52:50 +00001
Lev Walkinb47ddce2004-08-11 05:25:47 +00002/*** <<< INCLUDES [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00003
Lev Walkin35631482004-07-01 00:52:50 +00004#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +00005#include <constr_SET.h>
6
7/*** <<< DEPS [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00008
9
10/*
11 * Method of determining the components presence
12 */
Lev Walkin64399722004-08-11 07:17:22 +000013typedef enum T1_PR {
Lev Walkin35631482004-07-01 00:52:50 +000014 T1_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +000015} T1_PR;
Lev Walkin35631482004-07-01 00:52:50 +000016
17/*** <<< TYPE-DECLS [T1] >>> ***/
18
Lev Walkin35631482004-07-01 00:52:50 +000019typedef struct T1 {
20 INTEGER_t i;
21 /*
22 * This type is extensible,
23 * possible extensions are below.
24 */
25
26 /* Presence bitmask: ASN_SET_ISPRESENT(pT1, T1_PR_x) */
27 unsigned int _presence_map
28 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
29
30 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000031 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +000032} T1_t;
33
Lev Walkinc8285712005-03-04 22:18:20 +000034/*** <<< FUNC-DECLS [T1] >>> ***/
35
36extern asn_TYPE_descriptor_t asn_DEF_T1;
37
Lev Walkin35631482004-07-01 00:52:50 +000038/*** <<< STAT-DEFS [T1] >>> ***/
39
Lev Walkine0272aa2005-03-04 11:26:08 +000040static asn_TYPE_member_t asn_MBR_T1_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +000041 { ATF_NOFLAGS, 0, offsetof(struct T1, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +000042 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
43 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000044 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -070045 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070046 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin20696a42017-10-17 21:27:33 -070047 0, 0, /* No default value */
Lev Walkin2e3055d2004-08-20 13:36:32 +000048 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +000049 },
50};
Lev Walkina7591b52014-10-12 18:37:35 -070051static const ber_tlv_tag_t asn_DEF_T1_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +000052 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
53};
Lev Walkina7591b52014-10-12 18:37:35 -070054static const asn_TYPE_tag2member_t asn_MAP_T1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070055 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +000056};
Lev Walkina7591b52014-10-12 18:37:35 -070057static const uint8_t asn_MAP_T1_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +000058 (1 << 7)
59};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080060static
61asn_SET_specifics_t asn_SPC_T1_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +000062 sizeof(struct T1),
Lev Walkindfae9752004-09-29 13:19:37 +000063 offsetof(struct T1, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +000064 offsetof(struct T1, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -070065 .tag2el = asn_MAP_T1_tag2el_1,
66 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000067 asn_MAP_T1_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +000068 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +000069 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -070070 (const unsigned int *)asn_MAP_T1_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +000071};
Lev Walkindfae9752004-09-29 13:19:37 +000072asn_TYPE_descriptor_t asn_DEF_T1 = {
Lev Walkin35631482004-07-01 00:52:50 +000073 "T1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000074 "T1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +080075 &asn_OP_SET,
Lev Walkin59b176e2005-11-26 11:25:14 +000076 asn_DEF_T1_tags_1,
77 sizeof(asn_DEF_T1_tags_1)
78 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
79 asn_DEF_T1_tags_1, /* Same as above */
80 sizeof(asn_DEF_T1_tags_1)
81 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -070082 { 0, 0, SET_constraint },
Lev Walkine0272aa2005-03-04 11:26:08 +000083 asn_MBR_T1_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +000084 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000085 &asn_SPC_T1_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +000086};
87
88
Lev Walkinb47ddce2004-08-11 05:25:47 +000089/*** <<< INCLUDES [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +000090
Lev Walkin35631482004-07-01 00:52:50 +000091#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +000092#include <constr_SET.h>
93
94/*** <<< DEPS [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +000095
96
97/*
98 * Method of determining the components presence
99 */
Lev Walkin64399722004-08-11 07:17:22 +0000100typedef enum T2_PR {
Lev Walkin35631482004-07-01 00:52:50 +0000101 T2_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +0000102} T2_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000103
104/*** <<< TYPE-DECLS [T2] >>> ***/
105
Lev Walkin35631482004-07-01 00:52:50 +0000106typedef struct T2 {
107 INTEGER_t i;
108 /*
109 * This type is extensible,
110 * possible extensions are below.
111 */
112
113 /* Presence bitmask: ASN_SET_ISPRESENT(pT2, T2_PR_x) */
114 unsigned int _presence_map
115 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
116
117 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000118 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000119} T2_t;
120
Lev Walkinc8285712005-03-04 22:18:20 +0000121/*** <<< FUNC-DECLS [T2] >>> ***/
122
123extern asn_TYPE_descriptor_t asn_DEF_T2;
124
Lev Walkin35631482004-07-01 00:52:50 +0000125/*** <<< STAT-DEFS [T2] >>> ***/
126
Lev Walkine0272aa2005-03-04 11:26:08 +0000127static asn_TYPE_member_t asn_MBR_T2_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000128 { ATF_NOFLAGS, 0, offsetof(struct T2, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000129 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
130 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000131 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700132 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700133 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin20696a42017-10-17 21:27:33 -0700134 0, 0, /* No default value */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000135 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000136 },
137};
Lev Walkina7591b52014-10-12 18:37:35 -0700138static const ber_tlv_tag_t asn_DEF_T2_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +0000139 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
140};
Lev Walkina7591b52014-10-12 18:37:35 -0700141static const asn_TYPE_tag2member_t asn_MAP_T2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700142 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000143};
Lev Walkina7591b52014-10-12 18:37:35 -0700144static const uint8_t asn_MAP_T2_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +0000145 (1 << 7)
146};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800147static
148asn_SET_specifics_t asn_SPC_T2_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000149 sizeof(struct T2),
Lev Walkindfae9752004-09-29 13:19:37 +0000150 offsetof(struct T2, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000151 offsetof(struct T2, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -0700152 .tag2el = asn_MAP_T2_tag2el_1,
153 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000154 asn_MAP_T2_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000155 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +0000156 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700157 (const unsigned int *)asn_MAP_T2_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +0000158};
Lev Walkindfae9752004-09-29 13:19:37 +0000159asn_TYPE_descriptor_t asn_DEF_T2 = {
Lev Walkin35631482004-07-01 00:52:50 +0000160 "T2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000161 "T2",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800162 &asn_OP_SET,
Lev Walkin59b176e2005-11-26 11:25:14 +0000163 asn_DEF_T2_tags_1,
164 sizeof(asn_DEF_T2_tags_1)
165 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
166 asn_DEF_T2_tags_1, /* Same as above */
167 sizeof(asn_DEF_T2_tags_1)
168 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700169 { 0, 0, SET_constraint },
Lev Walkine0272aa2005-03-04 11:26:08 +0000170 asn_MBR_T2_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000171 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000172 &asn_SPC_T2_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000173};
174
175
Lev Walkinb47ddce2004-08-11 05:25:47 +0000176/*** <<< INCLUDES [T3] >>> ***/
177
178#include <INTEGER.h>
179#include <constr_CHOICE.h>
180
Lev Walkin35631482004-07-01 00:52:50 +0000181/*** <<< DEPS [T3] >>> ***/
182
Lev Walkinb47ddce2004-08-11 05:25:47 +0000183typedef enum T3_PR {
184 T3_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200185 T3_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000186 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000187
Lev Walkin64399722004-08-11 07:17:22 +0000188} T3_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000189
190/*** <<< TYPE-DECLS [T3] >>> ***/
191
Lev Walkin35631482004-07-01 00:52:50 +0000192typedef struct T3 {
Lev Walkin64399722004-08-11 07:17:22 +0000193 T3_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000194 union T3_u {
Lev Walkin35631482004-07-01 00:52:50 +0000195 INTEGER_t i;
196 /*
197 * This type is extensible,
198 * possible extensions are below.
199 */
200 } choice;
201
202 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000203 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000204} T3_t;
205
Lev Walkinc8285712005-03-04 22:18:20 +0000206/*** <<< FUNC-DECLS [T3] >>> ***/
207
208extern asn_TYPE_descriptor_t asn_DEF_T3;
209
Lev Walkin35631482004-07-01 00:52:50 +0000210/*** <<< STAT-DEFS [T3] >>> ***/
211
Lev Walkine0272aa2005-03-04 11:26:08 +0000212static asn_TYPE_member_t asn_MBR_T3_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000213 { ATF_NOFLAGS, 0, offsetof(struct T3, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000214 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
215 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000216 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700217 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700218 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin20696a42017-10-17 21:27:33 -0700219 0, 0, /* No default value */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000220 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000221 },
222};
Lev Walkina7591b52014-10-12 18:37:35 -0700223static const asn_TYPE_tag2member_t asn_MAP_T3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700224 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000225};
Lev Walkin59b176e2005-11-26 11:25:14 +0000226static asn_CHOICE_specifics_t asn_SPC_T3_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000227 sizeof(struct T3),
Lev Walkindfae9752004-09-29 13:19:37 +0000228 offsetof(struct T3, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000229 offsetof(struct T3, present),
230 sizeof(((struct T3 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700231 .tag2el = asn_MAP_T3_tag2el_1,
232 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin20696a42017-10-17 21:27:33 -0700233 0, 0,
Lev Walkindf2edbb2017-10-21 13:40:07 -0700234 .first_extension = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000235};
Lev Walkindfae9752004-09-29 13:19:37 +0000236asn_TYPE_descriptor_t asn_DEF_T3 = {
Lev Walkin35631482004-07-01 00:52:50 +0000237 "T3",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000238 "T3",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800239 &asn_OP_CHOICE,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000240 0, /* No effective tags (pointer) */
241 0, /* No effective tags (count) */
242 0, /* No tags (pointer) */
243 0, /* No tags (count) */
Lev Walkin0bfea562017-09-29 23:16:48 -0700244 { 0, 0, CHOICE_constraint },
Lev Walkine0272aa2005-03-04 11:26:08 +0000245 asn_MBR_T3_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000246 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000247 &asn_SPC_T3_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000248};
249
250
Lev Walkinb47ddce2004-08-11 05:25:47 +0000251/*** <<< INCLUDES [T4] >>> ***/
252
253#include <INTEGER.h>
254#include <constr_CHOICE.h>
255
Lev Walkin35631482004-07-01 00:52:50 +0000256/*** <<< DEPS [T4] >>> ***/
257
Lev Walkinb47ddce2004-08-11 05:25:47 +0000258typedef enum T4_PR {
259 T4_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200260 T4_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000261 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000262
Lev Walkin64399722004-08-11 07:17:22 +0000263} T4_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000264
265/*** <<< TYPE-DECLS [T4] >>> ***/
266
Lev Walkin35631482004-07-01 00:52:50 +0000267typedef struct T4 {
Lev Walkin64399722004-08-11 07:17:22 +0000268 T4_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000269 union T4_u {
Lev Walkin35631482004-07-01 00:52:50 +0000270 INTEGER_t i;
271 /*
272 * This type is extensible,
273 * possible extensions are below.
274 */
275 } choice;
276
277 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000278 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000279} T4_t;
280
Lev Walkinc8285712005-03-04 22:18:20 +0000281/*** <<< FUNC-DECLS [T4] >>> ***/
282
283extern asn_TYPE_descriptor_t asn_DEF_T4;
284
Lev Walkin35631482004-07-01 00:52:50 +0000285/*** <<< STAT-DEFS [T4] >>> ***/
286
Lev Walkine0272aa2005-03-04 11:26:08 +0000287static asn_TYPE_member_t asn_MBR_T4_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000288 { ATF_NOFLAGS, 0, offsetof(struct T4, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000289 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
290 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000291 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700292 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700293 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin20696a42017-10-17 21:27:33 -0700294 0, 0, /* No default value */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000295 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000296 },
297};
Lev Walkina7591b52014-10-12 18:37:35 -0700298static const asn_TYPE_tag2member_t asn_MAP_T4_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700299 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000300};
Lev Walkin59b176e2005-11-26 11:25:14 +0000301static asn_CHOICE_specifics_t asn_SPC_T4_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000302 sizeof(struct T4),
Lev Walkindfae9752004-09-29 13:19:37 +0000303 offsetof(struct T4, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000304 offsetof(struct T4, present),
305 sizeof(((struct T4 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700306 .tag2el = asn_MAP_T4_tag2el_1,
307 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin20696a42017-10-17 21:27:33 -0700308 0, 0,
Lev Walkindf2edbb2017-10-21 13:40:07 -0700309 .first_extension = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000310};
Lev Walkindfae9752004-09-29 13:19:37 +0000311asn_TYPE_descriptor_t asn_DEF_T4 = {
Lev Walkin35631482004-07-01 00:52:50 +0000312 "T4",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000313 "T4",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800314 &asn_OP_CHOICE,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000315 0, /* No effective tags (pointer) */
316 0, /* No effective tags (count) */
317 0, /* No tags (pointer) */
318 0, /* No tags (count) */
Lev Walkin0bfea562017-09-29 23:16:48 -0700319 { 0, 0, CHOICE_constraint },
Lev Walkine0272aa2005-03-04 11:26:08 +0000320 asn_MBR_T4_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000321 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000322 &asn_SPC_T4_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000323};
324