blob: 7e752afedbbaf0385a3e83e18c7715dc107d1524 [file] [log] [blame]
Lev Walkinf15320b2004-06-03 03:38:44 +00001
Lev Walkinb47ddce2004-08-11 05:25:47 +00002/*** <<< INCLUDES [LogLine] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +00003
Lev Walkinf15320b2004-06-03 03:38:44 +00004#include <IA5String.h>
Lev Walkinf15320b2004-06-03 03:38:44 +00005#include <asn_SEQUENCE_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +00006#include <constr_SEQUENCE_OF.h>
Lev Walkinf15320b2004-06-03 03:38:44 +00007#include <constr_SEQUENCE.h>
8
Lev Walkinc8285712005-03-04 22:18:20 +00009/*** <<< FWD-DECLS [LogLine] >>> ***/
Lev Walkinb47ddce2004-08-11 05:25:47 +000010
Lev Walkinbf56d542005-03-04 23:50:56 +000011struct VariablePartSet;
Lev Walkinf15320b2004-06-03 03:38:44 +000012
13/*** <<< TYPE-DECLS [LogLine] >>> ***/
14
Lev Walkinf15320b2004-06-03 03:38:44 +000015typedef struct LogLine {
16 IA5String_t line_digest;
17 struct varsets {
Lev Walkinc8285712005-03-04 22:18:20 +000018 A_SEQUENCE_OF(struct VariablePartSet) list;
Lev Walkinf15320b2004-06-03 03:38:44 +000019
20 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000021 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +000022 } varsets;
23 /*
24 * This type is extensible,
25 * possible extensions are below.
26 */
27
28 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000029 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +000030} LogLine_t;
31
Lev Walkinc8285712005-03-04 22:18:20 +000032/*** <<< FUNC-DECLS [LogLine] >>> ***/
33
34extern asn_TYPE_descriptor_t asn_DEF_LogLine;
35
36/*** <<< POST-INCLUDE [LogLine] >>> ***/
37
38#include <VariablePartSet.h>
39
Lev Walkin2e3055d2004-08-20 13:36:32 +000040/*** <<< CODE [LogLine] >>> ***/
41
42static int
Lev Walkin59b176e2005-11-26 11:25:14 +000043memb_varsets_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin2e3055d2004-08-20 13:36:32 +000044 asn_app_consume_bytes_f *app_errlog, void *app_key) {
45 size_t size;
46
47 if(!sptr) {
48 _ASN_ERRLOG(app_errlog, app_key,
Lev Walkin16835b62004-08-22 13:47:59 +000049 "%s: value not given (%s:%d)",
50 td->name, __FILE__, __LINE__);
Lev Walkin2e3055d2004-08-20 13:36:32 +000051 return -1;
52 }
53
Lev Walkin66d542b2005-07-04 02:03:57 +000054 /* Determine the number of elements */
55 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
Lev Walkin2e3055d2004-08-20 13:36:32 +000056
57 if((size >= 1)) {
Lev Walkin29a82192005-03-29 19:05:37 +000058 /* Perform validation of the inner elements */
Lev Walkin87b14d32005-03-31 21:52:53 +000059 return td->check_constraints(td, sptr, app_errlog, app_key);
Lev Walkin2e3055d2004-08-20 13:36:32 +000060 } else {
61 _ASN_ERRLOG(app_errlog, app_key,
Lev Walkin16835b62004-08-22 13:47:59 +000062 "%s: constraint failed (%s:%d)",
63 td->name, __FILE__, __LINE__);
Lev Walkin2e3055d2004-08-20 13:36:32 +000064 return -1;
65 }
66}
67
68
Lev Walkinf15320b2004-06-03 03:38:44 +000069/*** <<< STAT-DEFS [LogLine] >>> ***/
70
Lev Walkine8318b82005-03-06 09:29:03 +000071static asn_TYPE_member_t asn_MBR_varsets_3[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +000072 { ATF_POINTER, 0, 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +000073 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
74 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000075 .type = &asn_DEF_VariablePartSet,
Lev Walkinba58e1b2005-01-17 12:20:19 +000076 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +000077 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
78 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +000079 .name = ""
Lev Walkinf15320b2004-06-03 03:38:44 +000080 },
Lev Walkin2e3055d2004-08-20 13:36:32 +000081};
Lev Walkin59b176e2005-11-26 11:25:14 +000082static ber_tlv_tag_t asn_DEF_varsets_tags_3[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +000083 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
84};
Lev Walkin59b176e2005-11-26 11:25:14 +000085static asn_SET_OF_specifics_t asn_SPC_varsets_specs_3 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +000086 sizeof(struct varsets),
Lev Walkindfae9752004-09-29 13:19:37 +000087 offsetof(struct varsets, _asn_ctx),
Lev Walkina9cc46e2004-09-22 16:06:28 +000088 0, /* XER encoding is XMLDelimitedItemList */
Lev Walkin2e3055d2004-08-20 13:36:32 +000089};
Lev Walkind04430c2004-09-07 06:44:29 +000090static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +000091asn_TYPE_descriptor_t asn_DEF_varsets_3 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +000092 "varsets",
Lev Walkindc06f6b2004-10-20 15:50:55 +000093 "varsets",
Lev Walkina9cc46e2004-09-22 16:06:28 +000094 SEQUENCE_OF_free,
95 SEQUENCE_OF_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +000096 SEQUENCE_OF_constraint,
97 SEQUENCE_OF_decode_ber,
98 SEQUENCE_OF_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +000099 SEQUENCE_OF_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000100 SEQUENCE_OF_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000101 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000102 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000103 asn_DEF_varsets_tags_3,
104 sizeof(asn_DEF_varsets_tags_3)
105 /sizeof(asn_DEF_varsets_tags_3[0]), /* 1 */
106 asn_DEF_varsets_tags_3, /* Same as above */
107 sizeof(asn_DEF_varsets_tags_3)
108 /sizeof(asn_DEF_varsets_tags_3[0]), /* 1 */
109 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000110 asn_MBR_varsets_3,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000111 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000112 &asn_SPC_varsets_specs_3 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000113};
114
Lev Walkine0272aa2005-03-04 11:26:08 +0000115static asn_TYPE_member_t asn_MBR_LogLine_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000116 { ATF_NOFLAGS, 0, offsetof(struct LogLine, line_digest),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000117 .tag = (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)),
118 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000119 .type = &asn_DEF_IA5String,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000120 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000121 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
122 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000123 .name = "line-digest"
124 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000125 { ATF_NOFLAGS, 0, offsetof(struct LogLine, varsets),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000126 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
127 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000128 .type = &asn_DEF_varsets_3,
Lev Walkin59b176e2005-11-26 11:25:14 +0000129 .memb_constraints = memb_varsets_constraint_1,
130 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
131 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000132 .name = "varsets"
Lev Walkinf15320b2004-06-03 03:38:44 +0000133 },
134};
Lev Walkin59b176e2005-11-26 11:25:14 +0000135static ber_tlv_tag_t asn_DEF_LogLine_tags_1[] = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000136 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
137};
Lev Walkin59b176e2005-11-26 11:25:14 +0000138static asn_TYPE_tag2member_t asn_MAP_LogLine_tag2el_1[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000139 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* varsets at 25 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000140 { (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), 0, 0, 0 } /* line-digest at 23 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000141};
Lev Walkin59b176e2005-11-26 11:25:14 +0000142static asn_SEQUENCE_specifics_t asn_SPC_LogLine_specs_1 = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000143 sizeof(struct LogLine),
Lev Walkindfae9752004-09-29 13:19:37 +0000144 offsetof(struct LogLine, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000145 asn_MAP_LogLine_tag2el_1,
Lev Walkincda6b8a2004-06-06 07:20:52 +0000146 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000147 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinf15320b2004-06-03 03:38:44 +0000148 1, /* Start extensions */
149 3 /* Stop extensions */
150};
Lev Walkindfae9752004-09-29 13:19:37 +0000151asn_TYPE_descriptor_t asn_DEF_LogLine = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000152 "LogLine",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000153 "LogLine",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000154 SEQUENCE_free,
155 SEQUENCE_print,
Lev Walkinf15320b2004-06-03 03:38:44 +0000156 SEQUENCE_constraint,
157 SEQUENCE_decode_ber,
158 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000159 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000160 SEQUENCE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000161 0, /* No PER decoder, -gen-PER to enable */
Lev Walkinf15320b2004-06-03 03:38:44 +0000162 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000163 asn_DEF_LogLine_tags_1,
164 sizeof(asn_DEF_LogLine_tags_1)
165 /sizeof(asn_DEF_LogLine_tags_1[0]), /* 1 */
166 asn_DEF_LogLine_tags_1, /* Same as above */
167 sizeof(asn_DEF_LogLine_tags_1)
168 /sizeof(asn_DEF_LogLine_tags_1[0]), /* 1 */
169 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000170 asn_MBR_LogLine_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000171 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000172 &asn_SPC_LogLine_specs_1 /* Additional specs */
Lev Walkinf15320b2004-06-03 03:38:44 +0000173};
174
175
Lev Walkinb47ddce2004-08-11 05:25:47 +0000176/*** <<< INCLUDES [VariablePartSet] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000177
Lev Walkinf15320b2004-06-03 03:38:44 +0000178#include <ActionItem.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000179#include <asn_SEQUENCE_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000180#include <constr_SEQUENCE_OF.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000181#include <constr_SEQUENCE.h>
182
Lev Walkinc8285712005-03-04 22:18:20 +0000183/*** <<< FWD-DECLS [VariablePartSet] >>> ***/
Lev Walkinb47ddce2004-08-11 05:25:47 +0000184
Lev Walkinbf56d542005-03-04 23:50:56 +0000185struct VariablePart;
Lev Walkinf15320b2004-06-03 03:38:44 +0000186
187/*** <<< TYPE-DECLS [VariablePartSet] >>> ***/
188
Lev Walkinf15320b2004-06-03 03:38:44 +0000189typedef struct VariablePartSet {
190 struct vparts {
Lev Walkinc8285712005-03-04 22:18:20 +0000191 A_SEQUENCE_OF(struct VariablePart) list;
Lev Walkinf15320b2004-06-03 03:38:44 +0000192
193 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000194 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000195 } vparts;
196 ActionItem_t resolution;
197 /*
198 * This type is extensible,
199 * possible extensions are below.
200 */
201
202 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000203 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000204} VariablePartSet_t;
205
Lev Walkinc8285712005-03-04 22:18:20 +0000206/*** <<< FUNC-DECLS [VariablePartSet] >>> ***/
207
208extern asn_TYPE_descriptor_t asn_DEF_VariablePartSet;
209
210/*** <<< POST-INCLUDE [VariablePartSet] >>> ***/
211
212#include <VariablePart.h>
213
Lev Walkin2e3055d2004-08-20 13:36:32 +0000214/*** <<< CODE [VariablePartSet] >>> ***/
215
216static int
Lev Walkin59b176e2005-11-26 11:25:14 +0000217memb_vparts_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000218 asn_app_consume_bytes_f *app_errlog, void *app_key) {
219
220 if(!sptr) {
221 _ASN_ERRLOG(app_errlog, app_key,
Lev Walkin16835b62004-08-22 13:47:59 +0000222 "%s: value not given (%s:%d)",
223 td->name, __FILE__, __LINE__);
Lev Walkin2e3055d2004-08-20 13:36:32 +0000224 return -1;
225 }
226
227
228 if(1 /* No applicable constraints whatsoever */) {
229 /* Nothing is here. See below */
230 }
231
Lev Walkin154aa182004-09-26 13:12:56 +0000232 return td->check_constraints(td, sptr, app_errlog, app_key);
Lev Walkin2e3055d2004-08-20 13:36:32 +0000233}
234
235
Lev Walkinf15320b2004-06-03 03:38:44 +0000236/*** <<< STAT-DEFS [VariablePartSet] >>> ***/
237
Lev Walkine0272aa2005-03-04 11:26:08 +0000238static asn_TYPE_member_t asn_MBR_vparts_2[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +0000239 { ATF_POINTER, 0, 0,
Lev Walkinb9189732004-09-10 09:37:12 +0000240 .tag = -1 /* Ambiguous tag (CHOICE?) */,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000241 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000242 .type = &asn_DEF_VariablePart,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000243 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000244 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
245 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000246 .name = ""
Lev Walkinf15320b2004-06-03 03:38:44 +0000247 },
Lev Walkin2e3055d2004-08-20 13:36:32 +0000248};
Lev Walkin59b176e2005-11-26 11:25:14 +0000249static ber_tlv_tag_t asn_DEF_vparts_tags_2[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000250 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
251};
Lev Walkin59b176e2005-11-26 11:25:14 +0000252static asn_SET_OF_specifics_t asn_SPC_vparts_specs_2 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000253 sizeof(struct vparts),
Lev Walkindfae9752004-09-29 13:19:37 +0000254 offsetof(struct vparts, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +0000255 2, /* XER encoding is XMLValueList */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000256};
Lev Walkind04430c2004-09-07 06:44:29 +0000257static /* Use -fall-defs-global to expose */
Lev Walkine0272aa2005-03-04 11:26:08 +0000258asn_TYPE_descriptor_t asn_DEF_vparts_2 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000259 "vparts",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000260 "vparts",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000261 SEQUENCE_OF_free,
262 SEQUENCE_OF_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000263 SEQUENCE_OF_constraint,
264 SEQUENCE_OF_decode_ber,
265 SEQUENCE_OF_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000266 SEQUENCE_OF_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000267 SEQUENCE_OF_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000268 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000269 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000270 asn_DEF_vparts_tags_2,
271 sizeof(asn_DEF_vparts_tags_2)
272 /sizeof(asn_DEF_vparts_tags_2[0]), /* 1 */
273 asn_DEF_vparts_tags_2, /* Same as above */
274 sizeof(asn_DEF_vparts_tags_2)
275 /sizeof(asn_DEF_vparts_tags_2[0]), /* 1 */
276 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000277 asn_MBR_vparts_2,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000278 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000279 &asn_SPC_vparts_specs_2 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000280};
281
Lev Walkine0272aa2005-03-04 11:26:08 +0000282static asn_TYPE_member_t asn_MBR_VariablePartSet_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000283 { ATF_NOFLAGS, 0, offsetof(struct VariablePartSet, vparts),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000284 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
285 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000286 .type = &asn_DEF_vparts_2,
Lev Walkin59b176e2005-11-26 11:25:14 +0000287 .memb_constraints = memb_vparts_constraint_1,
288 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
289 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000290 .name = "vparts"
291 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000292 { ATF_NOFLAGS, 0, offsetof(struct VariablePartSet, resolution),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000293 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
294 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000295 .type = &asn_DEF_ActionItem,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000296 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000297 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
298 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000299 .name = "resolution"
Lev Walkinf15320b2004-06-03 03:38:44 +0000300 },
301};
Lev Walkin59b176e2005-11-26 11:25:14 +0000302static ber_tlv_tag_t asn_DEF_VariablePartSet_tags_1[] = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000303 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
304};
Lev Walkin59b176e2005-11-26 11:25:14 +0000305static asn_TYPE_tag2member_t asn_MAP_VariablePartSet_tag2el_1[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000306 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* vparts at 33 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000307 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* resolution at 35 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000308};
Lev Walkin59b176e2005-11-26 11:25:14 +0000309static asn_SEQUENCE_specifics_t asn_SPC_VariablePartSet_specs_1 = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000310 sizeof(struct VariablePartSet),
Lev Walkindfae9752004-09-29 13:19:37 +0000311 offsetof(struct VariablePartSet, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000312 asn_MAP_VariablePartSet_tag2el_1,
Lev Walkincda6b8a2004-06-06 07:20:52 +0000313 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000314 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinf15320b2004-06-03 03:38:44 +0000315 1, /* Start extensions */
316 3 /* Stop extensions */
317};
Lev Walkindfae9752004-09-29 13:19:37 +0000318asn_TYPE_descriptor_t asn_DEF_VariablePartSet = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000319 "VariablePartSet",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000320 "VariablePartSet",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000321 SEQUENCE_free,
322 SEQUENCE_print,
Lev Walkinf15320b2004-06-03 03:38:44 +0000323 SEQUENCE_constraint,
324 SEQUENCE_decode_ber,
325 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000326 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000327 SEQUENCE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000328 0, /* No PER decoder, -gen-PER to enable */
Lev Walkinf15320b2004-06-03 03:38:44 +0000329 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000330 asn_DEF_VariablePartSet_tags_1,
331 sizeof(asn_DEF_VariablePartSet_tags_1)
332 /sizeof(asn_DEF_VariablePartSet_tags_1[0]), /* 1 */
333 asn_DEF_VariablePartSet_tags_1, /* Same as above */
334 sizeof(asn_DEF_VariablePartSet_tags_1)
335 /sizeof(asn_DEF_VariablePartSet_tags_1[0]), /* 1 */
336 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000337 asn_MBR_VariablePartSet_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000338 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000339 &asn_SPC_VariablePartSet_specs_1 /* Additional specs */
Lev Walkinf15320b2004-06-03 03:38:44 +0000340};
341
342
Lev Walkinb47ddce2004-08-11 05:25:47 +0000343/*** <<< INCLUDES [VariablePart] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000344
Lev Walkinf15320b2004-06-03 03:38:44 +0000345#include <VisibleString.h>
346#include <asn_SET_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000347#include <constr_SET_OF.h>
348#include <constr_SEQUENCE.h>
349#include <constr_CHOICE.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000350
Lev Walkinb47ddce2004-08-11 05:25:47 +0000351/*** <<< DEPS [VariablePart] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000352
Lev Walkinb47ddce2004-08-11 05:25:47 +0000353typedef enum VariablePart_PR {
354 VariablePart_PR_NOTHING, /* No components present */
355 VariablePart_PR_vset,
356 VariablePart_PR_vrange,
357 /* Extensions may appear below */
Lev Walkin64399722004-08-11 07:17:22 +0000358} VariablePart_PR;
Lev Walkinf15320b2004-06-03 03:38:44 +0000359
360/*** <<< TYPE-DECLS [VariablePart] >>> ***/
361
Lev Walkinf15320b2004-06-03 03:38:44 +0000362typedef struct VariablePart {
Lev Walkin64399722004-08-11 07:17:22 +0000363 VariablePart_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000364 union VariablePart_u {
Lev Walkinf15320b2004-06-03 03:38:44 +0000365 struct vset {
366 A_SET_OF(VisibleString_t) list;
367
368 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000369 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000370 } vset;
371 struct vrange {
372 VisibleString_t from;
373 VisibleString_t to;
374 /*
375 * This type is extensible,
376 * possible extensions are below.
377 */
378
379 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000380 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000381 } vrange;
382 /*
383 * This type is extensible,
384 * possible extensions are below.
385 */
386 } choice;
387
388 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000389 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000390} VariablePart_t;
391
Lev Walkinc8285712005-03-04 22:18:20 +0000392/*** <<< FUNC-DECLS [VariablePart] >>> ***/
393
394extern asn_TYPE_descriptor_t asn_DEF_VariablePart;
395
Lev Walkin2e3055d2004-08-20 13:36:32 +0000396/*** <<< CODE [VariablePart] >>> ***/
397
398static int
Lev Walkin59b176e2005-11-26 11:25:14 +0000399memb_vset_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000400 asn_app_consume_bytes_f *app_errlog, void *app_key) {
401 size_t size;
402
403 if(!sptr) {
404 _ASN_ERRLOG(app_errlog, app_key,
Lev Walkin16835b62004-08-22 13:47:59 +0000405 "%s: value not given (%s:%d)",
406 td->name, __FILE__, __LINE__);
Lev Walkin2e3055d2004-08-20 13:36:32 +0000407 return -1;
408 }
409
Lev Walkin66d542b2005-07-04 02:03:57 +0000410 /* Determine the number of elements */
411 size = _A_CSET_FROM_VOID(sptr)->count;
Lev Walkin2e3055d2004-08-20 13:36:32 +0000412
413 if((size >= 1)) {
Lev Walkin29a82192005-03-29 19:05:37 +0000414 /* Perform validation of the inner elements */
Lev Walkin87b14d32005-03-31 21:52:53 +0000415 return td->check_constraints(td, sptr, app_errlog, app_key);
Lev Walkin2e3055d2004-08-20 13:36:32 +0000416 } else {
417 _ASN_ERRLOG(app_errlog, app_key,
Lev Walkin16835b62004-08-22 13:47:59 +0000418 "%s: constraint failed (%s:%d)",
419 td->name, __FILE__, __LINE__);
Lev Walkin2e3055d2004-08-20 13:36:32 +0000420 return -1;
421 }
422}
423
424
Lev Walkinf15320b2004-06-03 03:38:44 +0000425/*** <<< STAT-DEFS [VariablePart] >>> ***/
426
Lev Walkine0272aa2005-03-04 11:26:08 +0000427static asn_TYPE_member_t asn_MBR_vset_2[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +0000428 { ATF_POINTER, 0, 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000429 .tag = (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
430 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000431 .type = &asn_DEF_VisibleString,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000432 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000433 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
434 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000435 .name = ""
Lev Walkinf15320b2004-06-03 03:38:44 +0000436 },
Lev Walkin2e3055d2004-08-20 13:36:32 +0000437};
Lev Walkin59b176e2005-11-26 11:25:14 +0000438static ber_tlv_tag_t asn_DEF_vset_tags_2[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000439 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
440};
Lev Walkin59b176e2005-11-26 11:25:14 +0000441static asn_SET_OF_specifics_t asn_SPC_vset_specs_2 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000442 sizeof(struct vset),
Lev Walkindfae9752004-09-29 13:19:37 +0000443 offsetof(struct vset, _asn_ctx),
Lev Walkina9cc46e2004-09-22 16:06:28 +0000444 0, /* XER encoding is XMLDelimitedItemList */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000445};
Lev Walkind04430c2004-09-07 06:44:29 +0000446static /* Use -fall-defs-global to expose */
Lev Walkine0272aa2005-03-04 11:26:08 +0000447asn_TYPE_descriptor_t asn_DEF_vset_2 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000448 "vset",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000449 "vset",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000450 SET_OF_free,
451 SET_OF_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000452 SET_OF_constraint,
453 SET_OF_decode_ber,
454 SET_OF_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000455 SET_OF_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000456 SET_OF_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000457 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000458 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000459 asn_DEF_vset_tags_2,
460 sizeof(asn_DEF_vset_tags_2)
461 /sizeof(asn_DEF_vset_tags_2[0]), /* 1 */
462 asn_DEF_vset_tags_2, /* Same as above */
463 sizeof(asn_DEF_vset_tags_2)
464 /sizeof(asn_DEF_vset_tags_2[0]), /* 1 */
465 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000466 asn_MBR_vset_2,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000467 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000468 &asn_SPC_vset_specs_2 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000469};
470
Lev Walkine8318b82005-03-06 09:29:03 +0000471static asn_TYPE_member_t asn_MBR_vrange_4[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000472 { ATF_NOFLAGS, 0, offsetof(struct vrange, from),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000473 .tag = (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
474 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000475 .type = &asn_DEF_VisibleString,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000476 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000477 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
478 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000479 .name = "from"
480 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000481 { ATF_NOFLAGS, 0, offsetof(struct vrange, to),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000482 .tag = (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
483 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000484 .type = &asn_DEF_VisibleString,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000485 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000486 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
487 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000488 .name = "to"
489 },
490};
Lev Walkin59b176e2005-11-26 11:25:14 +0000491static ber_tlv_tag_t asn_DEF_vrange_tags_4[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000492 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
493};
Lev Walkin59b176e2005-11-26 11:25:14 +0000494static asn_TYPE_tag2member_t asn_MAP_vrange_tag2el_4[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000495 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)), 0, 0, 1 }, /* from at 45 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000496 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)), 1, -1, 0 } /* to at 46 */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000497};
Lev Walkin59b176e2005-11-26 11:25:14 +0000498static asn_SEQUENCE_specifics_t asn_SPC_vrange_specs_4 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000499 sizeof(struct vrange),
Lev Walkindfae9752004-09-29 13:19:37 +0000500 offsetof(struct vrange, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000501 asn_MAP_vrange_tag2el_4,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000502 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000503 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000504 1, /* Start extensions */
505 3 /* Stop extensions */
506};
Lev Walkind04430c2004-09-07 06:44:29 +0000507static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +0000508asn_TYPE_descriptor_t asn_DEF_vrange_4 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000509 "vrange",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000510 "vrange",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000511 SEQUENCE_free,
512 SEQUENCE_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000513 SEQUENCE_constraint,
514 SEQUENCE_decode_ber,
515 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000516 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000517 SEQUENCE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000518 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000519 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000520 asn_DEF_vrange_tags_4,
521 sizeof(asn_DEF_vrange_tags_4)
522 /sizeof(asn_DEF_vrange_tags_4[0]), /* 1 */
523 asn_DEF_vrange_tags_4, /* Same as above */
524 sizeof(asn_DEF_vrange_tags_4)
525 /sizeof(asn_DEF_vrange_tags_4[0]), /* 1 */
526 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000527 asn_MBR_vrange_4,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000528 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000529 &asn_SPC_vrange_specs_4 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000530};
531
Lev Walkine0272aa2005-03-04 11:26:08 +0000532static asn_TYPE_member_t asn_MBR_VariablePart_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000533 { ATF_NOFLAGS, 0, offsetof(struct VariablePart, choice.vset),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000534 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
535 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000536 .type = &asn_DEF_vset_2,
Lev Walkin59b176e2005-11-26 11:25:14 +0000537 .memb_constraints = memb_vset_constraint_1,
538 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
539 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000540 .name = "vset"
541 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000542 { ATF_NOFLAGS, 0, offsetof(struct VariablePart, choice.vrange),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000543 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
544 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000545 .type = &asn_DEF_vrange_4,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000546 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000547 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
548 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000549 .name = "vrange"
Lev Walkinf15320b2004-06-03 03:38:44 +0000550 },
551};
Lev Walkin59b176e2005-11-26 11:25:14 +0000552static asn_TYPE_tag2member_t asn_MAP_VariablePart_tag2el_1[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000553 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* vrange at 45 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000554 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 0 } /* vset at 42 */
Lev Walkinf15320b2004-06-03 03:38:44 +0000555};
Lev Walkin59b176e2005-11-26 11:25:14 +0000556static asn_CHOICE_specifics_t asn_SPC_VariablePart_specs_1 = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000557 sizeof(struct VariablePart),
Lev Walkindfae9752004-09-29 13:19:37 +0000558 offsetof(struct VariablePart, _asn_ctx),
Lev Walkinf15320b2004-06-03 03:38:44 +0000559 offsetof(struct VariablePart, present),
560 sizeof(((struct VariablePart *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000561 asn_MAP_VariablePart_tag2el_1,
Lev Walkinf15320b2004-06-03 03:38:44 +0000562 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000563 .canonical_order = 0,
564 .ext_start = 2 /* Extensions start */
Lev Walkinf15320b2004-06-03 03:38:44 +0000565};
Lev Walkindfae9752004-09-29 13:19:37 +0000566asn_TYPE_descriptor_t asn_DEF_VariablePart = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000567 "VariablePart",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000568 "VariablePart",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000569 CHOICE_free,
570 CHOICE_print,
Lev Walkinf15320b2004-06-03 03:38:44 +0000571 CHOICE_constraint,
572 CHOICE_decode_ber,
573 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000574 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000575 CHOICE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000576 0, /* No PER decoder, -gen-PER to enable */
Lev Walkinf15320b2004-06-03 03:38:44 +0000577 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000578 0, /* No effective tags (pointer) */
579 0, /* No effective tags (count) */
580 0, /* No tags (pointer) */
581 0, /* No tags (count) */
Lev Walkin59b176e2005-11-26 11:25:14 +0000582 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000583 asn_MBR_VariablePart_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000584 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000585 &asn_SPC_VariablePart_specs_1 /* Additional specs */
Lev Walkinf15320b2004-06-03 03:38:44 +0000586};
587
588
Lev Walkinb47ddce2004-08-11 05:25:47 +0000589/*** <<< INCLUDES [ActionItem] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000590
Lev Walkinf15320b2004-06-03 03:38:44 +0000591#include <ENUMERATED.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000592#include <BOOLEAN.h>
593#include <VisibleString.h>
594#include <asn_SET_OF.h>
595#include <constr_SET_OF.h>
596#include <constr_SEQUENCE.h>
597
598/*** <<< DEPS [ActionItem] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000599
Lev Walkin2e3055d2004-08-20 13:36:32 +0000600typedef enum accept_as {
601 accept_as_unknown = 0,
602 accept_as_safe = 1,
Lev Walkinbbe38662005-02-25 08:17:56 +0000603 accept_as_unsafe = 2
Lev Walkin2e3055d2004-08-20 13:36:32 +0000604 /*
605 * Enumeration is extensible
606 */
Lev Walkin171487e2006-03-21 07:25:18 +0000607} e_accept_as;
Lev Walkinf15320b2004-06-03 03:38:44 +0000608
609/*** <<< TYPE-DECLS [ActionItem] >>> ***/
610
Lev Walkinf15320b2004-06-03 03:38:44 +0000611typedef struct ActionItem {
612 ENUMERATED_t accept_as;
613 struct notify {
614 BOOLEAN_t critical;
615 struct email {
616 A_SET_OF(VisibleString_t) list;
617
618 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000619 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000620 } email;
621 /*
622 * This type is extensible,
623 * possible extensions are below.
624 */
625
626 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000627 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000628 } *notify;
629 /*
630 * This type is extensible,
631 * possible extensions are below.
632 */
633
634 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000635 asn_struct_ctx_t _asn_ctx;
Lev Walkinf15320b2004-06-03 03:38:44 +0000636} ActionItem_t;
637
Lev Walkinbbe38662005-02-25 08:17:56 +0000638/*** <<< FUNC-DECLS [ActionItem] >>> ***/
639
Lev Walkine0272aa2005-03-04 11:26:08 +0000640/* extern asn_TYPE_descriptor_t asn_DEF_accept_as_2; // (Use -fall-defs-global to expose) */
Lev Walkinc8285712005-03-04 22:18:20 +0000641extern asn_TYPE_descriptor_t asn_DEF_ActionItem;
Lev Walkinbbe38662005-02-25 08:17:56 +0000642
643/*** <<< CODE [ActionItem] >>> ***/
644
645static int
Lev Walkine0272aa2005-03-04 11:26:08 +0000646accept_as_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkinbbe38662005-02-25 08:17:56 +0000647 asn_app_consume_bytes_f *app_errlog, void *app_key) {
648 /* Replace with underlying type checker */
649 td->check_constraints = asn_DEF_ENUMERATED.check_constraints;
650 return td->check_constraints(td, sptr, app_errlog, app_key);
651}
652
653/*
654 * This type is implemented using ENUMERATED,
655 * so here we adjust the DEF accordingly.
656 */
657static void
Lev Walkine0272aa2005-03-04 11:26:08 +0000658accept_as_2_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinbbe38662005-02-25 08:17:56 +0000659 td->free_struct = asn_DEF_ENUMERATED.free_struct;
660 td->print_struct = asn_DEF_ENUMERATED.print_struct;
661 td->ber_decoder = asn_DEF_ENUMERATED.ber_decoder;
662 td->der_encoder = asn_DEF_ENUMERATED.der_encoder;
663 td->xer_decoder = asn_DEF_ENUMERATED.xer_decoder;
664 td->xer_encoder = asn_DEF_ENUMERATED.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000665 td->uper_decoder = asn_DEF_ENUMERATED.uper_decoder;
666 if(!td->per_constraints)
667 td->per_constraints = asn_DEF_ENUMERATED.per_constraints;
Lev Walkinbbe38662005-02-25 08:17:56 +0000668 td->elements = asn_DEF_ENUMERATED.elements;
669 td->elements_count = asn_DEF_ENUMERATED.elements_count;
Lev Walkin29a82192005-03-29 19:05:37 +0000670 /* td->specifics = asn_DEF_ENUMERATED.specifics; // Defined explicitly */
Lev Walkinbbe38662005-02-25 08:17:56 +0000671}
672
673static void
Lev Walkine0272aa2005-03-04 11:26:08 +0000674accept_as_2_free(asn_TYPE_descriptor_t *td,
Lev Walkinbbe38662005-02-25 08:17:56 +0000675 void *struct_ptr, int contents_only) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000676 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000677 td->free_struct(td, struct_ptr, contents_only);
678}
679
680static int
Lev Walkine0272aa2005-03-04 11:26:08 +0000681accept_as_2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
Lev Walkinbbe38662005-02-25 08:17:56 +0000682 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000683 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000684 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
685}
686
687static asn_dec_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +0000688accept_as_2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +0000689 void **structure, const void *bufptr, size_t size, int tag_mode) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000690 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000691 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
692}
693
694static asn_enc_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +0000695accept_as_2_encode_der(asn_TYPE_descriptor_t *td,
Lev Walkinbbe38662005-02-25 08:17:56 +0000696 void *structure, int tag_mode, ber_tlv_tag_t tag,
697 asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000698 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000699 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
700}
701
702static asn_dec_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +0000703accept_as_2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
Lev Walkin3ebc65a2005-03-17 21:57:19 +0000704 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000705 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000706 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
707}
708
709static asn_enc_rval_t
Lev Walkine0272aa2005-03-04 11:26:08 +0000710accept_as_2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
Lev Walkinbbe38662005-02-25 08:17:56 +0000711 int ilevel, enum xer_encoder_flags_e flags,
712 asn_app_consume_bytes_f *cb, void *app_key) {
Lev Walkine0272aa2005-03-04 11:26:08 +0000713 accept_as_2_inherit_TYPE_descriptor(td);
Lev Walkinbbe38662005-02-25 08:17:56 +0000714 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
715}
716
717
Lev Walkinf15320b2004-06-03 03:38:44 +0000718/*** <<< STAT-DEFS [ActionItem] >>> ***/
719
Lev Walkin59b176e2005-11-26 11:25:14 +0000720static asn_INTEGER_enum_map_t asn_MAP_accept_as_value2enum_2[] = {
Lev Walkin9f30ef12005-02-25 11:08:02 +0000721 { 0, 7, "unknown" },
722 { 1, 4, "safe" },
723 { 2, 6, "unsafe" }
Lev Walkinbbe38662005-02-25 08:17:56 +0000724 /* This list is extensible */
725};
Lev Walkin59b176e2005-11-26 11:25:14 +0000726static unsigned int asn_MAP_accept_as_enum2value_2[] = {
Lev Walkin9f30ef12005-02-25 11:08:02 +0000727 1, /* safe(1) */
728 0, /* unknown(0) */
729 2 /* unsafe(2) */
Lev Walkinbbe38662005-02-25 08:17:56 +0000730 /* This list is extensible */
731};
Lev Walkin59b176e2005-11-26 11:25:14 +0000732static asn_INTEGER_specifics_t asn_SPC_accept_as_specs_2 = {
733 asn_MAP_accept_as_value2enum_2, /* "tag" => N; sorted by tag */
734 asn_MAP_accept_as_enum2value_2, /* N => "tag"; sorted by N */
Lev Walkinbbe38662005-02-25 08:17:56 +0000735 3, /* Number of elements in the maps */
Lev Walkin59b176e2005-11-26 11:25:14 +0000736 4, /* Extensions before this member */
Lev Walkin295e2452005-02-25 11:47:59 +0000737 1 /* Strict enumeration */
Lev Walkinbbe38662005-02-25 08:17:56 +0000738};
Lev Walkin59b176e2005-11-26 11:25:14 +0000739static ber_tlv_tag_t asn_DEF_accept_as_tags_2[] = {
Lev Walkinbbe38662005-02-25 08:17:56 +0000740 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
741};
742static /* Use -fall-defs-global to expose */
Lev Walkine0272aa2005-03-04 11:26:08 +0000743asn_TYPE_descriptor_t asn_DEF_accept_as_2 = {
Lev Walkinbbe38662005-02-25 08:17:56 +0000744 "accept-as",
745 "accept-as",
Lev Walkine0272aa2005-03-04 11:26:08 +0000746 accept_as_2_free,
747 accept_as_2_print,
748 accept_as_2_constraint,
749 accept_as_2_decode_ber,
750 accept_as_2_encode_der,
751 accept_as_2_decode_xer,
752 accept_as_2_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000753 0, /* No PER decoder, -gen-PER to enable */
Lev Walkinbbe38662005-02-25 08:17:56 +0000754 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000755 asn_DEF_accept_as_tags_2,
756 sizeof(asn_DEF_accept_as_tags_2)
757 /sizeof(asn_DEF_accept_as_tags_2[0]), /* 1 */
758 asn_DEF_accept_as_tags_2, /* Same as above */
759 sizeof(asn_DEF_accept_as_tags_2)
760 /sizeof(asn_DEF_accept_as_tags_2[0]), /* 1 */
761 0, /* No PER visible constraints */
Lev Walkinbbe38662005-02-25 08:17:56 +0000762 0, 0, /* Defined elsewhere */
Lev Walkin59b176e2005-11-26 11:25:14 +0000763 &asn_SPC_accept_as_specs_2 /* Additional specs */
Lev Walkinbbe38662005-02-25 08:17:56 +0000764};
765
Lev Walkine8318b82005-03-06 09:29:03 +0000766static asn_TYPE_member_t asn_MBR_email_9[] = {
Lev Walkin8eb4b572005-08-16 16:57:17 +0000767 { ATF_POINTER, 0, 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000768 .tag = (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
769 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000770 .type = &asn_DEF_VisibleString,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000771 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000772 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
773 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000774 .name = ""
Lev Walkinf15320b2004-06-03 03:38:44 +0000775 },
Lev Walkin2e3055d2004-08-20 13:36:32 +0000776};
Lev Walkin59b176e2005-11-26 11:25:14 +0000777static ber_tlv_tag_t asn_DEF_email_tags_9[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000778 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
779};
Lev Walkin59b176e2005-11-26 11:25:14 +0000780static asn_SET_OF_specifics_t asn_SPC_email_specs_9 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000781 sizeof(struct email),
Lev Walkindfae9752004-09-29 13:19:37 +0000782 offsetof(struct email, _asn_ctx),
Lev Walkina9cc46e2004-09-22 16:06:28 +0000783 0, /* XER encoding is XMLDelimitedItemList */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000784};
Lev Walkind04430c2004-09-07 06:44:29 +0000785static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +0000786asn_TYPE_descriptor_t asn_DEF_email_9 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000787 "email",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000788 "email",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000789 SET_OF_free,
790 SET_OF_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000791 SET_OF_constraint,
792 SET_OF_decode_ber,
793 SET_OF_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000794 SET_OF_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000795 SET_OF_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000796 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000797 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000798 asn_DEF_email_tags_9,
799 sizeof(asn_DEF_email_tags_9)
800 /sizeof(asn_DEF_email_tags_9[0]), /* 1 */
801 asn_DEF_email_tags_9, /* Same as above */
802 sizeof(asn_DEF_email_tags_9)
803 /sizeof(asn_DEF_email_tags_9[0]), /* 1 */
804 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000805 asn_MBR_email_9,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000806 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000807 &asn_SPC_email_specs_9 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000808};
809
Lev Walkine8318b82005-03-06 09:29:03 +0000810static asn_TYPE_member_t asn_MBR_notify_7[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000811 { ATF_NOFLAGS, 0, offsetof(struct notify, critical),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000812 .tag = (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)),
813 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000814 .type = &asn_DEF_BOOLEAN,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000815 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000816 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
817 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000818 .name = "critical"
819 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000820 { ATF_NOFLAGS, 0, offsetof(struct notify, email),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000821 .tag = (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
822 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000823 .type = &asn_DEF_email_9,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000824 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000825 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
826 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000827 .name = "email"
828 },
829};
Lev Walkin59b176e2005-11-26 11:25:14 +0000830static ber_tlv_tag_t asn_DEF_notify_tags_7[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000831 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
832};
Lev Walkin59b176e2005-11-26 11:25:14 +0000833static asn_TYPE_tag2member_t asn_MAP_notify_tag2el_7[] = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000834 { (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)), 0, 0, 0 }, /* critical at 61 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000835 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 1, 0, 0 } /* email at 62 */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000836};
Lev Walkin59b176e2005-11-26 11:25:14 +0000837static asn_SEQUENCE_specifics_t asn_SPC_notify_specs_7 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000838 sizeof(struct notify),
Lev Walkindfae9752004-09-29 13:19:37 +0000839 offsetof(struct notify, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000840 asn_MAP_notify_tag2el_7,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000841 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000842 0, 0, 0, /* Optional elements (not needed) */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000843 1, /* Start extensions */
844 3 /* Stop extensions */
845};
Lev Walkind04430c2004-09-07 06:44:29 +0000846static /* Use -fall-defs-global to expose */
Lev Walkine8318b82005-03-06 09:29:03 +0000847asn_TYPE_descriptor_t asn_DEF_notify_7 = {
Lev Walkin2e3055d2004-08-20 13:36:32 +0000848 "notify",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000849 "notify",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000850 SEQUENCE_free,
851 SEQUENCE_print,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000852 SEQUENCE_constraint,
853 SEQUENCE_decode_ber,
854 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000855 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000856 SEQUENCE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000857 0, /* No PER decoder, -gen-PER to enable */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000858 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000859 asn_DEF_notify_tags_7,
860 sizeof(asn_DEF_notify_tags_7)
861 /sizeof(asn_DEF_notify_tags_7[0]), /* 1 */
862 asn_DEF_notify_tags_7, /* Same as above */
863 sizeof(asn_DEF_notify_tags_7)
864 /sizeof(asn_DEF_notify_tags_7[0]), /* 1 */
865 0, /* No PER visible constraints */
Lev Walkine8318b82005-03-06 09:29:03 +0000866 asn_MBR_notify_7,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000867 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000868 &asn_SPC_notify_specs_7 /* Additional specs */
Lev Walkin2e3055d2004-08-20 13:36:32 +0000869};
870
Lev Walkine0272aa2005-03-04 11:26:08 +0000871static asn_TYPE_member_t asn_MBR_ActionItem_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000872 { ATF_NOFLAGS, 0, offsetof(struct ActionItem, accept_as),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000873 .tag = (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
874 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000875 .type = &asn_DEF_accept_as_2,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000876 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000877 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
878 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000879 .name = "accept-as"
880 },
Lev Walkincc93b0f2004-09-10 09:18:20 +0000881 { ATF_POINTER, 1, offsetof(struct ActionItem, notify),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000882 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
883 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000884 .type = &asn_DEF_notify_7,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000885 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkin59b176e2005-11-26 11:25:14 +0000886 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
887 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000888 .name = "notify"
Lev Walkinf15320b2004-06-03 03:38:44 +0000889 },
890};
Lev Walkin59b176e2005-11-26 11:25:14 +0000891static ber_tlv_tag_t asn_DEF_ActionItem_tags_1[] = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000892 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
893};
Lev Walkin59b176e2005-11-26 11:25:14 +0000894static asn_TYPE_tag2member_t asn_MAP_ActionItem_tag2el_1[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000895 { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 0, 0, 0 }, /* accept-as at 55 */
Lev Walkinbbe38662005-02-25 08:17:56 +0000896 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* notify at 61 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000897};
Lev Walkin59b176e2005-11-26 11:25:14 +0000898static asn_SEQUENCE_specifics_t asn_SPC_ActionItem_specs_1 = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000899 sizeof(struct ActionItem),
Lev Walkindfae9752004-09-29 13:19:37 +0000900 offsetof(struct ActionItem, _asn_ctx),
Lev Walkin59b176e2005-11-26 11:25:14 +0000901 asn_MAP_ActionItem_tag2el_1,
Lev Walkincda6b8a2004-06-06 07:20:52 +0000902 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000903 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinf15320b2004-06-03 03:38:44 +0000904 1, /* Start extensions */
905 3 /* Stop extensions */
906};
Lev Walkindfae9752004-09-29 13:19:37 +0000907asn_TYPE_descriptor_t asn_DEF_ActionItem = {
Lev Walkinf15320b2004-06-03 03:38:44 +0000908 "ActionItem",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000909 "ActionItem",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000910 SEQUENCE_free,
911 SEQUENCE_print,
Lev Walkinf15320b2004-06-03 03:38:44 +0000912 SEQUENCE_constraint,
913 SEQUENCE_decode_ber,
914 SEQUENCE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000915 SEQUENCE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000916 SEQUENCE_encode_xer,
Lev Walkin59b176e2005-11-26 11:25:14 +0000917 0, /* No PER decoder, -gen-PER to enable */
Lev Walkinf15320b2004-06-03 03:38:44 +0000918 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000919 asn_DEF_ActionItem_tags_1,
920 sizeof(asn_DEF_ActionItem_tags_1)
921 /sizeof(asn_DEF_ActionItem_tags_1[0]), /* 1 */
922 asn_DEF_ActionItem_tags_1, /* Same as above */
923 sizeof(asn_DEF_ActionItem_tags_1)
924 /sizeof(asn_DEF_ActionItem_tags_1[0]), /* 1 */
925 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000926 asn_MBR_ActionItem_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000927 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000928 &asn_SPC_ActionItem_specs_1 /* Additional specs */
Lev Walkinf15320b2004-06-03 03:38:44 +0000929};
930