blob: 4c898f8fdab40874e7224fea5755f00e52906a96 [file] [log] [blame]
Lev Walkin082cadc2005-08-14 02:18:27 +00001
2/*** <<< INCLUDES [CN-IntegerUnlimited] >>> ***/
3
4#include <NativeInteger.h>
5
6/*** <<< TYPE-DECLS [CN-IntegerUnlimited] >>> ***/
7
8typedef long 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,
Lev Walkin1eded352006-07-13 11:19:01 +000025 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +000026 /* Replace with underlying type checker */
27 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +000028 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkin082cadc2005-08-14 02:18:27 +000029}
30
31/*
32 * This type is implemented using NativeInteger,
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_NativeInteger.free_struct;
38 td->print_struct = asn_DEF_NativeInteger.print_struct;
39 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
40 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
41 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
42 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +000043 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +000044 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +000045 if(!td->per_constraints)
46 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +000047 td->elements = asn_DEF_NativeInteger.elements;
48 td->elements_count = asn_DEF_NativeInteger.elements_count;
49 td->specifics = asn_DEF_NativeInteger.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
Lev Walkin59b176e2005-11-26 11:25:14 +000099static ber_tlv_tag_t asn_DEF_CN_IntegerUnlimited_tags_1[] = {
Lev Walkin082cadc2005-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,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000112 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000113 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-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 */
Lev Walkin082cadc2005-08-14 02:18:27 +0000121 0, 0, /* No members */
122 0 /* No specifics */
123};
124
125
126/*** <<< INCLUDES [CN-IntegerMinMax] >>> ***/
127
128#include <NativeInteger.h>
129
130/*** <<< TYPE-DECLS [CN-IntegerMinMax] >>> ***/
131
132typedef long 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,
Lev Walkin1eded352006-07-13 11:19:01 +0000149 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000150
151 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000152 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000153 "%s: value not given (%s:%d)",
154 td->name, __FILE__, __LINE__);
155 return -1;
156 }
157
158
159 if(1 /* No applicable constraints whatsoever */) {
160 /* Nothing is here. See below */
161 }
162
163 /* Replace with underlying type checker */
164 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +0000165 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkin082cadc2005-08-14 02:18:27 +0000166}
167
168/*
169 * This type is implemented using NativeInteger,
170 * so here we adjust the DEF accordingly.
171 */
172static void
173CN_IntegerMinMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
174 td->free_struct = asn_DEF_NativeInteger.free_struct;
175 td->print_struct = asn_DEF_NativeInteger.print_struct;
176 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
177 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
178 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
179 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000180 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000181 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000182 if(!td->per_constraints)
183 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000184 td->elements = asn_DEF_NativeInteger.elements;
185 td->elements_count = asn_DEF_NativeInteger.elements_count;
186 td->specifics = asn_DEF_NativeInteger.specifics;
187}
188
189void
190CN_IntegerMinMax_free(asn_TYPE_descriptor_t *td,
191 void *struct_ptr, int contents_only) {
192 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
193 td->free_struct(td, struct_ptr, contents_only);
194}
195
196int
197CN_IntegerMinMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
198 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
199 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
200 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
201}
202
203asn_dec_rval_t
204CN_IntegerMinMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
205 void **structure, const void *bufptr, size_t size, int tag_mode) {
206 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
207 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
208}
209
210asn_enc_rval_t
211CN_IntegerMinMax_encode_der(asn_TYPE_descriptor_t *td,
212 void *structure, int tag_mode, ber_tlv_tag_t tag,
213 asn_app_consume_bytes_f *cb, void *app_key) {
214 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
215 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
216}
217
218asn_dec_rval_t
219CN_IntegerMinMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
220 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
221 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
222 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
223}
224
225asn_enc_rval_t
226CN_IntegerMinMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
227 int ilevel, enum xer_encoder_flags_e flags,
228 asn_app_consume_bytes_f *cb, void *app_key) {
229 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
230 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
231}
232
233
234/*** <<< STAT-DEFS [CN-IntegerMinMax] >>> ***/
235
Lev Walkin59b176e2005-11-26 11:25:14 +0000236static ber_tlv_tag_t asn_DEF_CN_IntegerMinMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000237 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
238};
239asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinMax = {
240 "CN-IntegerMinMax",
241 "CN-IntegerMinMax",
242 CN_IntegerMinMax_free,
243 CN_IntegerMinMax_print,
244 CN_IntegerMinMax_constraint,
245 CN_IntegerMinMax_decode_ber,
246 CN_IntegerMinMax_encode_der,
247 CN_IntegerMinMax_decode_xer,
248 CN_IntegerMinMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000249 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000250 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000251 asn_DEF_CN_IntegerMinMax_tags_1,
252 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
253 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
254 asn_DEF_CN_IntegerMinMax_tags_1, /* Same as above */
255 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
256 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
257 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000258 0, 0, /* No members */
259 0 /* No specifics */
260};
261
262
263/*** <<< INCLUDES [CN-IntegerMinLow] >>> ***/
264
Lev Walkinc3f0b892005-08-14 02:40:04 +0000265#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000266
267/*** <<< TYPE-DECLS [CN-IntegerMinLow] >>> ***/
268
Lev Walkinc3f0b892005-08-14 02:40:04 +0000269typedef long CN_IntegerMinLow_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000270
271/*** <<< FUNC-DECLS [CN-IntegerMinLow] >>> ***/
272
273extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow;
274asn_struct_free_f CN_IntegerMinLow_free;
275asn_struct_print_f CN_IntegerMinLow_print;
276asn_constr_check_f CN_IntegerMinLow_constraint;
277ber_type_decoder_f CN_IntegerMinLow_decode_ber;
278der_type_encoder_f CN_IntegerMinLow_encode_der;
279xer_type_decoder_f CN_IntegerMinLow_decode_xer;
280xer_type_encoder_f CN_IntegerMinLow_encode_xer;
281
282/*** <<< CODE [CN-IntegerMinLow] >>> ***/
283
284int
285CN_IntegerMinLow_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000286 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000287 long value;
288
289 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000290 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000291 "%s: value not given (%s:%d)",
292 td->name, __FILE__, __LINE__);
293 return -1;
294 }
295
Lev Walkinc3f0b892005-08-14 02:40:04 +0000296 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000297
298 if((value <= 1)) {
299 /* Constraint check succeeded */
300 return 0;
301 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000302 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000303 "%s: constraint failed (%s:%d)",
304 td->name, __FILE__, __LINE__);
305 return -1;
306 }
307}
308
309/*
Lev Walkinc3f0b892005-08-14 02:40:04 +0000310 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +0000311 * so here we adjust the DEF accordingly.
312 */
313static void
314CN_IntegerMinLow_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +0000315 td->free_struct = asn_DEF_NativeInteger.free_struct;
316 td->print_struct = asn_DEF_NativeInteger.print_struct;
317 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
318 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
319 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
320 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000321 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000322 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000323 if(!td->per_constraints)
324 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +0000325 td->elements = asn_DEF_NativeInteger.elements;
326 td->elements_count = asn_DEF_NativeInteger.elements_count;
327 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +0000328}
329
330void
331CN_IntegerMinLow_free(asn_TYPE_descriptor_t *td,
332 void *struct_ptr, int contents_only) {
333 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
334 td->free_struct(td, struct_ptr, contents_only);
335}
336
337int
338CN_IntegerMinLow_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
339 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
340 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
341 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
342}
343
344asn_dec_rval_t
345CN_IntegerMinLow_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
346 void **structure, const void *bufptr, size_t size, int tag_mode) {
347 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
348 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
349}
350
351asn_enc_rval_t
352CN_IntegerMinLow_encode_der(asn_TYPE_descriptor_t *td,
353 void *structure, int tag_mode, ber_tlv_tag_t tag,
354 asn_app_consume_bytes_f *cb, void *app_key) {
355 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
356 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
357}
358
359asn_dec_rval_t
360CN_IntegerMinLow_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
361 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
362 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
363 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
364}
365
366asn_enc_rval_t
367CN_IntegerMinLow_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
368 int ilevel, enum xer_encoder_flags_e flags,
369 asn_app_consume_bytes_f *cb, void *app_key) {
370 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
371 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
372}
373
374
375/*** <<< STAT-DEFS [CN-IntegerMinLow] >>> ***/
376
Lev Walkin59b176e2005-11-26 11:25:14 +0000377static ber_tlv_tag_t asn_DEF_CN_IntegerMinLow_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000378 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
379};
380asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow = {
381 "CN-IntegerMinLow",
382 "CN-IntegerMinLow",
383 CN_IntegerMinLow_free,
384 CN_IntegerMinLow_print,
385 CN_IntegerMinLow_constraint,
386 CN_IntegerMinLow_decode_ber,
387 CN_IntegerMinLow_encode_der,
388 CN_IntegerMinLow_decode_xer,
389 CN_IntegerMinLow_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000390 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000391 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000392 asn_DEF_CN_IntegerMinLow_tags_1,
393 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
394 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
395 asn_DEF_CN_IntegerMinLow_tags_1, /* Same as above */
396 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
397 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
398 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000399 0, 0, /* No members */
400 0 /* No specifics */
401};
402
403
404/*** <<< INCLUDES [NO-IntegerMinHigh] >>> ***/
405
406#include <INTEGER.h>
407
408/*** <<< TYPE-DECLS [NO-IntegerMinHigh] >>> ***/
409
410typedef INTEGER_t NO_IntegerMinHigh_t;
411
412/*** <<< FUNC-DECLS [NO-IntegerMinHigh] >>> ***/
413
414extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh;
415asn_struct_free_f NO_IntegerMinHigh_free;
416asn_struct_print_f NO_IntegerMinHigh_print;
417asn_constr_check_f NO_IntegerMinHigh_constraint;
418ber_type_decoder_f NO_IntegerMinHigh_decode_ber;
419der_type_encoder_f NO_IntegerMinHigh_encode_der;
420xer_type_decoder_f NO_IntegerMinHigh_decode_xer;
421xer_type_encoder_f NO_IntegerMinHigh_encode_xer;
422
423/*** <<< CODE [NO-IntegerMinHigh] >>> ***/
424
425int
426NO_IntegerMinHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000427 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000428 const INTEGER_t *st = (const INTEGER_t *)sptr;
429 long value;
430
431 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000432 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000433 "%s: value not given (%s:%d)",
434 td->name, __FILE__, __LINE__);
435 return -1;
436 }
437
438 if(asn_INTEGER2long(st, &value)) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000439 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000440 "%s: value too large (%s:%d)",
441 td->name, __FILE__, __LINE__);
442 return -1;
443 }
444
Lev Walkinc3f0b892005-08-14 02:40:04 +0000445 if((value <= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000446 /* Constraint check succeeded */
447 return 0;
448 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000449 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000450 "%s: constraint failed (%s:%d)",
451 td->name, __FILE__, __LINE__);
452 return -1;
453 }
454}
455
456/*
457 * This type is implemented using INTEGER,
458 * so here we adjust the DEF accordingly.
459 */
460static void
461NO_IntegerMinHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
462 td->free_struct = asn_DEF_INTEGER.free_struct;
463 td->print_struct = asn_DEF_INTEGER.print_struct;
464 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
465 td->der_encoder = asn_DEF_INTEGER.der_encoder;
466 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
467 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000468 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000469 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000470 if(!td->per_constraints)
471 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000472 td->elements = asn_DEF_INTEGER.elements;
473 td->elements_count = asn_DEF_INTEGER.elements_count;
474 td->specifics = asn_DEF_INTEGER.specifics;
475}
476
477void
478NO_IntegerMinHigh_free(asn_TYPE_descriptor_t *td,
479 void *struct_ptr, int contents_only) {
480 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
481 td->free_struct(td, struct_ptr, contents_only);
482}
483
484int
485NO_IntegerMinHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
486 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
487 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
488 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
489}
490
491asn_dec_rval_t
492NO_IntegerMinHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
493 void **structure, const void *bufptr, size_t size, int tag_mode) {
494 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
495 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
496}
497
498asn_enc_rval_t
499NO_IntegerMinHigh_encode_der(asn_TYPE_descriptor_t *td,
500 void *structure, int tag_mode, ber_tlv_tag_t tag,
501 asn_app_consume_bytes_f *cb, void *app_key) {
502 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
503 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
504}
505
506asn_dec_rval_t
507NO_IntegerMinHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
508 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
509 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
510 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
511}
512
513asn_enc_rval_t
514NO_IntegerMinHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
515 int ilevel, enum xer_encoder_flags_e flags,
516 asn_app_consume_bytes_f *cb, void *app_key) {
517 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
518 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
519}
520
521
522/*** <<< STAT-DEFS [NO-IntegerMinHigh] >>> ***/
523
Lev Walkin59b176e2005-11-26 11:25:14 +0000524static ber_tlv_tag_t asn_DEF_NO_IntegerMinHigh_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000525 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
526};
527asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh = {
528 "NO-IntegerMinHigh",
529 "NO-IntegerMinHigh",
530 NO_IntegerMinHigh_free,
531 NO_IntegerMinHigh_print,
532 NO_IntegerMinHigh_constraint,
533 NO_IntegerMinHigh_decode_ber,
534 NO_IntegerMinHigh_encode_der,
535 NO_IntegerMinHigh_decode_xer,
536 NO_IntegerMinHigh_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000537 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000538 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000539 asn_DEF_NO_IntegerMinHigh_tags_1,
540 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
541 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
542 asn_DEF_NO_IntegerMinHigh_tags_1, /* Same as above */
543 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
544 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
545 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000546 0, 0, /* No members */
547 0 /* No specifics */
548};
549
550
551/*** <<< INCLUDES [NO-IntegerLowHigh] >>> ***/
552
Lev Walkin8bb57a22007-12-03 13:41:36 +0000553#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000554
555/*** <<< TYPE-DECLS [NO-IntegerLowHigh] >>> ***/
556
Lev Walkin8bb57a22007-12-03 13:41:36 +0000557typedef unsigned long NO_IntegerLowHigh_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000558
559/*** <<< FUNC-DECLS [NO-IntegerLowHigh] >>> ***/
560
561extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh;
562asn_struct_free_f NO_IntegerLowHigh_free;
563asn_struct_print_f NO_IntegerLowHigh_print;
564asn_constr_check_f NO_IntegerLowHigh_constraint;
565ber_type_decoder_f NO_IntegerLowHigh_decode_ber;
566der_type_encoder_f NO_IntegerLowHigh_encode_der;
567xer_type_decoder_f NO_IntegerLowHigh_decode_xer;
568xer_type_encoder_f NO_IntegerLowHigh_encode_xer;
569
570/*** <<< CODE [NO-IntegerLowHigh] >>> ***/
571
572int
573NO_IntegerLowHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000574 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +0000575 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +0000576
577 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000578 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000579 "%s: value not given (%s:%d)",
580 td->name, __FILE__, __LINE__);
581 return -1;
582 }
583
Lev Walkin8bb57a22007-12-03 13:41:36 +0000584 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000585
Lev Walkinc3f0b892005-08-14 02:40:04 +0000586 if((value >= 1 && value <= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000587 /* Constraint check succeeded */
588 return 0;
589 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000590 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000591 "%s: constraint failed (%s:%d)",
592 td->name, __FILE__, __LINE__);
593 return -1;
594 }
595}
596
597/*
Lev Walkin8bb57a22007-12-03 13:41:36 +0000598 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +0000599 * so here we adjust the DEF accordingly.
600 */
601static void
602NO_IntegerLowHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +0000603 td->free_struct = asn_DEF_NativeInteger.free_struct;
604 td->print_struct = asn_DEF_NativeInteger.print_struct;
605 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
606 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
607 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
608 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
609 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
610 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000611 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +0000612 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
613 td->elements = asn_DEF_NativeInteger.elements;
614 td->elements_count = asn_DEF_NativeInteger.elements_count;
615 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +0000616}
617
618void
619NO_IntegerLowHigh_free(asn_TYPE_descriptor_t *td,
620 void *struct_ptr, int contents_only) {
621 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
622 td->free_struct(td, struct_ptr, contents_only);
623}
624
625int
626NO_IntegerLowHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
627 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
628 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
629 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
630}
631
632asn_dec_rval_t
633NO_IntegerLowHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
634 void **structure, const void *bufptr, size_t size, int tag_mode) {
635 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
636 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
637}
638
639asn_enc_rval_t
640NO_IntegerLowHigh_encode_der(asn_TYPE_descriptor_t *td,
641 void *structure, int tag_mode, ber_tlv_tag_t tag,
642 asn_app_consume_bytes_f *cb, void *app_key) {
643 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
644 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
645}
646
647asn_dec_rval_t
648NO_IntegerLowHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
649 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
650 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
651 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
652}
653
654asn_enc_rval_t
655NO_IntegerLowHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
656 int ilevel, enum xer_encoder_flags_e flags,
657 asn_app_consume_bytes_f *cb, void *app_key) {
658 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
659 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
660}
661
662
663/*** <<< STAT-DEFS [NO-IntegerLowHigh] >>> ***/
664
Lev Walkin8bb57a22007-12-03 13:41:36 +0000665static asn_INTEGER_specifics_t asn_SPC_NO_IntegerLowHigh_specs_1 = {
666 0, 0, 0, 0, 0,
667 0, /* Native long size */
668 1 /* Unsigned representation */
669};
Lev Walkin59b176e2005-11-26 11:25:14 +0000670static ber_tlv_tag_t asn_DEF_NO_IntegerLowHigh_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000671 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
672};
673asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh = {
674 "NO-IntegerLowHigh",
675 "NO-IntegerLowHigh",
676 NO_IntegerLowHigh_free,
677 NO_IntegerLowHigh_print,
678 NO_IntegerLowHigh_constraint,
679 NO_IntegerLowHigh_decode_ber,
680 NO_IntegerLowHigh_encode_der,
681 NO_IntegerLowHigh_decode_xer,
682 NO_IntegerLowHigh_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000683 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000684 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000685 asn_DEF_NO_IntegerLowHigh_tags_1,
686 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
687 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
688 asn_DEF_NO_IntegerLowHigh_tags_1, /* Same as above */
689 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
690 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
691 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000692 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +0000693 &asn_SPC_NO_IntegerLowHigh_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +0000694};
695
696
697/*** <<< INCLUDES [CN-IntegerLowMax] >>> ***/
698
Lev Walkinc3f0b892005-08-14 02:40:04 +0000699#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000700
701/*** <<< TYPE-DECLS [CN-IntegerLowMax] >>> ***/
702
Lev Walkinc3f0b892005-08-14 02:40:04 +0000703typedef long CN_IntegerLowMax_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000704
705/*** <<< FUNC-DECLS [CN-IntegerLowMax] >>> ***/
706
707extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax;
708asn_struct_free_f CN_IntegerLowMax_free;
709asn_struct_print_f CN_IntegerLowMax_print;
710asn_constr_check_f CN_IntegerLowMax_constraint;
711ber_type_decoder_f CN_IntegerLowMax_decode_ber;
712der_type_encoder_f CN_IntegerLowMax_encode_der;
713xer_type_decoder_f CN_IntegerLowMax_decode_xer;
714xer_type_encoder_f CN_IntegerLowMax_encode_xer;
715
716/*** <<< CODE [CN-IntegerLowMax] >>> ***/
717
718int
719CN_IntegerLowMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000720 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000721 long value;
722
723 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000724 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000725 "%s: value not given (%s:%d)",
726 td->name, __FILE__, __LINE__);
727 return -1;
728 }
729
Lev Walkinc3f0b892005-08-14 02:40:04 +0000730 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000731
732 if((value >= 1)) {
733 /* Constraint check succeeded */
734 return 0;
735 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000736 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000737 "%s: constraint failed (%s:%d)",
738 td->name, __FILE__, __LINE__);
739 return -1;
740 }
741}
742
743/*
Lev Walkinc3f0b892005-08-14 02:40:04 +0000744 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +0000745 * so here we adjust the DEF accordingly.
746 */
747static void
748CN_IntegerLowMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +0000749 td->free_struct = asn_DEF_NativeInteger.free_struct;
750 td->print_struct = asn_DEF_NativeInteger.print_struct;
751 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
752 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
753 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
754 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000755 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000756 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000757 if(!td->per_constraints)
758 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +0000759 td->elements = asn_DEF_NativeInteger.elements;
760 td->elements_count = asn_DEF_NativeInteger.elements_count;
761 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +0000762}
763
764void
765CN_IntegerLowMax_free(asn_TYPE_descriptor_t *td,
766 void *struct_ptr, int contents_only) {
767 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
768 td->free_struct(td, struct_ptr, contents_only);
769}
770
771int
772CN_IntegerLowMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
773 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
774 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
775 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
776}
777
778asn_dec_rval_t
779CN_IntegerLowMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
780 void **structure, const void *bufptr, size_t size, int tag_mode) {
781 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
782 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
783}
784
785asn_enc_rval_t
786CN_IntegerLowMax_encode_der(asn_TYPE_descriptor_t *td,
787 void *structure, int tag_mode, ber_tlv_tag_t tag,
788 asn_app_consume_bytes_f *cb, void *app_key) {
789 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
790 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
791}
792
793asn_dec_rval_t
794CN_IntegerLowMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
795 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
796 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
797 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
798}
799
800asn_enc_rval_t
801CN_IntegerLowMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
802 int ilevel, enum xer_encoder_flags_e flags,
803 asn_app_consume_bytes_f *cb, void *app_key) {
804 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
805 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
806}
807
808
809/*** <<< STAT-DEFS [CN-IntegerLowMax] >>> ***/
810
Lev Walkin59b176e2005-11-26 11:25:14 +0000811static ber_tlv_tag_t asn_DEF_CN_IntegerLowMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000812 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
813};
814asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax = {
815 "CN-IntegerLowMax",
816 "CN-IntegerLowMax",
817 CN_IntegerLowMax_free,
818 CN_IntegerLowMax_print,
819 CN_IntegerLowMax_constraint,
820 CN_IntegerLowMax_decode_ber,
821 CN_IntegerLowMax_encode_der,
822 CN_IntegerLowMax_decode_xer,
823 CN_IntegerLowMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000824 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000825 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000826 asn_DEF_CN_IntegerLowMax_tags_1,
827 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
828 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
829 asn_DEF_CN_IntegerLowMax_tags_1, /* Same as above */
830 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
831 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
832 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000833 0, 0, /* No members */
834 0 /* No specifics */
835};
836
837
838/*** <<< INCLUDES [NO-IntegerHighMax] >>> ***/
839
840#include <INTEGER.h>
841
842/*** <<< TYPE-DECLS [NO-IntegerHighMax] >>> ***/
843
844typedef INTEGER_t NO_IntegerHighMax_t;
845
846/*** <<< FUNC-DECLS [NO-IntegerHighMax] >>> ***/
847
848extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax;
849asn_struct_free_f NO_IntegerHighMax_free;
850asn_struct_print_f NO_IntegerHighMax_print;
851asn_constr_check_f NO_IntegerHighMax_constraint;
852ber_type_decoder_f NO_IntegerHighMax_decode_ber;
853der_type_encoder_f NO_IntegerHighMax_encode_der;
854xer_type_decoder_f NO_IntegerHighMax_decode_xer;
855xer_type_encoder_f NO_IntegerHighMax_encode_xer;
856
857/*** <<< CODE [NO-IntegerHighMax] >>> ***/
858
859int
860NO_IntegerHighMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000861 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000862 const INTEGER_t *st = (const INTEGER_t *)sptr;
863 long value;
864
865 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000866 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000867 "%s: value not given (%s:%d)",
868 td->name, __FILE__, __LINE__);
869 return -1;
870 }
871
872 if(asn_INTEGER2long(st, &value)) {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000873 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000874 "%s: value too large (%s:%d)",
875 td->name, __FILE__, __LINE__);
876 return -1;
877 }
878
Lev Walkinc3f0b892005-08-14 02:40:04 +0000879 if((value >= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000880 /* Constraint check succeeded */
881 return 0;
882 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +0000883 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000884 "%s: constraint failed (%s:%d)",
885 td->name, __FILE__, __LINE__);
886 return -1;
887 }
888}
889
890/*
891 * This type is implemented using INTEGER,
892 * so here we adjust the DEF accordingly.
893 */
894static void
895NO_IntegerHighMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
896 td->free_struct = asn_DEF_INTEGER.free_struct;
897 td->print_struct = asn_DEF_INTEGER.print_struct;
898 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
899 td->der_encoder = asn_DEF_INTEGER.der_encoder;
900 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
901 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000902 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000903 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000904 if(!td->per_constraints)
905 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000906 td->elements = asn_DEF_INTEGER.elements;
907 td->elements_count = asn_DEF_INTEGER.elements_count;
908 td->specifics = asn_DEF_INTEGER.specifics;
909}
910
911void
912NO_IntegerHighMax_free(asn_TYPE_descriptor_t *td,
913 void *struct_ptr, int contents_only) {
914 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
915 td->free_struct(td, struct_ptr, contents_only);
916}
917
918int
919NO_IntegerHighMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
920 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
921 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
922 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
923}
924
925asn_dec_rval_t
926NO_IntegerHighMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
927 void **structure, const void *bufptr, size_t size, int tag_mode) {
928 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
929 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
930}
931
932asn_enc_rval_t
933NO_IntegerHighMax_encode_der(asn_TYPE_descriptor_t *td,
934 void *structure, int tag_mode, ber_tlv_tag_t tag,
935 asn_app_consume_bytes_f *cb, void *app_key) {
936 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
937 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
938}
939
940asn_dec_rval_t
941NO_IntegerHighMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
942 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
943 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
944 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
945}
946
947asn_enc_rval_t
948NO_IntegerHighMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
949 int ilevel, enum xer_encoder_flags_e flags,
950 asn_app_consume_bytes_f *cb, void *app_key) {
951 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
952 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
953}
954
955
956/*** <<< STAT-DEFS [NO-IntegerHighMax] >>> ***/
957
Lev Walkin59b176e2005-11-26 11:25:14 +0000958static ber_tlv_tag_t asn_DEF_NO_IntegerHighMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000959 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
960};
961asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax = {
962 "NO-IntegerHighMax",
963 "NO-IntegerHighMax",
964 NO_IntegerHighMax_free,
965 NO_IntegerHighMax_print,
966 NO_IntegerHighMax_constraint,
967 NO_IntegerHighMax_decode_ber,
968 NO_IntegerHighMax_encode_der,
969 NO_IntegerHighMax_decode_xer,
970 NO_IntegerHighMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000971 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000972 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000973 asn_DEF_NO_IntegerHighMax_tags_1,
974 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
975 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
976 asn_DEF_NO_IntegerHighMax_tags_1, /* Same as above */
977 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
978 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
979 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000980 0, 0, /* No members */
981 0 /* No specifics */
982};
983
984
985/*** <<< INCLUDES [NO-IntegerLowestMax] >>> ***/
986
987#include <INTEGER.h>
988
989/*** <<< TYPE-DECLS [NO-IntegerLowestMax] >>> ***/
990
991typedef INTEGER_t NO_IntegerLowestMax_t;
992
993/*** <<< FUNC-DECLS [NO-IntegerLowestMax] >>> ***/
994
995extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax;
996asn_struct_free_f NO_IntegerLowestMax_free;
997asn_struct_print_f NO_IntegerLowestMax_print;
998asn_constr_check_f NO_IntegerLowestMax_constraint;
999ber_type_decoder_f NO_IntegerLowestMax_decode_ber;
1000der_type_encoder_f NO_IntegerLowestMax_encode_der;
1001xer_type_decoder_f NO_IntegerLowestMax_decode_xer;
1002xer_type_encoder_f NO_IntegerLowestMax_encode_xer;
1003
1004/*** <<< CODE [NO-IntegerLowestMax] >>> ***/
1005
1006int
1007NO_IntegerLowestMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001008 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001009 const INTEGER_t *st = (const INTEGER_t *)sptr;
1010 long value;
1011
1012 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001013 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001014 "%s: value not given (%s:%d)",
1015 td->name, __FILE__, __LINE__);
1016 return -1;
1017 }
1018
1019 if(asn_INTEGER2long(st, &value)) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001020 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001021 "%s: value too large (%s:%d)",
1022 td->name, __FILE__, __LINE__);
1023 return -1;
1024 }
1025
Lev Walkinc3f0b892005-08-14 02:40:04 +00001026 if((value >= -3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001027 /* Constraint check succeeded */
1028 return 0;
1029 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001030 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001031 "%s: constraint failed (%s:%d)",
1032 td->name, __FILE__, __LINE__);
1033 return -1;
1034 }
1035}
1036
1037/*
1038 * This type is implemented using INTEGER,
1039 * so here we adjust the DEF accordingly.
1040 */
1041static void
1042NO_IntegerLowestMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1043 td->free_struct = asn_DEF_INTEGER.free_struct;
1044 td->print_struct = asn_DEF_INTEGER.print_struct;
1045 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
1046 td->der_encoder = asn_DEF_INTEGER.der_encoder;
1047 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
1048 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001049 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001050 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001051 if(!td->per_constraints)
1052 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +00001053 td->elements = asn_DEF_INTEGER.elements;
1054 td->elements_count = asn_DEF_INTEGER.elements_count;
1055 td->specifics = asn_DEF_INTEGER.specifics;
1056}
1057
1058void
1059NO_IntegerLowestMax_free(asn_TYPE_descriptor_t *td,
1060 void *struct_ptr, int contents_only) {
1061 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1062 td->free_struct(td, struct_ptr, contents_only);
1063}
1064
1065int
1066NO_IntegerLowestMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1067 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1068 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1069 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1070}
1071
1072asn_dec_rval_t
1073NO_IntegerLowestMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1074 void **structure, const void *bufptr, size_t size, int tag_mode) {
1075 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1076 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1077}
1078
1079asn_enc_rval_t
1080NO_IntegerLowestMax_encode_der(asn_TYPE_descriptor_t *td,
1081 void *structure, int tag_mode, ber_tlv_tag_t tag,
1082 asn_app_consume_bytes_f *cb, void *app_key) {
1083 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1084 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1085}
1086
1087asn_dec_rval_t
1088NO_IntegerLowestMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1089 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1090 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1091 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1092}
1093
1094asn_enc_rval_t
1095NO_IntegerLowestMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1096 int ilevel, enum xer_encoder_flags_e flags,
1097 asn_app_consume_bytes_f *cb, void *app_key) {
1098 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1099 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1100}
1101
1102
1103/*** <<< STAT-DEFS [NO-IntegerLowestMax] >>> ***/
1104
Lev Walkin59b176e2005-11-26 11:25:14 +00001105static ber_tlv_tag_t asn_DEF_NO_IntegerLowestMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001106 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1107};
1108asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax = {
1109 "NO-IntegerLowestMax",
1110 "NO-IntegerLowestMax",
1111 NO_IntegerLowestMax_free,
1112 NO_IntegerLowestMax_print,
1113 NO_IntegerLowestMax_constraint,
1114 NO_IntegerLowestMax_decode_ber,
1115 NO_IntegerLowestMax_encode_der,
1116 NO_IntegerLowestMax_decode_xer,
1117 NO_IntegerLowestMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001118 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001119 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001120 asn_DEF_NO_IntegerLowestMax_tags_1,
1121 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1122 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1123 asn_DEF_NO_IntegerLowestMax_tags_1, /* Same as above */
1124 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1125 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1126 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001127 0, 0, /* No members */
1128 0 /* No specifics */
1129};
1130
1131
1132/*** <<< INCLUDES [NO-IntegerOutRange] >>> ***/
1133
Lev Walkin8bb57a22007-12-03 13:41:36 +00001134#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001135
1136/*** <<< TYPE-DECLS [NO-IntegerOutRange] >>> ***/
1137
Lev Walkin8bb57a22007-12-03 13:41:36 +00001138typedef unsigned long NO_IntegerOutRange_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001139
1140/*** <<< FUNC-DECLS [NO-IntegerOutRange] >>> ***/
1141
1142extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange;
1143asn_struct_free_f NO_IntegerOutRange_free;
1144asn_struct_print_f NO_IntegerOutRange_print;
1145asn_constr_check_f NO_IntegerOutRange_constraint;
1146ber_type_decoder_f NO_IntegerOutRange_decode_ber;
1147der_type_encoder_f NO_IntegerOutRange_encode_der;
1148xer_type_decoder_f NO_IntegerOutRange_decode_xer;
1149xer_type_encoder_f NO_IntegerOutRange_encode_xer;
1150
1151/*** <<< CODE [NO-IntegerOutRange] >>> ***/
1152
1153int
1154NO_IntegerOutRange_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001155 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001156 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +00001157
1158 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001159 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001160 "%s: value not given (%s:%d)",
1161 td->name, __FILE__, __LINE__);
1162 return -1;
1163 }
1164
Lev Walkin8bb57a22007-12-03 13:41:36 +00001165 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001166
Lev Walkinc3f0b892005-08-14 02:40:04 +00001167 if((value >= 3000000000 && value <= 3000000001)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001168 /* Constraint check succeeded */
1169 return 0;
1170 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001171 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001172 "%s: constraint failed (%s:%d)",
1173 td->name, __FILE__, __LINE__);
1174 return -1;
1175 }
1176}
1177
1178/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00001179 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001180 * so here we adjust the DEF accordingly.
1181 */
1182static void
1183NO_IntegerOutRange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001184 td->free_struct = asn_DEF_NativeInteger.free_struct;
1185 td->print_struct = asn_DEF_NativeInteger.print_struct;
1186 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1187 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1188 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1189 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
1190 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
1191 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001192 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00001193 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
1194 td->elements = asn_DEF_NativeInteger.elements;
1195 td->elements_count = asn_DEF_NativeInteger.elements_count;
1196 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +00001197}
1198
1199void
1200NO_IntegerOutRange_free(asn_TYPE_descriptor_t *td,
1201 void *struct_ptr, int contents_only) {
1202 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1203 td->free_struct(td, struct_ptr, contents_only);
1204}
1205
1206int
1207NO_IntegerOutRange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1208 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1209 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1210 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1211}
1212
1213asn_dec_rval_t
1214NO_IntegerOutRange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1215 void **structure, const void *bufptr, size_t size, int tag_mode) {
1216 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1217 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1218}
1219
1220asn_enc_rval_t
1221NO_IntegerOutRange_encode_der(asn_TYPE_descriptor_t *td,
1222 void *structure, int tag_mode, ber_tlv_tag_t tag,
1223 asn_app_consume_bytes_f *cb, void *app_key) {
1224 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1225 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1226}
1227
1228asn_dec_rval_t
1229NO_IntegerOutRange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1230 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1231 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1232 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1233}
1234
1235asn_enc_rval_t
1236NO_IntegerOutRange_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1237 int ilevel, enum xer_encoder_flags_e flags,
1238 asn_app_consume_bytes_f *cb, void *app_key) {
1239 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1240 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1241}
1242
1243
1244/*** <<< STAT-DEFS [NO-IntegerOutRange] >>> ***/
1245
Lev Walkin8bb57a22007-12-03 13:41:36 +00001246static asn_INTEGER_specifics_t asn_SPC_NO_IntegerOutRange_specs_1 = {
1247 0, 0, 0, 0, 0,
1248 0, /* Native long size */
1249 1 /* Unsigned representation */
1250};
Lev Walkin59b176e2005-11-26 11:25:14 +00001251static ber_tlv_tag_t asn_DEF_NO_IntegerOutRange_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001252 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1253};
1254asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange = {
1255 "NO-IntegerOutRange",
1256 "NO-IntegerOutRange",
1257 NO_IntegerOutRange_free,
1258 NO_IntegerOutRange_print,
1259 NO_IntegerOutRange_constraint,
1260 NO_IntegerOutRange_decode_ber,
1261 NO_IntegerOutRange_encode_der,
1262 NO_IntegerOutRange_decode_xer,
1263 NO_IntegerOutRange_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001264 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001265 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001266 asn_DEF_NO_IntegerOutRange_tags_1,
1267 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1268 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1269 asn_DEF_NO_IntegerOutRange_tags_1, /* Same as above */
1270 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1271 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1272 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001273 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001274 &asn_SPC_NO_IntegerOutRange_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +00001275};
1276
1277
1278/*** <<< INCLUDES [NO-IntegerOutValue] >>> ***/
1279
Lev Walkin8bb57a22007-12-03 13:41:36 +00001280#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001281
1282/*** <<< TYPE-DECLS [NO-IntegerOutValue] >>> ***/
1283
Lev Walkin8bb57a22007-12-03 13:41:36 +00001284typedef unsigned long NO_IntegerOutValue_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001285
1286/*** <<< FUNC-DECLS [NO-IntegerOutValue] >>> ***/
1287
1288extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue;
1289asn_struct_free_f NO_IntegerOutValue_free;
1290asn_struct_print_f NO_IntegerOutValue_print;
1291asn_constr_check_f NO_IntegerOutValue_constraint;
1292ber_type_decoder_f NO_IntegerOutValue_decode_ber;
1293der_type_encoder_f NO_IntegerOutValue_encode_der;
1294xer_type_decoder_f NO_IntegerOutValue_decode_xer;
1295xer_type_encoder_f NO_IntegerOutValue_encode_xer;
1296
1297/*** <<< CODE [NO-IntegerOutValue] >>> ***/
1298
1299int
1300NO_IntegerOutValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001301 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001302 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +00001303
1304 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001305 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001306 "%s: value not given (%s:%d)",
1307 td->name, __FILE__, __LINE__);
1308 return -1;
1309 }
1310
Lev Walkin8bb57a22007-12-03 13:41:36 +00001311 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001312
Lev Walkinc3f0b892005-08-14 02:40:04 +00001313 if((value == 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001314 /* Constraint check succeeded */
1315 return 0;
1316 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001317 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001318 "%s: constraint failed (%s:%d)",
1319 td->name, __FILE__, __LINE__);
1320 return -1;
1321 }
1322}
1323
1324/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00001325 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001326 * so here we adjust the DEF accordingly.
1327 */
1328static void
1329NO_IntegerOutValue_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001330 td->free_struct = asn_DEF_NativeInteger.free_struct;
1331 td->print_struct = asn_DEF_NativeInteger.print_struct;
1332 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1333 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1334 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1335 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
1336 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
1337 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001338 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00001339 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
1340 td->elements = asn_DEF_NativeInteger.elements;
1341 td->elements_count = asn_DEF_NativeInteger.elements_count;
1342 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +00001343}
1344
1345void
1346NO_IntegerOutValue_free(asn_TYPE_descriptor_t *td,
1347 void *struct_ptr, int contents_only) {
1348 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1349 td->free_struct(td, struct_ptr, contents_only);
1350}
1351
1352int
1353NO_IntegerOutValue_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1354 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1355 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1356 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1357}
1358
1359asn_dec_rval_t
1360NO_IntegerOutValue_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1361 void **structure, const void *bufptr, size_t size, int tag_mode) {
1362 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1363 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1364}
1365
1366asn_enc_rval_t
1367NO_IntegerOutValue_encode_der(asn_TYPE_descriptor_t *td,
1368 void *structure, int tag_mode, ber_tlv_tag_t tag,
1369 asn_app_consume_bytes_f *cb, void *app_key) {
1370 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1371 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1372}
1373
1374asn_dec_rval_t
1375NO_IntegerOutValue_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1376 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1377 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1378 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1379}
1380
1381asn_enc_rval_t
1382NO_IntegerOutValue_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1383 int ilevel, enum xer_encoder_flags_e flags,
1384 asn_app_consume_bytes_f *cb, void *app_key) {
1385 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1386 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1387}
1388
1389
1390/*** <<< STAT-DEFS [NO-IntegerOutValue] >>> ***/
1391
Lev Walkin8bb57a22007-12-03 13:41:36 +00001392static asn_INTEGER_specifics_t asn_SPC_NO_IntegerOutValue_specs_1 = {
1393 0, 0, 0, 0, 0,
1394 0, /* Native long size */
1395 1 /* Unsigned representation */
1396};
Lev Walkin59b176e2005-11-26 11:25:14 +00001397static ber_tlv_tag_t asn_DEF_NO_IntegerOutValue_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001398 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1399};
1400asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue = {
1401 "NO-IntegerOutValue",
1402 "NO-IntegerOutValue",
1403 NO_IntegerOutValue_free,
1404 NO_IntegerOutValue_print,
1405 NO_IntegerOutValue_constraint,
1406 NO_IntegerOutValue_decode_ber,
1407 NO_IntegerOutValue_encode_der,
1408 NO_IntegerOutValue_decode_xer,
1409 NO_IntegerOutValue_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001410 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001411 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001412 asn_DEF_NO_IntegerOutValue_tags_1,
1413 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1414 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1415 asn_DEF_NO_IntegerOutValue_tags_1, /* Same as above */
1416 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1417 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1418 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001419 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001420 &asn_SPC_NO_IntegerOutValue_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +00001421};
1422
1423
1424/*** <<< INCLUDES [OK-IntegerInRange1] >>> ***/
1425
Lev Walkinc3f0b892005-08-14 02:40:04 +00001426#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001427
1428/*** <<< TYPE-DECLS [OK-IntegerInRange1] >>> ***/
1429
Lev Walkinc3f0b892005-08-14 02:40:04 +00001430typedef long OK_IntegerInRange1_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001431
1432/*** <<< FUNC-DECLS [OK-IntegerInRange1] >>> ***/
1433
1434extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1;
1435asn_struct_free_f OK_IntegerInRange1_free;
1436asn_struct_print_f OK_IntegerInRange1_print;
1437asn_constr_check_f OK_IntegerInRange1_constraint;
1438ber_type_decoder_f OK_IntegerInRange1_decode_ber;
1439der_type_encoder_f OK_IntegerInRange1_encode_der;
1440xer_type_decoder_f OK_IntegerInRange1_decode_xer;
1441xer_type_encoder_f OK_IntegerInRange1_encode_xer;
1442
1443/*** <<< CODE [OK-IntegerInRange1] >>> ***/
1444
1445int
1446OK_IntegerInRange1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001447 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001448 long value;
1449
1450 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001451 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001452 "%s: value not given (%s:%d)",
1453 td->name, __FILE__, __LINE__);
1454 return -1;
1455 }
1456
Lev Walkinc3f0b892005-08-14 02:40:04 +00001457 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001458
1459 if((value >= -100 && value <= 100)) {
1460 /* Constraint check succeeded */
1461 return 0;
1462 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001463 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001464 "%s: constraint failed (%s:%d)",
1465 td->name, __FILE__, __LINE__);
1466 return -1;
1467 }
1468}
1469
1470/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001471 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001472 * so here we adjust the DEF accordingly.
1473 */
1474static void
1475OK_IntegerInRange1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001476 td->free_struct = asn_DEF_NativeInteger.free_struct;
1477 td->print_struct = asn_DEF_NativeInteger.print_struct;
1478 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1479 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1480 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1481 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001482 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001483 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001484 if(!td->per_constraints)
1485 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001486 td->elements = asn_DEF_NativeInteger.elements;
1487 td->elements_count = asn_DEF_NativeInteger.elements_count;
1488 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001489}
1490
1491void
1492OK_IntegerInRange1_free(asn_TYPE_descriptor_t *td,
1493 void *struct_ptr, int contents_only) {
1494 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1495 td->free_struct(td, struct_ptr, contents_only);
1496}
1497
1498int
1499OK_IntegerInRange1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1500 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1501 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1502 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1503}
1504
1505asn_dec_rval_t
1506OK_IntegerInRange1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1507 void **structure, const void *bufptr, size_t size, int tag_mode) {
1508 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1509 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1510}
1511
1512asn_enc_rval_t
1513OK_IntegerInRange1_encode_der(asn_TYPE_descriptor_t *td,
1514 void *structure, int tag_mode, ber_tlv_tag_t tag,
1515 asn_app_consume_bytes_f *cb, void *app_key) {
1516 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1517 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1518}
1519
1520asn_dec_rval_t
1521OK_IntegerInRange1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1522 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1523 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1524 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1525}
1526
1527asn_enc_rval_t
1528OK_IntegerInRange1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1529 int ilevel, enum xer_encoder_flags_e flags,
1530 asn_app_consume_bytes_f *cb, void *app_key) {
1531 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1532 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1533}
1534
1535
1536/*** <<< STAT-DEFS [OK-IntegerInRange1] >>> ***/
1537
Lev Walkin59b176e2005-11-26 11:25:14 +00001538static ber_tlv_tag_t asn_DEF_OK_IntegerInRange1_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001539 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1540};
1541asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1 = {
1542 "OK-IntegerInRange1",
1543 "OK-IntegerInRange1",
1544 OK_IntegerInRange1_free,
1545 OK_IntegerInRange1_print,
1546 OK_IntegerInRange1_constraint,
1547 OK_IntegerInRange1_decode_ber,
1548 OK_IntegerInRange1_encode_der,
1549 OK_IntegerInRange1_decode_xer,
1550 OK_IntegerInRange1_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001551 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001552 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001553 asn_DEF_OK_IntegerInRange1_tags_1,
1554 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1555 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1556 asn_DEF_OK_IntegerInRange1_tags_1, /* Same as above */
1557 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1558 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1559 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001560 0, 0, /* No members */
1561 0 /* No specifics */
1562};
1563
1564
1565/*** <<< INCLUDES [OK-IntegerInRange2] >>> ***/
1566
Lev Walkinc3f0b892005-08-14 02:40:04 +00001567#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001568
1569/*** <<< TYPE-DECLS [OK-IntegerInRange2] >>> ***/
1570
Lev Walkinc3f0b892005-08-14 02:40:04 +00001571typedef long OK_IntegerInRange2_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001572
1573/*** <<< FUNC-DECLS [OK-IntegerInRange2] >>> ***/
1574
1575extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2;
1576asn_struct_free_f OK_IntegerInRange2_free;
1577asn_struct_print_f OK_IntegerInRange2_print;
1578asn_constr_check_f OK_IntegerInRange2_constraint;
1579ber_type_decoder_f OK_IntegerInRange2_decode_ber;
1580der_type_encoder_f OK_IntegerInRange2_encode_der;
1581xer_type_decoder_f OK_IntegerInRange2_decode_xer;
1582xer_type_encoder_f OK_IntegerInRange2_encode_xer;
1583
1584/*** <<< CODE [OK-IntegerInRange2] >>> ***/
1585
1586int
1587OK_IntegerInRange2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001588 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001589 long value;
1590
1591 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001592 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001593 "%s: value not given (%s:%d)",
1594 td->name, __FILE__, __LINE__);
1595 return -1;
1596 }
1597
Lev Walkinc3f0b892005-08-14 02:40:04 +00001598 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001599
1600 if(((value == -100) || (value == 100))) {
1601 /* Constraint check succeeded */
1602 return 0;
1603 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001604 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001605 "%s: constraint failed (%s:%d)",
1606 td->name, __FILE__, __LINE__);
1607 return -1;
1608 }
1609}
1610
1611/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001612 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001613 * so here we adjust the DEF accordingly.
1614 */
1615static void
1616OK_IntegerInRange2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001617 td->free_struct = asn_DEF_NativeInteger.free_struct;
1618 td->print_struct = asn_DEF_NativeInteger.print_struct;
1619 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1620 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1621 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1622 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001623 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001624 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001625 if(!td->per_constraints)
1626 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001627 td->elements = asn_DEF_NativeInteger.elements;
1628 td->elements_count = asn_DEF_NativeInteger.elements_count;
1629 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001630}
1631
1632void
1633OK_IntegerInRange2_free(asn_TYPE_descriptor_t *td,
1634 void *struct_ptr, int contents_only) {
1635 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1636 td->free_struct(td, struct_ptr, contents_only);
1637}
1638
1639int
1640OK_IntegerInRange2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1641 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1642 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1643 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1644}
1645
1646asn_dec_rval_t
1647OK_IntegerInRange2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1648 void **structure, const void *bufptr, size_t size, int tag_mode) {
1649 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1650 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1651}
1652
1653asn_enc_rval_t
1654OK_IntegerInRange2_encode_der(asn_TYPE_descriptor_t *td,
1655 void *structure, int tag_mode, ber_tlv_tag_t tag,
1656 asn_app_consume_bytes_f *cb, void *app_key) {
1657 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1658 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1659}
1660
1661asn_dec_rval_t
1662OK_IntegerInRange2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1663 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1664 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1665 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1666}
1667
1668asn_enc_rval_t
1669OK_IntegerInRange2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1670 int ilevel, enum xer_encoder_flags_e flags,
1671 asn_app_consume_bytes_f *cb, void *app_key) {
1672 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1673 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1674}
1675
1676
1677/*** <<< STAT-DEFS [OK-IntegerInRange2] >>> ***/
1678
Lev Walkin59b176e2005-11-26 11:25:14 +00001679static ber_tlv_tag_t asn_DEF_OK_IntegerInRange2_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001680 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1681};
1682asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2 = {
1683 "OK-IntegerInRange2",
1684 "OK-IntegerInRange2",
1685 OK_IntegerInRange2_free,
1686 OK_IntegerInRange2_print,
1687 OK_IntegerInRange2_constraint,
1688 OK_IntegerInRange2_decode_ber,
1689 OK_IntegerInRange2_encode_der,
1690 OK_IntegerInRange2_decode_xer,
1691 OK_IntegerInRange2_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001692 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001693 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001694 asn_DEF_OK_IntegerInRange2_tags_1,
1695 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1696 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1697 asn_DEF_OK_IntegerInRange2_tags_1, /* Same as above */
1698 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1699 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1700 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001701 0, 0, /* No members */
1702 0 /* No specifics */
1703};
1704
1705
1706/*** <<< INCLUDES [OK-IntegerInRange3] >>> ***/
1707
Lev Walkinc3f0b892005-08-14 02:40:04 +00001708#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001709
1710/*** <<< TYPE-DECLS [OK-IntegerInRange3] >>> ***/
1711
Lev Walkinc3f0b892005-08-14 02:40:04 +00001712typedef long OK_IntegerInRange3_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001713
1714/*** <<< FUNC-DECLS [OK-IntegerInRange3] >>> ***/
1715
1716extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3;
1717asn_struct_free_f OK_IntegerInRange3_free;
1718asn_struct_print_f OK_IntegerInRange3_print;
1719asn_constr_check_f OK_IntegerInRange3_constraint;
1720ber_type_decoder_f OK_IntegerInRange3_decode_ber;
1721der_type_encoder_f OK_IntegerInRange3_encode_der;
1722xer_type_decoder_f OK_IntegerInRange3_decode_xer;
1723xer_type_encoder_f OK_IntegerInRange3_encode_xer;
1724
1725/*** <<< CODE [OK-IntegerInRange3] >>> ***/
1726
1727int
1728OK_IntegerInRange3_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001729 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001730 long value;
1731
1732 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001733 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001734 "%s: value not given (%s:%d)",
1735 td->name, __FILE__, __LINE__);
1736 return -1;
1737 }
1738
Lev Walkinc3f0b892005-08-14 02:40:04 +00001739 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001740
Lev Walkin63b41262007-11-06 01:48:46 +00001741 if((value >= (-2147483647L - 1) && value <= 2147483647)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001742 /* Constraint check succeeded */
1743 return 0;
1744 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001745 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001746 "%s: constraint failed (%s:%d)",
1747 td->name, __FILE__, __LINE__);
1748 return -1;
1749 }
1750}
1751
1752/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001753 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001754 * so here we adjust the DEF accordingly.
1755 */
1756static void
1757OK_IntegerInRange3_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001758 td->free_struct = asn_DEF_NativeInteger.free_struct;
1759 td->print_struct = asn_DEF_NativeInteger.print_struct;
1760 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1761 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1762 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1763 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001764 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001765 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001766 if(!td->per_constraints)
1767 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001768 td->elements = asn_DEF_NativeInteger.elements;
1769 td->elements_count = asn_DEF_NativeInteger.elements_count;
1770 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001771}
1772
1773void
1774OK_IntegerInRange3_free(asn_TYPE_descriptor_t *td,
1775 void *struct_ptr, int contents_only) {
1776 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1777 td->free_struct(td, struct_ptr, contents_only);
1778}
1779
1780int
1781OK_IntegerInRange3_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1782 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1783 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1784 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1785}
1786
1787asn_dec_rval_t
1788OK_IntegerInRange3_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1789 void **structure, const void *bufptr, size_t size, int tag_mode) {
1790 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1791 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1792}
1793
1794asn_enc_rval_t
1795OK_IntegerInRange3_encode_der(asn_TYPE_descriptor_t *td,
1796 void *structure, int tag_mode, ber_tlv_tag_t tag,
1797 asn_app_consume_bytes_f *cb, void *app_key) {
1798 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1799 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1800}
1801
1802asn_dec_rval_t
1803OK_IntegerInRange3_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1804 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1805 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1806 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1807}
1808
1809asn_enc_rval_t
1810OK_IntegerInRange3_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1811 int ilevel, enum xer_encoder_flags_e flags,
1812 asn_app_consume_bytes_f *cb, void *app_key) {
1813 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1814 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1815}
1816
1817
1818/*** <<< STAT-DEFS [OK-IntegerInRange3] >>> ***/
1819
Lev Walkin59b176e2005-11-26 11:25:14 +00001820static ber_tlv_tag_t asn_DEF_OK_IntegerInRange3_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001821 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1822};
1823asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3 = {
1824 "OK-IntegerInRange3",
1825 "OK-IntegerInRange3",
1826 OK_IntegerInRange3_free,
1827 OK_IntegerInRange3_print,
1828 OK_IntegerInRange3_constraint,
1829 OK_IntegerInRange3_decode_ber,
1830 OK_IntegerInRange3_encode_der,
1831 OK_IntegerInRange3_decode_xer,
1832 OK_IntegerInRange3_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001833 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001834 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001835 asn_DEF_OK_IntegerInRange3_tags_1,
1836 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1837 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1838 asn_DEF_OK_IntegerInRange3_tags_1, /* Same as above */
1839 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1840 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1841 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001842 0, 0, /* No members */
1843 0 /* No specifics */
1844};
1845
1846
1847/*** <<< INCLUDES [OK-IntegerInRange4] >>> ***/
1848
Lev Walkinc3f0b892005-08-14 02:40:04 +00001849#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001850
1851/*** <<< TYPE-DECLS [OK-IntegerInRange4] >>> ***/
1852
Lev Walkinc3f0b892005-08-14 02:40:04 +00001853typedef long OK_IntegerInRange4_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001854
1855/*** <<< FUNC-DECLS [OK-IntegerInRange4] >>> ***/
1856
1857extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4;
1858asn_struct_free_f OK_IntegerInRange4_free;
1859asn_struct_print_f OK_IntegerInRange4_print;
1860asn_constr_check_f OK_IntegerInRange4_constraint;
1861ber_type_decoder_f OK_IntegerInRange4_decode_ber;
1862der_type_encoder_f OK_IntegerInRange4_encode_der;
1863xer_type_decoder_f OK_IntegerInRange4_decode_xer;
1864xer_type_encoder_f OK_IntegerInRange4_encode_xer;
1865
1866/*** <<< CODE [OK-IntegerInRange4] >>> ***/
1867
1868int
1869OK_IntegerInRange4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001870 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001871 long value;
1872
1873 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001874 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001875 "%s: value not given (%s:%d)",
1876 td->name, __FILE__, __LINE__);
1877 return -1;
1878 }
1879
Lev Walkinc3f0b892005-08-14 02:40:04 +00001880 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001881
Lev Walkin63b41262007-11-06 01:48:46 +00001882 if(((value == (-2147483647L - 1)) || (value == 2147483647))) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001883 /* Constraint check succeeded */
1884 return 0;
1885 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00001886 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001887 "%s: constraint failed (%s:%d)",
1888 td->name, __FILE__, __LINE__);
1889 return -1;
1890 }
1891}
1892
1893/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001894 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001895 * so here we adjust the DEF accordingly.
1896 */
1897static void
1898OK_IntegerInRange4_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001899 td->free_struct = asn_DEF_NativeInteger.free_struct;
1900 td->print_struct = asn_DEF_NativeInteger.print_struct;
1901 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1902 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1903 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1904 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001905 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001906 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001907 if(!td->per_constraints)
1908 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001909 td->elements = asn_DEF_NativeInteger.elements;
1910 td->elements_count = asn_DEF_NativeInteger.elements_count;
1911 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001912}
1913
1914void
1915OK_IntegerInRange4_free(asn_TYPE_descriptor_t *td,
1916 void *struct_ptr, int contents_only) {
1917 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1918 td->free_struct(td, struct_ptr, contents_only);
1919}
1920
1921int
1922OK_IntegerInRange4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1923 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1924 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1925 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1926}
1927
1928asn_dec_rval_t
1929OK_IntegerInRange4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1930 void **structure, const void *bufptr, size_t size, int tag_mode) {
1931 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1932 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1933}
1934
1935asn_enc_rval_t
1936OK_IntegerInRange4_encode_der(asn_TYPE_descriptor_t *td,
1937 void *structure, int tag_mode, ber_tlv_tag_t tag,
1938 asn_app_consume_bytes_f *cb, void *app_key) {
1939 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1940 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1941}
1942
1943asn_dec_rval_t
1944OK_IntegerInRange4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1945 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1946 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1947 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1948}
1949
1950asn_enc_rval_t
1951OK_IntegerInRange4_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1952 int ilevel, enum xer_encoder_flags_e flags,
1953 asn_app_consume_bytes_f *cb, void *app_key) {
1954 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1955 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1956}
1957
1958
1959/*** <<< STAT-DEFS [OK-IntegerInRange4] >>> ***/
1960
Lev Walkin59b176e2005-11-26 11:25:14 +00001961static ber_tlv_tag_t asn_DEF_OK_IntegerInRange4_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001962 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1963};
1964asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4 = {
1965 "OK-IntegerInRange4",
1966 "OK-IntegerInRange4",
1967 OK_IntegerInRange4_free,
1968 OK_IntegerInRange4_print,
1969 OK_IntegerInRange4_constraint,
1970 OK_IntegerInRange4_decode_ber,
1971 OK_IntegerInRange4_encode_der,
1972 OK_IntegerInRange4_decode_xer,
1973 OK_IntegerInRange4_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001974 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001975 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001976 asn_DEF_OK_IntegerInRange4_tags_1,
1977 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
1978 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
1979 asn_DEF_OK_IntegerInRange4_tags_1, /* Same as above */
1980 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
1981 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
1982 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001983 0, 0, /* No members */
1984 0 /* No specifics */
1985};
1986
1987
1988/*** <<< INCLUDES [OK-IntegerInRange5] >>> ***/
1989
Lev Walkinc3f0b892005-08-14 02:40:04 +00001990#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001991
1992/*** <<< TYPE-DECLS [OK-IntegerInRange5] >>> ***/
1993
Lev Walkinc3f0b892005-08-14 02:40:04 +00001994typedef long OK_IntegerInRange5_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001995
1996/*** <<< FUNC-DECLS [OK-IntegerInRange5] >>> ***/
1997
1998extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5;
1999asn_struct_free_f OK_IntegerInRange5_free;
2000asn_struct_print_f OK_IntegerInRange5_print;
2001asn_constr_check_f OK_IntegerInRange5_constraint;
2002ber_type_decoder_f OK_IntegerInRange5_decode_ber;
2003der_type_encoder_f OK_IntegerInRange5_encode_der;
2004xer_type_decoder_f OK_IntegerInRange5_decode_xer;
2005xer_type_encoder_f OK_IntegerInRange5_encode_xer;
2006
2007/*** <<< CODE [OK-IntegerInRange5] >>> ***/
2008
2009int
2010OK_IntegerInRange5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002011 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00002012 long value;
2013
2014 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00002015 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00002016 "%s: value not given (%s:%d)",
2017 td->name, __FILE__, __LINE__);
2018 return -1;
2019 }
2020
Lev Walkinc3f0b892005-08-14 02:40:04 +00002021 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00002022
Lev Walkin63b41262007-11-06 01:48:46 +00002023 if(((value == (-2147483647L - 1)) || (value == 2147483647))) {
Lev Walkin082cadc2005-08-14 02:18:27 +00002024 /* Constraint check succeeded */
2025 return 0;
2026 } else {
Lev Walkin739d9bf2006-07-13 13:28:32 +00002027 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00002028 "%s: constraint failed (%s:%d)",
2029 td->name, __FILE__, __LINE__);
2030 return -1;
2031 }
2032}
2033
2034/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00002035 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00002036 * so here we adjust the DEF accordingly.
2037 */
2038static void
2039OK_IntegerInRange5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002040 td->free_struct = asn_DEF_NativeInteger.free_struct;
2041 td->print_struct = asn_DEF_NativeInteger.print_struct;
2042 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
2043 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
2044 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
2045 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002046 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002047 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002048 if(!td->per_constraints)
2049 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002050 td->elements = asn_DEF_NativeInteger.elements;
2051 td->elements_count = asn_DEF_NativeInteger.elements_count;
2052 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00002053}
2054
2055void
2056OK_IntegerInRange5_free(asn_TYPE_descriptor_t *td,
2057 void *struct_ptr, int contents_only) {
2058 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2059 td->free_struct(td, struct_ptr, contents_only);
2060}
2061
2062int
2063OK_IntegerInRange5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2064 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2065 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2066 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2067}
2068
2069asn_dec_rval_t
2070OK_IntegerInRange5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2071 void **structure, const void *bufptr, size_t size, int tag_mode) {
2072 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2073 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2074}
2075
2076asn_enc_rval_t
2077OK_IntegerInRange5_encode_der(asn_TYPE_descriptor_t *td,
2078 void *structure, int tag_mode, ber_tlv_tag_t tag,
2079 asn_app_consume_bytes_f *cb, void *app_key) {
2080 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2081 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2082}
2083
2084asn_dec_rval_t
2085OK_IntegerInRange5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2086 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2087 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2088 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2089}
2090
2091asn_enc_rval_t
2092OK_IntegerInRange5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2093 int ilevel, enum xer_encoder_flags_e flags,
2094 asn_app_consume_bytes_f *cb, void *app_key) {
2095 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2096 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2097}
2098
2099
2100/*** <<< STAT-DEFS [OK-IntegerInRange5] >>> ***/
2101
Lev Walkin59b176e2005-11-26 11:25:14 +00002102static ber_tlv_tag_t asn_DEF_OK_IntegerInRange5_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00002103 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2104};
2105asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5 = {
2106 "OK-IntegerInRange5",
2107 "OK-IntegerInRange5",
2108 OK_IntegerInRange5_free,
2109 OK_IntegerInRange5_print,
2110 OK_IntegerInRange5_constraint,
2111 OK_IntegerInRange5_decode_ber,
2112 OK_IntegerInRange5_encode_der,
2113 OK_IntegerInRange5_decode_xer,
2114 OK_IntegerInRange5_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002115 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00002116 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002117 asn_DEF_OK_IntegerInRange5_tags_1,
2118 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2119 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2120 asn_DEF_OK_IntegerInRange5_tags_1, /* Same as above */
2121 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2122 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2123 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00002124 0, 0, /* No members */
2125 0 /* No specifics */
2126};
2127
Lev Walkinc3f0b892005-08-14 02:40:04 +00002128
Lev Walkinfee6f712005-08-27 03:13:51 +00002129/*** <<< INCLUDES [NO-IntegerInRange6] >>> ***/
2130
Lev Walkin8bb57a22007-12-03 13:41:36 +00002131#include <NativeInteger.h>
Lev Walkinfee6f712005-08-27 03:13:51 +00002132
2133/*** <<< TYPE-DECLS [NO-IntegerInRange6] >>> ***/
2134
Lev Walkin8bb57a22007-12-03 13:41:36 +00002135typedef unsigned long NO_IntegerInRange6_t;
Lev Walkinfee6f712005-08-27 03:13:51 +00002136
2137/*** <<< FUNC-DECLS [NO-IntegerInRange6] >>> ***/
2138
2139extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6;
2140asn_struct_free_f NO_IntegerInRange6_free;
2141asn_struct_print_f NO_IntegerInRange6_print;
2142asn_constr_check_f NO_IntegerInRange6_constraint;
2143ber_type_decoder_f NO_IntegerInRange6_decode_ber;
2144der_type_encoder_f NO_IntegerInRange6_encode_der;
2145xer_type_decoder_f NO_IntegerInRange6_decode_xer;
2146xer_type_encoder_f NO_IntegerInRange6_encode_xer;
2147
2148/*** <<< CODE [NO-IntegerInRange6] >>> ***/
2149
2150int
2151NO_IntegerInRange6_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002152 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00002153 unsigned long value;
Lev Walkinfee6f712005-08-27 03:13:51 +00002154
2155 if(!sptr) {
Lev Walkin739d9bf2006-07-13 13:28:32 +00002156 _ASN_CTFAIL(app_key, td, sptr,
Lev Walkinfee6f712005-08-27 03:13:51 +00002157 "%s: value not given (%s:%d)",
2158 td->name, __FILE__, __LINE__);
2159 return -1;
2160 }
2161
Lev Walkin8bb57a22007-12-03 13:41:36 +00002162 value = *(const unsigned long *)sptr;
Lev Walkinfee6f712005-08-27 03:13:51 +00002163
Lev Walkin8bb57a22007-12-03 13:41:36 +00002164 /* Constraint check succeeded */
2165 return 0;
Lev Walkinfee6f712005-08-27 03:13:51 +00002166}
2167
2168/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00002169 * This type is implemented using NativeInteger,
Lev Walkinfee6f712005-08-27 03:13:51 +00002170 * so here we adjust the DEF accordingly.
2171 */
2172static void
2173NO_IntegerInRange6_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00002174 td->free_struct = asn_DEF_NativeInteger.free_struct;
2175 td->print_struct = asn_DEF_NativeInteger.print_struct;
2176 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
2177 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
2178 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
2179 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
2180 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
2181 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002182 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00002183 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
2184 td->elements = asn_DEF_NativeInteger.elements;
2185 td->elements_count = asn_DEF_NativeInteger.elements_count;
2186 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkinfee6f712005-08-27 03:13:51 +00002187}
2188
2189void
2190NO_IntegerInRange6_free(asn_TYPE_descriptor_t *td,
2191 void *struct_ptr, int contents_only) {
2192 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2193 td->free_struct(td, struct_ptr, contents_only);
2194}
2195
2196int
2197NO_IntegerInRange6_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2198 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2199 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2200 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2201}
2202
2203asn_dec_rval_t
2204NO_IntegerInRange6_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2205 void **structure, const void *bufptr, size_t size, int tag_mode) {
2206 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2207 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2208}
2209
2210asn_enc_rval_t
2211NO_IntegerInRange6_encode_der(asn_TYPE_descriptor_t *td,
2212 void *structure, int tag_mode, ber_tlv_tag_t tag,
2213 asn_app_consume_bytes_f *cb, void *app_key) {
2214 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2215 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2216}
2217
2218asn_dec_rval_t
2219NO_IntegerInRange6_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2220 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2221 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2222 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2223}
2224
2225asn_enc_rval_t
2226NO_IntegerInRange6_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2227 int ilevel, enum xer_encoder_flags_e flags,
2228 asn_app_consume_bytes_f *cb, void *app_key) {
2229 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2230 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2231}
2232
2233
2234/*** <<< STAT-DEFS [NO-IntegerInRange6] >>> ***/
2235
Lev Walkin8bb57a22007-12-03 13:41:36 +00002236static asn_INTEGER_specifics_t asn_SPC_NO_IntegerInRange6_specs_1 = {
2237 0, 0, 0, 0, 0,
2238 0, /* Native long size */
2239 1 /* Unsigned representation */
2240};
Lev Walkin59b176e2005-11-26 11:25:14 +00002241static ber_tlv_tag_t asn_DEF_NO_IntegerInRange6_tags_1[] = {
Lev Walkinfee6f712005-08-27 03:13:51 +00002242 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2243};
2244asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6 = {
2245 "NO-IntegerInRange6",
2246 "NO-IntegerInRange6",
2247 NO_IntegerInRange6_free,
2248 NO_IntegerInRange6_print,
2249 NO_IntegerInRange6_constraint,
2250 NO_IntegerInRange6_decode_ber,
2251 NO_IntegerInRange6_encode_der,
2252 NO_IntegerInRange6_decode_xer,
2253 NO_IntegerInRange6_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002254 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinfee6f712005-08-27 03:13:51 +00002255 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002256 asn_DEF_NO_IntegerInRange6_tags_1,
2257 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2258 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2259 asn_DEF_NO_IntegerInRange6_tags_1, /* Same as above */
2260 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2261 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2262 0, /* No PER visible constraints */
Lev Walkinfee6f712005-08-27 03:13:51 +00002263 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00002264 &asn_SPC_NO_IntegerInRange6_specs_1 /* Additional specs */
Lev Walkinfee6f712005-08-27 03:13:51 +00002265};
2266
2267
Lev Walkinc3f0b892005-08-14 02:40:04 +00002268/*** <<< INCLUDES [CN-IntegerEnumerated1] >>> ***/
2269
2270#include <NativeInteger.h>
2271
2272/*** <<< DEPS [CN-IntegerEnumerated1] >>> ***/
2273
2274typedef enum CN_IntegerEnumerated1 {
2275 CN_IntegerEnumerated1_a = 1,
2276 CN_IntegerEnumerated1_b = 2
Lev Walkin171487e2006-03-21 07:25:18 +00002277} e_CN_IntegerEnumerated1;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002278
2279/*** <<< TYPE-DECLS [CN-IntegerEnumerated1] >>> ***/
2280
2281typedef long CN_IntegerEnumerated1_t;
2282
2283/*** <<< FUNC-DECLS [CN-IntegerEnumerated1] >>> ***/
2284
2285extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1;
2286asn_struct_free_f CN_IntegerEnumerated1_free;
2287asn_struct_print_f CN_IntegerEnumerated1_print;
2288asn_constr_check_f CN_IntegerEnumerated1_constraint;
2289ber_type_decoder_f CN_IntegerEnumerated1_decode_ber;
2290der_type_encoder_f CN_IntegerEnumerated1_encode_der;
2291xer_type_decoder_f CN_IntegerEnumerated1_decode_xer;
2292xer_type_encoder_f CN_IntegerEnumerated1_encode_xer;
2293
2294/*** <<< CODE [CN-IntegerEnumerated1] >>> ***/
2295
2296int
2297CN_IntegerEnumerated1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002298 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002299 /* Replace with underlying type checker */
2300 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00002301 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinc3f0b892005-08-14 02:40:04 +00002302}
2303
2304/*
2305 * This type is implemented using NativeInteger,
2306 * so here we adjust the DEF accordingly.
2307 */
2308static void
2309CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2310 td->free_struct = asn_DEF_NativeInteger.free_struct;
2311 td->print_struct = asn_DEF_NativeInteger.print_struct;
2312 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
2313 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
2314 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
2315 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002316 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002317 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002318 if(!td->per_constraints)
2319 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002320 td->elements = asn_DEF_NativeInteger.elements;
2321 td->elements_count = asn_DEF_NativeInteger.elements_count;
2322 td->specifics = asn_DEF_NativeInteger.specifics;
2323}
2324
2325void
2326CN_IntegerEnumerated1_free(asn_TYPE_descriptor_t *td,
2327 void *struct_ptr, int contents_only) {
2328 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2329 td->free_struct(td, struct_ptr, contents_only);
2330}
2331
2332int
2333CN_IntegerEnumerated1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2334 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2335 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2336 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2337}
2338
2339asn_dec_rval_t
2340CN_IntegerEnumerated1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2341 void **structure, const void *bufptr, size_t size, int tag_mode) {
2342 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2343 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2344}
2345
2346asn_enc_rval_t
2347CN_IntegerEnumerated1_encode_der(asn_TYPE_descriptor_t *td,
2348 void *structure, int tag_mode, ber_tlv_tag_t tag,
2349 asn_app_consume_bytes_f *cb, void *app_key) {
2350 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2351 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2352}
2353
2354asn_dec_rval_t
2355CN_IntegerEnumerated1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2356 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2357 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2358 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2359}
2360
2361asn_enc_rval_t
2362CN_IntegerEnumerated1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2363 int ilevel, enum xer_encoder_flags_e flags,
2364 asn_app_consume_bytes_f *cb, void *app_key) {
2365 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2366 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2367}
2368
2369
2370/*** <<< STAT-DEFS [CN-IntegerEnumerated1] >>> ***/
2371
Lev Walkin59b176e2005-11-26 11:25:14 +00002372static ber_tlv_tag_t asn_DEF_CN_IntegerEnumerated1_tags_1[] = {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002373 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2374};
2375asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1 = {
2376 "CN-IntegerEnumerated1",
2377 "CN-IntegerEnumerated1",
2378 CN_IntegerEnumerated1_free,
2379 CN_IntegerEnumerated1_print,
2380 CN_IntegerEnumerated1_constraint,
2381 CN_IntegerEnumerated1_decode_ber,
2382 CN_IntegerEnumerated1_encode_der,
2383 CN_IntegerEnumerated1_decode_xer,
2384 CN_IntegerEnumerated1_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002385 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002386 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002387 asn_DEF_CN_IntegerEnumerated1_tags_1,
2388 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2389 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2390 asn_DEF_CN_IntegerEnumerated1_tags_1, /* Same as above */
2391 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2392 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2393 0, /* No PER visible constraints */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002394 0, 0, /* Defined elsewhere */
2395 0 /* No specifics */
2396};
2397
2398
2399/*** <<< INCLUDES [NO-IntegerEnumerated2] >>> ***/
2400
2401#include <INTEGER.h>
2402
2403/*** <<< DEPS [NO-IntegerEnumerated2] >>> ***/
2404
2405typedef enum NO_IntegerEnumerated2 {
2406 NO_IntegerEnumerated2_a = 1,
2407 NO_IntegerEnumerated2_b = 3000000000
Lev Walkin171487e2006-03-21 07:25:18 +00002408} e_NO_IntegerEnumerated2;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002409
2410/*** <<< TYPE-DECLS [NO-IntegerEnumerated2] >>> ***/
2411
2412typedef INTEGER_t NO_IntegerEnumerated2_t;
2413
2414/*** <<< FUNC-DECLS [NO-IntegerEnumerated2] >>> ***/
2415
2416extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2;
2417asn_struct_free_f NO_IntegerEnumerated2_free;
2418asn_struct_print_f NO_IntegerEnumerated2_print;
2419asn_constr_check_f NO_IntegerEnumerated2_constraint;
2420ber_type_decoder_f NO_IntegerEnumerated2_decode_ber;
2421der_type_encoder_f NO_IntegerEnumerated2_encode_der;
2422xer_type_decoder_f NO_IntegerEnumerated2_decode_xer;
2423xer_type_encoder_f NO_IntegerEnumerated2_encode_xer;
2424
2425/*** <<< CODE [NO-IntegerEnumerated2] >>> ***/
2426
2427int
2428NO_IntegerEnumerated2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002429 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002430 /* Replace with underlying type checker */
2431 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00002432 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinc3f0b892005-08-14 02:40:04 +00002433}
2434
2435/*
2436 * This type is implemented using INTEGER,
2437 * so here we adjust the DEF accordingly.
2438 */
2439static void
2440NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2441 td->free_struct = asn_DEF_INTEGER.free_struct;
2442 td->print_struct = asn_DEF_INTEGER.print_struct;
2443 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2444 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2445 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2446 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002447 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002448 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002449 if(!td->per_constraints)
2450 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002451 td->elements = asn_DEF_INTEGER.elements;
2452 td->elements_count = asn_DEF_INTEGER.elements_count;
2453 td->specifics = asn_DEF_INTEGER.specifics;
2454}
2455
2456void
2457NO_IntegerEnumerated2_free(asn_TYPE_descriptor_t *td,
2458 void *struct_ptr, int contents_only) {
2459 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2460 td->free_struct(td, struct_ptr, contents_only);
2461}
2462
2463int
2464NO_IntegerEnumerated2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2465 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2466 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2467 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2468}
2469
2470asn_dec_rval_t
2471NO_IntegerEnumerated2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2472 void **structure, const void *bufptr, size_t size, int tag_mode) {
2473 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2474 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2475}
2476
2477asn_enc_rval_t
2478NO_IntegerEnumerated2_encode_der(asn_TYPE_descriptor_t *td,
2479 void *structure, int tag_mode, ber_tlv_tag_t tag,
2480 asn_app_consume_bytes_f *cb, void *app_key) {
2481 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2482 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2483}
2484
2485asn_dec_rval_t
2486NO_IntegerEnumerated2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2487 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2488 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2489 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2490}
2491
2492asn_enc_rval_t
2493NO_IntegerEnumerated2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2494 int ilevel, enum xer_encoder_flags_e flags,
2495 asn_app_consume_bytes_f *cb, void *app_key) {
2496 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2497 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2498}
2499
2500
2501/*** <<< STAT-DEFS [NO-IntegerEnumerated2] >>> ***/
2502
Lev Walkin59b176e2005-11-26 11:25:14 +00002503static ber_tlv_tag_t asn_DEF_NO_IntegerEnumerated2_tags_1[] = {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002504 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2505};
2506asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2 = {
2507 "NO-IntegerEnumerated2",
2508 "NO-IntegerEnumerated2",
2509 NO_IntegerEnumerated2_free,
2510 NO_IntegerEnumerated2_print,
2511 NO_IntegerEnumerated2_constraint,
2512 NO_IntegerEnumerated2_decode_ber,
2513 NO_IntegerEnumerated2_encode_der,
2514 NO_IntegerEnumerated2_decode_xer,
2515 NO_IntegerEnumerated2_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002516 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002517 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002518 asn_DEF_NO_IntegerEnumerated2_tags_1,
2519 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2520 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2521 asn_DEF_NO_IntegerEnumerated2_tags_1, /* Same as above */
2522 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2523 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2524 0, /* No PER visible constraints */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002525 0, 0, /* Defined elsewhere */
2526 0 /* No specifics */
2527};
2528