blob: b2ba297248ea51b8c9bf0c8ec2bc1f28c9c8d5d8 [file] [log] [blame]
Lev Walkin082cadc2005-08-14 02:18:27 +00001
2/*** <<< INCLUDES [CN-IntegerUnlimited] >>> ***/
3
Lev Walkin2a744a72013-03-27 01:56:23 -07004#include <INTEGER.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00005
6/*** <<< TYPE-DECLS [CN-IntegerUnlimited] >>> ***/
7
Lev Walkin2a744a72013-03-27 01:56:23 -07008typedef INTEGER_t CN_IntegerUnlimited_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00009
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 */
Lev Walkin2a744a72013-03-27 01:56:23 -070027 td->check_constraints = asn_DEF_INTEGER.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/*
Lev Walkin2a744a72013-03-27 01:56:23 -070032 * This type is implemented using INTEGER,
Lev Walkin082cadc2005-08-14 02:18:27 +000033 * so here we adjust the DEF accordingly.
34 */
35static void
36CN_IntegerUnlimited_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -070037 td->free_struct = asn_DEF_INTEGER.free_struct;
38 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -080039 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -070040 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
41 td->der_encoder = asn_DEF_INTEGER.der_encoder;
42 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
43 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
44 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
45 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -070046 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
47 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +000048 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -070049 td->per_constraints = asn_DEF_INTEGER.per_constraints;
50 td->elements = asn_DEF_INTEGER.elements;
51 td->elements_count = asn_DEF_INTEGER.elements_count;
52 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +000053}
54
55void
56CN_IntegerUnlimited_free(asn_TYPE_descriptor_t *td,
57 void *struct_ptr, int contents_only) {
58 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
59 td->free_struct(td, struct_ptr, contents_only);
60}
61
62int
63CN_IntegerUnlimited_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
64 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
65 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
66 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
67}
68
69asn_dec_rval_t
70CN_IntegerUnlimited_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
71 void **structure, const void *bufptr, size_t size, int tag_mode) {
72 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
73 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
74}
75
76asn_enc_rval_t
77CN_IntegerUnlimited_encode_der(asn_TYPE_descriptor_t *td,
78 void *structure, int tag_mode, ber_tlv_tag_t tag,
79 asn_app_consume_bytes_f *cb, void *app_key) {
80 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
81 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
82}
83
84asn_dec_rval_t
85CN_IntegerUnlimited_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
86 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
87 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
88 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
89}
90
91asn_enc_rval_t
92CN_IntegerUnlimited_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
93 int ilevel, enum xer_encoder_flags_e flags,
94 asn_app_consume_bytes_f *cb, void *app_key) {
95 CN_IntegerUnlimited_1_inherit_TYPE_descriptor(td);
96 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
97}
98
99
100/*** <<< STAT-DEFS [CN-IntegerUnlimited] >>> ***/
101
Lev Walkina7591b52014-10-12 18:37:35 -0700102static const ber_tlv_tag_t asn_DEF_CN_IntegerUnlimited_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000103 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
104};
105asn_TYPE_descriptor_t asn_DEF_CN_IntegerUnlimited = {
106 "CN-IntegerUnlimited",
107 "CN-IntegerUnlimited",
108 CN_IntegerUnlimited_free,
109 CN_IntegerUnlimited_print,
110 CN_IntegerUnlimited_constraint,
111 CN_IntegerUnlimited_decode_ber,
112 CN_IntegerUnlimited_encode_der,
113 CN_IntegerUnlimited_decode_xer,
114 CN_IntegerUnlimited_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000115 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700116 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000117 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000118 asn_DEF_CN_IntegerUnlimited_tags_1,
119 sizeof(asn_DEF_CN_IntegerUnlimited_tags_1)
120 /sizeof(asn_DEF_CN_IntegerUnlimited_tags_1[0]), /* 1 */
121 asn_DEF_CN_IntegerUnlimited_tags_1, /* Same as above */
122 sizeof(asn_DEF_CN_IntegerUnlimited_tags_1)
123 /sizeof(asn_DEF_CN_IntegerUnlimited_tags_1[0]), /* 1 */
124 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000125 0, 0, /* No members */
126 0 /* No specifics */
127};
128
129
130/*** <<< INCLUDES [CN-IntegerMinMax] >>> ***/
131
Lev Walkin2a744a72013-03-27 01:56:23 -0700132#include <INTEGER.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000133
134/*** <<< TYPE-DECLS [CN-IntegerMinMax] >>> ***/
135
Lev Walkin2a744a72013-03-27 01:56:23 -0700136typedef INTEGER_t CN_IntegerMinMax_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000137
138/*** <<< FUNC-DECLS [CN-IntegerMinMax] >>> ***/
139
140extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinMax;
141asn_struct_free_f CN_IntegerMinMax_free;
142asn_struct_print_f CN_IntegerMinMax_print;
143asn_constr_check_f CN_IntegerMinMax_constraint;
144ber_type_decoder_f CN_IntegerMinMax_decode_ber;
145der_type_encoder_f CN_IntegerMinMax_encode_der;
146xer_type_decoder_f CN_IntegerMinMax_decode_xer;
147xer_type_encoder_f CN_IntegerMinMax_encode_xer;
148
149/*** <<< CODE [CN-IntegerMinMax] >>> ***/
150
151int
152CN_IntegerMinMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000153 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700154 const INTEGER_t *st = (const INTEGER_t *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000155
156 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700157 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000158 "%s: value not given (%s:%d)",
159 td->name, __FILE__, __LINE__);
160 return -1;
161 }
162
163
164 if(1 /* No applicable constraints whatsoever */) {
johvikbd3dea92017-05-09 10:20:51 +0200165 (void)st; /* Unused variable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000166 /* Nothing is here. See below */
167 }
168
169 /* Replace with underlying type checker */
Lev Walkin2a744a72013-03-27 01:56:23 -0700170 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +0000171 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkin082cadc2005-08-14 02:18:27 +0000172}
173
174/*
Lev Walkin2a744a72013-03-27 01:56:23 -0700175 * This type is implemented using INTEGER,
Lev Walkin082cadc2005-08-14 02:18:27 +0000176 * so here we adjust the DEF accordingly.
177 */
178static void
179CN_IntegerMinMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700180 td->free_struct = asn_DEF_INTEGER.free_struct;
181 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800182 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -0700183 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
184 td->der_encoder = asn_DEF_INTEGER.der_encoder;
185 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
186 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
187 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
188 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700189 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
190 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000191 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -0700192 td->per_constraints = asn_DEF_INTEGER.per_constraints;
193 td->elements = asn_DEF_INTEGER.elements;
194 td->elements_count = asn_DEF_INTEGER.elements_count;
195 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +0000196}
197
198void
199CN_IntegerMinMax_free(asn_TYPE_descriptor_t *td,
200 void *struct_ptr, int contents_only) {
201 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
202 td->free_struct(td, struct_ptr, contents_only);
203}
204
205int
206CN_IntegerMinMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
207 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
208 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
209 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
210}
211
212asn_dec_rval_t
213CN_IntegerMinMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
214 void **structure, const void *bufptr, size_t size, int tag_mode) {
215 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
216 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
217}
218
219asn_enc_rval_t
220CN_IntegerMinMax_encode_der(asn_TYPE_descriptor_t *td,
221 void *structure, int tag_mode, ber_tlv_tag_t tag,
222 asn_app_consume_bytes_f *cb, void *app_key) {
223 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
224 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
225}
226
227asn_dec_rval_t
228CN_IntegerMinMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
229 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
230 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
231 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
232}
233
234asn_enc_rval_t
235CN_IntegerMinMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
236 int ilevel, enum xer_encoder_flags_e flags,
237 asn_app_consume_bytes_f *cb, void *app_key) {
238 CN_IntegerMinMax_1_inherit_TYPE_descriptor(td);
239 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
240}
241
242
243/*** <<< STAT-DEFS [CN-IntegerMinMax] >>> ***/
244
Lev Walkina7591b52014-10-12 18:37:35 -0700245static const ber_tlv_tag_t asn_DEF_CN_IntegerMinMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000246 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
247};
248asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinMax = {
249 "CN-IntegerMinMax",
250 "CN-IntegerMinMax",
251 CN_IntegerMinMax_free,
252 CN_IntegerMinMax_print,
253 CN_IntegerMinMax_constraint,
254 CN_IntegerMinMax_decode_ber,
255 CN_IntegerMinMax_encode_der,
256 CN_IntegerMinMax_decode_xer,
257 CN_IntegerMinMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000258 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700259 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000260 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000261 asn_DEF_CN_IntegerMinMax_tags_1,
262 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
263 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
264 asn_DEF_CN_IntegerMinMax_tags_1, /* Same as above */
265 sizeof(asn_DEF_CN_IntegerMinMax_tags_1)
266 /sizeof(asn_DEF_CN_IntegerMinMax_tags_1[0]), /* 1 */
267 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000268 0, 0, /* No members */
269 0 /* No specifics */
270};
271
272
273/*** <<< INCLUDES [CN-IntegerMinLow] >>> ***/
274
Lev Walkin2a744a72013-03-27 01:56:23 -0700275#include <INTEGER.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000276
277/*** <<< TYPE-DECLS [CN-IntegerMinLow] >>> ***/
278
Lev Walkin2a744a72013-03-27 01:56:23 -0700279typedef INTEGER_t CN_IntegerMinLow_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000280
281/*** <<< FUNC-DECLS [CN-IntegerMinLow] >>> ***/
282
283extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow;
284asn_struct_free_f CN_IntegerMinLow_free;
285asn_struct_print_f CN_IntegerMinLow_print;
286asn_constr_check_f CN_IntegerMinLow_constraint;
287ber_type_decoder_f CN_IntegerMinLow_decode_ber;
288der_type_encoder_f CN_IntegerMinLow_encode_der;
289xer_type_decoder_f CN_IntegerMinLow_decode_xer;
290xer_type_encoder_f CN_IntegerMinLow_encode_xer;
291
292/*** <<< CODE [CN-IntegerMinLow] >>> ***/
293
294int
295CN_IntegerMinLow_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000296 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700297 const INTEGER_t *st = (const INTEGER_t *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000298 long value;
299
300 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700301 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000302 "%s: value not given (%s:%d)",
303 td->name, __FILE__, __LINE__);
304 return -1;
305 }
306
Lev Walkin2a744a72013-03-27 01:56:23 -0700307 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700308 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin2a744a72013-03-27 01:56:23 -0700309 "%s: value too large (%s:%d)",
310 td->name, __FILE__, __LINE__);
311 return -1;
312 }
Lev Walkin082cadc2005-08-14 02:18:27 +0000313
314 if((value <= 1)) {
315 /* Constraint check succeeded */
316 return 0;
317 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700318 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000319 "%s: constraint failed (%s:%d)",
320 td->name, __FILE__, __LINE__);
321 return -1;
322 }
323}
324
325/*
Lev Walkin2a744a72013-03-27 01:56:23 -0700326 * This type is implemented using INTEGER,
Lev Walkin082cadc2005-08-14 02:18:27 +0000327 * so here we adjust the DEF accordingly.
328 */
329static void
330CN_IntegerMinLow_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700331 td->free_struct = asn_DEF_INTEGER.free_struct;
332 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800333 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -0700334 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
335 td->der_encoder = asn_DEF_INTEGER.der_encoder;
336 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
337 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
338 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
339 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700340 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
341 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000342 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -0700343 td->per_constraints = asn_DEF_INTEGER.per_constraints;
344 td->elements = asn_DEF_INTEGER.elements;
345 td->elements_count = asn_DEF_INTEGER.elements_count;
346 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +0000347}
348
349void
350CN_IntegerMinLow_free(asn_TYPE_descriptor_t *td,
351 void *struct_ptr, int contents_only) {
352 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
353 td->free_struct(td, struct_ptr, contents_only);
354}
355
356int
357CN_IntegerMinLow_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
358 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
359 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
360 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
361}
362
363asn_dec_rval_t
364CN_IntegerMinLow_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
365 void **structure, const void *bufptr, size_t size, int tag_mode) {
366 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
367 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
368}
369
370asn_enc_rval_t
371CN_IntegerMinLow_encode_der(asn_TYPE_descriptor_t *td,
372 void *structure, int tag_mode, ber_tlv_tag_t tag,
373 asn_app_consume_bytes_f *cb, void *app_key) {
374 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
375 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
376}
377
378asn_dec_rval_t
379CN_IntegerMinLow_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
380 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
381 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
382 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
383}
384
385asn_enc_rval_t
386CN_IntegerMinLow_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
387 int ilevel, enum xer_encoder_flags_e flags,
388 asn_app_consume_bytes_f *cb, void *app_key) {
389 CN_IntegerMinLow_1_inherit_TYPE_descriptor(td);
390 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
391}
392
393
394/*** <<< STAT-DEFS [CN-IntegerMinLow] >>> ***/
395
Lev Walkina7591b52014-10-12 18:37:35 -0700396static const ber_tlv_tag_t asn_DEF_CN_IntegerMinLow_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000397 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
398};
399asn_TYPE_descriptor_t asn_DEF_CN_IntegerMinLow = {
400 "CN-IntegerMinLow",
401 "CN-IntegerMinLow",
402 CN_IntegerMinLow_free,
403 CN_IntegerMinLow_print,
404 CN_IntegerMinLow_constraint,
405 CN_IntegerMinLow_decode_ber,
406 CN_IntegerMinLow_encode_der,
407 CN_IntegerMinLow_decode_xer,
408 CN_IntegerMinLow_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000409 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700410 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000411 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000412 asn_DEF_CN_IntegerMinLow_tags_1,
413 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
414 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
415 asn_DEF_CN_IntegerMinLow_tags_1, /* Same as above */
416 sizeof(asn_DEF_CN_IntegerMinLow_tags_1)
417 /sizeof(asn_DEF_CN_IntegerMinLow_tags_1[0]), /* 1 */
418 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000419 0, 0, /* No members */
420 0 /* No specifics */
421};
422
423
424/*** <<< INCLUDES [NO-IntegerMinHigh] >>> ***/
425
426#include <INTEGER.h>
427
428/*** <<< TYPE-DECLS [NO-IntegerMinHigh] >>> ***/
429
430typedef INTEGER_t NO_IntegerMinHigh_t;
431
432/*** <<< FUNC-DECLS [NO-IntegerMinHigh] >>> ***/
433
434extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh;
435asn_struct_free_f NO_IntegerMinHigh_free;
436asn_struct_print_f NO_IntegerMinHigh_print;
437asn_constr_check_f NO_IntegerMinHigh_constraint;
438ber_type_decoder_f NO_IntegerMinHigh_decode_ber;
439der_type_encoder_f NO_IntegerMinHigh_encode_der;
440xer_type_decoder_f NO_IntegerMinHigh_decode_xer;
441xer_type_encoder_f NO_IntegerMinHigh_encode_xer;
442
443/*** <<< CODE [NO-IntegerMinHigh] >>> ***/
444
445int
446NO_IntegerMinHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000447 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000448 const INTEGER_t *st = (const INTEGER_t *)sptr;
449 long value;
450
451 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700452 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000453 "%s: value not given (%s:%d)",
454 td->name, __FILE__, __LINE__);
455 return -1;
456 }
457
458 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700459 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000460 "%s: value too large (%s:%d)",
461 td->name, __FILE__, __LINE__);
462 return -1;
463 }
464
Lev Walkinc3f0b892005-08-14 02:40:04 +0000465 if((value <= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000466 /* Constraint check succeeded */
467 return 0;
468 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700469 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000470 "%s: constraint failed (%s:%d)",
471 td->name, __FILE__, __LINE__);
472 return -1;
473 }
474}
475
476/*
477 * This type is implemented using INTEGER,
478 * so here we adjust the DEF accordingly.
479 */
480static void
481NO_IntegerMinHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
482 td->free_struct = asn_DEF_INTEGER.free_struct;
483 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800484 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000485 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
486 td->der_encoder = asn_DEF_INTEGER.der_encoder;
487 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
488 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000489 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000490 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700491 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
492 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000493 if(!td->per_constraints)
494 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000495 td->elements = asn_DEF_INTEGER.elements;
496 td->elements_count = asn_DEF_INTEGER.elements_count;
497 td->specifics = asn_DEF_INTEGER.specifics;
498}
499
500void
501NO_IntegerMinHigh_free(asn_TYPE_descriptor_t *td,
502 void *struct_ptr, int contents_only) {
503 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
504 td->free_struct(td, struct_ptr, contents_only);
505}
506
507int
508NO_IntegerMinHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
509 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
510 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
511 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
512}
513
514asn_dec_rval_t
515NO_IntegerMinHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
516 void **structure, const void *bufptr, size_t size, int tag_mode) {
517 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
518 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
519}
520
521asn_enc_rval_t
522NO_IntegerMinHigh_encode_der(asn_TYPE_descriptor_t *td,
523 void *structure, int tag_mode, ber_tlv_tag_t tag,
524 asn_app_consume_bytes_f *cb, void *app_key) {
525 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
526 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
527}
528
529asn_dec_rval_t
530NO_IntegerMinHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
531 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
532 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
533 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
534}
535
536asn_enc_rval_t
537NO_IntegerMinHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
538 int ilevel, enum xer_encoder_flags_e flags,
539 asn_app_consume_bytes_f *cb, void *app_key) {
540 NO_IntegerMinHigh_1_inherit_TYPE_descriptor(td);
541 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
542}
543
544
545/*** <<< STAT-DEFS [NO-IntegerMinHigh] >>> ***/
546
Lev Walkina7591b52014-10-12 18:37:35 -0700547static const ber_tlv_tag_t asn_DEF_NO_IntegerMinHigh_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000548 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
549};
550asn_TYPE_descriptor_t asn_DEF_NO_IntegerMinHigh = {
551 "NO-IntegerMinHigh",
552 "NO-IntegerMinHigh",
553 NO_IntegerMinHigh_free,
554 NO_IntegerMinHigh_print,
555 NO_IntegerMinHigh_constraint,
556 NO_IntegerMinHigh_decode_ber,
557 NO_IntegerMinHigh_encode_der,
558 NO_IntegerMinHigh_decode_xer,
559 NO_IntegerMinHigh_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000560 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700561 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000562 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000563 asn_DEF_NO_IntegerMinHigh_tags_1,
564 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
565 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
566 asn_DEF_NO_IntegerMinHigh_tags_1, /* Same as above */
567 sizeof(asn_DEF_NO_IntegerMinHigh_tags_1)
568 /sizeof(asn_DEF_NO_IntegerMinHigh_tags_1[0]), /* 1 */
569 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000570 0, 0, /* No members */
571 0 /* No specifics */
572};
573
574
575/*** <<< INCLUDES [NO-IntegerLowHigh] >>> ***/
576
Lev Walkin8bb57a22007-12-03 13:41:36 +0000577#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000578
579/*** <<< TYPE-DECLS [NO-IntegerLowHigh] >>> ***/
580
Lev Walkin8bb57a22007-12-03 13:41:36 +0000581typedef unsigned long NO_IntegerLowHigh_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000582
583/*** <<< FUNC-DECLS [NO-IntegerLowHigh] >>> ***/
584
585extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh;
586asn_struct_free_f NO_IntegerLowHigh_free;
587asn_struct_print_f NO_IntegerLowHigh_print;
588asn_constr_check_f NO_IntegerLowHigh_constraint;
589ber_type_decoder_f NO_IntegerLowHigh_decode_ber;
590der_type_encoder_f NO_IntegerLowHigh_encode_der;
591xer_type_decoder_f NO_IntegerLowHigh_decode_xer;
592xer_type_encoder_f NO_IntegerLowHigh_encode_xer;
593
594/*** <<< CODE [NO-IntegerLowHigh] >>> ***/
595
596int
597NO_IntegerLowHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000598 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +0000599 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +0000600
601 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700602 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000603 "%s: value not given (%s:%d)",
604 td->name, __FILE__, __LINE__);
605 return -1;
606 }
607
Lev Walkin8bb57a22007-12-03 13:41:36 +0000608 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000609
Lev Walkinc3f0b892005-08-14 02:40:04 +0000610 if((value >= 1 && value <= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000611 /* Constraint check succeeded */
612 return 0;
613 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700614 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000615 "%s: constraint failed (%s:%d)",
616 td->name, __FILE__, __LINE__);
617 return -1;
618 }
619}
620
621/*
Lev Walkin8bb57a22007-12-03 13:41:36 +0000622 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +0000623 * so here we adjust the DEF accordingly.
624 */
625static void
626NO_IntegerLowHigh_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +0000627 td->free_struct = asn_DEF_NativeInteger.free_struct;
628 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800629 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin8bb57a22007-12-03 13:41:36 +0000630 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
631 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
632 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
633 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
634 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
635 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700636 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
637 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000638 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +0000639 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
640 td->elements = asn_DEF_NativeInteger.elements;
641 td->elements_count = asn_DEF_NativeInteger.elements_count;
642 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +0000643}
644
645void
646NO_IntegerLowHigh_free(asn_TYPE_descriptor_t *td,
647 void *struct_ptr, int contents_only) {
648 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
649 td->free_struct(td, struct_ptr, contents_only);
650}
651
652int
653NO_IntegerLowHigh_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
654 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
655 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
656 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
657}
658
659asn_dec_rval_t
660NO_IntegerLowHigh_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
661 void **structure, const void *bufptr, size_t size, int tag_mode) {
662 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
663 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
664}
665
666asn_enc_rval_t
667NO_IntegerLowHigh_encode_der(asn_TYPE_descriptor_t *td,
668 void *structure, int tag_mode, ber_tlv_tag_t tag,
669 asn_app_consume_bytes_f *cb, void *app_key) {
670 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
671 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
672}
673
674asn_dec_rval_t
675NO_IntegerLowHigh_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
676 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
677 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
678 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
679}
680
681asn_enc_rval_t
682NO_IntegerLowHigh_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
683 int ilevel, enum xer_encoder_flags_e flags,
684 asn_app_consume_bytes_f *cb, void *app_key) {
685 NO_IntegerLowHigh_1_inherit_TYPE_descriptor(td);
686 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
687}
688
689
690/*** <<< STAT-DEFS [NO-IntegerLowHigh] >>> ***/
691
johvike70c4072017-05-09 11:06:12 +0200692static asn_INTEGER_specifics_t asn_SPC_NO_IntegerLowHigh_specs_1 = {
Lev Walkin8bb57a22007-12-03 13:41:36 +0000693 0, 0, 0, 0, 0,
694 0, /* Native long size */
695 1 /* Unsigned representation */
696};
Lev Walkina7591b52014-10-12 18:37:35 -0700697static const ber_tlv_tag_t asn_DEF_NO_IntegerLowHigh_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000698 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
699};
700asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowHigh = {
701 "NO-IntegerLowHigh",
702 "NO-IntegerLowHigh",
703 NO_IntegerLowHigh_free,
704 NO_IntegerLowHigh_print,
705 NO_IntegerLowHigh_constraint,
706 NO_IntegerLowHigh_decode_ber,
707 NO_IntegerLowHigh_encode_der,
708 NO_IntegerLowHigh_decode_xer,
709 NO_IntegerLowHigh_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000710 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700711 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000712 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000713 asn_DEF_NO_IntegerLowHigh_tags_1,
714 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
715 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
716 asn_DEF_NO_IntegerLowHigh_tags_1, /* Same as above */
717 sizeof(asn_DEF_NO_IntegerLowHigh_tags_1)
718 /sizeof(asn_DEF_NO_IntegerLowHigh_tags_1[0]), /* 1 */
719 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000720 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +0000721 &asn_SPC_NO_IntegerLowHigh_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +0000722};
723
724
725/*** <<< INCLUDES [CN-IntegerLowMax] >>> ***/
726
Lev Walkin2a744a72013-03-27 01:56:23 -0700727#include <INTEGER.h>
Lev Walkin082cadc2005-08-14 02:18:27 +0000728
729/*** <<< TYPE-DECLS [CN-IntegerLowMax] >>> ***/
730
Lev Walkin2a744a72013-03-27 01:56:23 -0700731typedef INTEGER_t CN_IntegerLowMax_t;
Lev Walkin082cadc2005-08-14 02:18:27 +0000732
733/*** <<< FUNC-DECLS [CN-IntegerLowMax] >>> ***/
734
735extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax;
736asn_struct_free_f CN_IntegerLowMax_free;
737asn_struct_print_f CN_IntegerLowMax_print;
738asn_constr_check_f CN_IntegerLowMax_constraint;
739ber_type_decoder_f CN_IntegerLowMax_decode_ber;
740der_type_encoder_f CN_IntegerLowMax_encode_der;
741xer_type_decoder_f CN_IntegerLowMax_decode_xer;
742xer_type_encoder_f CN_IntegerLowMax_encode_xer;
743
744/*** <<< CODE [CN-IntegerLowMax] >>> ***/
745
746int
747CN_IntegerLowMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000748 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700749 const INTEGER_t *st = (const INTEGER_t *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +0000750 long value;
751
752 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700753 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000754 "%s: value not given (%s:%d)",
755 td->name, __FILE__, __LINE__);
756 return -1;
757 }
758
Lev Walkin2a744a72013-03-27 01:56:23 -0700759 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700760 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin2a744a72013-03-27 01:56:23 -0700761 "%s: value too large (%s:%d)",
762 td->name, __FILE__, __LINE__);
763 return -1;
764 }
Lev Walkin082cadc2005-08-14 02:18:27 +0000765
766 if((value >= 1)) {
767 /* Constraint check succeeded */
768 return 0;
769 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700770 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000771 "%s: constraint failed (%s:%d)",
772 td->name, __FILE__, __LINE__);
773 return -1;
774 }
775}
776
777/*
Lev Walkin2a744a72013-03-27 01:56:23 -0700778 * This type is implemented using INTEGER,
Lev Walkin082cadc2005-08-14 02:18:27 +0000779 * so here we adjust the DEF accordingly.
780 */
781static void
782CN_IntegerLowMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -0700783 td->free_struct = asn_DEF_INTEGER.free_struct;
784 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800785 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -0700786 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
787 td->der_encoder = asn_DEF_INTEGER.der_encoder;
788 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
789 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
790 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
791 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700792 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
793 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000794 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -0700795 td->per_constraints = asn_DEF_INTEGER.per_constraints;
796 td->elements = asn_DEF_INTEGER.elements;
797 td->elements_count = asn_DEF_INTEGER.elements_count;
798 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +0000799}
800
801void
802CN_IntegerLowMax_free(asn_TYPE_descriptor_t *td,
803 void *struct_ptr, int contents_only) {
804 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
805 td->free_struct(td, struct_ptr, contents_only);
806}
807
808int
809CN_IntegerLowMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
810 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
811 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
812 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
813}
814
815asn_dec_rval_t
816CN_IntegerLowMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
817 void **structure, const void *bufptr, size_t size, int tag_mode) {
818 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
819 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
820}
821
822asn_enc_rval_t
823CN_IntegerLowMax_encode_der(asn_TYPE_descriptor_t *td,
824 void *structure, int tag_mode, ber_tlv_tag_t tag,
825 asn_app_consume_bytes_f *cb, void *app_key) {
826 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
827 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
828}
829
830asn_dec_rval_t
831CN_IntegerLowMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
832 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
833 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
834 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
835}
836
837asn_enc_rval_t
838CN_IntegerLowMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
839 int ilevel, enum xer_encoder_flags_e flags,
840 asn_app_consume_bytes_f *cb, void *app_key) {
841 CN_IntegerLowMax_1_inherit_TYPE_descriptor(td);
842 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
843}
844
845
846/*** <<< STAT-DEFS [CN-IntegerLowMax] >>> ***/
847
Lev Walkina7591b52014-10-12 18:37:35 -0700848static const ber_tlv_tag_t asn_DEF_CN_IntegerLowMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +0000849 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
850};
851asn_TYPE_descriptor_t asn_DEF_CN_IntegerLowMax = {
852 "CN-IntegerLowMax",
853 "CN-IntegerLowMax",
854 CN_IntegerLowMax_free,
855 CN_IntegerLowMax_print,
856 CN_IntegerLowMax_constraint,
857 CN_IntegerLowMax_decode_ber,
858 CN_IntegerLowMax_encode_der,
859 CN_IntegerLowMax_decode_xer,
860 CN_IntegerLowMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000861 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -0700862 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +0000863 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000864 asn_DEF_CN_IntegerLowMax_tags_1,
865 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
866 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
867 asn_DEF_CN_IntegerLowMax_tags_1, /* Same as above */
868 sizeof(asn_DEF_CN_IntegerLowMax_tags_1)
869 /sizeof(asn_DEF_CN_IntegerLowMax_tags_1[0]), /* 1 */
870 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +0000871 0, 0, /* No members */
872 0 /* No specifics */
873};
874
875
876/*** <<< INCLUDES [NO-IntegerHighMax] >>> ***/
877
878#include <INTEGER.h>
879
880/*** <<< TYPE-DECLS [NO-IntegerHighMax] >>> ***/
881
882typedef INTEGER_t NO_IntegerHighMax_t;
883
884/*** <<< FUNC-DECLS [NO-IntegerHighMax] >>> ***/
885
886extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax;
887asn_struct_free_f NO_IntegerHighMax_free;
888asn_struct_print_f NO_IntegerHighMax_print;
889asn_constr_check_f NO_IntegerHighMax_constraint;
890ber_type_decoder_f NO_IntegerHighMax_decode_ber;
891der_type_encoder_f NO_IntegerHighMax_encode_der;
892xer_type_decoder_f NO_IntegerHighMax_decode_xer;
893xer_type_encoder_f NO_IntegerHighMax_encode_xer;
894
895/*** <<< CODE [NO-IntegerHighMax] >>> ***/
896
897int
898NO_IntegerHighMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +0000899 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000900 const INTEGER_t *st = (const INTEGER_t *)sptr;
901 long value;
902
903 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700904 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000905 "%s: value not given (%s:%d)",
906 td->name, __FILE__, __LINE__);
907 return -1;
908 }
909
910 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700911 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000912 "%s: value too large (%s:%d)",
913 td->name, __FILE__, __LINE__);
914 return -1;
915 }
916
Lev Walkinc3f0b892005-08-14 02:40:04 +0000917 if((value >= 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +0000918 /* Constraint check succeeded */
919 return 0;
920 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -0700921 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +0000922 "%s: constraint failed (%s:%d)",
923 td->name, __FILE__, __LINE__);
924 return -1;
925 }
926}
927
928/*
929 * This type is implemented using INTEGER,
930 * so here we adjust the DEF accordingly.
931 */
932static void
933NO_IntegerHighMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
934 td->free_struct = asn_DEF_INTEGER.free_struct;
935 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -0800936 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000937 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
938 td->der_encoder = asn_DEF_INTEGER.der_encoder;
939 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
940 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000941 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000942 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -0700943 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
944 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +0000945 if(!td->per_constraints)
946 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +0000947 td->elements = asn_DEF_INTEGER.elements;
948 td->elements_count = asn_DEF_INTEGER.elements_count;
949 td->specifics = asn_DEF_INTEGER.specifics;
950}
951
952void
953NO_IntegerHighMax_free(asn_TYPE_descriptor_t *td,
954 void *struct_ptr, int contents_only) {
955 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
956 td->free_struct(td, struct_ptr, contents_only);
957}
958
959int
960NO_IntegerHighMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
961 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
962 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
963 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
964}
965
966asn_dec_rval_t
967NO_IntegerHighMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
968 void **structure, const void *bufptr, size_t size, int tag_mode) {
969 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
970 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
971}
972
973asn_enc_rval_t
974NO_IntegerHighMax_encode_der(asn_TYPE_descriptor_t *td,
975 void *structure, int tag_mode, ber_tlv_tag_t tag,
976 asn_app_consume_bytes_f *cb, void *app_key) {
977 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
978 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
979}
980
981asn_dec_rval_t
982NO_IntegerHighMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
983 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
984 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
985 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
986}
987
988asn_enc_rval_t
989NO_IntegerHighMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
990 int ilevel, enum xer_encoder_flags_e flags,
991 asn_app_consume_bytes_f *cb, void *app_key) {
992 NO_IntegerHighMax_1_inherit_TYPE_descriptor(td);
993 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
994}
995
996
997/*** <<< STAT-DEFS [NO-IntegerHighMax] >>> ***/
998
Lev Walkina7591b52014-10-12 18:37:35 -0700999static const ber_tlv_tag_t asn_DEF_NO_IntegerHighMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001000 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1001};
1002asn_TYPE_descriptor_t asn_DEF_NO_IntegerHighMax = {
1003 "NO-IntegerHighMax",
1004 "NO-IntegerHighMax",
1005 NO_IntegerHighMax_free,
1006 NO_IntegerHighMax_print,
1007 NO_IntegerHighMax_constraint,
1008 NO_IntegerHighMax_decode_ber,
1009 NO_IntegerHighMax_encode_der,
1010 NO_IntegerHighMax_decode_xer,
1011 NO_IntegerHighMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001012 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001013 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001014 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001015 asn_DEF_NO_IntegerHighMax_tags_1,
1016 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
1017 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
1018 asn_DEF_NO_IntegerHighMax_tags_1, /* Same as above */
1019 sizeof(asn_DEF_NO_IntegerHighMax_tags_1)
1020 /sizeof(asn_DEF_NO_IntegerHighMax_tags_1[0]), /* 1 */
1021 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001022 0, 0, /* No members */
1023 0 /* No specifics */
1024};
1025
1026
1027/*** <<< INCLUDES [NO-IntegerLowestMax] >>> ***/
1028
1029#include <INTEGER.h>
1030
1031/*** <<< TYPE-DECLS [NO-IntegerLowestMax] >>> ***/
1032
1033typedef INTEGER_t NO_IntegerLowestMax_t;
1034
1035/*** <<< FUNC-DECLS [NO-IntegerLowestMax] >>> ***/
1036
1037extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax;
1038asn_struct_free_f NO_IntegerLowestMax_free;
1039asn_struct_print_f NO_IntegerLowestMax_print;
1040asn_constr_check_f NO_IntegerLowestMax_constraint;
1041ber_type_decoder_f NO_IntegerLowestMax_decode_ber;
1042der_type_encoder_f NO_IntegerLowestMax_encode_der;
1043xer_type_decoder_f NO_IntegerLowestMax_decode_xer;
1044xer_type_encoder_f NO_IntegerLowestMax_encode_xer;
1045
1046/*** <<< CODE [NO-IntegerLowestMax] >>> ***/
1047
1048int
1049NO_IntegerLowestMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001050 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001051 const INTEGER_t *st = (const INTEGER_t *)sptr;
1052 long value;
1053
1054 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001055 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001056 "%s: value not given (%s:%d)",
1057 td->name, __FILE__, __LINE__);
1058 return -1;
1059 }
1060
1061 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001062 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001063 "%s: value too large (%s:%d)",
1064 td->name, __FILE__, __LINE__);
1065 return -1;
1066 }
1067
Lev Walkinc3f0b892005-08-14 02:40:04 +00001068 if((value >= -3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001069 /* Constraint check succeeded */
1070 return 0;
1071 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001072 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001073 "%s: constraint failed (%s:%d)",
1074 td->name, __FILE__, __LINE__);
1075 return -1;
1076 }
1077}
1078
1079/*
1080 * This type is implemented using INTEGER,
1081 * so here we adjust the DEF accordingly.
1082 */
1083static void
1084NO_IntegerLowestMax_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
1085 td->free_struct = asn_DEF_INTEGER.free_struct;
1086 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001087 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +00001088 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
1089 td->der_encoder = asn_DEF_INTEGER.der_encoder;
1090 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
1091 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001092 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001093 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001094 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
1095 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001096 if(!td->per_constraints)
1097 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkin082cadc2005-08-14 02:18:27 +00001098 td->elements = asn_DEF_INTEGER.elements;
1099 td->elements_count = asn_DEF_INTEGER.elements_count;
1100 td->specifics = asn_DEF_INTEGER.specifics;
1101}
1102
1103void
1104NO_IntegerLowestMax_free(asn_TYPE_descriptor_t *td,
1105 void *struct_ptr, int contents_only) {
1106 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1107 td->free_struct(td, struct_ptr, contents_only);
1108}
1109
1110int
1111NO_IntegerLowestMax_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1112 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1113 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1114 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1115}
1116
1117asn_dec_rval_t
1118NO_IntegerLowestMax_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1119 void **structure, const void *bufptr, size_t size, int tag_mode) {
1120 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1121 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1122}
1123
1124asn_enc_rval_t
1125NO_IntegerLowestMax_encode_der(asn_TYPE_descriptor_t *td,
1126 void *structure, int tag_mode, ber_tlv_tag_t tag,
1127 asn_app_consume_bytes_f *cb, void *app_key) {
1128 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1129 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1130}
1131
1132asn_dec_rval_t
1133NO_IntegerLowestMax_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1134 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1135 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1136 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1137}
1138
1139asn_enc_rval_t
1140NO_IntegerLowestMax_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1141 int ilevel, enum xer_encoder_flags_e flags,
1142 asn_app_consume_bytes_f *cb, void *app_key) {
1143 NO_IntegerLowestMax_1_inherit_TYPE_descriptor(td);
1144 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1145}
1146
1147
1148/*** <<< STAT-DEFS [NO-IntegerLowestMax] >>> ***/
1149
Lev Walkina7591b52014-10-12 18:37:35 -07001150static const ber_tlv_tag_t asn_DEF_NO_IntegerLowestMax_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001151 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1152};
1153asn_TYPE_descriptor_t asn_DEF_NO_IntegerLowestMax = {
1154 "NO-IntegerLowestMax",
1155 "NO-IntegerLowestMax",
1156 NO_IntegerLowestMax_free,
1157 NO_IntegerLowestMax_print,
1158 NO_IntegerLowestMax_constraint,
1159 NO_IntegerLowestMax_decode_ber,
1160 NO_IntegerLowestMax_encode_der,
1161 NO_IntegerLowestMax_decode_xer,
1162 NO_IntegerLowestMax_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001163 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001164 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001165 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001166 asn_DEF_NO_IntegerLowestMax_tags_1,
1167 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1168 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1169 asn_DEF_NO_IntegerLowestMax_tags_1, /* Same as above */
1170 sizeof(asn_DEF_NO_IntegerLowestMax_tags_1)
1171 /sizeof(asn_DEF_NO_IntegerLowestMax_tags_1[0]), /* 1 */
1172 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001173 0, 0, /* No members */
1174 0 /* No specifics */
1175};
1176
1177
1178/*** <<< INCLUDES [NO-IntegerOutRange] >>> ***/
1179
Lev Walkin8bb57a22007-12-03 13:41:36 +00001180#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001181
1182/*** <<< TYPE-DECLS [NO-IntegerOutRange] >>> ***/
1183
Lev Walkin8bb57a22007-12-03 13:41:36 +00001184typedef unsigned long NO_IntegerOutRange_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001185
1186/*** <<< FUNC-DECLS [NO-IntegerOutRange] >>> ***/
1187
1188extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange;
1189asn_struct_free_f NO_IntegerOutRange_free;
1190asn_struct_print_f NO_IntegerOutRange_print;
1191asn_constr_check_f NO_IntegerOutRange_constraint;
1192ber_type_decoder_f NO_IntegerOutRange_decode_ber;
1193der_type_encoder_f NO_IntegerOutRange_encode_der;
1194xer_type_decoder_f NO_IntegerOutRange_decode_xer;
1195xer_type_encoder_f NO_IntegerOutRange_encode_xer;
1196
1197/*** <<< CODE [NO-IntegerOutRange] >>> ***/
1198
1199int
1200NO_IntegerOutRange_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001201 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001202 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +00001203
1204 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001205 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001206 "%s: value not given (%s:%d)",
1207 td->name, __FILE__, __LINE__);
1208 return -1;
1209 }
1210
Lev Walkin8bb57a22007-12-03 13:41:36 +00001211 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001212
Lev Walkinc3f0b892005-08-14 02:40:04 +00001213 if((value >= 3000000000 && value <= 3000000001)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001214 /* Constraint check succeeded */
1215 return 0;
1216 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001217 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001218 "%s: constraint failed (%s:%d)",
1219 td->name, __FILE__, __LINE__);
1220 return -1;
1221 }
1222}
1223
1224/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00001225 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001226 * so here we adjust the DEF accordingly.
1227 */
1228static void
1229NO_IntegerOutRange_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001230 td->free_struct = asn_DEF_NativeInteger.free_struct;
1231 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001232 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin8bb57a22007-12-03 13:41:36 +00001233 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1234 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1235 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1236 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
1237 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
1238 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001239 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1240 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001241 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00001242 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
1243 td->elements = asn_DEF_NativeInteger.elements;
1244 td->elements_count = asn_DEF_NativeInteger.elements_count;
1245 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +00001246}
1247
1248void
1249NO_IntegerOutRange_free(asn_TYPE_descriptor_t *td,
1250 void *struct_ptr, int contents_only) {
1251 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1252 td->free_struct(td, struct_ptr, contents_only);
1253}
1254
1255int
1256NO_IntegerOutRange_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1257 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1258 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1259 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1260}
1261
1262asn_dec_rval_t
1263NO_IntegerOutRange_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1264 void **structure, const void *bufptr, size_t size, int tag_mode) {
1265 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1266 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1267}
1268
1269asn_enc_rval_t
1270NO_IntegerOutRange_encode_der(asn_TYPE_descriptor_t *td,
1271 void *structure, int tag_mode, ber_tlv_tag_t tag,
1272 asn_app_consume_bytes_f *cb, void *app_key) {
1273 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1274 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1275}
1276
1277asn_dec_rval_t
1278NO_IntegerOutRange_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1279 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1280 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1281 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1282}
1283
1284asn_enc_rval_t
1285NO_IntegerOutRange_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1286 int ilevel, enum xer_encoder_flags_e flags,
1287 asn_app_consume_bytes_f *cb, void *app_key) {
1288 NO_IntegerOutRange_1_inherit_TYPE_descriptor(td);
1289 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1290}
1291
1292
1293/*** <<< STAT-DEFS [NO-IntegerOutRange] >>> ***/
1294
johvike70c4072017-05-09 11:06:12 +02001295static asn_INTEGER_specifics_t asn_SPC_NO_IntegerOutRange_specs_1 = {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001296 0, 0, 0, 0, 0,
1297 0, /* Native long size */
1298 1 /* Unsigned representation */
1299};
Lev Walkina7591b52014-10-12 18:37:35 -07001300static const ber_tlv_tag_t asn_DEF_NO_IntegerOutRange_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001301 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1302};
1303asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutRange = {
1304 "NO-IntegerOutRange",
1305 "NO-IntegerOutRange",
1306 NO_IntegerOutRange_free,
1307 NO_IntegerOutRange_print,
1308 NO_IntegerOutRange_constraint,
1309 NO_IntegerOutRange_decode_ber,
1310 NO_IntegerOutRange_encode_der,
1311 NO_IntegerOutRange_decode_xer,
1312 NO_IntegerOutRange_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001313 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001314 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001315 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001316 asn_DEF_NO_IntegerOutRange_tags_1,
1317 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1318 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1319 asn_DEF_NO_IntegerOutRange_tags_1, /* Same as above */
1320 sizeof(asn_DEF_NO_IntegerOutRange_tags_1)
1321 /sizeof(asn_DEF_NO_IntegerOutRange_tags_1[0]), /* 1 */
1322 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001323 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001324 &asn_SPC_NO_IntegerOutRange_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +00001325};
1326
1327
1328/*** <<< INCLUDES [NO-IntegerOutValue] >>> ***/
1329
Lev Walkin8bb57a22007-12-03 13:41:36 +00001330#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001331
1332/*** <<< TYPE-DECLS [NO-IntegerOutValue] >>> ***/
1333
Lev Walkin8bb57a22007-12-03 13:41:36 +00001334typedef unsigned long NO_IntegerOutValue_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001335
1336/*** <<< FUNC-DECLS [NO-IntegerOutValue] >>> ***/
1337
1338extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue;
1339asn_struct_free_f NO_IntegerOutValue_free;
1340asn_struct_print_f NO_IntegerOutValue_print;
1341asn_constr_check_f NO_IntegerOutValue_constraint;
1342ber_type_decoder_f NO_IntegerOutValue_decode_ber;
1343der_type_encoder_f NO_IntegerOutValue_encode_der;
1344xer_type_decoder_f NO_IntegerOutValue_decode_xer;
1345xer_type_encoder_f NO_IntegerOutValue_encode_xer;
1346
1347/*** <<< CODE [NO-IntegerOutValue] >>> ***/
1348
1349int
1350NO_IntegerOutValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001351 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001352 unsigned long value;
Lev Walkin082cadc2005-08-14 02:18:27 +00001353
1354 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001355 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001356 "%s: value not given (%s:%d)",
1357 td->name, __FILE__, __LINE__);
1358 return -1;
1359 }
1360
Lev Walkin8bb57a22007-12-03 13:41:36 +00001361 value = *(const unsigned long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001362
Lev Walkinc3f0b892005-08-14 02:40:04 +00001363 if((value == 3000000000)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001364 /* Constraint check succeeded */
1365 return 0;
1366 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001367 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001368 "%s: constraint failed (%s:%d)",
1369 td->name, __FILE__, __LINE__);
1370 return -1;
1371 }
1372}
1373
1374/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00001375 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001376 * so here we adjust the DEF accordingly.
1377 */
1378static void
1379NO_IntegerOutValue_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001380 td->free_struct = asn_DEF_NativeInteger.free_struct;
1381 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001382 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin8bb57a22007-12-03 13:41:36 +00001383 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1384 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1385 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1386 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
1387 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
1388 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001389 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1390 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001391 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00001392 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
1393 td->elements = asn_DEF_NativeInteger.elements;
1394 td->elements_count = asn_DEF_NativeInteger.elements_count;
1395 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkin082cadc2005-08-14 02:18:27 +00001396}
1397
1398void
1399NO_IntegerOutValue_free(asn_TYPE_descriptor_t *td,
1400 void *struct_ptr, int contents_only) {
1401 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1402 td->free_struct(td, struct_ptr, contents_only);
1403}
1404
1405int
1406NO_IntegerOutValue_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1407 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1408 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1409 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1410}
1411
1412asn_dec_rval_t
1413NO_IntegerOutValue_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1414 void **structure, const void *bufptr, size_t size, int tag_mode) {
1415 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1416 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1417}
1418
1419asn_enc_rval_t
1420NO_IntegerOutValue_encode_der(asn_TYPE_descriptor_t *td,
1421 void *structure, int tag_mode, ber_tlv_tag_t tag,
1422 asn_app_consume_bytes_f *cb, void *app_key) {
1423 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1424 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1425}
1426
1427asn_dec_rval_t
1428NO_IntegerOutValue_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1429 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1430 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1431 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1432}
1433
1434asn_enc_rval_t
1435NO_IntegerOutValue_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1436 int ilevel, enum xer_encoder_flags_e flags,
1437 asn_app_consume_bytes_f *cb, void *app_key) {
1438 NO_IntegerOutValue_1_inherit_TYPE_descriptor(td);
1439 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1440}
1441
1442
1443/*** <<< STAT-DEFS [NO-IntegerOutValue] >>> ***/
1444
johvike70c4072017-05-09 11:06:12 +02001445static asn_INTEGER_specifics_t asn_SPC_NO_IntegerOutValue_specs_1 = {
Lev Walkin8bb57a22007-12-03 13:41:36 +00001446 0, 0, 0, 0, 0,
1447 0, /* Native long size */
1448 1 /* Unsigned representation */
1449};
Lev Walkina7591b52014-10-12 18:37:35 -07001450static const ber_tlv_tag_t asn_DEF_NO_IntegerOutValue_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001451 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1452};
1453asn_TYPE_descriptor_t asn_DEF_NO_IntegerOutValue = {
1454 "NO-IntegerOutValue",
1455 "NO-IntegerOutValue",
1456 NO_IntegerOutValue_free,
1457 NO_IntegerOutValue_print,
1458 NO_IntegerOutValue_constraint,
1459 NO_IntegerOutValue_decode_ber,
1460 NO_IntegerOutValue_encode_der,
1461 NO_IntegerOutValue_decode_xer,
1462 NO_IntegerOutValue_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001463 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001464 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001465 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001466 asn_DEF_NO_IntegerOutValue_tags_1,
1467 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1468 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1469 asn_DEF_NO_IntegerOutValue_tags_1, /* Same as above */
1470 sizeof(asn_DEF_NO_IntegerOutValue_tags_1)
1471 /sizeof(asn_DEF_NO_IntegerOutValue_tags_1[0]), /* 1 */
1472 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001473 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00001474 &asn_SPC_NO_IntegerOutValue_specs_1 /* Additional specs */
Lev Walkin082cadc2005-08-14 02:18:27 +00001475};
1476
1477
1478/*** <<< INCLUDES [OK-IntegerInRange1] >>> ***/
1479
Lev Walkinc3f0b892005-08-14 02:40:04 +00001480#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001481
1482/*** <<< TYPE-DECLS [OK-IntegerInRange1] >>> ***/
1483
Lev Walkinc3f0b892005-08-14 02:40:04 +00001484typedef long OK_IntegerInRange1_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001485
1486/*** <<< FUNC-DECLS [OK-IntegerInRange1] >>> ***/
1487
1488extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1;
1489asn_struct_free_f OK_IntegerInRange1_free;
1490asn_struct_print_f OK_IntegerInRange1_print;
1491asn_constr_check_f OK_IntegerInRange1_constraint;
1492ber_type_decoder_f OK_IntegerInRange1_decode_ber;
1493der_type_encoder_f OK_IntegerInRange1_encode_der;
1494xer_type_decoder_f OK_IntegerInRange1_decode_xer;
1495xer_type_encoder_f OK_IntegerInRange1_encode_xer;
1496
1497/*** <<< CODE [OK-IntegerInRange1] >>> ***/
1498
1499int
1500OK_IntegerInRange1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001501 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001502 long value;
1503
1504 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001505 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001506 "%s: value not given (%s:%d)",
1507 td->name, __FILE__, __LINE__);
1508 return -1;
1509 }
1510
Lev Walkinc3f0b892005-08-14 02:40:04 +00001511 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001512
1513 if((value >= -100 && value <= 100)) {
1514 /* Constraint check succeeded */
1515 return 0;
1516 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001517 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001518 "%s: constraint failed (%s:%d)",
1519 td->name, __FILE__, __LINE__);
1520 return -1;
1521 }
1522}
1523
1524/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001525 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001526 * so here we adjust the DEF accordingly.
1527 */
1528static void
1529OK_IntegerInRange1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001530 td->free_struct = asn_DEF_NativeInteger.free_struct;
1531 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001532 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001533 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1534 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1535 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1536 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001537 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001538 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001539 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1540 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001541 if(!td->per_constraints)
1542 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001543 td->elements = asn_DEF_NativeInteger.elements;
1544 td->elements_count = asn_DEF_NativeInteger.elements_count;
1545 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001546}
1547
1548void
1549OK_IntegerInRange1_free(asn_TYPE_descriptor_t *td,
1550 void *struct_ptr, int contents_only) {
1551 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1552 td->free_struct(td, struct_ptr, contents_only);
1553}
1554
1555int
1556OK_IntegerInRange1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1557 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1558 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1559 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1560}
1561
1562asn_dec_rval_t
1563OK_IntegerInRange1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1564 void **structure, const void *bufptr, size_t size, int tag_mode) {
1565 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1566 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1567}
1568
1569asn_enc_rval_t
1570OK_IntegerInRange1_encode_der(asn_TYPE_descriptor_t *td,
1571 void *structure, int tag_mode, ber_tlv_tag_t tag,
1572 asn_app_consume_bytes_f *cb, void *app_key) {
1573 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1574 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1575}
1576
1577asn_dec_rval_t
1578OK_IntegerInRange1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1579 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1580 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1581 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1582}
1583
1584asn_enc_rval_t
1585OK_IntegerInRange1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1586 int ilevel, enum xer_encoder_flags_e flags,
1587 asn_app_consume_bytes_f *cb, void *app_key) {
1588 OK_IntegerInRange1_1_inherit_TYPE_descriptor(td);
1589 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1590}
1591
1592
1593/*** <<< STAT-DEFS [OK-IntegerInRange1] >>> ***/
1594
Lev Walkina7591b52014-10-12 18:37:35 -07001595static const ber_tlv_tag_t asn_DEF_OK_IntegerInRange1_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001596 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1597};
1598asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange1 = {
1599 "OK-IntegerInRange1",
1600 "OK-IntegerInRange1",
1601 OK_IntegerInRange1_free,
1602 OK_IntegerInRange1_print,
1603 OK_IntegerInRange1_constraint,
1604 OK_IntegerInRange1_decode_ber,
1605 OK_IntegerInRange1_encode_der,
1606 OK_IntegerInRange1_decode_xer,
1607 OK_IntegerInRange1_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001608 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001609 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001610 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001611 asn_DEF_OK_IntegerInRange1_tags_1,
1612 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1613 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1614 asn_DEF_OK_IntegerInRange1_tags_1, /* Same as above */
1615 sizeof(asn_DEF_OK_IntegerInRange1_tags_1)
1616 /sizeof(asn_DEF_OK_IntegerInRange1_tags_1[0]), /* 1 */
1617 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001618 0, 0, /* No members */
1619 0 /* No specifics */
1620};
1621
1622
1623/*** <<< INCLUDES [OK-IntegerInRange2] >>> ***/
1624
Lev Walkinc3f0b892005-08-14 02:40:04 +00001625#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001626
1627/*** <<< TYPE-DECLS [OK-IntegerInRange2] >>> ***/
1628
Lev Walkinc3f0b892005-08-14 02:40:04 +00001629typedef long OK_IntegerInRange2_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001630
1631/*** <<< FUNC-DECLS [OK-IntegerInRange2] >>> ***/
1632
1633extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2;
1634asn_struct_free_f OK_IntegerInRange2_free;
1635asn_struct_print_f OK_IntegerInRange2_print;
1636asn_constr_check_f OK_IntegerInRange2_constraint;
1637ber_type_decoder_f OK_IntegerInRange2_decode_ber;
1638der_type_encoder_f OK_IntegerInRange2_encode_der;
1639xer_type_decoder_f OK_IntegerInRange2_decode_xer;
1640xer_type_encoder_f OK_IntegerInRange2_encode_xer;
1641
1642/*** <<< CODE [OK-IntegerInRange2] >>> ***/
1643
1644int
1645OK_IntegerInRange2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001646 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001647 long value;
1648
1649 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001650 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001651 "%s: value not given (%s:%d)",
1652 td->name, __FILE__, __LINE__);
1653 return -1;
1654 }
1655
Lev Walkinc3f0b892005-08-14 02:40:04 +00001656 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001657
1658 if(((value == -100) || (value == 100))) {
1659 /* Constraint check succeeded */
1660 return 0;
1661 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001662 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001663 "%s: constraint failed (%s:%d)",
1664 td->name, __FILE__, __LINE__);
1665 return -1;
1666 }
1667}
1668
1669/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001670 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001671 * so here we adjust the DEF accordingly.
1672 */
1673static void
1674OK_IntegerInRange2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001675 td->free_struct = asn_DEF_NativeInteger.free_struct;
1676 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001677 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001678 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1679 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1680 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1681 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001682 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001683 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001684 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1685 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001686 if(!td->per_constraints)
1687 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001688 td->elements = asn_DEF_NativeInteger.elements;
1689 td->elements_count = asn_DEF_NativeInteger.elements_count;
1690 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001691}
1692
1693void
1694OK_IntegerInRange2_free(asn_TYPE_descriptor_t *td,
1695 void *struct_ptr, int contents_only) {
1696 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1697 td->free_struct(td, struct_ptr, contents_only);
1698}
1699
1700int
1701OK_IntegerInRange2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1702 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1703 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1704 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1705}
1706
1707asn_dec_rval_t
1708OK_IntegerInRange2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1709 void **structure, const void *bufptr, size_t size, int tag_mode) {
1710 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1711 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1712}
1713
1714asn_enc_rval_t
1715OK_IntegerInRange2_encode_der(asn_TYPE_descriptor_t *td,
1716 void *structure, int tag_mode, ber_tlv_tag_t tag,
1717 asn_app_consume_bytes_f *cb, void *app_key) {
1718 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1719 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1720}
1721
1722asn_dec_rval_t
1723OK_IntegerInRange2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1724 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1725 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1726 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1727}
1728
1729asn_enc_rval_t
1730OK_IntegerInRange2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1731 int ilevel, enum xer_encoder_flags_e flags,
1732 asn_app_consume_bytes_f *cb, void *app_key) {
1733 OK_IntegerInRange2_1_inherit_TYPE_descriptor(td);
1734 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1735}
1736
1737
1738/*** <<< STAT-DEFS [OK-IntegerInRange2] >>> ***/
1739
Lev Walkina7591b52014-10-12 18:37:35 -07001740static const ber_tlv_tag_t asn_DEF_OK_IntegerInRange2_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001741 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1742};
1743asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange2 = {
1744 "OK-IntegerInRange2",
1745 "OK-IntegerInRange2",
1746 OK_IntegerInRange2_free,
1747 OK_IntegerInRange2_print,
1748 OK_IntegerInRange2_constraint,
1749 OK_IntegerInRange2_decode_ber,
1750 OK_IntegerInRange2_encode_der,
1751 OK_IntegerInRange2_decode_xer,
1752 OK_IntegerInRange2_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001753 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001754 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001755 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001756 asn_DEF_OK_IntegerInRange2_tags_1,
1757 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1758 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1759 asn_DEF_OK_IntegerInRange2_tags_1, /* Same as above */
1760 sizeof(asn_DEF_OK_IntegerInRange2_tags_1)
1761 /sizeof(asn_DEF_OK_IntegerInRange2_tags_1[0]), /* 1 */
1762 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001763 0, 0, /* No members */
1764 0 /* No specifics */
1765};
1766
1767
1768/*** <<< INCLUDES [OK-IntegerInRange3] >>> ***/
1769
Lev Walkinc3f0b892005-08-14 02:40:04 +00001770#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001771
1772/*** <<< TYPE-DECLS [OK-IntegerInRange3] >>> ***/
1773
Lev Walkinc3f0b892005-08-14 02:40:04 +00001774typedef long OK_IntegerInRange3_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001775
1776/*** <<< FUNC-DECLS [OK-IntegerInRange3] >>> ***/
1777
1778extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3;
1779asn_struct_free_f OK_IntegerInRange3_free;
1780asn_struct_print_f OK_IntegerInRange3_print;
1781asn_constr_check_f OK_IntegerInRange3_constraint;
1782ber_type_decoder_f OK_IntegerInRange3_decode_ber;
1783der_type_encoder_f OK_IntegerInRange3_encode_der;
1784xer_type_decoder_f OK_IntegerInRange3_decode_xer;
1785xer_type_encoder_f OK_IntegerInRange3_encode_xer;
1786
1787/*** <<< CODE [OK-IntegerInRange3] >>> ***/
1788
1789int
1790OK_IntegerInRange3_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001791 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001792 long value;
1793
1794 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001795 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001796 "%s: value not given (%s:%d)",
1797 td->name, __FILE__, __LINE__);
1798 return -1;
1799 }
1800
Lev Walkinc3f0b892005-08-14 02:40:04 +00001801 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001802
Lev Walkin63b41262007-11-06 01:48:46 +00001803 if((value >= (-2147483647L - 1) && value <= 2147483647)) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001804 /* Constraint check succeeded */
1805 return 0;
1806 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001807 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001808 "%s: constraint failed (%s:%d)",
1809 td->name, __FILE__, __LINE__);
1810 return -1;
1811 }
1812}
1813
1814/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001815 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001816 * so here we adjust the DEF accordingly.
1817 */
1818static void
1819OK_IntegerInRange3_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001820 td->free_struct = asn_DEF_NativeInteger.free_struct;
1821 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001822 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001823 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1824 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1825 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1826 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001827 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001828 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001829 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1830 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001831 if(!td->per_constraints)
1832 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001833 td->elements = asn_DEF_NativeInteger.elements;
1834 td->elements_count = asn_DEF_NativeInteger.elements_count;
1835 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001836}
1837
1838void
1839OK_IntegerInRange3_free(asn_TYPE_descriptor_t *td,
1840 void *struct_ptr, int contents_only) {
1841 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1842 td->free_struct(td, struct_ptr, contents_only);
1843}
1844
1845int
1846OK_IntegerInRange3_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1847 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1848 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1849 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1850}
1851
1852asn_dec_rval_t
1853OK_IntegerInRange3_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1854 void **structure, const void *bufptr, size_t size, int tag_mode) {
1855 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1856 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
1857}
1858
1859asn_enc_rval_t
1860OK_IntegerInRange3_encode_der(asn_TYPE_descriptor_t *td,
1861 void *structure, int tag_mode, ber_tlv_tag_t tag,
1862 asn_app_consume_bytes_f *cb, void *app_key) {
1863 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1864 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
1865}
1866
1867asn_dec_rval_t
1868OK_IntegerInRange3_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1869 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
1870 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1871 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
1872}
1873
1874asn_enc_rval_t
1875OK_IntegerInRange3_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
1876 int ilevel, enum xer_encoder_flags_e flags,
1877 asn_app_consume_bytes_f *cb, void *app_key) {
1878 OK_IntegerInRange3_1_inherit_TYPE_descriptor(td);
1879 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
1880}
1881
1882
1883/*** <<< STAT-DEFS [OK-IntegerInRange3] >>> ***/
1884
Lev Walkina7591b52014-10-12 18:37:35 -07001885static const ber_tlv_tag_t asn_DEF_OK_IntegerInRange3_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00001886 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
1887};
1888asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange3 = {
1889 "OK-IntegerInRange3",
1890 "OK-IntegerInRange3",
1891 OK_IntegerInRange3_free,
1892 OK_IntegerInRange3_print,
1893 OK_IntegerInRange3_constraint,
1894 OK_IntegerInRange3_decode_ber,
1895 OK_IntegerInRange3_encode_der,
1896 OK_IntegerInRange3_decode_xer,
1897 OK_IntegerInRange3_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001898 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07001899 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00001900 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00001901 asn_DEF_OK_IntegerInRange3_tags_1,
1902 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1903 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1904 asn_DEF_OK_IntegerInRange3_tags_1, /* Same as above */
1905 sizeof(asn_DEF_OK_IntegerInRange3_tags_1)
1906 /sizeof(asn_DEF_OK_IntegerInRange3_tags_1[0]), /* 1 */
1907 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00001908 0, 0, /* No members */
1909 0 /* No specifics */
1910};
1911
1912
1913/*** <<< INCLUDES [OK-IntegerInRange4] >>> ***/
1914
Lev Walkinc3f0b892005-08-14 02:40:04 +00001915#include <NativeInteger.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00001916
1917/*** <<< TYPE-DECLS [OK-IntegerInRange4] >>> ***/
1918
Lev Walkinc3f0b892005-08-14 02:40:04 +00001919typedef long OK_IntegerInRange4_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00001920
1921/*** <<< FUNC-DECLS [OK-IntegerInRange4] >>> ***/
1922
1923extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4;
1924asn_struct_free_f OK_IntegerInRange4_free;
1925asn_struct_print_f OK_IntegerInRange4_print;
1926asn_constr_check_f OK_IntegerInRange4_constraint;
1927ber_type_decoder_f OK_IntegerInRange4_decode_ber;
1928der_type_encoder_f OK_IntegerInRange4_encode_der;
1929xer_type_decoder_f OK_IntegerInRange4_decode_xer;
1930xer_type_encoder_f OK_IntegerInRange4_encode_xer;
1931
1932/*** <<< CODE [OK-IntegerInRange4] >>> ***/
1933
1934int
1935OK_IntegerInRange4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00001936 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001937 long value;
1938
1939 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001940 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001941 "%s: value not given (%s:%d)",
1942 td->name, __FILE__, __LINE__);
1943 return -1;
1944 }
1945
Lev Walkinc3f0b892005-08-14 02:40:04 +00001946 value = *(const long *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00001947
Lev Walkin63b41262007-11-06 01:48:46 +00001948 if(((value == (-2147483647L - 1)) || (value == 2147483647))) {
Lev Walkin082cadc2005-08-14 02:18:27 +00001949 /* Constraint check succeeded */
1950 return 0;
1951 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07001952 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00001953 "%s: constraint failed (%s:%d)",
1954 td->name, __FILE__, __LINE__);
1955 return -1;
1956 }
1957}
1958
1959/*
Lev Walkinc3f0b892005-08-14 02:40:04 +00001960 * This type is implemented using NativeInteger,
Lev Walkin082cadc2005-08-14 02:18:27 +00001961 * so here we adjust the DEF accordingly.
1962 */
1963static void
1964OK_IntegerInRange4_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00001965 td->free_struct = asn_DEF_NativeInteger.free_struct;
1966 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08001967 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001968 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
1969 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
1970 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
1971 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001972 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00001973 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07001974 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
1975 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00001976 if(!td->per_constraints)
1977 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00001978 td->elements = asn_DEF_NativeInteger.elements;
1979 td->elements_count = asn_DEF_NativeInteger.elements_count;
1980 td->specifics = asn_DEF_NativeInteger.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00001981}
1982
1983void
1984OK_IntegerInRange4_free(asn_TYPE_descriptor_t *td,
1985 void *struct_ptr, int contents_only) {
1986 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1987 td->free_struct(td, struct_ptr, contents_only);
1988}
1989
1990int
1991OK_IntegerInRange4_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
1992 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
1993 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
1994 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
1995}
1996
1997asn_dec_rval_t
1998OK_IntegerInRange4_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
1999 void **structure, const void *bufptr, size_t size, int tag_mode) {
2000 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
2001 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2002}
2003
2004asn_enc_rval_t
2005OK_IntegerInRange4_encode_der(asn_TYPE_descriptor_t *td,
2006 void *structure, int tag_mode, ber_tlv_tag_t tag,
2007 asn_app_consume_bytes_f *cb, void *app_key) {
2008 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
2009 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2010}
2011
2012asn_dec_rval_t
2013OK_IntegerInRange4_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2014 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2015 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
2016 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2017}
2018
2019asn_enc_rval_t
2020OK_IntegerInRange4_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2021 int ilevel, enum xer_encoder_flags_e flags,
2022 asn_app_consume_bytes_f *cb, void *app_key) {
2023 OK_IntegerInRange4_1_inherit_TYPE_descriptor(td);
2024 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2025}
2026
2027
2028/*** <<< STAT-DEFS [OK-IntegerInRange4] >>> ***/
2029
Lev Walkina7591b52014-10-12 18:37:35 -07002030static const ber_tlv_tag_t asn_DEF_OK_IntegerInRange4_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00002031 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2032};
2033asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange4 = {
2034 "OK-IntegerInRange4",
2035 "OK-IntegerInRange4",
2036 OK_IntegerInRange4_free,
2037 OK_IntegerInRange4_print,
2038 OK_IntegerInRange4_constraint,
2039 OK_IntegerInRange4_decode_ber,
2040 OK_IntegerInRange4_encode_der,
2041 OK_IntegerInRange4_decode_xer,
2042 OK_IntegerInRange4_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002043 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07002044 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00002045 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002046 asn_DEF_OK_IntegerInRange4_tags_1,
2047 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
2048 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
2049 asn_DEF_OK_IntegerInRange4_tags_1, /* Same as above */
2050 sizeof(asn_DEF_OK_IntegerInRange4_tags_1)
2051 /sizeof(asn_DEF_OK_IntegerInRange4_tags_1[0]), /* 1 */
2052 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00002053 0, 0, /* No members */
2054 0 /* No specifics */
2055};
2056
2057
2058/*** <<< INCLUDES [OK-IntegerInRange5] >>> ***/
2059
Lev Walkin2a744a72013-03-27 01:56:23 -07002060#include <INTEGER.h>
Lev Walkin082cadc2005-08-14 02:18:27 +00002061
2062/*** <<< TYPE-DECLS [OK-IntegerInRange5] >>> ***/
2063
Lev Walkin2a744a72013-03-27 01:56:23 -07002064typedef INTEGER_t OK_IntegerInRange5_t;
Lev Walkin082cadc2005-08-14 02:18:27 +00002065
2066/*** <<< FUNC-DECLS [OK-IntegerInRange5] >>> ***/
2067
2068extern asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5;
2069asn_struct_free_f OK_IntegerInRange5_free;
2070asn_struct_print_f OK_IntegerInRange5_print;
2071asn_constr_check_f OK_IntegerInRange5_constraint;
2072ber_type_decoder_f OK_IntegerInRange5_decode_ber;
2073der_type_encoder_f OK_IntegerInRange5_encode_der;
2074xer_type_decoder_f OK_IntegerInRange5_decode_xer;
2075xer_type_encoder_f OK_IntegerInRange5_encode_xer;
2076
2077/*** <<< CODE [OK-IntegerInRange5] >>> ***/
2078
2079int
2080OK_IntegerInRange5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002081 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkin2a744a72013-03-27 01:56:23 -07002082 const INTEGER_t *st = (const INTEGER_t *)sptr;
Lev Walkin082cadc2005-08-14 02:18:27 +00002083 long value;
2084
2085 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07002086 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00002087 "%s: value not given (%s:%d)",
2088 td->name, __FILE__, __LINE__);
2089 return -1;
2090 }
2091
Lev Walkin2a744a72013-03-27 01:56:23 -07002092 if(asn_INTEGER2long(st, &value)) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07002093 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin2a744a72013-03-27 01:56:23 -07002094 "%s: value too large (%s:%d)",
2095 td->name, __FILE__, __LINE__);
2096 return -1;
2097 }
Lev Walkin082cadc2005-08-14 02:18:27 +00002098
Lev Walkin63b41262007-11-06 01:48:46 +00002099 if(((value == (-2147483647L - 1)) || (value == 2147483647))) {
Lev Walkin082cadc2005-08-14 02:18:27 +00002100 /* Constraint check succeeded */
2101 return 0;
2102 } else {
Lev Walkin7c1dc052016-03-14 03:08:15 -07002103 ASN__CTFAIL(app_key, td, sptr,
Lev Walkin082cadc2005-08-14 02:18:27 +00002104 "%s: constraint failed (%s:%d)",
2105 td->name, __FILE__, __LINE__);
2106 return -1;
2107 }
2108}
2109
2110/*
Lev Walkin2a744a72013-03-27 01:56:23 -07002111 * This type is implemented using INTEGER,
Lev Walkin082cadc2005-08-14 02:18:27 +00002112 * so here we adjust the DEF accordingly.
2113 */
2114static void
2115OK_IntegerInRange5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -07002116 td->free_struct = asn_DEF_INTEGER.free_struct;
2117 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08002118 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -07002119 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2120 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2121 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2122 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
2123 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
2124 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07002125 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
2126 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002127 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -07002128 td->per_constraints = asn_DEF_INTEGER.per_constraints;
2129 td->elements = asn_DEF_INTEGER.elements;
2130 td->elements_count = asn_DEF_INTEGER.elements_count;
2131 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkin082cadc2005-08-14 02:18:27 +00002132}
2133
2134void
2135OK_IntegerInRange5_free(asn_TYPE_descriptor_t *td,
2136 void *struct_ptr, int contents_only) {
2137 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2138 td->free_struct(td, struct_ptr, contents_only);
2139}
2140
2141int
2142OK_IntegerInRange5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2143 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2144 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2145 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2146}
2147
2148asn_dec_rval_t
2149OK_IntegerInRange5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2150 void **structure, const void *bufptr, size_t size, int tag_mode) {
2151 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2152 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2153}
2154
2155asn_enc_rval_t
2156OK_IntegerInRange5_encode_der(asn_TYPE_descriptor_t *td,
2157 void *structure, int tag_mode, ber_tlv_tag_t tag,
2158 asn_app_consume_bytes_f *cb, void *app_key) {
2159 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2160 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2161}
2162
2163asn_dec_rval_t
2164OK_IntegerInRange5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2165 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2166 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2167 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2168}
2169
2170asn_enc_rval_t
2171OK_IntegerInRange5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2172 int ilevel, enum xer_encoder_flags_e flags,
2173 asn_app_consume_bytes_f *cb, void *app_key) {
2174 OK_IntegerInRange5_1_inherit_TYPE_descriptor(td);
2175 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2176}
2177
2178
2179/*** <<< STAT-DEFS [OK-IntegerInRange5] >>> ***/
2180
Lev Walkina7591b52014-10-12 18:37:35 -07002181static const ber_tlv_tag_t asn_DEF_OK_IntegerInRange5_tags_1[] = {
Lev Walkin082cadc2005-08-14 02:18:27 +00002182 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2183};
2184asn_TYPE_descriptor_t asn_DEF_OK_IntegerInRange5 = {
2185 "OK-IntegerInRange5",
2186 "OK-IntegerInRange5",
2187 OK_IntegerInRange5_free,
2188 OK_IntegerInRange5_print,
2189 OK_IntegerInRange5_constraint,
2190 OK_IntegerInRange5_decode_ber,
2191 OK_IntegerInRange5_encode_der,
2192 OK_IntegerInRange5_decode_xer,
2193 OK_IntegerInRange5_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002194 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07002195 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkin082cadc2005-08-14 02:18:27 +00002196 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002197 asn_DEF_OK_IntegerInRange5_tags_1,
2198 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2199 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2200 asn_DEF_OK_IntegerInRange5_tags_1, /* Same as above */
2201 sizeof(asn_DEF_OK_IntegerInRange5_tags_1)
2202 /sizeof(asn_DEF_OK_IntegerInRange5_tags_1[0]), /* 1 */
2203 0, /* No PER visible constraints */
Lev Walkin082cadc2005-08-14 02:18:27 +00002204 0, 0, /* No members */
2205 0 /* No specifics */
2206};
2207
Lev Walkinc3f0b892005-08-14 02:40:04 +00002208
Lev Walkinfee6f712005-08-27 03:13:51 +00002209/*** <<< INCLUDES [NO-IntegerInRange6] >>> ***/
2210
Lev Walkin8bb57a22007-12-03 13:41:36 +00002211#include <NativeInteger.h>
Lev Walkinfee6f712005-08-27 03:13:51 +00002212
2213/*** <<< TYPE-DECLS [NO-IntegerInRange6] >>> ***/
2214
Lev Walkin8bb57a22007-12-03 13:41:36 +00002215typedef unsigned long NO_IntegerInRange6_t;
Lev Walkinfee6f712005-08-27 03:13:51 +00002216
2217/*** <<< FUNC-DECLS [NO-IntegerInRange6] >>> ***/
2218
2219extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6;
2220asn_struct_free_f NO_IntegerInRange6_free;
2221asn_struct_print_f NO_IntegerInRange6_print;
2222asn_constr_check_f NO_IntegerInRange6_constraint;
2223ber_type_decoder_f NO_IntegerInRange6_decode_ber;
2224der_type_encoder_f NO_IntegerInRange6_encode_der;
2225xer_type_decoder_f NO_IntegerInRange6_decode_xer;
2226xer_type_encoder_f NO_IntegerInRange6_encode_xer;
2227
2228/*** <<< CODE [NO-IntegerInRange6] >>> ***/
2229
2230int
2231NO_IntegerInRange6_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002232 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinfee6f712005-08-27 03:13:51 +00002233
2234 if(!sptr) {
Lev Walkin7c1dc052016-03-14 03:08:15 -07002235 ASN__CTFAIL(app_key, td, sptr,
Lev Walkinfee6f712005-08-27 03:13:51 +00002236 "%s: value not given (%s:%d)",
2237 td->name, __FILE__, __LINE__);
2238 return -1;
2239 }
2240
Lev Walkinfee6f712005-08-27 03:13:51 +00002241
Lev Walkin8bb57a22007-12-03 13:41:36 +00002242 /* Constraint check succeeded */
2243 return 0;
Lev Walkinfee6f712005-08-27 03:13:51 +00002244}
2245
2246/*
Lev Walkin8bb57a22007-12-03 13:41:36 +00002247 * This type is implemented using NativeInteger,
Lev Walkinfee6f712005-08-27 03:13:51 +00002248 * so here we adjust the DEF accordingly.
2249 */
2250static void
2251NO_IntegerInRange6_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin8bb57a22007-12-03 13:41:36 +00002252 td->free_struct = asn_DEF_NativeInteger.free_struct;
2253 td->print_struct = asn_DEF_NativeInteger.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08002254 td->check_constraints = asn_DEF_NativeInteger.check_constraints;
Lev Walkin8bb57a22007-12-03 13:41:36 +00002255 td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
2256 td->der_encoder = asn_DEF_NativeInteger.der_encoder;
2257 td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
2258 td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
2259 td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
2260 td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07002261 td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
2262 td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002263 if(!td->per_constraints)
Lev Walkin8bb57a22007-12-03 13:41:36 +00002264 td->per_constraints = asn_DEF_NativeInteger.per_constraints;
2265 td->elements = asn_DEF_NativeInteger.elements;
2266 td->elements_count = asn_DEF_NativeInteger.elements_count;
2267 /* td->specifics = asn_DEF_NativeInteger.specifics; // Defined explicitly */
Lev Walkinfee6f712005-08-27 03:13:51 +00002268}
2269
2270void
2271NO_IntegerInRange6_free(asn_TYPE_descriptor_t *td,
2272 void *struct_ptr, int contents_only) {
2273 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2274 td->free_struct(td, struct_ptr, contents_only);
2275}
2276
2277int
2278NO_IntegerInRange6_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2279 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2280 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2281 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2282}
2283
2284asn_dec_rval_t
2285NO_IntegerInRange6_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2286 void **structure, const void *bufptr, size_t size, int tag_mode) {
2287 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2288 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2289}
2290
2291asn_enc_rval_t
2292NO_IntegerInRange6_encode_der(asn_TYPE_descriptor_t *td,
2293 void *structure, int tag_mode, ber_tlv_tag_t tag,
2294 asn_app_consume_bytes_f *cb, void *app_key) {
2295 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2296 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2297}
2298
2299asn_dec_rval_t
2300NO_IntegerInRange6_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2301 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2302 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2303 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2304}
2305
2306asn_enc_rval_t
2307NO_IntegerInRange6_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2308 int ilevel, enum xer_encoder_flags_e flags,
2309 asn_app_consume_bytes_f *cb, void *app_key) {
2310 NO_IntegerInRange6_1_inherit_TYPE_descriptor(td);
2311 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2312}
2313
2314
2315/*** <<< STAT-DEFS [NO-IntegerInRange6] >>> ***/
2316
johvike70c4072017-05-09 11:06:12 +02002317static asn_INTEGER_specifics_t asn_SPC_NO_IntegerInRange6_specs_1 = {
Lev Walkin8bb57a22007-12-03 13:41:36 +00002318 0, 0, 0, 0, 0,
2319 0, /* Native long size */
2320 1 /* Unsigned representation */
2321};
Lev Walkina7591b52014-10-12 18:37:35 -07002322static const ber_tlv_tag_t asn_DEF_NO_IntegerInRange6_tags_1[] = {
Lev Walkinfee6f712005-08-27 03:13:51 +00002323 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2324};
2325asn_TYPE_descriptor_t asn_DEF_NO_IntegerInRange6 = {
2326 "NO-IntegerInRange6",
2327 "NO-IntegerInRange6",
2328 NO_IntegerInRange6_free,
2329 NO_IntegerInRange6_print,
2330 NO_IntegerInRange6_constraint,
2331 NO_IntegerInRange6_decode_ber,
2332 NO_IntegerInRange6_encode_der,
2333 NO_IntegerInRange6_decode_xer,
2334 NO_IntegerInRange6_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002335 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07002336 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinfee6f712005-08-27 03:13:51 +00002337 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002338 asn_DEF_NO_IntegerInRange6_tags_1,
2339 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2340 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2341 asn_DEF_NO_IntegerInRange6_tags_1, /* Same as above */
2342 sizeof(asn_DEF_NO_IntegerInRange6_tags_1)
2343 /sizeof(asn_DEF_NO_IntegerInRange6_tags_1[0]), /* 1 */
2344 0, /* No PER visible constraints */
Lev Walkinfee6f712005-08-27 03:13:51 +00002345 0, 0, /* No members */
Lev Walkin8bb57a22007-12-03 13:41:36 +00002346 &asn_SPC_NO_IntegerInRange6_specs_1 /* Additional specs */
Lev Walkinfee6f712005-08-27 03:13:51 +00002347};
2348
2349
Lev Walkinc3f0b892005-08-14 02:40:04 +00002350/*** <<< INCLUDES [CN-IntegerEnumerated1] >>> ***/
2351
Lev Walkin2a744a72013-03-27 01:56:23 -07002352#include <INTEGER.h>
Lev Walkinc3f0b892005-08-14 02:40:04 +00002353
2354/*** <<< DEPS [CN-IntegerEnumerated1] >>> ***/
2355
2356typedef enum CN_IntegerEnumerated1 {
2357 CN_IntegerEnumerated1_a = 1,
2358 CN_IntegerEnumerated1_b = 2
Lev Walkin171487e2006-03-21 07:25:18 +00002359} e_CN_IntegerEnumerated1;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002360
2361/*** <<< TYPE-DECLS [CN-IntegerEnumerated1] >>> ***/
2362
Lev Walkin2a744a72013-03-27 01:56:23 -07002363typedef INTEGER_t CN_IntegerEnumerated1_t;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002364
2365/*** <<< FUNC-DECLS [CN-IntegerEnumerated1] >>> ***/
2366
2367extern asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1;
2368asn_struct_free_f CN_IntegerEnumerated1_free;
2369asn_struct_print_f CN_IntegerEnumerated1_print;
2370asn_constr_check_f CN_IntegerEnumerated1_constraint;
2371ber_type_decoder_f CN_IntegerEnumerated1_decode_ber;
2372der_type_encoder_f CN_IntegerEnumerated1_encode_der;
2373xer_type_decoder_f CN_IntegerEnumerated1_decode_xer;
2374xer_type_encoder_f CN_IntegerEnumerated1_encode_xer;
2375
2376/*** <<< CODE [CN-IntegerEnumerated1] >>> ***/
2377
2378int
2379CN_IntegerEnumerated1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002380 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002381 /* Replace with underlying type checker */
Lev Walkin2a744a72013-03-27 01:56:23 -07002382 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00002383 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinc3f0b892005-08-14 02:40:04 +00002384}
2385
2386/*
Lev Walkin2a744a72013-03-27 01:56:23 -07002387 * This type is implemented using INTEGER,
Lev Walkinc3f0b892005-08-14 02:40:04 +00002388 * so here we adjust the DEF accordingly.
2389 */
2390static void
2391CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
Lev Walkin2a744a72013-03-27 01:56:23 -07002392 td->free_struct = asn_DEF_INTEGER.free_struct;
2393 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08002394 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin2a744a72013-03-27 01:56:23 -07002395 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2396 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2397 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2398 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
2399 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
2400 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07002401 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
2402 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002403 if(!td->per_constraints)
Lev Walkin2a744a72013-03-27 01:56:23 -07002404 td->per_constraints = asn_DEF_INTEGER.per_constraints;
2405 td->elements = asn_DEF_INTEGER.elements;
2406 td->elements_count = asn_DEF_INTEGER.elements_count;
2407 td->specifics = asn_DEF_INTEGER.specifics;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002408}
2409
2410void
2411CN_IntegerEnumerated1_free(asn_TYPE_descriptor_t *td,
2412 void *struct_ptr, int contents_only) {
2413 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2414 td->free_struct(td, struct_ptr, contents_only);
2415}
2416
2417int
2418CN_IntegerEnumerated1_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2419 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2420 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2421 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2422}
2423
2424asn_dec_rval_t
2425CN_IntegerEnumerated1_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2426 void **structure, const void *bufptr, size_t size, int tag_mode) {
2427 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2428 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2429}
2430
2431asn_enc_rval_t
2432CN_IntegerEnumerated1_encode_der(asn_TYPE_descriptor_t *td,
2433 void *structure, int tag_mode, ber_tlv_tag_t tag,
2434 asn_app_consume_bytes_f *cb, void *app_key) {
2435 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2436 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2437}
2438
2439asn_dec_rval_t
2440CN_IntegerEnumerated1_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2441 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2442 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2443 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2444}
2445
2446asn_enc_rval_t
2447CN_IntegerEnumerated1_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2448 int ilevel, enum xer_encoder_flags_e flags,
2449 asn_app_consume_bytes_f *cb, void *app_key) {
2450 CN_IntegerEnumerated1_1_inherit_TYPE_descriptor(td);
2451 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2452}
2453
2454
2455/*** <<< STAT-DEFS [CN-IntegerEnumerated1] >>> ***/
2456
Lev Walkina7591b52014-10-12 18:37:35 -07002457static const ber_tlv_tag_t asn_DEF_CN_IntegerEnumerated1_tags_1[] = {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002458 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2459};
2460asn_TYPE_descriptor_t asn_DEF_CN_IntegerEnumerated1 = {
2461 "CN-IntegerEnumerated1",
2462 "CN-IntegerEnumerated1",
2463 CN_IntegerEnumerated1_free,
2464 CN_IntegerEnumerated1_print,
2465 CN_IntegerEnumerated1_constraint,
2466 CN_IntegerEnumerated1_decode_ber,
2467 CN_IntegerEnumerated1_encode_der,
2468 CN_IntegerEnumerated1_decode_xer,
2469 CN_IntegerEnumerated1_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002470 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07002471 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002472 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002473 asn_DEF_CN_IntegerEnumerated1_tags_1,
2474 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2475 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2476 asn_DEF_CN_IntegerEnumerated1_tags_1, /* Same as above */
2477 sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1)
2478 /sizeof(asn_DEF_CN_IntegerEnumerated1_tags_1[0]), /* 1 */
2479 0, /* No PER visible constraints */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002480 0, 0, /* Defined elsewhere */
2481 0 /* No specifics */
2482};
2483
2484
2485/*** <<< INCLUDES [NO-IntegerEnumerated2] >>> ***/
2486
2487#include <INTEGER.h>
2488
2489/*** <<< DEPS [NO-IntegerEnumerated2] >>> ***/
2490
2491typedef enum NO_IntegerEnumerated2 {
2492 NO_IntegerEnumerated2_a = 1,
2493 NO_IntegerEnumerated2_b = 3000000000
Lev Walkin171487e2006-03-21 07:25:18 +00002494} e_NO_IntegerEnumerated2;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002495
2496/*** <<< TYPE-DECLS [NO-IntegerEnumerated2] >>> ***/
2497
2498typedef INTEGER_t NO_IntegerEnumerated2_t;
2499
2500/*** <<< FUNC-DECLS [NO-IntegerEnumerated2] >>> ***/
2501
2502extern asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2;
2503asn_struct_free_f NO_IntegerEnumerated2_free;
2504asn_struct_print_f NO_IntegerEnumerated2_print;
2505asn_constr_check_f NO_IntegerEnumerated2_constraint;
2506ber_type_decoder_f NO_IntegerEnumerated2_decode_ber;
2507der_type_encoder_f NO_IntegerEnumerated2_encode_der;
2508xer_type_decoder_f NO_IntegerEnumerated2_decode_xer;
2509xer_type_encoder_f NO_IntegerEnumerated2_encode_xer;
2510
2511/*** <<< CODE [NO-IntegerEnumerated2] >>> ***/
2512
2513int
2514NO_IntegerEnumerated2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
Lev Walkin1eded352006-07-13 11:19:01 +00002515 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002516 /* Replace with underlying type checker */
2517 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkin1eded352006-07-13 11:19:01 +00002518 return td->check_constraints(td, sptr, ctfailcb, app_key);
Lev Walkinc3f0b892005-08-14 02:40:04 +00002519}
2520
2521/*
2522 * This type is implemented using INTEGER,
2523 * so here we adjust the DEF accordingly.
2524 */
2525static void
2526NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
2527 td->free_struct = asn_DEF_INTEGER.free_struct;
2528 td->print_struct = asn_DEF_INTEGER.print_struct;
Lev Walkin6169b8d2013-12-07 11:02:44 -08002529 td->check_constraints = asn_DEF_INTEGER.check_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002530 td->ber_decoder = asn_DEF_INTEGER.ber_decoder;
2531 td->der_encoder = asn_DEF_INTEGER.der_encoder;
2532 td->xer_decoder = asn_DEF_INTEGER.xer_decoder;
2533 td->xer_encoder = asn_DEF_INTEGER.xer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002534 td->uper_decoder = asn_DEF_INTEGER.uper_decoder;
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002535 td->uper_encoder = asn_DEF_INTEGER.uper_encoder;
Lev Walkinba68c912017-07-06 07:52:39 -07002536 td->oer_decoder = asn_DEF_INTEGER.oer_decoder;
2537 td->oer_encoder = asn_DEF_INTEGER.oer_encoder;
Lev Walkin59b176e2005-11-26 11:25:14 +00002538 if(!td->per_constraints)
2539 td->per_constraints = asn_DEF_INTEGER.per_constraints;
Lev Walkinc3f0b892005-08-14 02:40:04 +00002540 td->elements = asn_DEF_INTEGER.elements;
2541 td->elements_count = asn_DEF_INTEGER.elements_count;
2542 td->specifics = asn_DEF_INTEGER.specifics;
2543}
2544
2545void
2546NO_IntegerEnumerated2_free(asn_TYPE_descriptor_t *td,
2547 void *struct_ptr, int contents_only) {
2548 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2549 td->free_struct(td, struct_ptr, contents_only);
2550}
2551
2552int
2553NO_IntegerEnumerated2_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
2554 int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
2555 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2556 return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
2557}
2558
2559asn_dec_rval_t
2560NO_IntegerEnumerated2_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2561 void **structure, const void *bufptr, size_t size, int tag_mode) {
2562 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2563 return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
2564}
2565
2566asn_enc_rval_t
2567NO_IntegerEnumerated2_encode_der(asn_TYPE_descriptor_t *td,
2568 void *structure, int tag_mode, ber_tlv_tag_t tag,
2569 asn_app_consume_bytes_f *cb, void *app_key) {
2570 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2571 return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
2572}
2573
2574asn_dec_rval_t
2575NO_IntegerEnumerated2_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
2576 void **structure, const char *opt_mname, const void *bufptr, size_t size) {
2577 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2578 return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
2579}
2580
2581asn_enc_rval_t
2582NO_IntegerEnumerated2_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
2583 int ilevel, enum xer_encoder_flags_e flags,
2584 asn_app_consume_bytes_f *cb, void *app_key) {
2585 NO_IntegerEnumerated2_1_inherit_TYPE_descriptor(td);
2586 return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
2587}
2588
2589
2590/*** <<< STAT-DEFS [NO-IntegerEnumerated2] >>> ***/
2591
Lev Walkina7591b52014-10-12 18:37:35 -07002592static const ber_tlv_tag_t asn_DEF_NO_IntegerEnumerated2_tags_1[] = {
Lev Walkinc3f0b892005-08-14 02:40:04 +00002593 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
2594};
2595asn_TYPE_descriptor_t asn_DEF_NO_IntegerEnumerated2 = {
2596 "NO-IntegerEnumerated2",
2597 "NO-IntegerEnumerated2",
2598 NO_IntegerEnumerated2_free,
2599 NO_IntegerEnumerated2_print,
2600 NO_IntegerEnumerated2_constraint,
2601 NO_IntegerEnumerated2_decode_ber,
2602 NO_IntegerEnumerated2_encode_der,
2603 NO_IntegerEnumerated2_decode_xer,
2604 NO_IntegerEnumerated2_encode_xer,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +00002605 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkinba68c912017-07-06 07:52:39 -07002606 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002607 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +00002608 asn_DEF_NO_IntegerEnumerated2_tags_1,
2609 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2610 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2611 asn_DEF_NO_IntegerEnumerated2_tags_1, /* Same as above */
2612 sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1)
2613 /sizeof(asn_DEF_NO_IntegerEnumerated2_tags_1[0]), /* 1 */
2614 0, /* No PER visible constraints */
Lev Walkinc3f0b892005-08-14 02:40:04 +00002615 0, 0, /* Defined elsewhere */
2616 0 /* No specifics */
2617};
2618