diff options
author | Lev Walkin <vlm@lionet.info> | 2004-09-22 16:06:28 +0000 |
---|---|---|
committer | Lev Walkin <vlm@lionet.info> | 2004-09-22 16:06:28 +0000 |
commit | a9cc46e3f3c30ddd3f2a8f712c9f0acdc793fda7 (patch) | |
tree | 3ca369d58e29a24dc08ec01d4a3e4cac2020fe26 /tests/32-sequence-of-OK.asn1.-P | |
parent | e4d6ab83d7937337f1c19acfb4353fd0d43180dd (diff) |
XER support
Diffstat (limited to 'tests/32-sequence-of-OK.asn1.-P')
-rw-r--r-- | tests/32-sequence-of-OK.asn1.-P | 182 |
1 files changed, 182 insertions, 0 deletions
diff --git a/tests/32-sequence-of-OK.asn1.-P b/tests/32-sequence-of-OK.asn1.-P new file mode 100644 index 00000000..5b3d606c --- /dev/null +++ b/tests/32-sequence-of-OK.asn1.-P @@ -0,0 +1,182 @@ + +/*** <<< INCLUDES [Programming] >>> ***/ + +#include <Fault.h> +#include <asn_SEQUENCE_OF.h> +#include <constr_SEQUENCE_OF.h> + +/*** <<< DEPS [Programming] >>> ***/ + +extern asn1_TYPE_descriptor_t asn1_DEF_Programming; + +/*** <<< TYPE-DECLS [Programming] >>> ***/ + + +typedef struct Programming { + A_SEQUENCE_OF(Fault_t) list; + + /* Context for parsing across buffer boundaries */ + ber_dec_ctx_t _ber_dec_ctx; +} Programming_t; + +/*** <<< STAT-DEFS [Programming] >>> ***/ + +static asn1_TYPE_member_t asn1_MBR_Programming[] = { + { ATF_NOFLAGS, 0, 0, + .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + .tag_mode = -1, /* IMPLICIT tag at current level */ + .type = (void *)&asn1_DEF_Fault, + .memb_constraints = 0, /* Defer to actual type */ + .name = "" + }, +}; +static ber_tlv_tag_t asn1_DEF_Programming_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn1_SET_OF_specifics_t asn1_DEF_Programming_specs = { + sizeof(struct Programming), + offsetof(struct Programming, _ber_dec_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn1_TYPE_descriptor_t asn1_DEF_Programming = { + "Programming", + SEQUENCE_OF_free, + SEQUENCE_OF_print, + SEQUENCE_OF_constraint, + SEQUENCE_OF_decode_ber, + SEQUENCE_OF_encode_der, + 0, /* Not implemented yet */ + SEQUENCE_OF_encode_xer, + 0, /* Use generic outmost tag fetcher */ + asn1_DEF_Programming_tags, + sizeof(asn1_DEF_Programming_tags) + /sizeof(asn1_DEF_Programming_tags[0]), /* 1 */ + asn1_DEF_Programming_tags, /* Same as above */ + sizeof(asn1_DEF_Programming_tags) + /sizeof(asn1_DEF_Programming_tags[0]), /* 1 */ + 1, /* Whether CONSTRUCTED */ + asn1_MBR_Programming, + 1, /* Single element */ + &asn1_DEF_Programming_specs /* Additional specs */ +}; + + +/*** <<< INCLUDES [Fault] >>> ***/ + +#include <Error.h> +#include <asn_SET_OF.h> +#include <constr_SET_OF.h> + +/*** <<< DEPS [Fault] >>> ***/ + +extern asn1_TYPE_descriptor_t asn1_DEF_Fault; + +/*** <<< TYPE-DECLS [Fault] >>> ***/ + + +typedef struct Fault { + A_SET_OF(Error_t) list; + + /* Context for parsing across buffer boundaries */ + ber_dec_ctx_t _ber_dec_ctx; +} Fault_t; + +/*** <<< STAT-DEFS [Fault] >>> ***/ + +static asn1_TYPE_member_t asn1_MBR_Fault[] = { + { ATF_NOFLAGS, 0, 0, + .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + .tag_mode = 0, + .type = (void *)&asn1_DEF_Error, + .memb_constraints = 0, /* Defer to actual type */ + .name = "" + }, +}; +static ber_tlv_tag_t asn1_DEF_Fault_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)) +}; +static asn1_SET_OF_specifics_t asn1_DEF_Fault_specs = { + sizeof(struct Fault), + offsetof(struct Fault, _ber_dec_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn1_TYPE_descriptor_t asn1_DEF_Fault = { + "Fault", + SET_OF_free, + SET_OF_print, + SET_OF_constraint, + SET_OF_decode_ber, + SET_OF_encode_der, + 0, /* Not implemented yet */ + SET_OF_encode_xer, + 0, /* Use generic outmost tag fetcher */ + asn1_DEF_Fault_tags, + sizeof(asn1_DEF_Fault_tags) + /sizeof(asn1_DEF_Fault_tags[0]), /* 1 */ + asn1_DEF_Fault_tags, /* Same as above */ + sizeof(asn1_DEF_Fault_tags) + /sizeof(asn1_DEF_Fault_tags[0]), /* 1 */ + 1, /* Whether CONSTRUCTED */ + asn1_MBR_Fault, + 1, /* Single element */ + &asn1_DEF_Fault_specs /* Additional specs */ +}; + + +/*** <<< INCLUDES [Error] >>> ***/ + +#include <constr_SEQUENCE.h> + +/*** <<< DEPS [Error] >>> ***/ + +extern asn1_TYPE_descriptor_t asn1_DEF_Error; + +/*** <<< TYPE-DECLS [Error] >>> ***/ + + +typedef struct Error { + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + ber_dec_ctx_t _ber_dec_ctx; +} Error_t; + +/*** <<< STAT-DEFS [Error] >>> ***/ + +static ber_tlv_tag_t asn1_DEF_Error_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn1_TYPE_tag2member_t asn1_DEF_Error_tag2el[] = { +}; +static asn1_SEQUENCE_specifics_t asn1_DEF_Error_specs = { + sizeof(struct Error), + offsetof(struct Error, _ber_dec_ctx), + asn1_DEF_Error_tag2el, + 0, /* Count of tags in the map */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn1_TYPE_descriptor_t asn1_DEF_Error = { + "Error", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + 0, /* Not implemented yet */ + SEQUENCE_encode_xer, + 0, /* Use generic outmost tag fetcher */ + asn1_DEF_Error_tags, + sizeof(asn1_DEF_Error_tags) + /sizeof(asn1_DEF_Error_tags[0]), /* 1 */ + asn1_DEF_Error_tags, /* Same as above */ + sizeof(asn1_DEF_Error_tags) + /sizeof(asn1_DEF_Error_tags[0]), /* 1 */ + 1, /* Whether CONSTRUCTED */ + 0, 0, /* No members */ + &asn1_DEF_Error_specs /* Additional specs */ +}; + |