Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
asn1c
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
asn1c
Commits
5861e8a0
Commit
5861e8a0
authored
Jul 31, 2017
by
Lev Walkin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
better constraint recognition (fix F-inv though)
parent
ed1ce785
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
1623 additions
and
237 deletions
+1623
-237
tests/118-per-constraint-OK.asn1.-EFprint-constraints
tests/118-per-constraint-OK.asn1.-EFprint-constraints
+0
-0
tests/136-oer-long-OK.asn1.-Pgen-OER
tests/136-oer-long-OK.asn1.-Pgen-OER
+3
-3
tests/137-oer-string-OK.asn1.-Pgen-OER
tests/137-oer-string-OK.asn1.-Pgen-OER
+1
-1
tests/138-oer-constraints-OK.asn1
tests/138-oer-constraints-OK.asn1
+14
-4
tests/138-oer-constraints-OK.asn1.-Pgen-OER
tests/138-oer-constraints-OK.asn1.-Pgen-OER
+1604
-228
tests/50-constraint-OK.asn1.-EFprint-constraints
tests/50-constraint-OK.asn1.-EFprint-constraints
+0
-0
tests/90-cond-int-type-OK.asn1.-EFprint-constraints
tests/90-cond-int-type-OK.asn1.-EFprint-constraints
+1
-1
No files found.
tests/118-per-constraint-OK.asn1.-EFprint-constraints
View file @
5861e8a0
No preview for this file type
tests/136-oer-long-OK.asn1.-Pgen-OER
View file @
5861e8a0
...
...
@@ -354,7 +354,7 @@ static asn_oer_constraints_t asn_OER_memb_unsigned16stack_constr_4 GCC_NOTUSED =
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 255 } /* (0..255) */,
{ 0, 0, 0 }};
static asn_oer_constraints_t asn_OER_memb_unsigned16stack_ext_constr_5 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0,
255 } /* (0..255,...
) */,
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0,
32767 } /* (0..32767
) */,
{ 0, 0, 0 }};
static asn_oer_constraints_t asn_OER_memb_unsigned33_constr_6 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 5000000000 } /* (0..5000000000) */,
...
...
@@ -372,13 +372,13 @@ static asn_oer_constraints_t asn_OER_memb_signed16stack_constr_11 GCC_NOTUSED =
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, -128, 127 } /* (-128..127) */,
{ 0, 0, 0 }};
static asn_oer_constraints_t asn_OER_memb_signed16stack_ext_constr_12 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, -
128, 127 } /* (-128..127,...
) */,
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, -
32768, 32767 } /* (-32768..32767
) */,
{ 0, 0, 0 }};
static asn_oer_constraints_t asn_OER_memb_signed32_constr_13 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, -2000000000, 2000000000 } /* (-2000000000..2000000000) */,
{ 0, 0, 0 }};
static asn_oer_constraints_t asn_OER_memb_signed33ext_constr_14 GCC_NOTUSED = {
{
AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, -4000000000, 4000000000 } /* (-4000000000..4000000000,...) */
,
{
0, 0, 0 }
,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [T] >>> ***/
...
...
tests/137-oer-string-OK.asn1.-Pgen-OER
View file @
5861e8a0
...
...
@@ -163,7 +163,7 @@ static asn_oer_constraints_t asn_OER_memb_con_ia5_constr_7 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 2, 2 } /* (SIZE(2..2)) */};
static asn_oer_constraints_t asn_OER_memb_con_utf8_constr_8 GCC_NOTUSED = {
{ 0, 0, 0 },
{ 0, 0, 0 } /* (SIZE(
2..2
)) */};
{ 0, 0, 0 } /* (SIZE(
0..MAX
)) */};
static asn_oer_constraints_t asn_OER_memb_con_universal_constr_9 GCC_NOTUSED = {
{ 0, 0, 0 },
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 2, 2 } /* (SIZE(2..2)) */};
...
...
tests/138-oer-constraints-OK.asn1
View file @
5861e8a0
...
...
@@ -12,11 +12,21 @@ ModuleOERConstraints
BEGIN
A-noc ::= INTEGER -- No constraints
B-
vis
::= INTEGER (0) -- Value constraint
C-
vis ::= INTEGER (-1..1)
-- Value range constraint
B-
0-0
::= INTEGER (0) -- Value constraint
C-
1-2 ::= INTEGER (1..2)
-- Value range constraint
D-inv ::= INTEGER (0..10,...) -- Extensible, not OER-visible
E-
vis
::= INTEGER (0..10,...)(2..5) -- OER-visible constraint 2..5
E-
2-5
::= INTEGER (0..10,...)(2..5) -- OER-visible constraint 2..5
F-inv ::= INTEGER (0..10,...)(2..5,...) -- Not OER-visible
G-vis ::= INTEGER (0..10,...)(2..5,...)(3) -- OER-visible constraint 3
G-3-3 ::= INTEGER (0..10,...)(2..5,...)(3) -- OER-visible constraint 3
-- X.696 #8.2.4 Not OER-visible parts of INTERSECTION are ignored
H-4-5 ::= INTEGER ((0..5) ^ (4..9)) -- OER-visible constraint 4..5
I-0-5 ::= INTEGER ((0..5) ^ (4..12,...)) -- OER-visible constraint 0..5
J-4-9 ::= INTEGER ((0..5,...) ^ (4..9)) -- OER-visible constraint 4..9
K-inv ::= INTEGER ((0..5,...) ^ (4..9,...)) -- Not OER-visible
-- X.696 #8.2.5 UNION with exeptions are ignored
L-0-5 ::= INTEGER ((0) | (5)) -- OER-visible constraint 0..5
M-inv ::= INTEGER ((0) | (5,...)) -- Not OER-visible
N-inv ::= INTEGER ((0..4,...) | (5)) -- Not OER-visible
O-inv ::= INTEGER ((0..4,...) | (5,...)) -- Not OER-visible
END
tests/138-oer-constraints-OK.asn1.-Pgen-OER
View file @
5861e8a0
...
...
@@ -148,31 +148,31 @@ asn_TYPE_descriptor_t asn_DEF_A_noc = {
};
/*** <<< INCLUDES [B-
vis
] >>> ***/
/*** <<< INCLUDES [B-
0-0
] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [B-
vis
] >>> ***/
/*** <<< TYPE-DECLS [B-
0-0
] >>> ***/
typedef long B_
vis
_t;
typedef long B_
0_0
_t;
/*** <<< FUNC-DECLS [B-
vis
] >>> ***/
/*** <<< FUNC-DECLS [B-
0-0
] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_B_
vis
;
asn_struct_free_f B_
vis
_free;
asn_struct_print_f B_
vis
_print;
asn_constr_check_f B_
vis
_constraint;
ber_type_decoder_f B_
vis
_decode_ber;
der_type_encoder_f B_
vis
_encode_der;
xer_type_decoder_f B_
vis
_decode_xer;
xer_type_encoder_f B_
vis
_encode_xer;
oer_type_decoder_f B_
vis
_decode_oer;
oer_type_encoder_f B_
vis
_encode_oer;
extern asn_TYPE_descriptor_t asn_DEF_B_
0_0
;
asn_struct_free_f B_
0_0
_free;
asn_struct_print_f B_
0_0
_print;
asn_constr_check_f B_
0_0
_constraint;
ber_type_decoder_f B_
0_0
_decode_ber;
der_type_encoder_f B_
0_0
_encode_der;
xer_type_decoder_f B_
0_0
_decode_xer;
xer_type_encoder_f B_
0_0
_encode_xer;
oer_type_decoder_f B_
0_0
_decode_oer;
oer_type_encoder_f B_
0_0
_encode_oer;
/*** <<< CODE [B-
vis
] >>> ***/
/*** <<< CODE [B-
0-0
] >>> ***/
int
B_
vis
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
B_
0_0
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
...
...
@@ -201,7 +201,7 @@ B_vis_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
* so here we adjust the DEF accordingly.
*/
static void
B_
vis
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
B_
0_0
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
...
...
@@ -223,128 +223,128 @@ B_vis_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
}
void
B_
vis
_free(asn_TYPE_descriptor_t *td,
B_
0_0
_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
B_
vis
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
B_
0_0
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
B_
vis
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
B_
0_0
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
B_
vis
_encode_der(asn_TYPE_descriptor_t *td,
B_
0_0
_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
B_
vis
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
B_
0_0
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
B_
vis
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
B_
0_0
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
B_
vis
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
B_
0_0
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
B_
vis
_encode_oer(asn_TYPE_descriptor_t *td,
B_
0_0
_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
B_
vis
_1_inherit_TYPE_descriptor(td);
B_
0_0
_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [B-
vis
] >>> ***/
/*** <<< CTDEFS [B-
0-0
] >>> ***/
static asn_oer_constraints_t asn_OER_type_B_
vis
_constr_1 GCC_NOTUSED = {
static asn_oer_constraints_t asn_OER_type_B_
0_0
_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 0 } /* (0..0) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [B-
vis
] >>> ***/
/*** <<< STAT-DEFS [B-
0-0
] >>> ***/
static const ber_tlv_tag_t asn_DEF_B_
vis
_tags_1[] = {
static const ber_tlv_tag_t asn_DEF_B_
0_0
_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_B_
vis
= {
"B-
vis
",
"B-
vis
",
B_
vis
_free,
B_
vis
_print,
B_
vis
_constraint,
B_
vis
_decode_ber,
B_
vis
_encode_der,
B_
vis
_decode_xer,
B_
vis
_encode_xer,
B_
vis
_decode_oer,
B_
vis
_encode_oer,
asn_TYPE_descriptor_t asn_DEF_B_
0_0
= {
"B-
0-0
",
"B-
0-0
",
B_
0_0
_free,
B_
0_0
_print,
B_
0_0
_constraint,
B_
0_0
_decode_ber,
B_
0_0
_encode_der,
B_
0_0
_decode_xer,
B_
0_0
_encode_xer,
B_
0_0
_decode_oer,
B_
0_0
_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_B_
vis
_tags_1,
sizeof(asn_DEF_B_
vis
_tags_1)
/sizeof(asn_DEF_B_
vis
_tags_1[0]), /* 1 */
asn_DEF_B_
vis
_tags_1, /* Same as above */
sizeof(asn_DEF_B_
vis
_tags_1)
/sizeof(asn_DEF_B_
vis
_tags_1[0]), /* 1 */
&asn_OER_type_B_
vis
_constr_1,
asn_DEF_B_
0_0
_tags_1,
sizeof(asn_DEF_B_
0_0
_tags_1)
/sizeof(asn_DEF_B_
0_0
_tags_1[0]), /* 1 */
asn_DEF_B_
0_0
_tags_1, /* Same as above */
sizeof(asn_DEF_B_
0_0
_tags_1)
/sizeof(asn_DEF_B_
0_0
_tags_1[0]), /* 1 */
&asn_OER_type_B_
0_0
_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [C-
vis
] >>> ***/
/*** <<< INCLUDES [C-
1-2
] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [C-
vis
] >>> ***/
/*** <<< TYPE-DECLS [C-
1-2
] >>> ***/
typedef long C_
vis
_t;
typedef long C_
1_2
_t;
/*** <<< FUNC-DECLS [C-
vis
] >>> ***/
/*** <<< FUNC-DECLS [C-
1-2
] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_C_
vis
;
asn_struct_free_f C_
vis
_free;
asn_struct_print_f C_
vis
_print;
asn_constr_check_f C_
vis
_constraint;
ber_type_decoder_f C_
vis
_decode_ber;
der_type_encoder_f C_
vis
_encode_der;
xer_type_decoder_f C_
vis
_decode_xer;
xer_type_encoder_f C_
vis
_encode_xer;
oer_type_decoder_f C_
vis
_decode_oer;
oer_type_encoder_f C_
vis
_encode_oer;
extern asn_TYPE_descriptor_t asn_DEF_C_
1_2
;
asn_struct_free_f C_
1_2
_free;
asn_struct_print_f C_
1_2
_print;
asn_constr_check_f C_
1_2
_constraint;
ber_type_decoder_f C_
1_2
_decode_ber;
der_type_encoder_f C_
1_2
_encode_der;
xer_type_decoder_f C_
1_2
_decode_xer;
xer_type_encoder_f C_
1_2
_encode_xer;
oer_type_decoder_f C_
1_2
_decode_oer;
oer_type_encoder_f C_
1_2
_encode_oer;
/*** <<< CODE [C-
vis
] >>> ***/
/*** <<< CODE [C-
1-2
] >>> ***/
int
C_
vis
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
C_
1_2
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
...
...
@@ -357,7 +357,7 @@ C_vis_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
value = *(const long *)sptr;
if((value >=
-1 && value <= 1
)) {
if((value >=
1 && value <= 2
)) {
/* Constraint check succeeded */
return 0;
} else {
...
...
@@ -373,7 +373,7 @@ C_vis_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
* so here we adjust the DEF accordingly.
*/
static void
C_
vis
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
C_
1_2
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
...
...
@@ -395,97 +395,97 @@ C_vis_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
}
void
C_
vis
_free(asn_TYPE_descriptor_t *td,
C_
1_2
_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
C_
vis
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
C_
1_2
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
C_
vis
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
C_
1_2
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
C_
vis
_encode_der(asn_TYPE_descriptor_t *td,
C_
1_2
_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
C_
vis
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
C_
1_2
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
C_
vis
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
C_
1_2
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
C_
vis
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
C_
1_2
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
C_
vis
_encode_oer(asn_TYPE_descriptor_t *td,
C_
1_2
_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
C_
vis
_1_inherit_TYPE_descriptor(td);
C_
1_2
_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [C-
vis
] >>> ***/
/*** <<< CTDEFS [C-
1-2
] >>> ***/
static asn_oer_constraints_t asn_OER_type_C_
vis
_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND,
-1, 1 } /* (-1..1
) */,
static asn_oer_constraints_t asn_OER_type_C_
1_2
_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND,
1, 2 } /* (1..2
) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [C-
vis
] >>> ***/
/*** <<< STAT-DEFS [C-
1-2
] >>> ***/
static const ber_tlv_tag_t asn_DEF_C_
vis
_tags_1[] = {
static const ber_tlv_tag_t asn_DEF_C_
1_2
_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_C_
vis
= {
"C-
vis
",
"C-
vis
",
C_
vis
_free,
C_
vis
_print,
C_
vis
_constraint,
C_
vis
_decode_ber,
C_
vis
_encode_der,
C_
vis
_decode_xer,
C_
vis
_encode_xer,
C_
vis
_decode_oer,
C_
vis
_encode_oer,
asn_TYPE_descriptor_t asn_DEF_C_
1_2
= {
"C-
1-2
",
"C-
1-2
",
C_
1_2
_free,
C_
1_2
_print,
C_
1_2
_constraint,
C_
1_2
_decode_ber,
C_
1_2
_encode_der,
C_
1_2
_decode_xer,
C_
1_2
_encode_xer,
C_
1_2
_decode_oer,
C_
1_2
_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_C_
vis
_tags_1,
sizeof(asn_DEF_C_
vis
_tags_1)
/sizeof(asn_DEF_C_
vis
_tags_1[0]), /* 1 */
asn_DEF_C_
vis
_tags_1, /* Same as above */
sizeof(asn_DEF_C_
vis
_tags_1)
/sizeof(asn_DEF_C_
vis
_tags_1[0]), /* 1 */
&asn_OER_type_C_
vis
_constr_1,
asn_DEF_C_
1_2
_tags_1,
sizeof(asn_DEF_C_
1_2
_tags_1)
/sizeof(asn_DEF_C_
1_2
_tags_1[0]), /* 1 */
asn_DEF_C_
1_2
_tags_1, /* Same as above */
sizeof(asn_DEF_C_
1_2
_tags_1)
/sizeof(asn_DEF_C_
1_2
_tags_1[0]), /* 1 */
&asn_OER_type_C_
1_2
_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
...
...
@@ -629,7 +629,7 @@ D_inv_encode_oer(asn_TYPE_descriptor_t *td,
/*** <<< CTDEFS [D-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_D_inv_constr_1 GCC_NOTUSED = {
{
AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 10 } /* (0..10,...) */
,
{
0, 0, 0 }
,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [D-inv] >>> ***/
...
...
@@ -664,31 +664,31 @@ asn_TYPE_descriptor_t asn_DEF_D_inv = {
};
/*** <<< INCLUDES [E-
vis
] >>> ***/
/*** <<< INCLUDES [E-
2-5
] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [E-
vis
] >>> ***/
/*** <<< TYPE-DECLS [E-
2-5
] >>> ***/
typedef long E_
vis
_t;
typedef long E_
2_5
_t;
/*** <<< FUNC-DECLS [E-
vis
] >>> ***/
/*** <<< FUNC-DECLS [E-
2-5
] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_E_
vis
;
asn_struct_free_f E_
vis
_free;
asn_struct_print_f E_
vis
_print;
asn_constr_check_f E_
vis
_constraint;
ber_type_decoder_f E_
vis
_decode_ber;
der_type_encoder_f E_
vis
_encode_der;
xer_type_decoder_f E_
vis
_decode_xer;
xer_type_encoder_f E_
vis
_encode_xer;
oer_type_decoder_f E_
vis
_decode_oer;
oer_type_encoder_f E_
vis
_encode_oer;
extern asn_TYPE_descriptor_t asn_DEF_E_
2_5
;
asn_struct_free_f E_
2_5
_free;
asn_struct_print_f E_
2_5
_print;
asn_constr_check_f E_
2_5
_constraint;
ber_type_decoder_f E_
2_5
_decode_ber;
der_type_encoder_f E_
2_5
_encode_der;
xer_type_decoder_f E_
2_5
_decode_xer;
xer_type_encoder_f E_
2_5
_encode_xer;
oer_type_decoder_f E_
2_5
_decode_oer;
oer_type_encoder_f E_
2_5
_encode_oer;
/*** <<< CODE [E-
vis
] >>> ***/
/*** <<< CODE [E-
2-5
] >>> ***/
int
E_
vis
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
E_
2_5
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
...
...
@@ -717,7 +717,7 @@ E_vis_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
* so here we adjust the DEF accordingly.
*/
static void
E_
vis
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
E_
2_5
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
...
...
@@ -739,97 +739,97 @@ E_vis_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
}
void
E_
vis
_free(asn_TYPE_descriptor_t *td,
E_
2_5
_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
E_
vis
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
E_
2_5
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
E_
vis
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
E_
2_5
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
E_
vis
_encode_der(asn_TYPE_descriptor_t *td,
E_
2_5
_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
E_
vis
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
E_
2_5
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
E_
vis
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
E_
2_5
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
E_
vis
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
E_
2_5
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
E_
vis
_encode_oer(asn_TYPE_descriptor_t *td,
E_
2_5
_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
E_
vis
_1_inherit_TYPE_descriptor(td);
E_
2_5
_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [E-
vis
] >>> ***/
/*** <<< CTDEFS [E-
2-5
] >>> ***/
static asn_oer_constraints_t asn_OER_type_E_
vis
_constr_1 GCC_NOTUSED = {
static asn_oer_constraints_t asn_OER_type_E_
2_5
_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 2, 5 } /* (2..5) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [E-
vis
] >>> ***/
/*** <<< STAT-DEFS [E-
2-5
] >>> ***/
static const ber_tlv_tag_t asn_DEF_E_
vis
_tags_1[] = {
static const ber_tlv_tag_t asn_DEF_E_
2_5
_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_E_
vis
= {
"E-
vis
",
"E-
vis
",
E_
vis
_free,
E_
vis
_print,
E_
vis
_constraint,
E_
vis
_decode_ber,
E_
vis
_encode_der,
E_
vis
_decode_xer,
E_
vis
_encode_xer,
E_
vis
_decode_oer,
E_
vis
_encode_oer,
asn_TYPE_descriptor_t asn_DEF_E_
2_5
= {
"E-
2-5
",
"E-
2-5
",
E_
2_5
_free,
E_
2_5
_print,
E_
2_5
_constraint,
E_
2_5
_decode_ber,
E_
2_5
_encode_der,
E_
2_5
_decode_xer,
E_
2_5
_encode_xer,
E_
2_5
_decode_oer,
E_
2_5
_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_E_
vis
_tags_1,
sizeof(asn_DEF_E_
vis
_tags_1)
/sizeof(asn_DEF_E_
vis
_tags_1[0]), /* 1 */
asn_DEF_E_
vis
_tags_1, /* Same as above */
sizeof(asn_DEF_E_
vis
_tags_1)
/sizeof(asn_DEF_E_
vis
_tags_1[0]), /* 1 */
&asn_OER_type_E_
vis
_constr_1,
asn_DEF_E_
2_5
_tags_1,
sizeof(asn_DEF_E_
2_5
_tags_1)
/sizeof(asn_DEF_E_
2_5
_tags_1[0]), /* 1 */
asn_DEF_E_
2_5
_tags_1, /* Same as above */
sizeof(asn_DEF_E_
2_5
_tags_1)
/sizeof(asn_DEF_E_
2_5
_tags_1[0]), /* 1 */
&asn_OER_type_E_
2_5
_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
...
...
@@ -973,7 +973,7 @@ F_inv_encode_oer(asn_TYPE_descriptor_t *td,
/*** <<< CTDEFS [F-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_F_inv_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND,
2, 5 } /* (2..5,...
) */,
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND,
0, 10 } /* (0..10
) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [F-inv] >>> ***/
...
...
@@ -1008,31 +1008,31 @@ asn_TYPE_descriptor_t asn_DEF_F_inv = {
};
/*** <<< INCLUDES [G-
vis
] >>> ***/
/*** <<< INCLUDES [G-
3-3
] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [G-
vis
] >>> ***/
/*** <<< TYPE-DECLS [G-
3-3
] >>> ***/
typedef long G_
vis
_t;
typedef long G_
3_3
_t;
/*** <<< FUNC-DECLS [G-
vis
] >>> ***/
/*** <<< FUNC-DECLS [G-
3-3
] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_G_
vis
;
asn_struct_free_f G_
vis
_free;
asn_struct_print_f G_
vis
_print;
asn_constr_check_f G_
vis
_constraint;
ber_type_decoder_f G_
vis
_decode_ber;
der_type_encoder_f G_
vis
_encode_der;
xer_type_decoder_f G_
vis
_decode_xer;
xer_type_encoder_f G_
vis
_encode_xer;
oer_type_decoder_f G_
vis
_decode_oer;
oer_type_encoder_f G_
vis
_encode_oer;
extern asn_TYPE_descriptor_t asn_DEF_G_
3_3
;
asn_struct_free_f G_
3_3
_free;
asn_struct_print_f G_
3_3
_print;
asn_constr_check_f G_
3_3
_constraint;
ber_type_decoder_f G_
3_3
_decode_ber;
der_type_encoder_f G_
3_3
_encode_der;
xer_type_decoder_f G_
3_3
_decode_xer;
xer_type_encoder_f G_
3_3
_encode_xer;
oer_type_decoder_f G_
3_3
_decode_oer;
oer_type_encoder_f G_
3_3
_encode_oer;
/*** <<< CODE [G-
vis
] >>> ***/
/*** <<< CODE [G-
3-3
] >>> ***/
int
G_
vis
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
G_
3_3
_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
...
...
@@ -1061,7 +1061,7 @@ G_vis_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
* so here we adjust the DEF accordingly.
*/
static void
G_
vis
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
G_
3_3
_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
...
...
@@ -1083,97 +1083,1473 @@ G_vis_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
}
void
G_
vis
_free(asn_TYPE_descriptor_t *td,
G_
3_3
_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
G_
vis
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
G_
3_3
_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
G_
vis
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
G_
3_3
_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
G_
vis
_encode_der(asn_TYPE_descriptor_t *td,
G_
3_3
_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
G_
vis
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
G_
3_3
_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
G_
vis
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
G_
3_3
_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
G_
vis
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
G_
3_3
_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
G_
vis
_encode_oer(asn_TYPE_descriptor_t *td,
G_
3_3
_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
G_
vis
_1_inherit_TYPE_descriptor(td);
G_
3_3
_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [G-
vis
] >>> ***/
/*** <<< CTDEFS [G-
3-3
] >>> ***/
static asn_oer_constraints_t asn_OER_type_G_
vis
_constr_1 GCC_NOTUSED = {
static asn_oer_constraints_t asn_OER_type_G_
3_3
_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 3, 3 } /* (3..3) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [G-
vis
] >>> ***/
/*** <<< STAT-DEFS [G-
3-3
] >>> ***/
static const ber_tlv_tag_t asn_DEF_G_
vis
_tags_1[] = {
static const ber_tlv_tag_t asn_DEF_G_
3_3
_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_G_
vis
= {
"G-
vis
",
"G-
vis
",
G_
vis
_free,
G_
vis
_print,
G_
vis
_constraint,
G_
vis
_decode_ber,
G_
vis
_encode_der,
G_
vis
_decode_xer,
G_
vis
_encode_xer,
G_
vis
_decode_oer,
G_
vis
_encode_oer,
asn_TYPE_descriptor_t asn_DEF_G_
3_3
= {
"G-
3-3
",
"G-
3-3
",
G_
3_3
_free,
G_
3_3
_print,
G_
3_3
_constraint,
G_
3_3
_decode_ber,
G_
3_3
_encode_der,
G_
3_3
_decode_xer,
G_
3_3
_encode_xer,
G_
3_3
_decode_oer,
G_
3_3
_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_G_vis_tags_1,
sizeof(asn_DEF_G_vis_tags_1)
/sizeof(asn_DEF_G_vis_tags_1[0]), /* 1 */
asn_DEF_G_vis_tags_1, /* Same as above */
sizeof(asn_DEF_G_vis_tags_1)
/sizeof(asn_DEF_G_vis_tags_1[0]), /* 1 */
&asn_OER_type_G_vis_constr_1,
asn_DEF_G_3_3_tags_1,
sizeof(asn_DEF_G_3_3_tags_1)
/sizeof(asn_DEF_G_3_3_tags_1[0]), /* 1 */
asn_DEF_G_3_3_tags_1, /* Same as above */
sizeof(asn_DEF_G_3_3_tags_1)
/sizeof(asn_DEF_G_3_3_tags_1[0]), /* 1 */
&asn_OER_type_G_3_3_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [H-4-5] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [H-4-5] >>> ***/
typedef long H_4_5_t;
/*** <<< FUNC-DECLS [H-4-5] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_H_4_5;
asn_struct_free_f H_4_5_free;
asn_struct_print_f H_4_5_print;
asn_constr_check_f H_4_5_constraint;
ber_type_decoder_f H_4_5_decode_ber;
der_type_encoder_f H_4_5_encode_der;
xer_type_decoder_f H_4_5_decode_xer;
xer_type_encoder_f H_4_5_encode_xer;
oer_type_decoder_f H_4_5_decode_oer;
oer_type_encoder_f H_4_5_encode_oer;
/*** <<< CODE [H-4-5] >>> ***/
int
H_4_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 4 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
H_4_5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
H_4_5_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
H_4_5_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
H_4_5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
H_4_5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
H_4_5_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
H_4_5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
H_4_5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
H_4_5_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
H_4_5_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
H_4_5_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [H-4-5] >>> ***/
static asn_oer_constraints_t asn_OER_type_H_4_5_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 4, 5 } /* (4..5) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [H-4-5] >>> ***/
static const ber_tlv_tag_t asn_DEF_H_4_5_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_H_4_5 = {
"H-4-5",
"H-4-5",
H_4_5_free,
H_4_5_print,
H_4_5_constraint,
H_4_5_decode_ber,
H_4_5_encode_der,
H_4_5_decode_xer,
H_4_5_encode_xer,
H_4_5_decode_oer,
H_4_5_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_H_4_5_tags_1,
sizeof(asn_DEF_H_4_5_tags_1)
/sizeof(asn_DEF_H_4_5_tags_1[0]), /* 1 */
asn_DEF_H_4_5_tags_1, /* Same as above */
sizeof(asn_DEF_H_4_5_tags_1)
/sizeof(asn_DEF_H_4_5_tags_1[0]), /* 1 */
&asn_OER_type_H_4_5_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [I-0-5] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [I-0-5] >>> ***/
typedef long I_0_5_t;
/*** <<< FUNC-DECLS [I-0-5] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_I_0_5;
asn_struct_free_f I_0_5_free;
asn_struct_print_f I_0_5_print;
asn_constr_check_f I_0_5_constraint;
ber_type_decoder_f I_0_5_decode_ber;
der_type_encoder_f I_0_5_encode_der;
xer_type_decoder_f I_0_5_decode_xer;
xer_type_encoder_f I_0_5_encode_xer;
oer_type_decoder_f I_0_5_decode_oer;
oer_type_encoder_f I_0_5_encode_oer;
/*** <<< CODE [I-0-5] >>> ***/
int
I_0_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 4 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
I_0_5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
I_0_5_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
I_0_5_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
I_0_5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
I_0_5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
I_0_5_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
I_0_5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
I_0_5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
I_0_5_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
I_0_5_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
I_0_5_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [I-0-5] >>> ***/
static asn_oer_constraints_t asn_OER_type_I_0_5_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 5 } /* (0..5) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [I-0-5] >>> ***/
static const ber_tlv_tag_t asn_DEF_I_0_5_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_I_0_5 = {
"I-0-5",
"I-0-5",
I_0_5_free,
I_0_5_print,
I_0_5_constraint,
I_0_5_decode_ber,
I_0_5_encode_der,
I_0_5_decode_xer,
I_0_5_encode_xer,
I_0_5_decode_oer,
I_0_5_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_I_0_5_tags_1,
sizeof(asn_DEF_I_0_5_tags_1)
/sizeof(asn_DEF_I_0_5_tags_1[0]), /* 1 */
asn_DEF_I_0_5_tags_1, /* Same as above */
sizeof(asn_DEF_I_0_5_tags_1)
/sizeof(asn_DEF_I_0_5_tags_1[0]), /* 1 */
&asn_OER_type_I_0_5_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [J-4-9] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [J-4-9] >>> ***/
typedef long J_4_9_t;
/*** <<< FUNC-DECLS [J-4-9] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_J_4_9;
asn_struct_free_f J_4_9_free;
asn_struct_print_f J_4_9_print;
asn_constr_check_f J_4_9_constraint;
ber_type_decoder_f J_4_9_decode_ber;
der_type_encoder_f J_4_9_encode_der;
xer_type_decoder_f J_4_9_decode_xer;
xer_type_encoder_f J_4_9_encode_xer;
oer_type_decoder_f J_4_9_decode_oer;
oer_type_encoder_f J_4_9_encode_oer;
/*** <<< CODE [J-4-9] >>> ***/
int
J_4_9_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 4 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
J_4_9_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
J_4_9_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
J_4_9_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
J_4_9_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
J_4_9_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
J_4_9_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
J_4_9_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
J_4_9_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
J_4_9_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
J_4_9_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
J_4_9_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [J-4-9] >>> ***/
static asn_oer_constraints_t asn_OER_type_J_4_9_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 4, 9 } /* (4..9) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [J-4-9] >>> ***/
static const ber_tlv_tag_t asn_DEF_J_4_9_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_J_4_9 = {
"J-4-9",
"J-4-9",
J_4_9_free,
J_4_9_print,
J_4_9_constraint,
J_4_9_decode_ber,
J_4_9_encode_der,
J_4_9_decode_xer,
J_4_9_encode_xer,
J_4_9_decode_oer,
J_4_9_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_J_4_9_tags_1,
sizeof(asn_DEF_J_4_9_tags_1)
/sizeof(asn_DEF_J_4_9_tags_1[0]), /* 1 */
asn_DEF_J_4_9_tags_1, /* Same as above */
sizeof(asn_DEF_J_4_9_tags_1)
/sizeof(asn_DEF_J_4_9_tags_1[0]), /* 1 */
&asn_OER_type_J_4_9_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [K-inv] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [K-inv] >>> ***/
typedef long K_inv_t;
/*** <<< FUNC-DECLS [K-inv] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_K_inv;
asn_struct_free_f K_inv_free;
asn_struct_print_f K_inv_print;
asn_constr_check_f K_inv_constraint;
ber_type_decoder_f K_inv_decode_ber;
der_type_encoder_f K_inv_encode_der;
xer_type_decoder_f K_inv_decode_xer;
xer_type_encoder_f K_inv_encode_xer;
oer_type_decoder_f K_inv_decode_oer;
oer_type_encoder_f K_inv_encode_oer;
/*** <<< CODE [K-inv] >>> ***/
int
K_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 4 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
K_inv_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
K_inv_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
K_inv_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
K_inv_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
K_inv_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
K_inv_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
K_inv_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
K_inv_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
K_inv_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
K_inv_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
K_inv_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [K-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_K_inv_constr_1 GCC_NOTUSED = {
{ 0, 0, 0 },
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [K-inv] >>> ***/
static const ber_tlv_tag_t asn_DEF_K_inv_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_K_inv = {
"K-inv",
"K-inv",
K_inv_free,
K_inv_print,
K_inv_constraint,
K_inv_decode_ber,
K_inv_encode_der,
K_inv_decode_xer,
K_inv_encode_xer,
K_inv_decode_oer,
K_inv_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_K_inv_tags_1,
sizeof(asn_DEF_K_inv_tags_1)
/sizeof(asn_DEF_K_inv_tags_1[0]), /* 1 */
asn_DEF_K_inv_tags_1, /* Same as above */
sizeof(asn_DEF_K_inv_tags_1)
/sizeof(asn_DEF_K_inv_tags_1[0]), /* 1 */
&asn_OER_type_K_inv_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [L-0-5] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [L-0-5] >>> ***/
typedef long L_0_5_t;
/*** <<< FUNC-DECLS [L-0-5] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_L_0_5;
asn_struct_free_f L_0_5_free;
asn_struct_print_f L_0_5_print;
asn_constr_check_f L_0_5_constraint;
ber_type_decoder_f L_0_5_decode_ber;
der_type_encoder_f L_0_5_encode_der;
xer_type_decoder_f L_0_5_decode_xer;
xer_type_encoder_f L_0_5_encode_xer;
oer_type_decoder_f L_0_5_decode_oer;
oer_type_encoder_f L_0_5_encode_oer;
/*** <<< CODE [L-0-5] >>> ***/
int
L_0_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if(((value == 0) || (value == 5))) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
L_0_5_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
L_0_5_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
L_0_5_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
L_0_5_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
L_0_5_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
L_0_5_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
L_0_5_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
L_0_5_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
L_0_5_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
L_0_5_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
L_0_5_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [L-0-5] >>> ***/
static asn_oer_constraints_t asn_OER_type_L_0_5_constr_1 GCC_NOTUSED = {
{ AOC_HAS_LOWER_BOUND | AOC_HAS_UPPER_BOUND, 0, 5 } /* (0..5) */,
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [L-0-5] >>> ***/
static const ber_tlv_tag_t asn_DEF_L_0_5_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_L_0_5 = {
"L-0-5",
"L-0-5",
L_0_5_free,
L_0_5_print,
L_0_5_constraint,
L_0_5_decode_ber,
L_0_5_encode_der,
L_0_5_decode_xer,
L_0_5_encode_xer,
L_0_5_decode_oer,
L_0_5_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_L_0_5_tags_1,
sizeof(asn_DEF_L_0_5_tags_1)
/sizeof(asn_DEF_L_0_5_tags_1[0]), /* 1 */
asn_DEF_L_0_5_tags_1, /* Same as above */
sizeof(asn_DEF_L_0_5_tags_1)
/sizeof(asn_DEF_L_0_5_tags_1[0]), /* 1 */
&asn_OER_type_L_0_5_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [M-inv] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [M-inv] >>> ***/
typedef long M_inv_t;
/*** <<< FUNC-DECLS [M-inv] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_M_inv;
asn_struct_free_f M_inv_free;
asn_struct_print_f M_inv_print;
asn_constr_check_f M_inv_constraint;
ber_type_decoder_f M_inv_decode_ber;
der_type_encoder_f M_inv_encode_der;
xer_type_decoder_f M_inv_decode_xer;
xer_type_encoder_f M_inv_encode_xer;
oer_type_decoder_f M_inv_decode_oer;
oer_type_encoder_f M_inv_encode_oer;
/*** <<< CODE [M-inv] >>> ***/
int
M_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if(((value == 0) || (value == 5))) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
M_inv_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
M_inv_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
M_inv_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
M_inv_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
M_inv_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
M_inv_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
M_inv_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
M_inv_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
M_inv_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
M_inv_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
M_inv_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [M-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_M_inv_constr_1 GCC_NOTUSED = {
{ 0, 0, 0 },
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [M-inv] >>> ***/
static const ber_tlv_tag_t asn_DEF_M_inv_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_M_inv = {
"M-inv",
"M-inv",
M_inv_free,
M_inv_print,
M_inv_constraint,
M_inv_decode_ber,
M_inv_encode_der,
M_inv_decode_xer,
M_inv_encode_xer,
M_inv_decode_oer,
M_inv_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_M_inv_tags_1,
sizeof(asn_DEF_M_inv_tags_1)
/sizeof(asn_DEF_M_inv_tags_1[0]), /* 1 */
asn_DEF_M_inv_tags_1, /* Same as above */
sizeof(asn_DEF_M_inv_tags_1)
/sizeof(asn_DEF_M_inv_tags_1[0]), /* 1 */
&asn_OER_type_M_inv_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [N-inv] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [N-inv] >>> ***/
typedef long N_inv_t;
/*** <<< FUNC-DECLS [N-inv] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_N_inv;
asn_struct_free_f N_inv_free;
asn_struct_print_f N_inv_print;
asn_constr_check_f N_inv_constraint;
ber_type_decoder_f N_inv_decode_ber;
der_type_encoder_f N_inv_encode_der;
xer_type_decoder_f N_inv_decode_xer;
xer_type_encoder_f N_inv_encode_xer;
oer_type_decoder_f N_inv_decode_oer;
oer_type_encoder_f N_inv_encode_oer;
/*** <<< CODE [N-inv] >>> ***/
int
N_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 0 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
N_inv_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
N_inv_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
N_inv_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
N_inv_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
N_inv_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
N_inv_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
N_inv_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
N_inv_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
N_inv_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
N_inv_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
N_inv_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [N-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_N_inv_constr_1 GCC_NOTUSED = {
{ 0, 0, 0 },
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [N-inv] >>> ***/
static const ber_tlv_tag_t asn_DEF_N_inv_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_N_inv = {
"N-inv",
"N-inv",
N_inv_free,
N_inv_print,
N_inv_constraint,
N_inv_decode_ber,
N_inv_encode_der,
N_inv_decode_xer,
N_inv_encode_xer,
N_inv_decode_oer,
N_inv_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_N_inv_tags_1,
sizeof(asn_DEF_N_inv_tags_1)
/sizeof(asn_DEF_N_inv_tags_1[0]), /* 1 */
asn_DEF_N_inv_tags_1, /* Same as above */
sizeof(asn_DEF_N_inv_tags_1)
/sizeof(asn_DEF_N_inv_tags_1[0]), /* 1 */
&asn_OER_type_N_inv_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
};
/*** <<< INCLUDES [O-inv] >>> ***/
#include <NativeInteger.h>
/*** <<< TYPE-DECLS [O-inv] >>> ***/
typedef long O_inv_t;
/*** <<< FUNC-DECLS [O-inv] >>> ***/
extern asn_TYPE_descriptor_t asn_DEF_O_inv;
asn_struct_free_f O_inv_free;
asn_struct_print_f O_inv_print;
asn_constr_check_f O_inv_constraint;
ber_type_decoder_f O_inv_decode_ber;
der_type_encoder_f O_inv_encode_der;
xer_type_decoder_f O_inv_decode_xer;
xer_type_encoder_f O_inv_encode_xer;
oer_type_decoder_f O_inv_decode_oer;
oer_type_encoder_f O_inv_encode_oer;
/*** <<< CODE [O-inv] >>> ***/
int
O_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
asn_app_constraint_failed_f *ctfailcb, void *app_key) {
long value;
if(!sptr) {
ASN__CTFAIL(app_key, td, sptr,
"%s: value not given (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
value = *(const long *)sptr;
if((value >= 0 && value <= 5)) {
/* Constraint check succeeded */
return 0;
} else {
ASN__CTFAIL(app_key, td, sptr,
"%s: constraint failed (%s:%d)",
td->name, __FILE__, __LINE__);
return -1;
}
}
/*
* This type is implemented using NativeInteger,
* so here we adjust the DEF accordingly.
*/
static void
O_inv_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
td->free_struct = asn_DEF_NativeInteger.free_struct;
td->print_struct = asn_DEF_NativeInteger.print_struct;
td->check_constraints = asn_DEF_NativeInteger.check_constraints;
td->ber_decoder = asn_DEF_NativeInteger.ber_decoder;
td->der_encoder = asn_DEF_NativeInteger.der_encoder;
td->xer_decoder = asn_DEF_NativeInteger.xer_decoder;
td->xer_encoder = asn_DEF_NativeInteger.xer_encoder;
td->uper_decoder = asn_DEF_NativeInteger.uper_decoder;
td->uper_encoder = asn_DEF_NativeInteger.uper_encoder;
td->oer_decoder = asn_DEF_NativeInteger.oer_decoder;
td->oer_encoder = asn_DEF_NativeInteger.oer_encoder;
if(!td->oer_constraints)
td->oer_constraints = asn_DEF_NativeInteger.oer_constraints;
if(!td->per_constraints)
td->per_constraints = asn_DEF_NativeInteger.per_constraints;
td->elements = asn_DEF_NativeInteger.elements;
td->elements_count = asn_DEF_NativeInteger.elements_count;
td->specifics = asn_DEF_NativeInteger.specifics;
}
void
O_inv_free(asn_TYPE_descriptor_t *td,
void *struct_ptr, int contents_only) {
O_inv_1_inherit_TYPE_descriptor(td);
td->free_struct(td, struct_ptr, contents_only);
}
int
O_inv_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
}
asn_dec_rval_t
O_inv_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const void *bufptr, size_t size, int tag_mode) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
}
asn_enc_rval_t
O_inv_encode_der(asn_TYPE_descriptor_t *td,
void *structure, int tag_mode, ber_tlv_tag_t tag,
asn_app_consume_bytes_f *cb, void *app_key) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
}
asn_dec_rval_t
O_inv_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
void **structure, const char *opt_mname, const void *bufptr, size_t size) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
}
asn_enc_rval_t
O_inv_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
int ilevel, enum xer_encoder_flags_e flags,
asn_app_consume_bytes_f *cb, void *app_key) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
}
asn_dec_rval_t
O_inv_decode_oer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints, void **structure, const void *buffer, size_t size) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->oer_decoder(opt_codec_ctx, td, constraints, structure, buffer, size);
}
asn_enc_rval_t
O_inv_encode_oer(asn_TYPE_descriptor_t *td,
asn_oer_constraints_t *constraints,
void *structure, asn_app_consume_bytes_f *cb, void *app_key) {
O_inv_1_inherit_TYPE_descriptor(td);
return td->uper_encoder(td, constraints, structure, cb, app_key);
}
/*** <<< CTDEFS [O-inv] >>> ***/
static asn_oer_constraints_t asn_OER_type_O_inv_constr_1 GCC_NOTUSED = {
{ 0, 0, 0 },
{ 0, 0, 0 }};
/*** <<< STAT-DEFS [O-inv] >>> ***/
static const ber_tlv_tag_t asn_DEF_O_inv_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
};
asn_TYPE_descriptor_t asn_DEF_O_inv = {
"O-inv",
"O-inv",
O_inv_free,
O_inv_print,
O_inv_constraint,
O_inv_decode_ber,
O_inv_encode_der,
O_inv_decode_xer,
O_inv_encode_xer,
O_inv_decode_oer,
O_inv_encode_oer,
0, 0, /* No PER support, use "-gen-PER" to enable */
0, /* Use generic outmost tag fetcher */
asn_DEF_O_inv_tags_1,
sizeof(asn_DEF_O_inv_tags_1)
/sizeof(asn_DEF_O_inv_tags_1[0]), /* 1 */
asn_DEF_O_inv_tags_1, /* Same as above */
sizeof(asn_DEF_O_inv_tags_1)
/sizeof(asn_DEF_O_inv_tags_1[0]), /* 1 */
&asn_OER_type_O_inv_constr_1,
0, /* No PER visible constraints */
0, 0, /* No members */
0 /* No specifics */
...
...
tests/50-constraint-OK.asn1.-EFprint-constraints
View file @
5861e8a0
No preview for this file type
tests/90-cond-int-type-OK.asn1.-EFprint-constraints
View file @
5861e8a0
...
...
@@ -89,7 +89,7 @@ OK-IntegerInRange4 ::= INTEGER (-2147483648 | 2147483647)
OK-IntegerInRange5 ::= INTEGER (-2147483648 | 2147483647,...)
-- Combined constraints: (-2147483648 | 2147483647,...)
-- Practical constraints (OK-IntegerInRange5): (-2147483648 | 2147483647,...)
-- OER-visible constraints (OK-IntegerInRange5): (
-2147483648 | 2147483647,...
)
-- OER-visible constraints (OK-IntegerInRange5): (
MIN..MAX
)
-- PER-visible constraints (OK-IntegerInRange5): (-2147483648 | 2147483647,...)
NO-IntegerInRange6 ::= INTEGER (0..4294967295)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment