blob: 3fc023ad0a9ce532bcee3daddb849c7ae0e79748 [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 <VariablePartSet.h>
6#include <asn_SEQUENCE_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +00007#include <constr_SEQUENCE_OF.h>
Lev Walkinf15320b2004-06-03 03:38:44 +00008#include <constr_SEQUENCE.h>
9
Lev Walkinb47ddce2004-08-11 05:25:47 +000010/*** <<< DEPS [LogLine] >>> ***/
11
Lev Walkinf15320b2004-06-03 03:38:44 +000012extern asn1_TYPE_descriptor_t asn1_DEF_LogLine;
13
14/*** <<< TYPE-DECLS [LogLine] >>> ***/
15
16
17typedef struct LogLine {
18 IA5String_t line_digest;
19 struct varsets {
20 A_SEQUENCE_OF(struct VariablePartSet) list;
21
22 /* Context for parsing across buffer boundaries */
23 ber_dec_ctx_t _ber_dec_ctx;
24 } varsets;
25 /*
26 * This type is extensible,
27 * possible extensions are below.
28 */
29
30 /* Context for parsing across buffer boundaries */
31 ber_dec_ctx_t _ber_dec_ctx;
32} LogLine_t;
33
34/*** <<< STAT-DEFS [LogLine] >>> ***/
35
36 static asn1_SET_OF_element_t asn1_DEF_varsets_elements[] = {
37 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
38 (void *)&asn1_DEF_VariablePartSet },
39 };
40 static ber_tlv_tag_t asn1_DEF_varsets_tags[] = {
41 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
42 };
43 static asn1_SET_OF_specifics_t asn1_DEF_varsets_specs = {
44 sizeof(struct varsets),
45 offsetof(struct varsets, _ber_dec_ctx),
46 asn1_DEF_varsets_elements
47 };
48 asn1_TYPE_descriptor_t asn1_DEF_varsets = {
49 "varsets",
50 SEQUENCE_OF_constraint,
51 SEQUENCE_OF_decode_ber,
52 SEQUENCE_OF_encode_der,
53 SEQUENCE_OF_print,
54 SEQUENCE_OF_free,
55 0, /* Use generic outmost tag fetcher */
56 asn1_DEF_varsets_tags,
57 sizeof(asn1_DEF_varsets_tags)
58 /sizeof(asn1_DEF_varsets_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +000059 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +000060 1, /* Whether CONSTRUCTED */
61 &asn1_DEF_varsets_specs /* Additional specs */
62 };
63
Lev Walkinf15320b2004-06-03 03:38:44 +000064static asn1_SEQUENCE_element_t asn1_DEF_LogLine_elements[] = {
65 { offsetof(struct LogLine, line_digest), 0,
66 (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)),
67 0,
68 (void *)&asn1_DEF_IA5String,
69 "line-digest"
70 },
71 { offsetof(struct LogLine, varsets), 0,
72 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
73 0,
74 (void *)&asn1_DEF_varsets,
75 "varsets"
76 },
77};
78static ber_tlv_tag_t asn1_DEF_LogLine_tags[] = {
79 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
80};
Lev Walkincda6b8a2004-06-06 07:20:52 +000081static asn1_TYPE_tag2member_t asn1_DEF_LogLine_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +000082 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* varsets at 25 */
83 { (ASN_TAG_CLASS_UNIVERSAL | (22 << 2)), 0, 0, 0 }, /* line-digest at 23 */
Lev Walkincda6b8a2004-06-06 07:20:52 +000084};
Lev Walkinf15320b2004-06-03 03:38:44 +000085static asn1_SEQUENCE_specifics_t asn1_DEF_LogLine_specs = {
86 sizeof(struct LogLine),
87 offsetof(struct LogLine, _ber_dec_ctx),
88 asn1_DEF_LogLine_elements,
89 2, /* Elements count */
Lev Walkincda6b8a2004-06-06 07:20:52 +000090 asn1_DEF_LogLine_tag2el,
91 2, /* Count of tags in the map */
Lev Walkinf15320b2004-06-03 03:38:44 +000092 1, /* Start extensions */
93 3 /* Stop extensions */
94};
95asn1_TYPE_descriptor_t asn1_DEF_LogLine = {
96 "LogLine",
97 SEQUENCE_constraint,
98 SEQUENCE_decode_ber,
99 SEQUENCE_encode_der,
100 SEQUENCE_print,
101 SEQUENCE_free,
102 0, /* Use generic outmost tag fetcher */
103 asn1_DEF_LogLine_tags,
104 sizeof(asn1_DEF_LogLine_tags)
105 /sizeof(asn1_DEF_LogLine_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000106 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000107 1, /* Whether CONSTRUCTED */
108 &asn1_DEF_LogLine_specs /* Additional specs */
109};
110
111
Lev Walkinb47ddce2004-08-11 05:25:47 +0000112/*** <<< INCLUDES [VariablePartSet] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000113
Lev Walkinf15320b2004-06-03 03:38:44 +0000114#include <ActionItem.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000115#include <VariablePart.h>
116#include <asn_SEQUENCE_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000117#include <constr_SEQUENCE_OF.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000118#include <constr_SEQUENCE.h>
119
Lev Walkinb47ddce2004-08-11 05:25:47 +0000120/*** <<< DEPS [VariablePartSet] >>> ***/
121
Lev Walkinf15320b2004-06-03 03:38:44 +0000122extern asn1_TYPE_descriptor_t asn1_DEF_VariablePartSet;
123
124/*** <<< TYPE-DECLS [VariablePartSet] >>> ***/
125
126
127typedef struct VariablePartSet {
128 struct vparts {
129 A_SEQUENCE_OF(struct VariablePart) list;
130
131 /* Context for parsing across buffer boundaries */
132 ber_dec_ctx_t _ber_dec_ctx;
133 } vparts;
134 ActionItem_t resolution;
135 /*
136 * This type is extensible,
137 * possible extensions are below.
138 */
139
140 /* Context for parsing across buffer boundaries */
141 ber_dec_ctx_t _ber_dec_ctx;
142} VariablePartSet_t;
143
144/*** <<< STAT-DEFS [VariablePartSet] >>> ***/
145
146 static asn1_SET_OF_element_t asn1_DEF_vparts_elements[] = {
147 { -1 /* Ambiguous tag (CHOICE?) */,
148 (void *)&asn1_DEF_VariablePart },
149 };
150 static ber_tlv_tag_t asn1_DEF_vparts_tags[] = {
151 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
152 };
153 static asn1_SET_OF_specifics_t asn1_DEF_vparts_specs = {
154 sizeof(struct vparts),
155 offsetof(struct vparts, _ber_dec_ctx),
156 asn1_DEF_vparts_elements
157 };
158 asn1_TYPE_descriptor_t asn1_DEF_vparts = {
159 "vparts",
160 SEQUENCE_OF_constraint,
161 SEQUENCE_OF_decode_ber,
162 SEQUENCE_OF_encode_der,
163 SEQUENCE_OF_print,
164 SEQUENCE_OF_free,
165 0, /* Use generic outmost tag fetcher */
166 asn1_DEF_vparts_tags,
167 sizeof(asn1_DEF_vparts_tags)
168 /sizeof(asn1_DEF_vparts_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000169 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000170 1, /* Whether CONSTRUCTED */
171 &asn1_DEF_vparts_specs /* Additional specs */
172 };
173
Lev Walkinf15320b2004-06-03 03:38:44 +0000174static asn1_SEQUENCE_element_t asn1_DEF_VariablePartSet_elements[] = {
175 { offsetof(struct VariablePartSet, vparts), 0,
176 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
177 0,
178 (void *)&asn1_DEF_vparts,
179 "vparts"
180 },
181 { offsetof(struct VariablePartSet, resolution), 0,
182 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
183 0,
184 (void *)&asn1_DEF_ActionItem,
185 "resolution"
186 },
187};
188static ber_tlv_tag_t asn1_DEF_VariablePartSet_tags[] = {
189 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
190};
Lev Walkincda6b8a2004-06-06 07:20:52 +0000191static asn1_TYPE_tag2member_t asn1_DEF_VariablePartSet_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000192 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* vparts at 33 */
193 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 }, /* resolution at 35 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000194};
Lev Walkinf15320b2004-06-03 03:38:44 +0000195static asn1_SEQUENCE_specifics_t asn1_DEF_VariablePartSet_specs = {
196 sizeof(struct VariablePartSet),
197 offsetof(struct VariablePartSet, _ber_dec_ctx),
198 asn1_DEF_VariablePartSet_elements,
199 2, /* Elements count */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000200 asn1_DEF_VariablePartSet_tag2el,
201 2, /* Count of tags in the map */
Lev Walkinf15320b2004-06-03 03:38:44 +0000202 1, /* Start extensions */
203 3 /* Stop extensions */
204};
205asn1_TYPE_descriptor_t asn1_DEF_VariablePartSet = {
206 "VariablePartSet",
207 SEQUENCE_constraint,
208 SEQUENCE_decode_ber,
209 SEQUENCE_encode_der,
210 SEQUENCE_print,
211 SEQUENCE_free,
212 0, /* Use generic outmost tag fetcher */
213 asn1_DEF_VariablePartSet_tags,
214 sizeof(asn1_DEF_VariablePartSet_tags)
215 /sizeof(asn1_DEF_VariablePartSet_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000216 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000217 1, /* Whether CONSTRUCTED */
218 &asn1_DEF_VariablePartSet_specs /* Additional specs */
219};
220
221
Lev Walkinb47ddce2004-08-11 05:25:47 +0000222/*** <<< INCLUDES [VariablePart] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000223
Lev Walkinf15320b2004-06-03 03:38:44 +0000224#include <VisibleString.h>
225#include <asn_SET_OF.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000226#include <constr_SET_OF.h>
227#include <constr_SEQUENCE.h>
228#include <constr_CHOICE.h>
Lev Walkinf15320b2004-06-03 03:38:44 +0000229
Lev Walkinb47ddce2004-08-11 05:25:47 +0000230/*** <<< DEPS [VariablePart] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000231
Lev Walkinb47ddce2004-08-11 05:25:47 +0000232typedef enum VariablePart_PR {
233 VariablePart_PR_NOTHING, /* No components present */
234 VariablePart_PR_vset,
235 VariablePart_PR_vrange,
236 /* Extensions may appear below */
237} VariablePart_PR_e;
Lev Walkinf15320b2004-06-03 03:38:44 +0000238extern asn1_TYPE_descriptor_t asn1_DEF_VariablePart;
239
240/*** <<< TYPE-DECLS [VariablePart] >>> ***/
241
242
243typedef struct VariablePart {
Lev Walkinb47ddce2004-08-11 05:25:47 +0000244 VariablePart_PR_e present;
Lev Walkinf15320b2004-06-03 03:38:44 +0000245 union {
246 struct vset {
247 A_SET_OF(VisibleString_t) list;
248
249 /* Context for parsing across buffer boundaries */
250 ber_dec_ctx_t _ber_dec_ctx;
251 } vset;
252 struct vrange {
253 VisibleString_t from;
254 VisibleString_t to;
255 /*
256 * This type is extensible,
257 * possible extensions are below.
258 */
259
260 /* Context for parsing across buffer boundaries */
261 ber_dec_ctx_t _ber_dec_ctx;
262 } vrange;
263 /*
264 * This type is extensible,
265 * possible extensions are below.
266 */
267 } choice;
268
269 /* Context for parsing across buffer boundaries */
270 ber_dec_ctx_t _ber_dec_ctx;
271} VariablePart_t;
272
273/*** <<< STAT-DEFS [VariablePart] >>> ***/
274
275 static asn1_SET_OF_element_t asn1_DEF_vset_elements[] = {
276 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
277 (void *)&asn1_DEF_VisibleString },
278 };
279 static ber_tlv_tag_t asn1_DEF_vset_tags[] = {
280 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
281 };
282 static asn1_SET_OF_specifics_t asn1_DEF_vset_specs = {
283 sizeof(struct vset),
284 offsetof(struct vset, _ber_dec_ctx),
285 asn1_DEF_vset_elements
286 };
287 asn1_TYPE_descriptor_t asn1_DEF_vset = {
288 "vset",
289 SET_OF_constraint,
290 SET_OF_decode_ber,
291 SET_OF_encode_der,
292 SET_OF_print,
293 SET_OF_free,
294 0, /* Use generic outmost tag fetcher */
295 asn1_DEF_vset_tags,
296 sizeof(asn1_DEF_vset_tags)
297 /sizeof(asn1_DEF_vset_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000298 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000299 1, /* Whether CONSTRUCTED */
300 &asn1_DEF_vset_specs /* Additional specs */
301 };
302
Lev Walkinf15320b2004-06-03 03:38:44 +0000303 static asn1_SEQUENCE_element_t asn1_DEF_vrange_elements[] = {
304 { offsetof(struct vrange, from), 0,
305 (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
306 0,
307 (void *)&asn1_DEF_VisibleString,
308 "from"
309 },
310 { offsetof(struct vrange, to), 0,
311 (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
312 0,
313 (void *)&asn1_DEF_VisibleString,
314 "to"
315 },
316 };
317 static ber_tlv_tag_t asn1_DEF_vrange_tags[] = {
318 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
319 };
Lev Walkincda6b8a2004-06-06 07:20:52 +0000320 static asn1_TYPE_tag2member_t asn1_DEF_vrange_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000321 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)), 0, 0, 1 }, /* from at 45 */
322 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)), 1, -1, 0 }, /* to at 46 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000323 };
Lev Walkinf15320b2004-06-03 03:38:44 +0000324 static asn1_SEQUENCE_specifics_t asn1_DEF_vrange_specs = {
325 sizeof(struct vrange),
326 offsetof(struct vrange, _ber_dec_ctx),
327 asn1_DEF_vrange_elements,
328 2, /* Elements count */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000329 asn1_DEF_vrange_tag2el,
330 2, /* Count of tags in the map */
Lev Walkinf15320b2004-06-03 03:38:44 +0000331 1, /* Start extensions */
332 3 /* Stop extensions */
333 };
334 asn1_TYPE_descriptor_t asn1_DEF_vrange = {
335 "vrange",
336 SEQUENCE_constraint,
337 SEQUENCE_decode_ber,
338 SEQUENCE_encode_der,
339 SEQUENCE_print,
340 SEQUENCE_free,
341 0, /* Use generic outmost tag fetcher */
342 asn1_DEF_vrange_tags,
343 sizeof(asn1_DEF_vrange_tags)
344 /sizeof(asn1_DEF_vrange_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000345 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000346 1, /* Whether CONSTRUCTED */
347 &asn1_DEF_vrange_specs /* Additional specs */
348 };
349
Lev Walkinf15320b2004-06-03 03:38:44 +0000350static asn1_CHOICE_element_t asn1_DEF_VariablePart_elements[] = {
351 { offsetof(struct VariablePart, choice.vset), 0,
352 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
353 0,
354 (void *)&asn1_DEF_vset,
355 "vset"
356 },
357 { offsetof(struct VariablePart, choice.vrange), 0,
358 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
359 0,
360 (void *)&asn1_DEF_vrange,
361 "vrange"
362 },
363};
364static ber_tlv_tag_t asn1_DEF_VariablePart_tags[] = {
365
366};
Lev Walkincda6b8a2004-06-06 07:20:52 +0000367static asn1_TYPE_tag2member_t asn1_DEF_VariablePart_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000368 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* vrange at 45 */
369 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 0, 0, 0 }, /* vset at 42 */
Lev Walkinf15320b2004-06-03 03:38:44 +0000370};
371static asn1_CHOICE_specifics_t asn1_DEF_VariablePart_specs = {
372 sizeof(struct VariablePart),
373 offsetof(struct VariablePart, _ber_dec_ctx),
374 offsetof(struct VariablePart, present),
375 sizeof(((struct VariablePart *)0)->present),
376 asn1_DEF_VariablePart_elements,
377 2, /* Elements count */
378 asn1_DEF_VariablePart_tag2el,
379 2, /* Count of tags in the map */
Lev Walkind64497c2004-07-01 00:49:55 +0000380 1 /* Whether extensible */
Lev Walkinf15320b2004-06-03 03:38:44 +0000381};
382asn1_TYPE_descriptor_t asn1_DEF_VariablePart = {
383 "VariablePart",
384 CHOICE_constraint,
385 CHOICE_decode_ber,
386 CHOICE_encode_der,
387 CHOICE_print,
388 CHOICE_free,
389 CHOICE_outmost_tag,
390 asn1_DEF_VariablePart_tags,
391 sizeof(asn1_DEF_VariablePart_tags)
392 /sizeof(asn1_DEF_VariablePart_tags[0]),
393 0, /* Tags to skip */
394 1, /* Whether CONSTRUCTED */
395 &asn1_DEF_VariablePart_specs /* Additional specs */
396};
397
398
Lev Walkinb47ddce2004-08-11 05:25:47 +0000399/*** <<< INCLUDES [ActionItem] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000400
Lev Walkinf15320b2004-06-03 03:38:44 +0000401#include <ENUMERATED.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000402#include <BOOLEAN.h>
403#include <VisibleString.h>
404#include <asn_SET_OF.h>
405#include <constr_SET_OF.h>
406#include <constr_SEQUENCE.h>
407
408/*** <<< DEPS [ActionItem] >>> ***/
Lev Walkinf15320b2004-06-03 03:38:44 +0000409
410 typedef enum accept_as {
411 accept_as_unknown = 0,
412 accept_as_safe = 1,
413 accept_as_unsafe = 2,
414 /*
415 * Enumeration is extensible
416 */
417 } accept_as_e;
Lev Walkinf15320b2004-06-03 03:38:44 +0000418extern asn1_TYPE_descriptor_t asn1_DEF_ActionItem;
419
420/*** <<< TYPE-DECLS [ActionItem] >>> ***/
421
422
423typedef struct ActionItem {
424 ENUMERATED_t accept_as;
425 struct notify {
426 BOOLEAN_t critical;
427 struct email {
428 A_SET_OF(VisibleString_t) list;
429
430 /* Context for parsing across buffer boundaries */
431 ber_dec_ctx_t _ber_dec_ctx;
432 } email;
433 /*
434 * This type is extensible,
435 * possible extensions are below.
436 */
437
438 /* Context for parsing across buffer boundaries */
439 ber_dec_ctx_t _ber_dec_ctx;
440 } *notify;
441 /*
442 * This type is extensible,
443 * possible extensions are below.
444 */
445
446 /* Context for parsing across buffer boundaries */
447 ber_dec_ctx_t _ber_dec_ctx;
448} ActionItem_t;
449
450/*** <<< STAT-DEFS [ActionItem] >>> ***/
451
452 static asn1_SET_OF_element_t asn1_DEF_email_elements[] = {
453 { (ASN_TAG_CLASS_UNIVERSAL | (26 << 2)),
454 (void *)&asn1_DEF_VisibleString },
455 };
456 static ber_tlv_tag_t asn1_DEF_email_tags[] = {
457 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
458 };
459 static asn1_SET_OF_specifics_t asn1_DEF_email_specs = {
460 sizeof(struct email),
461 offsetof(struct email, _ber_dec_ctx),
462 asn1_DEF_email_elements
463 };
464 asn1_TYPE_descriptor_t asn1_DEF_email = {
465 "email",
466 SET_OF_constraint,
467 SET_OF_decode_ber,
468 SET_OF_encode_der,
469 SET_OF_print,
470 SET_OF_free,
471 0, /* Use generic outmost tag fetcher */
472 asn1_DEF_email_tags,
473 sizeof(asn1_DEF_email_tags)
474 /sizeof(asn1_DEF_email_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000475 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000476 1, /* Whether CONSTRUCTED */
477 &asn1_DEF_email_specs /* Additional specs */
478 };
479
Lev Walkinf15320b2004-06-03 03:38:44 +0000480 static asn1_SEQUENCE_element_t asn1_DEF_notify_elements[] = {
481 { offsetof(struct notify, critical), 0,
482 (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)),
483 0,
484 (void *)&asn1_DEF_BOOLEAN,
485 "critical"
486 },
487 { offsetof(struct notify, email), 0,
488 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)),
489 0,
490 (void *)&asn1_DEF_email,
491 "email"
492 },
493 };
494 static ber_tlv_tag_t asn1_DEF_notify_tags[] = {
495 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
496 };
Lev Walkincda6b8a2004-06-06 07:20:52 +0000497 static asn1_TYPE_tag2member_t asn1_DEF_notify_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000498 { (ASN_TAG_CLASS_UNIVERSAL | (1 << 2)), 0, 0, 0 }, /* critical at 61 */
499 { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 1, 0, 0 }, /* email at 62 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000500 };
Lev Walkinf15320b2004-06-03 03:38:44 +0000501 static asn1_SEQUENCE_specifics_t asn1_DEF_notify_specs = {
502 sizeof(struct notify),
503 offsetof(struct notify, _ber_dec_ctx),
504 asn1_DEF_notify_elements,
505 2, /* Elements count */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000506 asn1_DEF_notify_tag2el,
507 2, /* Count of tags in the map */
Lev Walkinf15320b2004-06-03 03:38:44 +0000508 1, /* Start extensions */
509 3 /* Stop extensions */
510 };
511 asn1_TYPE_descriptor_t asn1_DEF_notify = {
512 "notify",
513 SEQUENCE_constraint,
514 SEQUENCE_decode_ber,
515 SEQUENCE_encode_der,
516 SEQUENCE_print,
517 SEQUENCE_free,
518 0, /* Use generic outmost tag fetcher */
519 asn1_DEF_notify_tags,
520 sizeof(asn1_DEF_notify_tags)
521 /sizeof(asn1_DEF_notify_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000522 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000523 1, /* Whether CONSTRUCTED */
524 &asn1_DEF_notify_specs /* Additional specs */
525 };
526
Lev Walkinf15320b2004-06-03 03:38:44 +0000527static asn1_SEQUENCE_element_t asn1_DEF_ActionItem_elements[] = {
528 { offsetof(struct ActionItem, accept_as), 0,
529 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
530 0,
531 (void *)&asn1_DEF_ENUMERATED,
532 "accept-as"
533 },
534 { offsetof(struct ActionItem, notify), 1,
535 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
536 0,
537 (void *)&asn1_DEF_notify,
538 "notify"
539 },
540};
541static ber_tlv_tag_t asn1_DEF_ActionItem_tags[] = {
542 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
543};
Lev Walkincda6b8a2004-06-06 07:20:52 +0000544static asn1_TYPE_tag2member_t asn1_DEF_ActionItem_tag2el[] = {
Lev Walkin38abe792004-06-14 13:09:45 +0000545 { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 0, 0, 0 }, /* accept-as at 55 */
546 { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* notify at 61 */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000547};
Lev Walkinf15320b2004-06-03 03:38:44 +0000548static asn1_SEQUENCE_specifics_t asn1_DEF_ActionItem_specs = {
549 sizeof(struct ActionItem),
550 offsetof(struct ActionItem, _ber_dec_ctx),
551 asn1_DEF_ActionItem_elements,
552 2, /* Elements count */
Lev Walkincda6b8a2004-06-06 07:20:52 +0000553 asn1_DEF_ActionItem_tag2el,
554 2, /* Count of tags in the map */
Lev Walkinf15320b2004-06-03 03:38:44 +0000555 1, /* Start extensions */
556 3 /* Stop extensions */
557};
558asn1_TYPE_descriptor_t asn1_DEF_ActionItem = {
559 "ActionItem",
560 SEQUENCE_constraint,
561 SEQUENCE_decode_ber,
562 SEQUENCE_encode_der,
563 SEQUENCE_print,
564 SEQUENCE_free,
565 0, /* Use generic outmost tag fetcher */
566 asn1_DEF_ActionItem_tags,
567 sizeof(asn1_DEF_ActionItem_tags)
568 /sizeof(asn1_DEF_ActionItem_tags[0]),
Lev Walkin5bbff1e2004-06-28 21:13:22 +0000569 1, /* Tags to skip */
Lev Walkinf15320b2004-06-03 03:38:44 +0000570 1, /* Whether CONSTRUCTED */
571 &asn1_DEF_ActionItem_specs /* Additional specs */
572};
573