57 #ifndef HEADER_ASN1T_H 58 #define HEADER_ASN1T_H 63 #ifdef OPENSSL_BUILD_SHLIBCRYPTO 64 # undef OPENSSL_EXTERN 65 # define OPENSSL_EXTERN OPENSSL_EXPORT 76 #define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)(iptr)) 81 #define ASN1_ITEM_start(itname) \ 82 const ASN1_ITEM itname##_it = { 84 #define ASN1_ITEM_end(itname) \ 89 #define ASN1_ITEM_TEMPLATE(tname) \ 90 static const ASN1_TEMPLATE tname##_item_tt 92 #define ASN1_ITEM_TEMPLATE_END(tname) \ 94 ASN1_ITEM_start(tname) \ 95 ASN1_ITYPE_PRIMITIVE,\ 127 #define ASN1_SEQUENCE(tname) \ 128 static const ASN1_TEMPLATE tname##_seq_tt[] 130 #define ASN1_SEQUENCE_END(stname) ASN1_SEQUENCE_END_name(stname, stname) 132 #define ASN1_SEQUENCE_END_name(stname, tname) \ 134 ASN1_ITEM_start(tname) \ 135 ASN1_ITYPE_SEQUENCE,\ 138 sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ 144 #define ASN1_NDEF_SEQUENCE(tname) \ 147 #define ASN1_NDEF_SEQUENCE_cb(tname, cb) \ 148 ASN1_SEQUENCE_cb(tname, cb) 150 #define ASN1_SEQUENCE_cb(tname, cb) \ 151 static const ASN1_AUX tname##_aux = {NULL, 0, 0, cb, 0}; \ 154 #define ASN1_BROKEN_SEQUENCE(tname) \ 155 static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_BROKEN, 0, 0, 0}; \ 158 #define ASN1_SEQUENCE_ref(tname, cb) \ 159 static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_REFCOUNT, offsetof(tname, references), cb, 0}; \ 162 #define ASN1_SEQUENCE_enc(tname, enc, cb) \ 163 static const ASN1_AUX tname##_aux = {NULL, ASN1_AFLG_ENCODING, 0, cb, offsetof(tname, enc)}; \ 166 #define ASN1_NDEF_SEQUENCE_END(tname) \ 168 ASN1_ITEM_start(tname) \ 169 ASN1_ITYPE_NDEF_SEQUENCE,\ 172 sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ 178 #define ASN1_BROKEN_SEQUENCE_END(stname) ASN1_SEQUENCE_END_ref(stname, stname) 180 #define ASN1_SEQUENCE_END_enc(stname, tname) ASN1_SEQUENCE_END_ref(stname, tname) 182 #define ASN1_SEQUENCE_END_cb(stname, tname) ASN1_SEQUENCE_END_ref(stname, tname) 184 #define ASN1_SEQUENCE_END_ref(stname, tname) \ 186 ASN1_ITEM_start(tname) \ 187 ASN1_ITYPE_SEQUENCE,\ 190 sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ 196 #define ASN1_NDEF_SEQUENCE_END_cb(stname, tname) \ 198 ASN1_ITEM_start(tname) \ 199 ASN1_ITYPE_NDEF_SEQUENCE,\ 202 sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\ 231 #define ASN1_CHOICE(tname) \ 232 static const ASN1_TEMPLATE tname##_ch_tt[] 234 #define ASN1_CHOICE_cb(tname, cb) \ 235 static const ASN1_AUX tname##_aux = {NULL, 0, 0, cb, 0}; \ 238 #define ASN1_CHOICE_END(stname) ASN1_CHOICE_END_name(stname, stname) 240 #define ASN1_CHOICE_END_name(stname, tname) ASN1_CHOICE_END_selector(stname, tname, type) 242 #define ASN1_CHOICE_END_selector(stname, tname, selname) \ 244 ASN1_ITEM_start(tname) \ 246 offsetof(stname,selname) ,\ 248 sizeof(tname##_ch_tt) / sizeof(ASN1_TEMPLATE),\ 254 #define ASN1_CHOICE_END_cb(stname, tname, selname) \ 256 ASN1_ITEM_start(tname) \ 258 offsetof(stname,selname) ,\ 260 sizeof(tname##_ch_tt) / sizeof(ASN1_TEMPLATE),\ 268 #define ASN1_EX_TEMPLATE_TYPE(flags, tag, name, type) { \ 270 #name, ASN1_ITEM_ref(type) } 276 #define ASN1_EX_TYPE(flags, tag, stname, field, type) { \ 277 (flags), (tag), offsetof(stname, field),\ 278 #field, ASN1_ITEM_ref(type) } 282 #define ASN1_EX_COMBINE(flags, tag, type) { \ 283 (flags)|ASN1_TFLG_COMBINE, (tag), 0, NULL, ASN1_ITEM_ref(type) } 287 #define ASN1_IMP_EX(stname, field, type, tag, ex) \ 288 ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | ex, tag, stname, field, type) 290 #define ASN1_EXP_EX(stname, field, type, tag, ex) \ 291 ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | ex, tag, stname, field, type) 295 #define ASN1_ADB_OBJECT(tblname) { ASN1_TFLG_ADB_OID, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } 296 #define ASN1_ADB_INTEGER(tblname) { ASN1_TFLG_ADB_INT, -1, 0, #tblname, (const ASN1_ITEM *)&(tblname##_adb) } 298 #define ASN1_SIMPLE(stname, field, type) ASN1_EX_TYPE(0,0, stname, field, type) 301 #define ASN1_OPT(stname, field, type) ASN1_EX_TYPE(ASN1_TFLG_OPTIONAL, 0, stname, field, type) 304 #define ASN1_IMP(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, 0) 307 #define ASN1_IMP_OPT(stname, field, type, tag) ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) 311 #define ASN1_EXP(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, 0) 312 #define ASN1_EXP_OPT(stname, field, type, tag) ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL) 315 #define ASN1_SEQUENCE_OF(stname, field, type) \ 316 ASN1_EX_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, stname, field, type) 319 #define ASN1_SEQUENCE_OF_OPT(stname, field, type) \ 320 ASN1_EX_TYPE(ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL, 0, stname, field, type) 324 #define ASN1_SET_OF(stname, field, type) \ 325 ASN1_EX_TYPE(ASN1_TFLG_SET_OF, 0, stname, field, type) 327 #define ASN1_SET_OF_OPT(stname, field, type) \ 328 ASN1_EX_TYPE(ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL, 0, stname, field, type) 332 #define ASN1_IMP_SET_OF(stname, field, type, tag) \ 333 ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF) 335 #define ASN1_EXP_SET_OF(stname, field, type, tag) \ 336 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF) 338 #define ASN1_IMP_SET_OF_OPT(stname, field, type, tag) \ 339 ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL) 341 #define ASN1_EXP_SET_OF_OPT(stname, field, type, tag) \ 342 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SET_OF|ASN1_TFLG_OPTIONAL) 344 #define ASN1_IMP_SEQUENCE_OF(stname, field, type, tag) \ 345 ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF) 347 #define ASN1_IMP_SEQUENCE_OF_OPT(stname, field, type, tag) \ 348 ASN1_IMP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL) 350 #define ASN1_EXP_SEQUENCE_OF(stname, field, type, tag) \ 351 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF) 353 #define ASN1_EXP_SEQUENCE_OF_OPT(stname, field, type, tag) \ 354 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_SEQUENCE_OF|ASN1_TFLG_OPTIONAL) 357 #define ASN1_NDEF_EXP(stname, field, type, tag) \ 358 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_NDEF) 361 #define ASN1_NDEF_EXP_OPT(stname, field, type, tag) \ 362 ASN1_EXP_EX(stname, field, type, tag, ASN1_TFLG_OPTIONAL|ASN1_TFLG_NDEF) 366 #define ASN1_ADB(name) \ 367 static const ASN1_ADB_TABLE name##_adbtbl[] 369 #define ASN1_ADB_END(name, flags, field, app_table, def, none) \ 371 static const ASN1_ADB name##_adb = {\ 373 offsetof(name, field),\ 376 sizeof(name##_adbtbl) / sizeof(ASN1_ADB_TABLE),\ 381 #define ADB_ENTRY(val, template) {val, template} 383 #define ASN1_ADB_TEMPLATE(name) \ 384 static const ASN1_TEMPLATE name##_tt 396 #ifndef NO_ASN1_FIELD_NAMES 404 #define ASN1_TEMPLATE_item(t) (t->item_ptr) 405 #define ASN1_TEMPLATE_adb(t) (t->item_ptr) 428 #define ASN1_TFLG_OPTIONAL (0x1) 431 #define ASN1_TFLG_SET_OF (0x1 << 1) 434 #define ASN1_TFLG_SEQUENCE_OF (0x2 << 1) 441 #define ASN1_TFLG_SET_ORDER (0x3 << 1) 444 #define ASN1_TFLG_SK_MASK (0x3 << 1) 452 #define ASN1_TFLG_IMPTAG (0x1 << 3) 456 #define ASN1_TFLG_EXPTAG (0x2 << 3) 458 #define ASN1_TFLG_TAG_MASK (0x3 << 3) 461 #define ASN1_TFLG_IMPLICIT ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT 464 #define ASN1_TFLG_EXPLICIT ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT 473 #define ASN1_TFLG_UNIVERSAL (0x0<<6) 475 #define ASN1_TFLG_APPLICATION (0x1<<6) 477 #define ASN1_TFLG_CONTEXT (0x2<<6) 479 #define ASN1_TFLG_PRIVATE (0x3<<6) 481 #define ASN1_TFLG_TAG_CLASS (0x3<<6) 489 #define ASN1_TFLG_ADB_MASK (0x3<<8) 491 #define ASN1_TFLG_ADB_OID (0x1<<8) 493 #define ASN1_TFLG_ADB_INT (0x1<<9) 503 #define ASN1_TFLG_COMBINE (0x1<<10) 510 #define ASN1_TFLG_NDEF (0x1<<11) 521 #ifndef NO_ASN1_FIELD_NAMES 570 #define ASN1_ITYPE_PRIMITIVE 0x0 572 #define ASN1_ITYPE_SEQUENCE 0x1 574 #define ASN1_ITYPE_CHOICE 0x2 576 #define ASN1_ITYPE_COMPAT 0x3 578 #define ASN1_ITYPE_EXTERN 0x4 580 #define ASN1_ITYPE_MSTRING 0x5 582 #define ASN1_ITYPE_NDEF_SEQUENCE 0x6 613 int indent,
const char *fname,
697 #define ASN1_AFLG_REFCOUNT 1 699 #define ASN1_AFLG_ENCODING 2 701 #define ASN1_AFLG_BROKEN 4 705 #define ASN1_OP_NEW_PRE 0 706 #define ASN1_OP_NEW_POST 1 707 #define ASN1_OP_FREE_PRE 2 708 #define ASN1_OP_FREE_POST 3 709 #define ASN1_OP_D2I_PRE 4 710 #define ASN1_OP_D2I_POST 5 711 #define ASN1_OP_I2D_PRE 6 712 #define ASN1_OP_I2D_POST 7 713 #define ASN1_OP_PRINT_PRE 8 714 #define ASN1_OP_PRINT_POST 9 715 #define ASN1_OP_STREAM_PRE 10 716 #define ASN1_OP_STREAM_POST 11 717 #define ASN1_OP_DETACHED_PRE 12 718 #define ASN1_OP_DETACHED_POST 13 721 #define IMPLEMENT_ASN1_TYPE(stname) IMPLEMENT_ASN1_TYPE_ex(stname, stname, 0) 722 #define IMPLEMENT_ASN1_TYPE_ex(itname, vname, ex) \ 723 ASN1_ITEM_start(itname) \ 724 ASN1_ITYPE_PRIMITIVE, V_##vname, NULL, 0, NULL, ex, #itname \ 725 ASN1_ITEM_end(itname) 728 #define IMPLEMENT_ASN1_MSTRING(itname, mask) \ 729 ASN1_ITEM_start(itname) \ 730 ASN1_ITYPE_MSTRING, mask, NULL, 0, NULL, sizeof(ASN1_STRING), #itname \ 731 ASN1_ITEM_end(itname) 735 #define IMPLEMENT_COMPAT_ASN1(sname) IMPLEMENT_COMPAT_ASN1_type(sname, V_ASN1_SEQUENCE) 737 #define IMPLEMENT_COMPAT_ASN1_type(sname, tag) \ 738 static const ASN1_COMPAT_FUNCS sname##_ff = { \ 739 (ASN1_new_func *)sname##_new, \ 740 (ASN1_free_func *)sname##_free, \ 741 (ASN1_d2i_func *)d2i_##sname, \ 742 (ASN1_i2d_func *)i2d_##sname, \ 744 ASN1_ITEM_start(sname) \ 754 #define IMPLEMENT_EXTERN_ASN1(sname, tag, fptrs) \ 755 ASN1_ITEM_start(sname) \ 767 #define IMPLEMENT_ASN1_FUNCTIONS(stname) IMPLEMENT_ASN1_FUNCTIONS_fname(stname, stname, stname) 769 #define IMPLEMENT_ASN1_FUNCTIONS_name(stname, itname) IMPLEMENT_ASN1_FUNCTIONS_fname(stname, itname, itname) 771 #define IMPLEMENT_ASN1_FUNCTIONS_ENCODE_name(stname, itname) \ 772 IMPLEMENT_ASN1_FUNCTIONS_ENCODE_fname(stname, itname, itname) 774 #define IMPLEMENT_STATIC_ASN1_ALLOC_FUNCTIONS(stname) \ 775 IMPLEMENT_ASN1_ALLOC_FUNCTIONS_pfname(static, stname, stname, stname) 777 #define IMPLEMENT_ASN1_ALLOC_FUNCTIONS(stname) \ 778 IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, stname, stname) 780 #define IMPLEMENT_ASN1_ALLOC_FUNCTIONS_pfname(pre, stname, itname, fname) \ 781 pre stname *fname##_new(void) \ 783 return (stname *)ASN1_item_new(ASN1_ITEM_rptr(itname)); \ 785 pre void fname##_free(stname *a) \ 787 ASN1_item_free((ASN1_VALUE *)a, ASN1_ITEM_rptr(itname)); \ 790 #define IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) \ 791 stname *fname##_new(void) \ 793 return (stname *)ASN1_item_new(ASN1_ITEM_rptr(itname)); \ 795 void fname##_free(stname *a) \ 797 ASN1_item_free((ASN1_VALUE *)a, ASN1_ITEM_rptr(itname)); \ 800 #define IMPLEMENT_ASN1_FUNCTIONS_fname(stname, itname, fname) \ 801 IMPLEMENT_ASN1_ENCODE_FUNCTIONS_fname(stname, itname, fname) \ 802 IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) 804 #define IMPLEMENT_ASN1_ENCODE_FUNCTIONS_fname(stname, itname, fname) \ 805 stname *d2i_##fname(stname **a, const unsigned char **in, long len) \ 807 return (stname *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, ASN1_ITEM_rptr(itname));\ 809 int i2d_##fname(stname *a, unsigned char **out) \ 811 return ASN1_item_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(itname));\ 814 #define IMPLEMENT_ASN1_NDEF_FUNCTION(stname) \ 815 int i2d_##stname##_NDEF(stname *a, unsigned char **out) \ 817 return ASN1_item_ndef_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(stname));\ 823 #define IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(stname, itname, fname) \ 824 stname *d2i_##fname(stname **a, const unsigned char **in, long len) \ 826 return (stname *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, ASN1_ITEM_rptr(itname));\ 828 int i2d_##fname(const stname *a, unsigned char **out) \ 830 return ASN1_item_i2d((ASN1_VALUE *)a, out, ASN1_ITEM_rptr(itname));\ 833 #define IMPLEMENT_ASN1_DUP_FUNCTION(stname) \ 834 stname * stname##_dup(stname *x) \ 836 return ASN1_item_dup(ASN1_ITEM_rptr(stname), x); \ 839 #define IMPLEMENT_ASN1_FUNCTIONS_const(name) \ 840 IMPLEMENT_ASN1_FUNCTIONS_const_fname(name, name, name) 842 #define IMPLEMENT_ASN1_FUNCTIONS_const_fname(stname, itname, fname) \ 843 IMPLEMENT_ASN1_ENCODE_FUNCTIONS_const_fname(stname, itname, fname) \ 844 IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname(stname, itname, fname) ASN1_ex_print_func * asn1_ex_print
Definition: asn1t.h:635
ASN1_d2i_func * asn1_d2i
Definition: asn1t.h:623
ASN1_ex_new_func * asn1_ex_new
Definition: asn1t.h:629
void asn1_enc_init(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:131
#define DECLARE_ASN1_ITEM(name)
Definition: asn1.h:396
int ASN1_i2d_func(ASN1_VALUE *a, unsigned char **in)
Definition: asn1t.h:603
ASN1_free_func * asn1_free
Definition: asn1t.h:622
ASN1_i2d_func * asn1_i2d
Definition: asn1t.h:624
int flags
Definition: asn1t.h:671
ASN1_ITEM_EXP * item
Definition: asn1t.h:399
struct ASN1_AUX_st ASN1_AUX
ASN1_primitive_print * prim_print
Definition: asn1t.h:646
BIO * out
Definition: asn1t.h:687
ASN1_ex_free_func * asn1_ex_clear
Definition: asn1t.h:631
long tcount
Definition: asn1t.h:518
ASN1_ex_i2d * asn1_ex_i2d
Definition: asn1t.h:633
Definition: xmlparse.c:181
const ASN1_TEMPLATE * asn1_do_adb(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt, int nullerr)
Definition: tasn_utl.c:207
void * app_data
Definition: asn1t.h:628
int asn1_set_choice_selector(ASN1_VALUE **pval, int value, const ASN1_ITEM *it)
Definition: tasn_utl.c:82
int ref_offset
Definition: asn1t.h:672
#define ASN1_SEQUENCE(tname)
Definition: asn1t.h:127
const char * field_name
Definition: asn1t.h:397
int ASN1_item_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, int tag, int aclass, char opt, ASN1_TLC *ctx)
Definition: tasn_dec.c:164
operation
Definition: commit_id.py:15
struct ASN1_PRIMITIVE_FUNCS_st ASN1_PRIMITIVE_FUNCS
int indent
Definition: asn1t.h:680
int ASN1_aux_cb(int operation, ASN1_VALUE **in, const ASN1_ITEM *it, void *exarg)
Definition: asn1t.h:666
ASN1_aux_cb * asn1_cb
Definition: asn1t.h:673
int ASN1_primitive_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it)
Definition: asn1t.h:616
ASN1_primitive_c2i * prim_c2i
Definition: asn1t.h:644
BIO * ndef_bio
Definition: asn1t.h:689
struct ASN1_VALUE_st ASN1_VALUE
Definition: asn1.h:286
ASN1_VALUE * ASN1_d2i_func(ASN1_VALUE **a, const unsigned char **in, long length)
Definition: asn1t.h:602
unsigned long flags
Definition: asn1t.h:411
int ASN1_item_ex_new(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_new.c:82
int ASN1_item_ex_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_ITEM *it, int tag, int aclass)
Definition: tasn_enc.c:124
int asn1_ex_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it)
Definition: tasn_dec.c:840
void ASN1_ex_free_func(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: asn1t.h:610
int asn1_get_choice_selector(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:76
const char * sname
Definition: asn1t.h:522
struct ASN1_COMPAT_FUNCS_st ASN1_COMPAT_FUNCS
long value
Definition: asn1t.h:421
#define STACK_OF(type)
Definition: stack.h:112
int asn1_enc_save(ASN1_VALUE **pval, const unsigned char *in, int inlen, const ASN1_ITEM *it)
Definition: tasn_utl.c:154
int ASN1_ex_print_func(BIO *out, ASN1_VALUE **pval, int indent, const char *fname, const ASN1_PCTX *pctx)
Definition: asn1t.h:612
unsigned long offset
Definition: asn1t.h:412
ASN1_ex_free_func * asn1_ex_free
Definition: asn1t.h:630
int hdrlen
Definition: asn1t.h:595
void asn1_refcount_set_one(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:104
long tag
Definition: asn1t.h:394
OPENSSL_EXPORT const ASN1_OBJECT int const unsigned char int len
Definition: x509.h:1053
const ASN1_ADB_TABLE * tbl
Definition: asn1t.h:414
ASN1_VALUE * ASN1_new_func(void)
Definition: asn1t.h:600
int int * out
Definition: gcc-loops.cpp:206
int ASN1_BOOLEAN
Definition: base.h:192
int ASN1_template_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_TEMPLATE *tt)
Definition: tasn_enc.c:256
unsigned long flags
Definition: asn1t.h:393
EGLAttrib * value
Definition: eglext.h:120
int ASN1_primitive_print(BIO *out, ASN1_VALUE **pval, const ASN1_ITEM *it, int indent, const ASN1_PCTX *pctx)
Definition: asn1t.h:618
EGLContext ctx
Definition: eglext.h:192
const ASN1_TEMPLATE * null_tt
Definition: asn1t.h:417
struct ASN1_STREAM_ARG_st ASN1_STREAM_ARG
void ASN1_free_func(ASN1_VALUE *a)
Definition: asn1t.h:601
const ASN1_TEMPLATE * templates
Definition: asn1t.h:517
void ASN1_template_free(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt)
Definition: tasn_fre.c:175
struct asn1_pctx_st ASN1_PCTX
Definition: base.h:196
int asn1_enc_restore(int *len, unsigned char **out, ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:176
ASN1_ex_free_func * prim_free
Definition: asn1t.h:642
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
ASN1_ex_free_func * prim_clear
Definition: asn1t.h:643
ASN1_ex_d2i * asn1_ex_d2i
Definition: asn1t.h:632
const ASN1_TEMPLATE * default_tt
Definition: asn1t.h:416
int ptag
Definition: asn1t.h:593
int ASN1_template_new(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt)
Definition: tasn_new.c:254
char itype
Definition: asn1t.h:515
struct ASN1_PRINT_ARG_st ASN1_PRINT_ARG
long utype
Definition: asn1t.h:516
unsigned long flags
Definition: asn1t.h:640
ASN1_ex_new_func * prim_new
Definition: asn1t.h:641
char valid
Definition: asn1t.h:590
ASN1_primitive_i2c * prim_i2c
Definition: asn1t.h:645
int ASN1_ex_i2d(ASN1_VALUE **pval, unsigned char **out, const ASN1_ITEM *it, int tag, int aclass)
Definition: asn1t.h:608
#define DECLARE_STACK_OF(type)
Definition: stack.h:114
int ASN1_ex_new_func(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: asn1t.h:609
const ASN1_PCTX * pctx
Definition: asn1t.h:681
ASN1_new_func * asn1_new
Definition: asn1t.h:621
int enc_offset
Definition: asn1t.h:674
ASN1_VALUE ** asn1_get_field_ptr(ASN1_VALUE **pval, const ASN1_TEMPLATE *tt)
Definition: tasn_utl.c:194
unsigned long offset
Definition: asn1t.h:395
int asn1_ex_i2c(ASN1_VALUE **pval, unsigned char *cont, int *putype, const ASN1_ITEM *it)
Definition: tasn_enc.c:547
const ASN1_TEMPLATE tt
Definition: asn1t.h:422
void asn1_enc_free(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:141
int ASN1_primitive_c2i(ASN1_VALUE **pval, const unsigned char *cont, int len, int utype, char *free_cont, const ASN1_ITEM *it)
Definition: asn1t.h:617
long tblcount
Definition: asn1t.h:415
int pclass
Definition: asn1t.h:594
long LONG
Definition: TestCallbackFunctionWithTypedefs.idl:26
struct ASN1_EXTERN_FUNCS_st ASN1_EXTERN_FUNCS
int ret
Definition: asn1t.h:591
long plen
Definition: asn1t.h:592
void * app_data
Definition: asn1t.h:670
int asn1_refcount_dec_and_test_zero(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_utl.c:111
BIO * out
Definition: asn1t.h:679
long size
Definition: asn1t.h:520
void ASN1_item_ex_free(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_fre.c:72
int ASN1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_new.c:309
GLuint GLsizei GLsizei * length
Definition: gl2.h:435
const void * funcs
Definition: asn1t.h:519
void ASN1_primitive_free(ASN1_VALUE **pval, const ASN1_ITEM *it)
Definition: tasn_fre.c:192
void * app_data
Definition: asn1t.h:639
unsigned char ** boundary
Definition: asn1t.h:691
int ASN1_ex_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_ITEM *it, int tag, int aclass, char opt, ASN1_TLC *ctx)
Definition: asn1t.h:605
int ASN1_template_d2i(ASN1_VALUE **pval, const unsigned char **in, long len, const ASN1_TEMPLATE *tt)
Definition: tasn_dec.c:150