aboutsummaryrefslogtreecommitdiff
path: root/crypto/asn1/asn1_locl.h
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2010-12-13 18:15:28 +0000
committerDr. Stephen Henson <steve@openssl.org>2010-12-13 18:15:28 +0000
commitd7d5a55d222d17defc09aeb3947e7d5c8cdf36a5 (patch)
tree0b6ce951d8ab2eba69a53a0568dffa154861cb65 /crypto/asn1/asn1_locl.h
parentcc4c23065352d8c43e5ba863631e68c315cb84c8 (diff)
downloadopenssl-d7d5a55d222d17defc09aeb3947e7d5c8cdf36a5.zip
openssl-d7d5a55d222d17defc09aeb3947e7d5c8cdf36a5.tar.gz
openssl-d7d5a55d222d17defc09aeb3947e7d5c8cdf36a5.tar.bz2
Support routines for ASN1 scanning function, doesn't do much yet.
Diffstat (limited to 'crypto/asn1/asn1_locl.h')
-rw-r--r--crypto/asn1/asn1_locl.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/crypto/asn1/asn1_locl.h b/crypto/asn1/asn1_locl.h
index 9fcf0d9..c4c0c9d 100644
--- a/crypto/asn1/asn1_locl.h
+++ b/crypto/asn1/asn1_locl.h
@@ -69,6 +69,32 @@ struct asn1_pctx_st
unsigned long str_flags;
} /* ASN1_PCTX */;
+/* ASN1 scan context structure */
+
+struct asn1_sctx_st
+ {
+ /* The ASN1_ITEM associated with this field */
+ const ASN1_ITEM *it;
+ /* If ASN1_TEMPLATE associated with this field */
+ const ASN1_TEMPLATE *tt;
+ /* Various flags associated with field and context */
+ unsigned long flags;
+ /* If SEQUENCE OF or SET OF, field index */
+ int skidx;
+ /* ASN1 depth of field */
+ int depth;
+ /* Structure and field name */
+ const char *sname, *fname;
+ /* If a primitive type the type of underlying field */
+ int prim_type;
+ /* The field value itself */
+ ASN1_VALUE **field;
+ /* Callback to pass information to */
+ int (*scan_cb)(ASN1_SCTX *ctx);
+ /* Context specific application data */
+ void *app_data;
+ } /* ASN1_SCTX */;
+
/* ASN1 public key method structure */
struct evp_pkey_asn1_method_st