blob: 431e42ceec0a74f58847091f218d7d4cf89b3412 [file] [log] [blame]
vlm75b3a532005-08-14 02:18:27 +00001
2/*** <<< INCLUDES [CN-IntegerUnlimited] >>> ***/
3
4#include <INTEGER.h>
5
6/*** <<< TYPE-DECLS [CN-IntegerUnlimited] >>> ***/
7
8typedef INTEGER_t CN_IntegerUnlimited_t;
9
10/*** <<< FUNC-DECLS [CN-IntegerUnlimited] >>> ***/
11
12extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerUnlimited;
13asn_struct_free_f CN_IntegerUnlimited_free;
14asn_struct_print_f CN_IntegerUnlimited_print;
15asn_constr_check_f CN_IntegerUnlimited_constraint;
16ber_type_decoder_f CN_IntegerUnlimited_decode_ber;
17der_type_encoder_f CN_IntegerUnlimited_encode_der;
18xer_type_decoder_f CN_IntegerUnlimited_decode_xer;
19xer_type_encoder_f CN_IntegerUnlimited_encode_xer;
20
21/*** <<< CODE [CN-IntegerUnlimited] >>> ***/
22
23int
24CN_IntegerUnlimited_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +000025 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +000026 /* Replace with underlying type checker */
27 td->check_constraints = asn_DEF_INTEGER.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +000028 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlm75b3a532005-08-14 02:18:27 +000029}
30
31/*
32 * This type is implemented using INTEGER,
33 * so here we adjust the DEF accordingly.
34 */
35static void
36CN_IntegerUnlimited_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
37 td->free_struct = asn_DEF_INTEGER.free_struct;
38 td->print_struct = asn_DEF_INTEGER.print_struct;
39 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
40 td->der_encoder = asn_DEF_INTEGER.der_encoder;
41 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
42 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +000043 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +000044 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +000045 if(!td->per_constraints)
46 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +000047 td->elements = asn_DEF_INTEGER.elements;
48 td->elements_count = asn_DEF_INTEGER.elements_count;
49 td->specifics = asn_DEF_INTEGER.specifics;
50}
51
52void
53CN_IntegerUnlimited_free(asn_TYPE_descriptor_t *td,
54 void *struct_ptr, int contents_only) {
55 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
56 td->free_struct(td, struct_ptr, contents_only);
57}
58
59int
60CN_IntegerUnlimited_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
61 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
62 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
63 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
64}
65
66asn_dec_rval_t
67CN_IntegerUnlimited_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
68 void **structure, const void *bufptr, size_t size, int tag_mode) {
69 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
70 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
71}
72
73asn_enc_rval_t
74CN_IntegerUnlimited_encode_der(asn_TYPE_descriptor_t *td,
75 void *structure, int tag_mode, ber_tlv_tag_t tag,
76 asn_app_consume_bytes_f *cb, void *app_key) {
77 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
78 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
79}
80
81asn_dec_rval_t
82CN_IntegerUnlimited_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
83 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
84 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
85 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
86}
87
88asn_enc_rval_t
89CN_IntegerUnlimited_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
90 int ilevel, enum xer_encoder_flags_e flags,
91 asn_app_consume_bytes_f *cb, void *app_key) {
92 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
93 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
94}
95
96
97/*** <<< STAT-DEFS [CN-IntegerUnlimited] >>> ***/
98
vlm337167e2005-11-26 11:25:14 +000099static ber_tlv_tag_t asn_DEF_CN_IntegerUnlimited_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000100 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
101};
102asn_TYPE_descriptor_t asn_DEF_CN_IntegerUnlimited = {
103 "CN-IntegerUnlimited",
104 "CN-IntegerUnlimited",
105 CN_IntegerUnlimited_free,
106 CN_IntegerUnlimited_print,
107 CN_IntegerUnlimited_constraint,
108 CN_IntegerUnlimited_decode_ber,
109 CN_IntegerUnlimited_encode_der,
110 CN_IntegerUnlimited_decode_xer,
111 CN_IntegerUnlimited_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000112 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000113 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000114 asn_DEF_CN_IntegerUnlimited_tags_1,
115 sizeof(asn_DEF_CN_IntegerUnlimited_tags_1)
116 /sizeof(asn_DEF_CN_IntegerUnlimited_tags_1[0]), /* 1 */
117 asn_DEF_CN_IntegerUnlimited_tags_1, /* Same as above */
118 sizeof(asn_DEF_CN_IntegerUnlimited_tags_1)
119 /sizeof(asn_DEF_CN_IntegerUnlimited_tags_1[0]), /* 1 */
120 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000121 0, 0, /* No members */
122 0 /* No specifics */
123};
124
125
126/*** <<< INCLUDES [CN-IntegerMinMax] >>> ***/
127
128#include <INTEGER.h>
129
130/*** <<< TYPE-DECLS [CN-IntegerMinMax] >>> ***/
131
132typedef INTEGER_t CN_IntegerMinMax_t;
133
134/*** <<< FUNC-DECLS [CN-IntegerMinMax] >>> ***/
135
136extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinMax;
137asn_struct_free_f CN_IntegerMinMax_free;
138asn_struct_print_f CN_IntegerMinMax_print;
139asn_constr_check_f CN_IntegerMinMax_constraint;
140ber_type_decoder_f CN_IntegerMinMax_decode_ber;
141der_type_encoder_f CN_IntegerMinMax_encode_der;
142xer_type_decoder_f CN_IntegerMinMax_decode_xer;
143xer_type_encoder_f CN_IntegerMinMax_encode_xer;
144
145/*** <<< CODE [CN-IntegerMinMax] >>> ***/
146
147int
148CN_IntegerMinMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000149 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000150 const INTEGER_t *st = (const INTEGER_t *)sptr;
151
152 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000153 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000154 "%s: value not given (%s:%d)",
155 td->name, __FILE__, __LINE__);
156 return -1;
157 }
158
159
160 if(1 /* No applicable constraints whatsoever */) {
161 /* Nothing is here. See below */
162 }
163
164 /* Replace with underlying type checker */
165 td->check_constraints = asn_DEF_INTEGER.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +0000166 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlm75b3a532005-08-14 02:18:27 +0000167}
168
169/*
170 * This type is implemented using INTEGER,
171 * so here we adjust the DEF accordingly.
172 */
173static void
174CN_IntegerMinMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
175 td->free_struct = asn_DEF_INTEGER.free_struct;
176 td->print_struct = asn_DEF_INTEGER.print_struct;
177 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
178 td->der_encoder = asn_DEF_INTEGER.der_encoder;
179 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
180 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000181 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000182 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000183 if(!td->per_constraints)
184 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000185 td->elements = asn_DEF_INTEGER.elements;
186 td->elements_count = asn_DEF_INTEGER.elements_count;
187 td->specifics = asn_DEF_INTEGER.specifics;
188}
189
190void
191CN_IntegerMinMax_free(asn_TYPE_descriptor_t *td,
192 void *struct_ptr, int contents_only) {
193 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
194 td->free_struct(td, struct_ptr, contents_only);
195}
196
197int
198CN_IntegerMinMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
199 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
200 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
201 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
202}
203
204asn_dec_rval_t
205CN_IntegerMinMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
206 void **structure, const void *bufptr, size_t size, int tag_mode) {
207 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
208 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
209}
210
211asn_enc_rval_t
212CN_IntegerMinMax_encode_der(asn_TYPE_descriptor_t *td,
213 void *structure, int tag_mode, ber_tlv_tag_t tag,
214 asn_app_consume_bytes_f *cb, void *app_key) {
215 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
216 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
217}
218
219asn_dec_rval_t
220CN_IntegerMinMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
221 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
222 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
223 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
224}
225
226asn_enc_rval_t
227CN_IntegerMinMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
228 int ilevel, enum xer_encoder_flags_e flags,
229 asn_app_consume_bytes_f *cb, void *app_key) {
230 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
231 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
232}
233
234
235/*** <<< STAT-DEFS [CN-IntegerMinMax] >>> ***/
236
vlm337167e2005-11-26 11:25:14 +0000237static ber_tlv_tag_t asn_DEF_CN_IntegerMinMax_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000238 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
239};
240asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinMax = {
241 "CN-IntegerMinMax",
242 "CN-IntegerMinMax",
243 CN_IntegerMinMax_free,
244 CN_IntegerMinMax_print,
245 CN_IntegerMinMax_constraint,
246 CN_IntegerMinMax_decode_ber,
247 CN_IntegerMinMax_encode_der,
248 CN_IntegerMinMax_decode_xer,
249 CN_IntegerMinMax_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000250 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000251 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000252 asn_DEF_CN_IntegerMinMax_tags_1,
253 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
254 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
255 asn_DEF_CN_IntegerMinMax_tags_1, /* Same as above */
256 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
257 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
258 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000259 0, 0, /* No members */
260 0 /* No specifics */
261};
262
263
264/*** <<< INCLUDES [CN-IntegerMinLow] >>> ***/
265
266#include <INTEGER.h>
267
268/*** <<< TYPE-DECLS [CN-IntegerMinLow] >>> ***/
269
270typedef INTEGER_t CN_IntegerMinLow_t;
271
272/*** <<< FUNC-DECLS [CN-IntegerMinLow] >>> ***/
273
274extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow;
275asn_struct_free_f CN_IntegerMinLow_free;
276asn_struct_print_f CN_IntegerMinLow_print;
277asn_constr_check_f CN_IntegerMinLow_constraint;
278ber_type_decoder_f CN_IntegerMinLow_decode_ber;
279der_type_encoder_f CN_IntegerMinLow_encode_der;
280xer_type_decoder_f CN_IntegerMinLow_decode_xer;
281xer_type_encoder_f CN_IntegerMinLow_encode_xer;
282
283/*** <<< CODE [CN-IntegerMinLow] >>> ***/
284
285int
286CN_IntegerMinLow_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000287 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000288 const INTEGER_t *st = (const INTEGER_t *)sptr;
289 long value;
290
291 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000292 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000293 "%s: value not given (%s:%d)",
294 td->name, __FILE__, __LINE__);
295 return -1;
296 }
297
298 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +0000299 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000300 "%s: value too large (%s:%d)",
301 td->name, __FILE__, __LINE__);
302 return -1;
303 }
304
305 if((value <= 1)) {
306 /* Constraint check succeeded */
307 return 0;
308 } else {
vlmd4ae41c2006-07-13 13:28:32 +0000309 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000310 "%s: constraint failed (%s:%d)",
311 td->name, __FILE__, __LINE__);
312 return -1;
313 }
314}
315
316/*
317 * This type is implemented using INTEGER,
318 * so here we adjust the DEF accordingly.
319 */
320static void
321CN_IntegerMinLow_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
322 td->free_struct = asn_DEF_INTEGER.free_struct;
323 td->print_struct = asn_DEF_INTEGER.print_struct;
324 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
325 td->der_encoder = asn_DEF_INTEGER.der_encoder;
326 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
327 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000328 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000329 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000330 if(!td->per_constraints)
331 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000332 td->elements = asn_DEF_INTEGER.elements;
333 td->elements_count = asn_DEF_INTEGER.elements_count;
334 td->specifics = asn_DEF_INTEGER.specifics;
335}
336
337void
338CN_IntegerMinLow_free(asn_TYPE_descriptor_t *td,
339 void *struct_ptr, int contents_only) {
340 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
341 td->free_struct(td, struct_ptr, contents_only);
342}
343
344int
345CN_IntegerMinLow_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
346 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
347 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
348 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
349}
350
351asn_dec_rval_t
352CN_IntegerMinLow_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
353 void **structure, const void *bufptr, size_t size, int tag_mode) {
354 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
355 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
356}
357
358asn_enc_rval_t
359CN_IntegerMinLow_encode_der(asn_TYPE_descriptor_t *td,
360 void *structure, int tag_mode, ber_tlv_tag_t tag,
361 asn_app_consume_bytes_f *cb, void *app_key) {
362 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
363 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
364}
365
366asn_dec_rval_t
367CN_IntegerMinLow_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
368 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
369 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
370 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
371}
372
373asn_enc_rval_t
374CN_IntegerMinLow_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
375 int ilevel, enum xer_encoder_flags_e flags,
376 asn_app_consume_bytes_f *cb, void *app_key) {
377 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
378 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
379}
380
381
382/*** <<< STAT-DEFS [CN-IntegerMinLow] >>> ***/
383
vlm337167e2005-11-26 11:25:14 +0000384static ber_tlv_tag_t asn_DEF_CN_IntegerMinLow_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000385 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
386};
387asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow = {
388 "CN-IntegerMinLow",
389 "CN-IntegerMinLow",
390 CN_IntegerMinLow_free,
391 CN_IntegerMinLow_print,
392 CN_IntegerMinLow_constraint,
393 CN_IntegerMinLow_decode_ber,
394 CN_IntegerMinLow_encode_der,
395 CN_IntegerMinLow_decode_xer,
396 CN_IntegerMinLow_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000397 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000398 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000399 asn_DEF_CN_IntegerMinLow_tags_1,
400 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
401 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
402 asn_DEF_CN_IntegerMinLow_tags_1, /* Same as above */
403 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
404 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
405 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000406 0, 0, /* No members */
407 0 /* No specifics */
408};
409
410
411/*** <<< INCLUDES [NO-IntegerMinHigh] >>> ***/
412
413#include <INTEGER.h>
414
415/*** <<< TYPE-DECLS [NO-IntegerMinHigh] >>> ***/
416
417typedef INTEGER_t NO_IntegerMinHigh_t;
418
419/*** <<< FUNC-DECLS [NO-IntegerMinHigh] >>> ***/
420
421extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh;
422asn_struct_free_f NO_IntegerMinHigh_free;
423asn_struct_print_f NO_IntegerMinHigh_print;
424asn_constr_check_f NO_IntegerMinHigh_constraint;
425ber_type_decoder_f NO_IntegerMinHigh_decode_ber;
426der_type_encoder_f NO_IntegerMinHigh_encode_der;
427xer_type_decoder_f NO_IntegerMinHigh_decode_xer;
428xer_type_encoder_f NO_IntegerMinHigh_encode_xer;
429
430/*** <<< CODE [NO-IntegerMinHigh] >>> ***/
431
432int
433NO_IntegerMinHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000434 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000435 const INTEGER_t *st = (const INTEGER_t *)sptr;
436 long value;
437
438 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000439 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000440 "%s: value not given (%s:%d)",
441 td->name, __FILE__, __LINE__);
442 return -1;
443 }
444
445 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +0000446 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000447 "%s: value too large (%s:%d)",
448 td->name, __FILE__, __LINE__);
449 return -1;
450 }
451
vlma33a2162005-08-14 02:40:04 +0000452 if((value <= 3000000000)) {
vlm75b3a532005-08-14 02:18:27 +0000453 /* Constraint check succeeded */
454 return 0;
455 } else {
vlmd4ae41c2006-07-13 13:28:32 +0000456 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000457 "%s: constraint failed (%s:%d)",
458 td->name, __FILE__, __LINE__);
459 return -1;
460 }
461}
462
463/*
464 * This type is implemented using INTEGER,
465 * so here we adjust the DEF accordingly.
466 */
467static void
468NO_IntegerMinHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
469 td->free_struct = asn_DEF_INTEGER.free_struct;
470 td->print_struct = asn_DEF_INTEGER.print_struct;
471 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
472 td->der_encoder = asn_DEF_INTEGER.der_encoder;
473 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
474 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000475 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000476 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000477 if(!td->per_constraints)
478 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000479 td->elements = asn_DEF_INTEGER.elements;
480 td->elements_count = asn_DEF_INTEGER.elements_count;
481 td->specifics = asn_DEF_INTEGER.specifics;
482}
483
484void
485NO_IntegerMinHigh_free(asn_TYPE_descriptor_t *td,
486 void *struct_ptr, int contents_only) {
487 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
488 td->free_struct(td, struct_ptr, contents_only);
489}
490
491int
492NO_IntegerMinHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
493 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
494 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
495 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
496}
497
498asn_dec_rval_t
499NO_IntegerMinHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
500 void **structure, const void *bufptr, size_t size, int tag_mode) {
501 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
502 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
503}
504
505asn_enc_rval_t
506NO_IntegerMinHigh_encode_der(asn_TYPE_descriptor_t *td,
507 void *structure, int tag_mode, ber_tlv_tag_t tag,
508 asn_app_consume_bytes_f *cb, void *app_key) {
509 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
510 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
511}
512
513asn_dec_rval_t
514NO_IntegerMinHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
515 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
516 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
517 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
518}
519
520asn_enc_rval_t
521NO_IntegerMinHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
522 int ilevel, enum xer_encoder_flags_e flags,
523 asn_app_consume_bytes_f *cb, void *app_key) {
524 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
525 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
526}
527
528
529/*** <<< STAT-DEFS [NO-IntegerMinHigh] >>> ***/
530
vlm337167e2005-11-26 11:25:14 +0000531static ber_tlv_tag_t asn_DEF_NO_IntegerMinHigh_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000532 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
533};
534asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh = {
535 "NO-IntegerMinHigh",
536 "NO-IntegerMinHigh",
537 NO_IntegerMinHigh_free,
538 NO_IntegerMinHigh_print,
539 NO_IntegerMinHigh_constraint,
540 NO_IntegerMinHigh_decode_ber,
541 NO_IntegerMinHigh_encode_der,
542 NO_IntegerMinHigh_decode_xer,
543 NO_IntegerMinHigh_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000544 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000545 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000546 asn_DEF_NO_IntegerMinHigh_tags_1,
547 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
548 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
549 asn_DEF_NO_IntegerMinHigh_tags_1, /* Same as above */
550 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
551 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
552 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000553 0, 0, /* No members */
554 0 /* No specifics */
555};
556
557
558/*** <<< INCLUDES [NO-IntegerLowHigh] >>> ***/
559
560#include <INTEGER.h>
561
562/*** <<< TYPE-DECLS [NO-IntegerLowHigh] >>> ***/
563
564typedef INTEGER_t NO_IntegerLowHigh_t;
565
566/*** <<< FUNC-DECLS [NO-IntegerLowHigh] >>> ***/
567
568extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh;
569asn_struct_free_f NO_IntegerLowHigh_free;
570asn_struct_print_f NO_IntegerLowHigh_print;
571asn_constr_check_f NO_IntegerLowHigh_constraint;
572ber_type_decoder_f NO_IntegerLowHigh_decode_ber;
573der_type_encoder_f NO_IntegerLowHigh_encode_der;
574xer_type_decoder_f NO_IntegerLowHigh_decode_xer;
575xer_type_encoder_f NO_IntegerLowHigh_encode_xer;
576
577/*** <<< CODE [NO-IntegerLowHigh] >>> ***/
578
579int
580NO_IntegerLowHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000581 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000582 const INTEGER_t *st = (const INTEGER_t *)sptr;
583 long value;
584
585 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000586 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000587 "%s: value not given (%s:%d)",
588 td->name, __FILE__, __LINE__);
589 return -1;
590 }
591
592 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +0000593 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000594 "%s: value too large (%s:%d)",
595 td->name, __FILE__, __LINE__);
596 return -1;
597 }
598
vlma33a2162005-08-14 02:40:04 +0000599 if((value >= 1 && value <= 3000000000)) {
vlm75b3a532005-08-14 02:18:27 +0000600 /* Constraint check succeeded */
601 return 0;
602 } else {
vlmd4ae41c2006-07-13 13:28:32 +0000603 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000604 "%s: constraint failed (%s:%d)",
605 td->name, __FILE__, __LINE__);
606 return -1;
607 }
608}
609
610/*
611 * This type is implemented using INTEGER,
612 * so here we adjust the DEF accordingly.
613 */
614static void
615NO_IntegerLowHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
616 td->free_struct = asn_DEF_INTEGER.free_struct;
617 td->print_struct = asn_DEF_INTEGER.print_struct;
618 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
619 td->der_encoder = asn_DEF_INTEGER.der_encoder;
620 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
621 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000622 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000623 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000624 if(!td->per_constraints)
625 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000626 td->elements = asn_DEF_INTEGER.elements;
627 td->elements_count = asn_DEF_INTEGER.elements_count;
628 td->specifics = asn_DEF_INTEGER.specifics;
629}
630
631void
632NO_IntegerLowHigh_free(asn_TYPE_descriptor_t *td,
633 void *struct_ptr, int contents_only) {
634 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
635 td->free_struct(td, struct_ptr, contents_only);
636}
637
638int
639NO_IntegerLowHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
640 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
641 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
642 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
643}
644
645asn_dec_rval_t
646NO_IntegerLowHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
647 void **structure, const void *bufptr, size_t size, int tag_mode) {
648 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
649 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
650}
651
652asn_enc_rval_t
653NO_IntegerLowHigh_encode_der(asn_TYPE_descriptor_t *td,
654 void *structure, int tag_mode, ber_tlv_tag_t tag,
655 asn_app_consume_bytes_f *cb, void *app_key) {
656 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
657 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
658}
659
660asn_dec_rval_t
661NO_IntegerLowHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
662 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
663 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
664 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
665}
666
667asn_enc_rval_t
668NO_IntegerLowHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
669 int ilevel, enum xer_encoder_flags_e flags,
670 asn_app_consume_bytes_f *cb, void *app_key) {
671 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
672 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
673}
674
675
676/*** <<< STAT-DEFS [NO-IntegerLowHigh] >>> ***/
677
vlm337167e2005-11-26 11:25:14 +0000678static ber_tlv_tag_t asn_DEF_NO_IntegerLowHigh_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000679 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
680};
681asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh = {
682 "NO-IntegerLowHigh",
683 "NO-IntegerLowHigh",
684 NO_IntegerLowHigh_free,
685 NO_IntegerLowHigh_print,
686 NO_IntegerLowHigh_constraint,
687 NO_IntegerLowHigh_decode_ber,
688 NO_IntegerLowHigh_encode_der,
689 NO_IntegerLowHigh_decode_xer,
690 NO_IntegerLowHigh_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000691 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000692 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000693 asn_DEF_NO_IntegerLowHigh_tags_1,
694 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
695 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
696 asn_DEF_NO_IntegerLowHigh_tags_1, /* Same as above */
697 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
698 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
699 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000700 0, 0, /* No members */
701 0 /* No specifics */
702};
703
704
705/*** <<< INCLUDES [CN-IntegerLowMax] >>> ***/
706
707#include <INTEGER.h>
708
709/*** <<< TYPE-DECLS [CN-IntegerLowMax] >>> ***/
710
711typedef INTEGER_t CN_IntegerLowMax_t;
712
713/*** <<< FUNC-DECLS [CN-IntegerLowMax] >>> ***/
714
715extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax;
716asn_struct_free_f CN_IntegerLowMax_free;
717asn_struct_print_f CN_IntegerLowMax_print;
718asn_constr_check_f CN_IntegerLowMax_constraint;
719ber_type_decoder_f CN_IntegerLowMax_decode_ber;
720der_type_encoder_f CN_IntegerLowMax_encode_der;
721xer_type_decoder_f CN_IntegerLowMax_decode_xer;
722xer_type_encoder_f CN_IntegerLowMax_encode_xer;
723
724/*** <<< CODE [CN-IntegerLowMax] >>> ***/
725
726int
727CN_IntegerLowMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000728 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000729 const INTEGER_t *st = (const INTEGER_t *)sptr;
730 long value;
731
732 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000733 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000734 "%s: value not given (%s:%d)",
735 td->name, __FILE__, __LINE__);
736 return -1;
737 }
738
739 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +0000740 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000741 "%s: value too large (%s:%d)",
742 td->name, __FILE__, __LINE__);
743 return -1;
744 }
745
746 if((value >= 1)) {
747 /* Constraint check succeeded */
748 return 0;
749 } else {
vlmd4ae41c2006-07-13 13:28:32 +0000750 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000751 "%s: constraint failed (%s:%d)",
752 td->name, __FILE__, __LINE__);
753 return -1;
754 }
755}
756
757/*
758 * This type is implemented using INTEGER,
759 * so here we adjust the DEF accordingly.
760 */
761static void
762CN_IntegerLowMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
763 td->free_struct = asn_DEF_INTEGER.free_struct;
764 td->print_struct = asn_DEF_INTEGER.print_struct;
765 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
766 td->der_encoder = asn_DEF_INTEGER.der_encoder;
767 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
768 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000769 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000770 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000771 if(!td->per_constraints)
772 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000773 td->elements = asn_DEF_INTEGER.elements;
774 td->elements_count = asn_DEF_INTEGER.elements_count;
775 td->specifics = asn_DEF_INTEGER.specifics;
776}
777
778void
779CN_IntegerLowMax_free(asn_TYPE_descriptor_t *td,
780 void *struct_ptr, int contents_only) {
781 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
782 td->free_struct(td, struct_ptr, contents_only);
783}
784
785int
786CN_IntegerLowMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
787 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
788 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
789 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
790}
791
792asn_dec_rval_t
793CN_IntegerLowMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
794 void **structure, const void *bufptr, size_t size, int tag_mode) {
795 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
796 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
797}
798
799asn_enc_rval_t
800CN_IntegerLowMax_encode_der(asn_TYPE_descriptor_t *td,
801 void *structure, int tag_mode, ber_tlv_tag_t tag,
802 asn_app_consume_bytes_f *cb, void *app_key) {
803 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
804 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
805}
806
807asn_dec_rval_t
808CN_IntegerLowMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
809 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
810 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
811 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
812}
813
814asn_enc_rval_t
815CN_IntegerLowMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
816 int ilevel, enum xer_encoder_flags_e flags,
817 asn_app_consume_bytes_f *cb, void *app_key) {
818 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
819 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
820}
821
822
823/*** <<< STAT-DEFS [CN-IntegerLowMax] >>> ***/
824
vlm337167e2005-11-26 11:25:14 +0000825static ber_tlv_tag_t asn_DEF_CN_IntegerLowMax_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000826 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
827};
828asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax = {
829 "CN-IntegerLowMax",
830 "CN-IntegerLowMax",
831 CN_IntegerLowMax_free,
832 CN_IntegerLowMax_print,
833 CN_IntegerLowMax_constraint,
834 CN_IntegerLowMax_decode_ber,
835 CN_IntegerLowMax_encode_der,
836 CN_IntegerLowMax_decode_xer,
837 CN_IntegerLowMax_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000838 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000839 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000840 asn_DEF_CN_IntegerLowMax_tags_1,
841 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
842 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
843 asn_DEF_CN_IntegerLowMax_tags_1, /* Same as above */
844 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
845 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
846 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000847 0, 0, /* No members */
848 0 /* No specifics */
849};
850
851
852/*** <<< INCLUDES [NO-IntegerHighMax] >>> ***/
853
854#include <INTEGER.h>
855
856/*** <<< TYPE-DECLS [NO-IntegerHighMax] >>> ***/
857
858typedef INTEGER_t NO_IntegerHighMax_t;
859
860/*** <<< FUNC-DECLS [NO-IntegerHighMax] >>> ***/
861
862extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax;
863asn_struct_free_f NO_IntegerHighMax_free;
864asn_struct_print_f NO_IntegerHighMax_print;
865asn_constr_check_f NO_IntegerHighMax_constraint;
866ber_type_decoder_f NO_IntegerHighMax_decode_ber;
867der_type_encoder_f NO_IntegerHighMax_encode_der;
868xer_type_decoder_f NO_IntegerHighMax_decode_xer;
869xer_type_encoder_f NO_IntegerHighMax_encode_xer;
870
871/*** <<< CODE [NO-IntegerHighMax] >>> ***/
872
873int
874NO_IntegerHighMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +0000875 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +0000876 const INTEGER_t *st = (const INTEGER_t *)sptr;
877 long value;
878
879 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +0000880 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000881 "%s: value not given (%s:%d)",
882 td->name, __FILE__, __LINE__);
883 return -1;
884 }
885
886 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +0000887 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000888 "%s: value too large (%s:%d)",
889 td->name, __FILE__, __LINE__);
890 return -1;
891 }
892
vlma33a2162005-08-14 02:40:04 +0000893 if((value >= 3000000000)) {
vlm75b3a532005-08-14 02:18:27 +0000894 /* Constraint check succeeded */
895 return 0;
896 } else {
vlmd4ae41c2006-07-13 13:28:32 +0000897 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +0000898 "%s: constraint failed (%s:%d)",
899 td->name, __FILE__, __LINE__);
900 return -1;
901 }
902}
903
904/*
905 * This type is implemented using INTEGER,
906 * so here we adjust the DEF accordingly.
907 */
908static void
909NO_IntegerHighMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
910 td->free_struct = asn_DEF_INTEGER.free_struct;
911 td->print_struct = asn_DEF_INTEGER.print_struct;
912 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
913 td->der_encoder = asn_DEF_INTEGER.der_encoder;
914 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
915 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +0000916 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +0000917 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +0000918 if(!td->per_constraints)
919 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +0000920 td->elements = asn_DEF_INTEGER.elements;
921 td->elements_count = asn_DEF_INTEGER.elements_count;
922 td->specifics = asn_DEF_INTEGER.specifics;
923}
924
925void
926NO_IntegerHighMax_free(asn_TYPE_descriptor_t *td,
927 void *struct_ptr, int contents_only) {
928 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
929 td->free_struct(td, struct_ptr, contents_only);
930}
931
932int
933NO_IntegerHighMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
934 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
935 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
936 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
937}
938
939asn_dec_rval_t
940NO_IntegerHighMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
941 void **structure, const void *bufptr, size_t size, int tag_mode) {
942 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
943 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
944}
945
946asn_enc_rval_t
947NO_IntegerHighMax_encode_der(asn_TYPE_descriptor_t *td,
948 void *structure, int tag_mode, ber_tlv_tag_t tag,
949 asn_app_consume_bytes_f *cb, void *app_key) {
950 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
951 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
952}
953
954asn_dec_rval_t
955NO_IntegerHighMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
956 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
957 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
958 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
959}
960
961asn_enc_rval_t
962NO_IntegerHighMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
963 int ilevel, enum xer_encoder_flags_e flags,
964 asn_app_consume_bytes_f *cb, void *app_key) {
965 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
966 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
967}
968
969
970/*** <<< STAT-DEFS [NO-IntegerHighMax] >>> ***/
971
vlm337167e2005-11-26 11:25:14 +0000972static ber_tlv_tag_t asn_DEF_NO_IntegerHighMax_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +0000973 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
974};
975asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax = {
976 "NO-IntegerHighMax",
977 "NO-IntegerHighMax",
978 NO_IntegerHighMax_free,
979 NO_IntegerHighMax_print,
980 NO_IntegerHighMax_constraint,
981 NO_IntegerHighMax_decode_ber,
982 NO_IntegerHighMax_encode_der,
983 NO_IntegerHighMax_decode_xer,
984 NO_IntegerHighMax_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +0000985 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +0000986 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +0000987 asn_DEF_NO_IntegerHighMax_tags_1,
988 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
989 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
990 asn_DEF_NO_IntegerHighMax_tags_1, /* Same as above */
991 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
992 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
993 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +0000994 0, 0, /* No members */
995 0 /* No specifics */
996};
997
998
999/*** <<< INCLUDES [NO-IntegerLowestMax] >>> ***/
1000
1001#include <INTEGER.h>
1002
1003/*** <<< TYPE-DECLS [NO-IntegerLowestMax] >>> ***/
1004
1005typedef INTEGER_t NO_IntegerLowestMax_t;
1006
1007/*** <<< FUNC-DECLS [NO-IntegerLowestMax] >>> ***/
1008
1009extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax;
1010asn_struct_free_f NO_IntegerLowestMax_free;
1011asn_struct_print_f NO_IntegerLowestMax_print;
1012asn_constr_check_f NO_IntegerLowestMax_constraint;
1013ber_type_decoder_f NO_IntegerLowestMax_decode_ber;
1014der_type_encoder_f NO_IntegerLowestMax_encode_der;
1015xer_type_decoder_f NO_IntegerLowestMax_decode_xer;
1016xer_type_encoder_f NO_IntegerLowestMax_encode_xer;
1017
1018/*** <<< CODE [NO-IntegerLowestMax] >>> ***/
1019
1020int
1021NO_IntegerLowestMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001022 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001023 const INTEGER_t *st = (const INTEGER_t *)sptr;
1024 long value;
1025
1026 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001027 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001028 "%s: value not given (%s:%d)",
1029 td->name, __FILE__, __LINE__);
1030 return -1;
1031 }
1032
1033 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +00001034 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001035 "%s: value too large (%s:%d)",
1036 td->name, __FILE__, __LINE__);
1037 return -1;
1038 }
1039
vlma33a2162005-08-14 02:40:04 +00001040 if((value >= -3000000000)) {
vlm75b3a532005-08-14 02:18:27 +00001041 /* Constraint check succeeded */
1042 return 0;
1043 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001044 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001045 "%s: constraint failed (%s:%d)",
1046 td->name, __FILE__, __LINE__);
1047 return -1;
1048 }
1049}
1050
1051/*
1052 * This type is implemented using INTEGER,
1053 * so here we adjust the DEF accordingly.
1054 */
1055static void
1056NO_IntegerLowestMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1057 td->free_struct = asn_DEF_INTEGER.free_struct;
1058 td->print_struct = asn_DEF_INTEGER.print_struct;
1059 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
1060 td->der_encoder = asn_DEF_INTEGER.der_encoder;
1061 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
1062 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001063 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001064 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001065 if(!td->per_constraints)
1066 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +00001067 td->elements = asn_DEF_INTEGER.elements;
1068 td->elements_count = asn_DEF_INTEGER.elements_count;
1069 td->specifics = asn_DEF_INTEGER.specifics;
1070}
1071
1072void
1073NO_IntegerLowestMax_free(asn_TYPE_descriptor_t *td,
1074 void *struct_ptr, int contents_only) {
1075 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1076 td->free_struct(td, struct_ptr, contents_only);
1077}
1078
1079int
1080NO_IntegerLowestMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1081 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1082 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1083 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1084}
1085
1086asn_dec_rval_t
1087NO_IntegerLowestMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1088 void **structure, const void *bufptr, size_t size, int tag_mode) {
1089 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1090 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1091}
1092
1093asn_enc_rval_t
1094NO_IntegerLowestMax_encode_der(asn_TYPE_descriptor_t *td,
1095 void *structure, int tag_mode, ber_tlv_tag_t tag,
1096 asn_app_consume_bytes_f *cb, void *app_key) {
1097 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1098 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1099}
1100
1101asn_dec_rval_t
1102NO_IntegerLowestMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1103 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1104 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1105 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1106}
1107
1108asn_enc_rval_t
1109NO_IntegerLowestMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1110 int ilevel, enum xer_encoder_flags_e flags,
1111 asn_app_consume_bytes_f *cb, void *app_key) {
1112 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1113 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1114}
1115
1116
1117/*** <<< STAT-DEFS [NO-IntegerLowestMax] >>> ***/
1118
vlm337167e2005-11-26 11:25:14 +00001119static ber_tlv_tag_t asn_DEF_NO_IntegerLowestMax_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001120 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1121};
1122asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax = {
1123 "NO-IntegerLowestMax",
1124 "NO-IntegerLowestMax",
1125 NO_IntegerLowestMax_free,
1126 NO_IntegerLowestMax_print,
1127 NO_IntegerLowestMax_constraint,
1128 NO_IntegerLowestMax_decode_ber,
1129 NO_IntegerLowestMax_encode_der,
1130 NO_IntegerLowestMax_decode_xer,
1131 NO_IntegerLowestMax_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001132 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001133 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001134 asn_DEF_NO_IntegerLowestMax_tags_1,
1135 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1136 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1137 asn_DEF_NO_IntegerLowestMax_tags_1, /* Same as above */
1138 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1139 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1140 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001141 0, 0, /* No members */
1142 0 /* No specifics */
1143};
1144
1145
1146/*** <<< INCLUDES [NO-IntegerOutRange] >>> ***/
1147
1148#include <INTEGER.h>
1149
1150/*** <<< TYPE-DECLS [NO-IntegerOutRange] >>> ***/
1151
1152typedef INTEGER_t NO_IntegerOutRange_t;
1153
1154/*** <<< FUNC-DECLS [NO-IntegerOutRange] >>> ***/
1155
1156extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange;
1157asn_struct_free_f NO_IntegerOutRange_free;
1158asn_struct_print_f NO_IntegerOutRange_print;
1159asn_constr_check_f NO_IntegerOutRange_constraint;
1160ber_type_decoder_f NO_IntegerOutRange_decode_ber;
1161der_type_encoder_f NO_IntegerOutRange_encode_der;
1162xer_type_decoder_f NO_IntegerOutRange_decode_xer;
1163xer_type_encoder_f NO_IntegerOutRange_encode_xer;
1164
1165/*** <<< CODE [NO-IntegerOutRange] >>> ***/
1166
1167int
1168NO_IntegerOutRange_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001169 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001170 const INTEGER_t *st = (const INTEGER_t *)sptr;
1171 long value;
1172
1173 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001174 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001175 "%s: value not given (%s:%d)",
1176 td->name, __FILE__, __LINE__);
1177 return -1;
1178 }
1179
1180 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +00001181 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001182 "%s: value too large (%s:%d)",
1183 td->name, __FILE__, __LINE__);
1184 return -1;
1185 }
1186
vlma33a2162005-08-14 02:40:04 +00001187 if((value >= 3000000000 && value <= 3000000001)) {
vlm75b3a532005-08-14 02:18:27 +00001188 /* Constraint check succeeded */
1189 return 0;
1190 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001191 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001192 "%s: constraint failed (%s:%d)",
1193 td->name, __FILE__, __LINE__);
1194 return -1;
1195 }
1196}
1197
1198/*
1199 * This type is implemented using INTEGER,
1200 * so here we adjust the DEF accordingly.
1201 */
1202static void
1203NO_IntegerOutRange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1204 td->free_struct = asn_DEF_INTEGER.free_struct;
1205 td->print_struct = asn_DEF_INTEGER.print_struct;
1206 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
1207 td->der_encoder = asn_DEF_INTEGER.der_encoder;
1208 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
1209 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001210 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001211 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001212 if(!td->per_constraints)
1213 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +00001214 td->elements = asn_DEF_INTEGER.elements;
1215 td->elements_count = asn_DEF_INTEGER.elements_count;
1216 td->specifics = asn_DEF_INTEGER.specifics;
1217}
1218
1219void
1220NO_IntegerOutRange_free(asn_TYPE_descriptor_t *td,
1221 void *struct_ptr, int contents_only) {
1222 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1223 td->free_struct(td, struct_ptr, contents_only);
1224}
1225
1226int
1227NO_IntegerOutRange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1228 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1229 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1230 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1231}
1232
1233asn_dec_rval_t
1234NO_IntegerOutRange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1235 void **structure, const void *bufptr, size_t size, int tag_mode) {
1236 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1237 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1238}
1239
1240asn_enc_rval_t
1241NO_IntegerOutRange_encode_der(asn_TYPE_descriptor_t *td,
1242 void *structure, int tag_mode, ber_tlv_tag_t tag,
1243 asn_app_consume_bytes_f *cb, void *app_key) {
1244 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1245 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1246}
1247
1248asn_dec_rval_t
1249NO_IntegerOutRange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1250 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1251 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1252 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1253}
1254
1255asn_enc_rval_t
1256NO_IntegerOutRange_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1257 int ilevel, enum xer_encoder_flags_e flags,
1258 asn_app_consume_bytes_f *cb, void *app_key) {
1259 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1260 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1261}
1262
1263
1264/*** <<< STAT-DEFS [NO-IntegerOutRange] >>> ***/
1265
vlm337167e2005-11-26 11:25:14 +00001266static ber_tlv_tag_t asn_DEF_NO_IntegerOutRange_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001267 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1268};
1269asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange = {
1270 "NO-IntegerOutRange",
1271 "NO-IntegerOutRange",
1272 NO_IntegerOutRange_free,
1273 NO_IntegerOutRange_print,
1274 NO_IntegerOutRange_constraint,
1275 NO_IntegerOutRange_decode_ber,
1276 NO_IntegerOutRange_encode_der,
1277 NO_IntegerOutRange_decode_xer,
1278 NO_IntegerOutRange_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001279 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001280 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001281 asn_DEF_NO_IntegerOutRange_tags_1,
1282 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1283 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1284 asn_DEF_NO_IntegerOutRange_tags_1, /* Same as above */
1285 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1286 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1287 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001288 0, 0, /* No members */
1289 0 /* No specifics */
1290};
1291
1292
1293/*** <<< INCLUDES [NO-IntegerOutValue] >>> ***/
1294
1295#include <INTEGER.h>
1296
1297/*** <<< TYPE-DECLS [NO-IntegerOutValue] >>> ***/
1298
1299typedef INTEGER_t NO_IntegerOutValue_t;
1300
1301/*** <<< FUNC-DECLS [NO-IntegerOutValue] >>> ***/
1302
1303extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue;
1304asn_struct_free_f NO_IntegerOutValue_free;
1305asn_struct_print_f NO_IntegerOutValue_print;
1306asn_constr_check_f NO_IntegerOutValue_constraint;
1307ber_type_decoder_f NO_IntegerOutValue_decode_ber;
1308der_type_encoder_f NO_IntegerOutValue_encode_der;
1309xer_type_decoder_f NO_IntegerOutValue_decode_xer;
1310xer_type_encoder_f NO_IntegerOutValue_encode_xer;
1311
1312/*** <<< CODE [NO-IntegerOutValue] >>> ***/
1313
1314int
1315NO_IntegerOutValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001316 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001317 const INTEGER_t *st = (const INTEGER_t *)sptr;
1318 long value;
1319
1320 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001321 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001322 "%s: value not given (%s:%d)",
1323 td->name, __FILE__, __LINE__);
1324 return -1;
1325 }
1326
1327 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +00001328 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001329 "%s: value too large (%s:%d)",
1330 td->name, __FILE__, __LINE__);
1331 return -1;
1332 }
1333
vlma33a2162005-08-14 02:40:04 +00001334 if((value == 3000000000)) {
vlm75b3a532005-08-14 02:18:27 +00001335 /* Constraint check succeeded */
1336 return 0;
1337 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001338 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001339 "%s: constraint failed (%s:%d)",
1340 td->name, __FILE__, __LINE__);
1341 return -1;
1342 }
1343}
1344
1345/*
1346 * This type is implemented using INTEGER,
1347 * so here we adjust the DEF accordingly.
1348 */
1349static void
1350NO_IntegerOutValue_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1351 td->free_struct = asn_DEF_INTEGER.free_struct;
1352 td->print_struct = asn_DEF_INTEGER.print_struct;
1353 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
1354 td->der_encoder = asn_DEF_INTEGER.der_encoder;
1355 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
1356 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001357 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001358 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001359 if(!td->per_constraints)
1360 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +00001361 td->elements = asn_DEF_INTEGER.elements;
1362 td->elements_count = asn_DEF_INTEGER.elements_count;
1363 td->specifics = asn_DEF_INTEGER.specifics;
1364}
1365
1366void
1367NO_IntegerOutValue_free(asn_TYPE_descriptor_t *td,
1368 void *struct_ptr, int contents_only) {
1369 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1370 td->free_struct(td, struct_ptr, contents_only);
1371}
1372
1373int
1374NO_IntegerOutValue_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1375 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1376 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1377 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1378}
1379
1380asn_dec_rval_t
1381NO_IntegerOutValue_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1382 void **structure, const void *bufptr, size_t size, int tag_mode) {
1383 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1384 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1385}
1386
1387asn_enc_rval_t
1388NO_IntegerOutValue_encode_der(asn_TYPE_descriptor_t *td,
1389 void *structure, int tag_mode, ber_tlv_tag_t tag,
1390 asn_app_consume_bytes_f *cb, void *app_key) {
1391 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1392 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1393}
1394
1395asn_dec_rval_t
1396NO_IntegerOutValue_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1397 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1398 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1399 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1400}
1401
1402asn_enc_rval_t
1403NO_IntegerOutValue_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1404 int ilevel, enum xer_encoder_flags_e flags,
1405 asn_app_consume_bytes_f *cb, void *app_key) {
1406 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1407 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1408}
1409
1410
1411/*** <<< STAT-DEFS [NO-IntegerOutValue] >>> ***/
1412
vlm337167e2005-11-26 11:25:14 +00001413static ber_tlv_tag_t asn_DEF_NO_IntegerOutValue_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001414 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1415};
1416asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue = {
1417 "NO-IntegerOutValue",
1418 "NO-IntegerOutValue",
1419 NO_IntegerOutValue_free,
1420 NO_IntegerOutValue_print,
1421 NO_IntegerOutValue_constraint,
1422 NO_IntegerOutValue_decode_ber,
1423 NO_IntegerOutValue_encode_der,
1424 NO_IntegerOutValue_decode_xer,
1425 NO_IntegerOutValue_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001426 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001427 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001428 asn_DEF_NO_IntegerOutValue_tags_1,
1429 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1430 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1431 asn_DEF_NO_IntegerOutValue_tags_1, /* Same as above */
1432 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1433 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1434 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001435 0, 0, /* No members */
1436 0 /* No specifics */
1437};
1438
1439
1440/*** <<< INCLUDES [OK-IntegerInRange1] >>> ***/
1441
vlma33a2162005-08-14 02:40:04 +00001442#include <NativeInteger.h>
vlm75b3a532005-08-14 02:18:27 +00001443
1444/*** <<< TYPE-DECLS [OK-IntegerInRange1] >>> ***/
1445
vlma33a2162005-08-14 02:40:04 +00001446typedef long OK_IntegerInRange1_t;
vlm75b3a532005-08-14 02:18:27 +00001447
1448/*** <<< FUNC-DECLS [OK-IntegerInRange1] >>> ***/
1449
1450extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1;
1451asn_struct_free_f OK_IntegerInRange1_free;
1452asn_struct_print_f OK_IntegerInRange1_print;
1453asn_constr_check_f OK_IntegerInRange1_constraint;
1454ber_type_decoder_f OK_IntegerInRange1_decode_ber;
1455der_type_encoder_f OK_IntegerInRange1_encode_der;
1456xer_type_decoder_f OK_IntegerInRange1_decode_xer;
1457xer_type_encoder_f OK_IntegerInRange1_encode_xer;
1458
1459/*** <<< CODE [OK-IntegerInRange1] >>> ***/
1460
1461int
1462OK_IntegerInRange1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001463 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001464 long value;
1465
1466 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001467 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001468 "%s: value not given (%s:%d)",
1469 td->name, __FILE__, __LINE__);
1470 return -1;
1471 }
1472
vlma33a2162005-08-14 02:40:04 +00001473 value = *(const long *)sptr;
vlm75b3a532005-08-14 02:18:27 +00001474
1475 if((value >= -100 && value <= 100)) {
1476 /* Constraint check succeeded */
1477 return 0;
1478 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001479 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001480 "%s: constraint failed (%s:%d)",
1481 td->name, __FILE__, __LINE__);
1482 return -1;
1483 }
1484}
1485
1486/*
vlma33a2162005-08-14 02:40:04 +00001487 * This type is implemented using NativeInteger,
vlm75b3a532005-08-14 02:18:27 +00001488 * so here we adjust the DEF accordingly.
1489 */
1490static void
1491OK_IntegerInRange1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
vlma33a2162005-08-14 02:40:04 +00001492 td->free_struct = asn_DEF_NativeInteger.free_struct;
1493 td->print_struct = asn_DEF_NativeInteger.print_struct;
1494 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1495 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1496 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1497 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001498 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001499 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001500 if(!td->per_constraints)
1501 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
vlma33a2162005-08-14 02:40:04 +00001502 td->elements = asn_DEF_NativeInteger.elements;
1503 td->elements_count = asn_DEF_NativeInteger.elements_count;
1504 td->specifics = asn_DEF_NativeInteger.specifics;
vlm75b3a532005-08-14 02:18:27 +00001505}
1506
1507void
1508OK_IntegerInRange1_free(asn_TYPE_descriptor_t *td,
1509 void *struct_ptr, int contents_only) {
1510 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1511 td->free_struct(td, struct_ptr, contents_only);
1512}
1513
1514int
1515OK_IntegerInRange1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1516 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1517 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1518 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1519}
1520
1521asn_dec_rval_t
1522OK_IntegerInRange1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1523 void **structure, const void *bufptr, size_t size, int tag_mode) {
1524 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1525 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1526}
1527
1528asn_enc_rval_t
1529OK_IntegerInRange1_encode_der(asn_TYPE_descriptor_t *td,
1530 void *structure, int tag_mode, ber_tlv_tag_t tag,
1531 asn_app_consume_bytes_f *cb, void *app_key) {
1532 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1533 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1534}
1535
1536asn_dec_rval_t
1537OK_IntegerInRange1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1538 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1539 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1540 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1541}
1542
1543asn_enc_rval_t
1544OK_IntegerInRange1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1545 int ilevel, enum xer_encoder_flags_e flags,
1546 asn_app_consume_bytes_f *cb, void *app_key) {
1547 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1548 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1549}
1550
1551
1552/*** <<< STAT-DEFS [OK-IntegerInRange1] >>> ***/
1553
vlm337167e2005-11-26 11:25:14 +00001554static ber_tlv_tag_t asn_DEF_OK_IntegerInRange1_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001555 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1556};
1557asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1 = {
1558 "OK-IntegerInRange1",
1559 "OK-IntegerInRange1",
1560 OK_IntegerInRange1_free,
1561 OK_IntegerInRange1_print,
1562 OK_IntegerInRange1_constraint,
1563 OK_IntegerInRange1_decode_ber,
1564 OK_IntegerInRange1_encode_der,
1565 OK_IntegerInRange1_decode_xer,
1566 OK_IntegerInRange1_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001567 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001568 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001569 asn_DEF_OK_IntegerInRange1_tags_1,
1570 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1571 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1572 asn_DEF_OK_IntegerInRange1_tags_1, /* Same as above */
1573 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1574 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1575 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001576 0, 0, /* No members */
1577 0 /* No specifics */
1578};
1579
1580
1581/*** <<< INCLUDES [OK-IntegerInRange2] >>> ***/
1582
vlma33a2162005-08-14 02:40:04 +00001583#include <NativeInteger.h>
vlm75b3a532005-08-14 02:18:27 +00001584
1585/*** <<< TYPE-DECLS [OK-IntegerInRange2] >>> ***/
1586
vlma33a2162005-08-14 02:40:04 +00001587typedef long OK_IntegerInRange2_t;
vlm75b3a532005-08-14 02:18:27 +00001588
1589/*** <<< FUNC-DECLS [OK-IntegerInRange2] >>> ***/
1590
1591extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2;
1592asn_struct_free_f OK_IntegerInRange2_free;
1593asn_struct_print_f OK_IntegerInRange2_print;
1594asn_constr_check_f OK_IntegerInRange2_constraint;
1595ber_type_decoder_f OK_IntegerInRange2_decode_ber;
1596der_type_encoder_f OK_IntegerInRange2_encode_der;
1597xer_type_decoder_f OK_IntegerInRange2_decode_xer;
1598xer_type_encoder_f OK_IntegerInRange2_encode_xer;
1599
1600/*** <<< CODE [OK-IntegerInRange2] >>> ***/
1601
1602int
1603OK_IntegerInRange2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001604 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001605 long value;
1606
1607 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001608 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001609 "%s: value not given (%s:%d)",
1610 td->name, __FILE__, __LINE__);
1611 return -1;
1612 }
1613
vlma33a2162005-08-14 02:40:04 +00001614 value = *(const long *)sptr;
vlm75b3a532005-08-14 02:18:27 +00001615
1616 if(((value == -100) || (value == 100))) {
1617 /* Constraint check succeeded */
1618 return 0;
1619 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001620 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001621 "%s: constraint failed (%s:%d)",
1622 td->name, __FILE__, __LINE__);
1623 return -1;
1624 }
1625}
1626
1627/*
vlma33a2162005-08-14 02:40:04 +00001628 * This type is implemented using NativeInteger,
vlm75b3a532005-08-14 02:18:27 +00001629 * so here we adjust the DEF accordingly.
1630 */
1631static void
1632OK_IntegerInRange2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
vlma33a2162005-08-14 02:40:04 +00001633 td->free_struct = asn_DEF_NativeInteger.free_struct;
1634 td->print_struct = asn_DEF_NativeInteger.print_struct;
1635 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1636 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1637 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1638 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001639 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001640 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001641 if(!td->per_constraints)
1642 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
vlma33a2162005-08-14 02:40:04 +00001643 td->elements = asn_DEF_NativeInteger.elements;
1644 td->elements_count = asn_DEF_NativeInteger.elements_count;
1645 td->specifics = asn_DEF_NativeInteger.specifics;
vlm75b3a532005-08-14 02:18:27 +00001646}
1647
1648void
1649OK_IntegerInRange2_free(asn_TYPE_descriptor_t *td,
1650 void *struct_ptr, int contents_only) {
1651 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1652 td->free_struct(td, struct_ptr, contents_only);
1653}
1654
1655int
1656OK_IntegerInRange2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1657 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1658 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1659 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1660}
1661
1662asn_dec_rval_t
1663OK_IntegerInRange2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1664 void **structure, const void *bufptr, size_t size, int tag_mode) {
1665 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1666 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1667}
1668
1669asn_enc_rval_t
1670OK_IntegerInRange2_encode_der(asn_TYPE_descriptor_t *td,
1671 void *structure, int tag_mode, ber_tlv_tag_t tag,
1672 asn_app_consume_bytes_f *cb, void *app_key) {
1673 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1674 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1675}
1676
1677asn_dec_rval_t
1678OK_IntegerInRange2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1679 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1680 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1681 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1682}
1683
1684asn_enc_rval_t
1685OK_IntegerInRange2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1686 int ilevel, enum xer_encoder_flags_e flags,
1687 asn_app_consume_bytes_f *cb, void *app_key) {
1688 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1689 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1690}
1691
1692
1693/*** <<< STAT-DEFS [OK-IntegerInRange2] >>> ***/
1694
vlm337167e2005-11-26 11:25:14 +00001695static ber_tlv_tag_t asn_DEF_OK_IntegerInRange2_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001696 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1697};
1698asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2 = {
1699 "OK-IntegerInRange2",
1700 "OK-IntegerInRange2",
1701 OK_IntegerInRange2_free,
1702 OK_IntegerInRange2_print,
1703 OK_IntegerInRange2_constraint,
1704 OK_IntegerInRange2_decode_ber,
1705 OK_IntegerInRange2_encode_der,
1706 OK_IntegerInRange2_decode_xer,
1707 OK_IntegerInRange2_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001708 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001709 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001710 asn_DEF_OK_IntegerInRange2_tags_1,
1711 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1712 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1713 asn_DEF_OK_IntegerInRange2_tags_1, /* Same as above */
1714 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1715 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1716 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001717 0, 0, /* No members */
1718 0 /* No specifics */
1719};
1720
1721
1722/*** <<< INCLUDES [OK-IntegerInRange3] >>> ***/
1723
vlma33a2162005-08-14 02:40:04 +00001724#include <NativeInteger.h>
vlm75b3a532005-08-14 02:18:27 +00001725
1726/*** <<< TYPE-DECLS [OK-IntegerInRange3] >>> ***/
1727
vlma33a2162005-08-14 02:40:04 +00001728typedef long OK_IntegerInRange3_t;
vlm75b3a532005-08-14 02:18:27 +00001729
1730/*** <<< FUNC-DECLS [OK-IntegerInRange3] >>> ***/
1731
1732extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3;
1733asn_struct_free_f OK_IntegerInRange3_free;
1734asn_struct_print_f OK_IntegerInRange3_print;
1735asn_constr_check_f OK_IntegerInRange3_constraint;
1736ber_type_decoder_f OK_IntegerInRange3_decode_ber;
1737der_type_encoder_f OK_IntegerInRange3_encode_der;
1738xer_type_decoder_f OK_IntegerInRange3_decode_xer;
1739xer_type_encoder_f OK_IntegerInRange3_encode_xer;
1740
1741/*** <<< CODE [OK-IntegerInRange3] >>> ***/
1742
1743int
1744OK_IntegerInRange3_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001745 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001746 long value;
1747
1748 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001749 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001750 "%s: value not given (%s:%d)",
1751 td->name, __FILE__, __LINE__);
1752 return -1;
1753 }
1754
vlma33a2162005-08-14 02:40:04 +00001755 value = *(const long *)sptr;
vlm75b3a532005-08-14 02:18:27 +00001756
1757 if((value >= -2147483648 && value <= 2147483647)) {
1758 /* Constraint check succeeded */
1759 return 0;
1760 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001761 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001762 "%s: constraint failed (%s:%d)",
1763 td->name, __FILE__, __LINE__);
1764 return -1;
1765 }
1766}
1767
1768/*
vlma33a2162005-08-14 02:40:04 +00001769 * This type is implemented using NativeInteger,
vlm75b3a532005-08-14 02:18:27 +00001770 * so here we adjust the DEF accordingly.
1771 */
1772static void
1773OK_IntegerInRange3_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
vlma33a2162005-08-14 02:40:04 +00001774 td->free_struct = asn_DEF_NativeInteger.free_struct;
1775 td->print_struct = asn_DEF_NativeInteger.print_struct;
1776 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1777 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1778 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1779 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001780 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001781 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001782 if(!td->per_constraints)
1783 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
vlma33a2162005-08-14 02:40:04 +00001784 td->elements = asn_DEF_NativeInteger.elements;
1785 td->elements_count = asn_DEF_NativeInteger.elements_count;
1786 td->specifics = asn_DEF_NativeInteger.specifics;
vlm75b3a532005-08-14 02:18:27 +00001787}
1788
1789void
1790OK_IntegerInRange3_free(asn_TYPE_descriptor_t *td,
1791 void *struct_ptr, int contents_only) {
1792 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1793 td->free_struct(td, struct_ptr, contents_only);
1794}
1795
1796int
1797OK_IntegerInRange3_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1798 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1799 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1800 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1801}
1802
1803asn_dec_rval_t
1804OK_IntegerInRange3_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1805 void **structure, const void *bufptr, size_t size, int tag_mode) {
1806 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1807 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1808}
1809
1810asn_enc_rval_t
1811OK_IntegerInRange3_encode_der(asn_TYPE_descriptor_t *td,
1812 void *structure, int tag_mode, ber_tlv_tag_t tag,
1813 asn_app_consume_bytes_f *cb, void *app_key) {
1814 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1815 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1816}
1817
1818asn_dec_rval_t
1819OK_IntegerInRange3_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1820 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1821 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1822 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1823}
1824
1825asn_enc_rval_t
1826OK_IntegerInRange3_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1827 int ilevel, enum xer_encoder_flags_e flags,
1828 asn_app_consume_bytes_f *cb, void *app_key) {
1829 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1830 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1831}
1832
1833
1834/*** <<< STAT-DEFS [OK-IntegerInRange3] >>> ***/
1835
vlm337167e2005-11-26 11:25:14 +00001836static ber_tlv_tag_t asn_DEF_OK_IntegerInRange3_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001837 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1838};
1839asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3 = {
1840 "OK-IntegerInRange3",
1841 "OK-IntegerInRange3",
1842 OK_IntegerInRange3_free,
1843 OK_IntegerInRange3_print,
1844 OK_IntegerInRange3_constraint,
1845 OK_IntegerInRange3_decode_ber,
1846 OK_IntegerInRange3_encode_der,
1847 OK_IntegerInRange3_decode_xer,
1848 OK_IntegerInRange3_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001849 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001850 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001851 asn_DEF_OK_IntegerInRange3_tags_1,
1852 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1853 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1854 asn_DEF_OK_IntegerInRange3_tags_1, /* Same as above */
1855 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1856 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1857 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001858 0, 0, /* No members */
1859 0 /* No specifics */
1860};
1861
1862
1863/*** <<< INCLUDES [OK-IntegerInRange4] >>> ***/
1864
vlma33a2162005-08-14 02:40:04 +00001865#include <NativeInteger.h>
vlm75b3a532005-08-14 02:18:27 +00001866
1867/*** <<< TYPE-DECLS [OK-IntegerInRange4] >>> ***/
1868
vlma33a2162005-08-14 02:40:04 +00001869typedef long OK_IntegerInRange4_t;
vlm75b3a532005-08-14 02:18:27 +00001870
1871/*** <<< FUNC-DECLS [OK-IntegerInRange4] >>> ***/
1872
1873extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4;
1874asn_struct_free_f OK_IntegerInRange4_free;
1875asn_struct_print_f OK_IntegerInRange4_print;
1876asn_constr_check_f OK_IntegerInRange4_constraint;
1877ber_type_decoder_f OK_IntegerInRange4_decode_ber;
1878der_type_encoder_f OK_IntegerInRange4_encode_der;
1879xer_type_decoder_f OK_IntegerInRange4_decode_xer;
1880xer_type_encoder_f OK_IntegerInRange4_encode_xer;
1881
1882/*** <<< CODE [OK-IntegerInRange4] >>> ***/
1883
1884int
1885OK_IntegerInRange4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00001886 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00001887 long value;
1888
1889 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00001890 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001891 "%s: value not given (%s:%d)",
1892 td->name, __FILE__, __LINE__);
1893 return -1;
1894 }
1895
vlma33a2162005-08-14 02:40:04 +00001896 value = *(const long *)sptr;
vlm75b3a532005-08-14 02:18:27 +00001897
1898 if(((value == -2147483648) || (value == 2147483647))) {
1899 /* Constraint check succeeded */
1900 return 0;
1901 } else {
vlmd4ae41c2006-07-13 13:28:32 +00001902 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00001903 "%s: constraint failed (%s:%d)",
1904 td->name, __FILE__, __LINE__);
1905 return -1;
1906 }
1907}
1908
1909/*
vlma33a2162005-08-14 02:40:04 +00001910 * This type is implemented using NativeInteger,
vlm75b3a532005-08-14 02:18:27 +00001911 * so here we adjust the DEF accordingly.
1912 */
1913static void
1914OK_IntegerInRange4_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
vlma33a2162005-08-14 02:40:04 +00001915 td->free_struct = asn_DEF_NativeInteger.free_struct;
1916 td->print_struct = asn_DEF_NativeInteger.print_struct;
1917 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1918 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1919 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1920 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00001921 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00001922 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00001923 if(!td->per_constraints)
1924 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
vlma33a2162005-08-14 02:40:04 +00001925 td->elements = asn_DEF_NativeInteger.elements;
1926 td->elements_count = asn_DEF_NativeInteger.elements_count;
1927 td->specifics = asn_DEF_NativeInteger.specifics;
vlm75b3a532005-08-14 02:18:27 +00001928}
1929
1930void
1931OK_IntegerInRange4_free(asn_TYPE_descriptor_t *td,
1932 void *struct_ptr, int contents_only) {
1933 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1934 td->free_struct(td, struct_ptr, contents_only);
1935}
1936
1937int
1938OK_IntegerInRange4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1939 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1940 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1941 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1942}
1943
1944asn_dec_rval_t
1945OK_IntegerInRange4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1946 void **structure, const void *bufptr, size_t size, int tag_mode) {
1947 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1948 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1949}
1950
1951asn_enc_rval_t
1952OK_IntegerInRange4_encode_der(asn_TYPE_descriptor_t *td,
1953 void *structure, int tag_mode, ber_tlv_tag_t tag,
1954 asn_app_consume_bytes_f *cb, void *app_key) {
1955 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1956 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1957}
1958
1959asn_dec_rval_t
1960OK_IntegerInRange4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1961 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1962 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1963 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1964}
1965
1966asn_enc_rval_t
1967OK_IntegerInRange4_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1968 int ilevel, enum xer_encoder_flags_e flags,
1969 asn_app_consume_bytes_f *cb, void *app_key) {
1970 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1971 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1972}
1973
1974
1975/*** <<< STAT-DEFS [OK-IntegerInRange4] >>> ***/
1976
vlm337167e2005-11-26 11:25:14 +00001977static ber_tlv_tag_t asn_DEF_OK_IntegerInRange4_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00001978 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1979};
1980asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4 = {
1981 "OK-IntegerInRange4",
1982 "OK-IntegerInRange4",
1983 OK_IntegerInRange4_free,
1984 OK_IntegerInRange4_print,
1985 OK_IntegerInRange4_constraint,
1986 OK_IntegerInRange4_decode_ber,
1987 OK_IntegerInRange4_encode_der,
1988 OK_IntegerInRange4_decode_xer,
1989 OK_IntegerInRange4_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00001990 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00001991 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00001992 asn_DEF_OK_IntegerInRange4_tags_1,
1993 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
1994 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
1995 asn_DEF_OK_IntegerInRange4_tags_1, /* Same as above */
1996 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
1997 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
1998 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00001999 0, 0, /* No members */
2000 0 /* No specifics */
2001};
2002
2003
2004/*** <<< INCLUDES [OK-IntegerInRange5] >>> ***/
2005
2006#include <INTEGER.h>
2007
2008/*** <<< TYPE-DECLS [OK-IntegerInRange5] >>> ***/
2009
2010typedef INTEGER_t OK_IntegerInRange5_t;
2011
2012/*** <<< FUNC-DECLS [OK-IntegerInRange5] >>> ***/
2013
2014extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5;
2015asn_struct_free_f OK_IntegerInRange5_free;
2016asn_struct_print_f OK_IntegerInRange5_print;
2017asn_constr_check_f OK_IntegerInRange5_constraint;
2018ber_type_decoder_f OK_IntegerInRange5_decode_ber;
2019der_type_encoder_f OK_IntegerInRange5_encode_der;
2020xer_type_decoder_f OK_IntegerInRange5_decode_xer;
2021xer_type_encoder_f OK_IntegerInRange5_encode_xer;
2022
2023/*** <<< CODE [OK-IntegerInRange5] >>> ***/
2024
2025int
2026OK_IntegerInRange5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00002027 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm75b3a532005-08-14 02:18:27 +00002028 const INTEGER_t *st = (const INTEGER_t *)sptr;
2029 long value;
2030
2031 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00002032 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00002033 "%s: value not given (%s:%d)",
2034 td->name, __FILE__, __LINE__);
2035 return -1;
2036 }
2037
2038 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +00002039 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00002040 "%s: value too large (%s:%d)",
2041 td->name, __FILE__, __LINE__);
2042 return -1;
2043 }
2044
2045 if(((value == -2147483648) || (value == 2147483647))) {
2046 /* Constraint check succeeded */
2047 return 0;
2048 } else {
vlmd4ae41c2006-07-13 13:28:32 +00002049 _ASN_CTFAIL(app_key, td, sptr,
vlm75b3a532005-08-14 02:18:27 +00002050 "%s: constraint failed (%s:%d)",
2051 td->name, __FILE__, __LINE__);
2052 return -1;
2053 }
2054}
2055
2056/*
2057 * This type is implemented using INTEGER,
2058 * so here we adjust the DEF accordingly.
2059 */
2060static void
2061OK_IntegerInRange5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2062 td->free_struct = asn_DEF_INTEGER.free_struct;
2063 td->print_struct = asn_DEF_INTEGER.print_struct;
2064 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2065 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2066 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2067 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00002068 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00002069 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00002070 if(!td->per_constraints)
2071 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm75b3a532005-08-14 02:18:27 +00002072 td->elements = asn_DEF_INTEGER.elements;
2073 td->elements_count = asn_DEF_INTEGER.elements_count;
2074 td->specifics = asn_DEF_INTEGER.specifics;
2075}
2076
2077void
2078OK_IntegerInRange5_free(asn_TYPE_descriptor_t *td,
2079 void *struct_ptr, int contents_only) {
2080 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2081 td->free_struct(td, struct_ptr, contents_only);
2082}
2083
2084int
2085OK_IntegerInRange5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2086 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2087 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2088 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2089}
2090
2091asn_dec_rval_t
2092OK_IntegerInRange5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2093 void **structure, const void *bufptr, size_t size, int tag_mode) {
2094 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2095 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2096}
2097
2098asn_enc_rval_t
2099OK_IntegerInRange5_encode_der(asn_TYPE_descriptor_t *td,
2100 void *structure, int tag_mode, ber_tlv_tag_t tag,
2101 asn_app_consume_bytes_f *cb, void *app_key) {
2102 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2103 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2104}
2105
2106asn_dec_rval_t
2107OK_IntegerInRange5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2108 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2109 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2110 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2111}
2112
2113asn_enc_rval_t
2114OK_IntegerInRange5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2115 int ilevel, enum xer_encoder_flags_e flags,
2116 asn_app_consume_bytes_f *cb, void *app_key) {
2117 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2118 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2119}
2120
2121
2122/*** <<< STAT-DEFS [OK-IntegerInRange5] >>> ***/
2123
vlm337167e2005-11-26 11:25:14 +00002124static ber_tlv_tag_t asn_DEF_OK_IntegerInRange5_tags_1[] = {
vlm75b3a532005-08-14 02:18:27 +00002125 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2126};
2127asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5 = {
2128 "OK-IntegerInRange5",
2129 "OK-IntegerInRange5",
2130 OK_IntegerInRange5_free,
2131 OK_IntegerInRange5_print,
2132 OK_IntegerInRange5_constraint,
2133 OK_IntegerInRange5_decode_ber,
2134 OK_IntegerInRange5_encode_der,
2135 OK_IntegerInRange5_decode_xer,
2136 OK_IntegerInRange5_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00002137 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm75b3a532005-08-14 02:18:27 +00002138 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00002139 asn_DEF_OK_IntegerInRange5_tags_1,
2140 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2141 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2142 asn_DEF_OK_IntegerInRange5_tags_1, /* Same as above */
2143 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2144 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2145 0, /* No PER visible constraints */
vlm75b3a532005-08-14 02:18:27 +00002146 0, 0, /* No members */
2147 0 /* No specifics */
2148};
2149
vlma33a2162005-08-14 02:40:04 +00002150
vlm93023842005-08-27 03:13:51 +00002151/*** <<< INCLUDES [NO-IntegerInRange6] >>> ***/
2152
2153#include <INTEGER.h>
2154
2155/*** <<< TYPE-DECLS [NO-IntegerInRange6] >>> ***/
2156
2157typedef INTEGER_t NO_IntegerInRange6_t;
2158
2159/*** <<< FUNC-DECLS [NO-IntegerInRange6] >>> ***/
2160
2161extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6;
2162asn_struct_free_f NO_IntegerInRange6_free;
2163asn_struct_print_f NO_IntegerInRange6_print;
2164asn_constr_check_f NO_IntegerInRange6_constraint;
2165ber_type_decoder_f NO_IntegerInRange6_decode_ber;
2166der_type_encoder_f NO_IntegerInRange6_encode_der;
2167xer_type_decoder_f NO_IntegerInRange6_decode_xer;
2168xer_type_encoder_f NO_IntegerInRange6_encode_xer;
2169
2170/*** <<< CODE [NO-IntegerInRange6] >>> ***/
2171
2172int
2173NO_IntegerInRange6_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00002174 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlm93023842005-08-27 03:13:51 +00002175 const INTEGER_t *st = (const INTEGER_t *)sptr;
2176 long value;
2177
2178 if(!sptr) {
vlmd4ae41c2006-07-13 13:28:32 +00002179 _ASN_CTFAIL(app_key, td, sptr,
vlm93023842005-08-27 03:13:51 +00002180 "%s: value not given (%s:%d)",
2181 td->name, __FILE__, __LINE__);
2182 return -1;
2183 }
2184
2185 if(asn_INTEGER2long(st, &value)) {
vlmd4ae41c2006-07-13 13:28:32 +00002186 _ASN_CTFAIL(app_key, td, sptr,
vlm93023842005-08-27 03:13:51 +00002187 "%s: value too large (%s:%d)",
2188 td->name, __FILE__, __LINE__);
2189 return -1;
2190 }
2191
2192 if((value >= 0 && value <= 4294967295)) {
2193 /* Constraint check succeeded */
2194 return 0;
2195 } else {
vlmd4ae41c2006-07-13 13:28:32 +00002196 _ASN_CTFAIL(app_key, td, sptr,
vlm93023842005-08-27 03:13:51 +00002197 "%s: constraint failed (%s:%d)",
2198 td->name, __FILE__, __LINE__);
2199 return -1;
2200 }
2201}
2202
2203/*
2204 * This type is implemented using INTEGER,
2205 * so here we adjust the DEF accordingly.
2206 */
2207static void
2208NO_IntegerInRange6_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2209 td->free_struct = asn_DEF_INTEGER.free_struct;
2210 td->print_struct = asn_DEF_INTEGER.print_struct;
2211 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2212 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2213 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2214 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00002215 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00002216 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00002217 if(!td->per_constraints)
2218 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlm93023842005-08-27 03:13:51 +00002219 td->elements = asn_DEF_INTEGER.elements;
2220 td->elements_count = asn_DEF_INTEGER.elements_count;
2221 td->specifics = asn_DEF_INTEGER.specifics;
2222}
2223
2224void
2225NO_IntegerInRange6_free(asn_TYPE_descriptor_t *td,
2226 void *struct_ptr, int contents_only) {
2227 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2228 td->free_struct(td, struct_ptr, contents_only);
2229}
2230
2231int
2232NO_IntegerInRange6_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2233 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2234 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2235 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2236}
2237
2238asn_dec_rval_t
2239NO_IntegerInRange6_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2240 void **structure, const void *bufptr, size_t size, int tag_mode) {
2241 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2242 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2243}
2244
2245asn_enc_rval_t
2246NO_IntegerInRange6_encode_der(asn_TYPE_descriptor_t *td,
2247 void *structure, int tag_mode, ber_tlv_tag_t tag,
2248 asn_app_consume_bytes_f *cb, void *app_key) {
2249 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2250 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2251}
2252
2253asn_dec_rval_t
2254NO_IntegerInRange6_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2255 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2256 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2257 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2258}
2259
2260asn_enc_rval_t
2261NO_IntegerInRange6_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2262 int ilevel, enum xer_encoder_flags_e flags,
2263 asn_app_consume_bytes_f *cb, void *app_key) {
2264 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2265 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2266}
2267
2268
2269/*** <<< STAT-DEFS [NO-IntegerInRange6] >>> ***/
2270
vlm337167e2005-11-26 11:25:14 +00002271static ber_tlv_tag_t asn_DEF_NO_IntegerInRange6_tags_1[] = {
vlm93023842005-08-27 03:13:51 +00002272 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2273};
2274asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6 = {
2275 "NO-IntegerInRange6",
2276 "NO-IntegerInRange6",
2277 NO_IntegerInRange6_free,
2278 NO_IntegerInRange6_print,
2279 NO_IntegerInRange6_constraint,
2280 NO_IntegerInRange6_decode_ber,
2281 NO_IntegerInRange6_encode_der,
2282 NO_IntegerInRange6_decode_xer,
2283 NO_IntegerInRange6_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00002284 0, 0, /* No PER support, use "-gen-PER" to enable */
vlm93023842005-08-27 03:13:51 +00002285 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00002286 asn_DEF_NO_IntegerInRange6_tags_1,
2287 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2288 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2289 asn_DEF_NO_IntegerInRange6_tags_1, /* Same as above */
2290 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2291 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2292 0, /* No PER visible constraints */
vlm93023842005-08-27 03:13:51 +00002293 0, 0, /* No members */
2294 0 /* No specifics */
2295};
2296
2297
vlma33a2162005-08-14 02:40:04 +00002298/*** <<< INCLUDES [CN-IntegerEnumerated1] >>> ***/
2299
2300#include <INTEGER.h>
2301
2302/*** <<< DEPS [CN-IntegerEnumerated1] >>> ***/
2303
2304typedef enum CN_IntegerEnumerated1 {
2305 CN_IntegerEnumerated1_a = 1,
2306 CN_IntegerEnumerated1_b = 2
vlm7c8aa5e2006-03-21 07:25:18 +00002307} e_CN_IntegerEnumerated1;
vlma33a2162005-08-14 02:40:04 +00002308
2309/*** <<< TYPE-DECLS [CN-IntegerEnumerated1] >>> ***/
2310
2311typedef INTEGER_t CN_IntegerEnumerated1_t;
2312
2313/*** <<< FUNC-DECLS [CN-IntegerEnumerated1] >>> ***/
2314
2315extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1;
2316asn_struct_free_f CN_IntegerEnumerated1_free;
2317asn_struct_print_f CN_IntegerEnumerated1_print;
2318asn_constr_check_f CN_IntegerEnumerated1_constraint;
2319ber_type_decoder_f CN_IntegerEnumerated1_decode_ber;
2320der_type_encoder_f CN_IntegerEnumerated1_encode_der;
2321xer_type_decoder_f CN_IntegerEnumerated1_decode_xer;
2322xer_type_encoder_f CN_IntegerEnumerated1_encode_xer;
2323
2324/*** <<< CODE [CN-IntegerEnumerated1] >>> ***/
2325
2326int
2327CN_IntegerEnumerated1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00002328 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlma33a2162005-08-14 02:40:04 +00002329 /* Replace with underlying type checker */
2330 td->check_constraints = asn_DEF_INTEGER.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +00002331 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlma33a2162005-08-14 02:40:04 +00002332}
2333
2334/*
2335 * This type is implemented using INTEGER,
2336 * so here we adjust the DEF accordingly.
2337 */
2338static void
2339CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2340 td->free_struct = asn_DEF_INTEGER.free_struct;
2341 td->print_struct = asn_DEF_INTEGER.print_struct;
2342 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2343 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2344 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2345 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00002346 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00002347 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00002348 if(!td->per_constraints)
2349 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlma33a2162005-08-14 02:40:04 +00002350 td->elements = asn_DEF_INTEGER.elements;
2351 td->elements_count = asn_DEF_INTEGER.elements_count;
2352 td->specifics = asn_DEF_INTEGER.specifics;
2353}
2354
2355void
2356CN_IntegerEnumerated1_free(asn_TYPE_descriptor_t *td,
2357 void *struct_ptr, int contents_only) {
2358 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2359 td->free_struct(td, struct_ptr, contents_only);
2360}
2361
2362int
2363CN_IntegerEnumerated1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2364 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2365 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2366 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2367}
2368
2369asn_dec_rval_t
2370CN_IntegerEnumerated1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2371 void **structure, const void *bufptr, size_t size, int tag_mode) {
2372 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2373 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2374}
2375
2376asn_enc_rval_t
2377CN_IntegerEnumerated1_encode_der(asn_TYPE_descriptor_t *td,
2378 void *structure, int tag_mode, ber_tlv_tag_t tag,
2379 asn_app_consume_bytes_f *cb, void *app_key) {
2380 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2381 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2382}
2383
2384asn_dec_rval_t
2385CN_IntegerEnumerated1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2386 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2387 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2388 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2389}
2390
2391asn_enc_rval_t
2392CN_IntegerEnumerated1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2393 int ilevel, enum xer_encoder_flags_e flags,
2394 asn_app_consume_bytes_f *cb, void *app_key) {
2395 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2396 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2397}
2398
2399
2400/*** <<< STAT-DEFS [CN-IntegerEnumerated1] >>> ***/
2401
vlm337167e2005-11-26 11:25:14 +00002402static ber_tlv_tag_t asn_DEF_CN_IntegerEnumerated1_tags_1[] = {
vlma33a2162005-08-14 02:40:04 +00002403 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2404};
2405asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1 = {
2406 "CN-IntegerEnumerated1",
2407 "CN-IntegerEnumerated1",
2408 CN_IntegerEnumerated1_free,
2409 CN_IntegerEnumerated1_print,
2410 CN_IntegerEnumerated1_constraint,
2411 CN_IntegerEnumerated1_decode_ber,
2412 CN_IntegerEnumerated1_encode_der,
2413 CN_IntegerEnumerated1_decode_xer,
2414 CN_IntegerEnumerated1_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00002415 0, 0, /* No PER support, use "-gen-PER" to enable */
vlma33a2162005-08-14 02:40:04 +00002416 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00002417 asn_DEF_CN_IntegerEnumerated1_tags_1,
2418 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2419 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2420 asn_DEF_CN_IntegerEnumerated1_tags_1, /* Same as above */
2421 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2422 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2423 0, /* No PER visible constraints */
vlma33a2162005-08-14 02:40:04 +00002424 0, 0, /* Defined elsewhere */
2425 0 /* No specifics */
2426};
2427
2428
2429/*** <<< INCLUDES [NO-IntegerEnumerated2] >>> ***/
2430
2431#include <INTEGER.h>
2432
2433/*** <<< DEPS [NO-IntegerEnumerated2] >>> ***/
2434
2435typedef enum NO_IntegerEnumerated2 {
2436 NO_IntegerEnumerated2_a = 1,
2437 NO_IntegerEnumerated2_b = 3000000000
vlm7c8aa5e2006-03-21 07:25:18 +00002438} e_NO_IntegerEnumerated2;
vlma33a2162005-08-14 02:40:04 +00002439
2440/*** <<< TYPE-DECLS [NO-IntegerEnumerated2] >>> ***/
2441
2442typedef INTEGER_t NO_IntegerEnumerated2_t;
2443
2444/*** <<< FUNC-DECLS [NO-IntegerEnumerated2] >>> ***/
2445
2446extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2;
2447asn_struct_free_f NO_IntegerEnumerated2_free;
2448asn_struct_print_f NO_IntegerEnumerated2_print;
2449asn_constr_check_f NO_IntegerEnumerated2_constraint;
2450ber_type_decoder_f NO_IntegerEnumerated2_decode_ber;
2451der_type_encoder_f NO_IntegerEnumerated2_encode_der;
2452xer_type_decoder_f NO_IntegerEnumerated2_decode_xer;
2453xer_type_encoder_f NO_IntegerEnumerated2_encode_xer;
2454
2455/*** <<< CODE [NO-IntegerEnumerated2] >>> ***/
2456
2457int
2458NO_IntegerEnumerated2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
vlmaf68ef52006-07-13 11:19:01 +00002459 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
vlma33a2162005-08-14 02:40:04 +00002460 /* Replace with underlying type checker */
2461 td->check_constraints = asn_DEF_INTEGER.check_constraints;
vlmaf68ef52006-07-13 11:19:01 +00002462 return td->check_constraints(td, sptr, ctfailcb, app_key);
vlma33a2162005-08-14 02:40:04 +00002463}
2464
2465/*
2466 * This type is implemented using INTEGER,
2467 * so here we adjust the DEF accordingly.
2468 */
2469static void
2470NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2471 td->free_struct = asn_DEF_INTEGER.free_struct;
2472 td->print_struct = asn_DEF_INTEGER.print_struct;
2473 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2474 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2475 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2476 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
vlm337167e2005-11-26 11:25:14 +00002477 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
vlmb1b193e2006-08-18 01:46:46 +00002478 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
vlm337167e2005-11-26 11:25:14 +00002479 if(!td->per_constraints)
2480 td->per_constraints = asn_DEF_INTEGER.per_constraints;
vlma33a2162005-08-14 02:40:04 +00002481 td->elements = asn_DEF_INTEGER.elements;
2482 td->elements_count = asn_DEF_INTEGER.elements_count;
2483 td->specifics = asn_DEF_INTEGER.specifics;
2484}
2485
2486void
2487NO_IntegerEnumerated2_free(asn_TYPE_descriptor_t *td,
2488 void *struct_ptr, int contents_only) {
2489 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2490 td->free_struct(td, struct_ptr, contents_only);
2491}
2492
2493int
2494NO_IntegerEnumerated2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2495 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2496 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2497 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2498}
2499
2500asn_dec_rval_t
2501NO_IntegerEnumerated2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2502 void **structure, const void *bufptr, size_t size, int tag_mode) {
2503 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2504 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2505}
2506
2507asn_enc_rval_t
2508NO_IntegerEnumerated2_encode_der(asn_TYPE_descriptor_t *td,
2509 void *structure, int tag_mode, ber_tlv_tag_t tag,
2510 asn_app_consume_bytes_f *cb, void *app_key) {
2511 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2512 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2513}
2514
2515asn_dec_rval_t
2516NO_IntegerEnumerated2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2517 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2518 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2519 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2520}
2521
2522asn_enc_rval_t
2523NO_IntegerEnumerated2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2524 int ilevel, enum xer_encoder_flags_e flags,
2525 asn_app_consume_bytes_f *cb, void *app_key) {
2526 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2527 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2528}
2529
2530
2531/*** <<< STAT-DEFS [NO-IntegerEnumerated2] >>> ***/
2532
vlm337167e2005-11-26 11:25:14 +00002533static ber_tlv_tag_t asn_DEF_NO_IntegerEnumerated2_tags_1[] = {
vlma33a2162005-08-14 02:40:04 +00002534 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2535};
2536asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2 = {
2537 "NO-IntegerEnumerated2",
2538 "NO-IntegerEnumerated2",
2539 NO_IntegerEnumerated2_free,
2540 NO_IntegerEnumerated2_print,
2541 NO_IntegerEnumerated2_constraint,
2542 NO_IntegerEnumerated2_decode_ber,
2543 NO_IntegerEnumerated2_encode_der,
2544 NO_IntegerEnumerated2_decode_xer,
2545 NO_IntegerEnumerated2_encode_xer,
vlmb1b193e2006-08-18 01:46:46 +00002546 0, 0, /* No PER support, use "-gen-PER" to enable */
vlma33a2162005-08-14 02:40:04 +00002547 0, /* Use generic outmost tag fetcher */
vlm337167e2005-11-26 11:25:14 +00002548 asn_DEF_NO_IntegerEnumerated2_tags_1,
2549 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2550 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2551 asn_DEF_NO_IntegerEnumerated2_tags_1, /* Same as above */
2552 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2553 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2554 0, /* No PER visible constraints */
vlma33a2162005-08-14 02:40:04 +00002555 0, 0, /* Defined elsewhere */
2556 0 /* No specifics */
2557};
2558