⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 72-same-names-ok.asn1.-p

📁 RSA加密/解密算法源码 asn1c-0.9.12
💻 -P
📖 第 1 页 / 共 2 页
字号:
/*** <<< INCLUDES [Type] >>> ***/#include <asn_SET_OF.h>#include <Type1.h>#include <Type2.h>#include <constr_SEQUENCE.h>#include <constr_SET_OF.h>/*** <<< TYPE-DECLS [Type] >>> ***/typedef struct Type {	A_SET_OF(struct Member {		Type1_t	 t1;		Type2_t	 t2;				/* Context for parsing across buffer boundaries */		asn_struct_ctx_t _asn_ctx;	} ) list;		/* Context for parsing across buffer boundaries */	asn_struct_ctx_t _asn_ctx;} Type_t;/*** <<< FUNC-DECLS [Type] >>> ***/extern asn_TYPE_descriptor_t asn_DEF_Type;/*** <<< STAT-DEFS [Type] >>> ***/static asn_TYPE_member_t asn_MBR_Member_2[] = {	{ ATF_NOFLAGS, 0, offsetof(struct Member, t1),		.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),		.tag_mode = 0,		.type = (void *)&asn_DEF_Type1,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "t1"		},	{ ATF_NOFLAGS, 0, offsetof(struct Member, t2),		.tag = -1 /* Ambiguous tag (CHOICE?) */,		.tag_mode = 0,		.type = (void *)&asn_DEF_Type2,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "t2"		},};static ber_tlv_tag_t asn_DEF_Member_2_tags[] = {	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))};static asn_TYPE_tag2member_t asn_MAP_Member_2_tag2el[] = {    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* t1 at 21 */    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 }, /* one-name at 37 */    { (ASN_TAG_CLASS_UNIVERSAL | (17 << 2)), 1, 0, 0 } /* two-name at 43 */};static asn_SEQUENCE_specifics_t asn_SPC_Member_2_specs = {	sizeof(struct Member),	offsetof(struct Member, _asn_ctx),	asn_MAP_Member_2_tag2el,	3,	/* Count of tags in the map */	-1,	/* Start extensions */	-1	/* Stop extensions */};static /* Use -fall-defs-global to expose */asn_TYPE_descriptor_t asn_DEF_Member_2 = {	"",	"",	SEQUENCE_free,	SEQUENCE_print,	SEQUENCE_constraint,	SEQUENCE_decode_ber,	SEQUENCE_encode_der,	SEQUENCE_decode_xer,	SEQUENCE_encode_xer,	0,	/* Use generic outmost tag fetcher */	asn_DEF_Member_2_tags,	sizeof(asn_DEF_Member_2_tags)		/sizeof(asn_DEF_Member_2_tags[0]), /* 1 */	asn_DEF_Member_2_tags,	/* Same as above */	sizeof(asn_DEF_Member_2_tags)		/sizeof(asn_DEF_Member_2_tags[0]), /* 1 */	asn_MBR_Member_2,	2,	/* Elements count */	&asn_SPC_Member_2_specs	/* Additional specs */};static asn_TYPE_member_t asn_MBR_Type_1[] = {	{ ATF_NOFLAGS, 0, 0,		.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),		.tag_mode = 0,		.type = (void *)&asn_DEF_Member_2,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = ""		},};static ber_tlv_tag_t asn_DEF_Type_1_tags[] = {	(ASN_TAG_CLASS_UNIVERSAL | (17 << 2))};static asn_SET_OF_specifics_t asn_SPC_Type_1_specs = {	sizeof(struct Type),	offsetof(struct Type, _asn_ctx),	0,	/* XER encoding is XMLDelimitedItemList */};asn_TYPE_descriptor_t asn_DEF_Type = {	"Type",	"Type",	SET_OF_free,	SET_OF_print,	SET_OF_constraint,	SET_OF_decode_ber,	SET_OF_encode_der,	SET_OF_decode_xer,	SET_OF_encode_xer,	0,	/* Use generic outmost tag fetcher */	asn_DEF_Type_1_tags,	sizeof(asn_DEF_Type_1_tags)		/sizeof(asn_DEF_Type_1_tags[0]), /* 1 */	asn_DEF_Type_1_tags,	/* Same as above */	sizeof(asn_DEF_Type_1_tags)		/sizeof(asn_DEF_Type_1_tags[0]), /* 1 */	asn_MBR_Type_1,	1,	/* Single element */	&asn_SPC_Type_1_specs	/* Additional specs */};/*** <<< INCLUDES [Type1] >>> ***/#include <INTEGER.h>#include <constr_SEQUENCE.h>#include <constr_CHOICE.h>/*** <<< DEPS [Type1] >>> ***/typedef enum one_name_PR {	one_name_PR_NOTHING,	/* No components present */	one_name_PR_another_name,} one_name_PR;/*** <<< TYPE-DECLS [Type1] >>> ***/typedef struct Type1 {	struct one_name {		one_name_PR present;		union {			struct another_name {				INTEGER_t	 a;				INTEGER_t	 b;								/* Context for parsing across buffer boundaries */				asn_struct_ctx_t _asn_ctx;			} another_name;		} choice;				/* Context for parsing across buffer boundaries */		asn_struct_ctx_t _asn_ctx;	} one_name;		/* Context for parsing across buffer boundaries */	asn_struct_ctx_t _asn_ctx;} Type1_t;/*** <<< FUNC-DECLS [Type1] >>> ***/extern asn_TYPE_descriptor_t asn_DEF_Type1;/*** <<< STAT-DEFS [Type1] >>> ***/static asn_TYPE_member_t asn_MBR_another_name_3[] = {	{ ATF_NOFLAGS, 0, offsetof(struct another_name, a),		.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),		.tag_mode = 0,		.type = (void *)&asn_DEF_INTEGER,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "a"		},	{ ATF_NOFLAGS, 0, offsetof(struct another_name, b),		.tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),		.tag_mode = 0,		.type = (void *)&asn_DEF_INTEGER,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "b"		},};static ber_tlv_tag_t asn_DEF_another_name_3_tags[] = {	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))};static asn_TYPE_tag2member_t asn_MAP_another_name_3_tag2el[] = {    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* a at 27 */    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, -1, 0 } /* b at 27 */};static asn_SEQUENCE_specifics_t asn_SPC_another_name_3_specs = {	sizeof(struct another_name),	offsetof(struct another_name, _asn_ctx),	asn_MAP_another_name_3_tag2el,	2,	/* Count of tags in the map */	-1,	/* Start extensions */	-1	/* Stop extensions */};static /* Use -fall-defs-global to expose */asn_TYPE_descriptor_t asn_DEF_another_name_3 = {	"another-name",	"another-name",	SEQUENCE_free,	SEQUENCE_print,	SEQUENCE_constraint,	SEQUENCE_decode_ber,	SEQUENCE_encode_der,	SEQUENCE_decode_xer,	SEQUENCE_encode_xer,	0,	/* Use generic outmost tag fetcher */	asn_DEF_another_name_3_tags,	sizeof(asn_DEF_another_name_3_tags)		/sizeof(asn_DEF_another_name_3_tags[0]), /* 1 */	asn_DEF_another_name_3_tags,	/* Same as above */	sizeof(asn_DEF_another_name_3_tags)		/sizeof(asn_DEF_another_name_3_tags[0]), /* 1 */	asn_MBR_another_name_3,	2,	/* Elements count */	&asn_SPC_another_name_3_specs	/* Additional specs */};static asn_TYPE_member_t asn_MBR_one_name_2[] = {	{ ATF_NOFLAGS, 0, offsetof(struct one_name, choice.another_name),		.tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),		.tag_mode = 0,		.type = (void *)&asn_DEF_another_name_3,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "another-name"		},};static asn_TYPE_tag2member_t asn_MAP_one_name_2_tag2el[] = {    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* another-name at 27 */};static asn_CHOICE_specifics_t asn_SPC_one_name_2_specs = {	sizeof(struct one_name),	offsetof(struct one_name, _asn_ctx),	offsetof(struct one_name, present),	sizeof(((struct one_name *)0)->present),	asn_MAP_one_name_2_tag2el,	1,	/* Count of tags in the map */	0	/* Whether extensible */};static /* Use -fall-defs-global to expose */asn_TYPE_descriptor_t asn_DEF_one_name_2 = {	"one-name",	"one-name",	CHOICE_free,	CHOICE_print,	CHOICE_constraint,	CHOICE_decode_ber,	CHOICE_encode_der,	CHOICE_decode_xer,	CHOICE_encode_xer,	CHOICE_outmost_tag,	0,	/* No effective tags (pointer) */	0,	/* No effective tags (count) */	0,	/* No tags (pointer) */	0,	/* No tags (count) */	asn_MBR_one_name_2,	1,	/* Elements count */	&asn_SPC_one_name_2_specs	/* Additional specs */};static asn_TYPE_member_t asn_MBR_Type1_1[] = {	{ ATF_NOFLAGS, 0, offsetof(struct Type1, one_name),		.tag = -1 /* Ambiguous tag (CHOICE?) */,		.tag_mode = 0,		.type = (void *)&asn_DEF_one_name_2,		.memb_constraints = 0,	/* Defer constraints checking to the member type */		.name = "one-name"		},};static ber_tlv_tag_t asn_DEF_Type1_1_tags[] = {	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))};static asn_TYPE_tag2member_t asn_MAP_Type1_1_tag2el[] = {    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* another-name at 27 */};static asn_SEQUENCE_specifics_t asn_SPC_Type1_1_specs = {	sizeof(struct Type1),	offsetof(struct Type1, _asn_ctx),	asn_MAP_Type1_1_tag2el,	1,	/* Count of tags in the map */	-1,	/* Start extensions */	-1	/* Stop extensions */};asn_TYPE_descriptor_t asn_DEF_Type1 = {	"Type1",	"Type1",	SEQUENCE_free,	SEQUENCE_print,	SEQUENCE_constraint,	SEQUENCE_decode_ber,	SEQUENCE_encode_der,	SEQUENCE_decode_xer,	SEQUENCE_encode_xer,	0,	/* Use generic outmost tag fetcher */	asn_DEF_Type1_1_tags,	sizeof(asn_DEF_Type1_1_tags)		/sizeof(asn_DEF_Type1_1_tags[0]), /* 1 */	asn_DEF_Type1_1_tags,	/* Same as above */	sizeof(asn_DEF_Type1_1_tags)		/sizeof(asn_DEF_Type1_1_tags[0]), /* 1 */	asn_MBR_Type1_1,	1,	/* Elements count */	&asn_SPC_Type1_1_specs	/* Additional specs */};/*** <<< INCLUDES [Type2] >>> ***/#include <BIT_STRING.h>#include <INTEGER.h>#include <constr_SEQUENCE.h>#include <constr_SET.h>#include <constr_CHOICE.h>/*** <<< DEPS [Type2] >>> ***/typedef enum Type2_PR {	Type2_PR_NOTHING,	/* No components present */	Type2_PR_one_name,	Type2_PR_two_name,} Type2_PR;/* * Method of determining the components presence */typedef enum two_name_PR {	two_name_PR_another_name,	/* Member another_name is present */} two_name_PR;/*** <<< TYPE-DECLS [Type2] >>> ***/typedef struct Type2 {	Type2_PR present;	union {		struct one_name {			struct another_name {				BIT_STRING_t	 a;				INTEGER_t	 b;								/* Context for parsing across buffer boundaries */				asn_struct_ctx_t _asn_ctx;			} another_name;						/* Context for parsing across buffer boundaries */			asn_struct_ctx_t _asn_ctx;		} one_name;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -