Index: openssl/crypto/engine/eng_int.h |
=================================================================== |
--- openssl/crypto/engine/eng_int.h (revision 105093) |
+++ openssl/crypto/engine/eng_int.h (working copy) |
@@ -127,6 +127,8 @@ |
ENGINE *engine_table_select_tmp(ENGINE_TABLE **table, int nid, const char *f, int l); |
#define engine_table_select(t,n) engine_table_select_tmp(t,n,__FILE__,__LINE__) |
#endif |
+typedef void (engine_table_doall_cb)(int nid, STACK_OF(ENGINE) *sk, ENGINE *def, void *arg); |
+void engine_table_doall(ENGINE_TABLE *table, engine_table_doall_cb *cb, void *arg); |
/* Internal versions of API functions that have control over locking. These are |
* used between C files when functionality needs to be shared but the caller may |
@@ -143,6 +145,11 @@ |
/* NB: Bitwise OR-able values for the "flags" variable in ENGINE are now exposed |
* in engine.h. */ |
+/* Free up dynamically allocated public key methods associated with ENGINE */ |
+ |
+void engine_pkey_meths_free(ENGINE *e); |
+void engine_pkey_asn1_meths_free(ENGINE *e); |
+ |
/* This is a structure for storing implementations of various crypto |
* algorithms and functions. */ |
struct engine_st |
@@ -160,8 +167,11 @@ |
ENGINE_CIPHERS_PTR ciphers; |
/* Digest handling is via this callback */ |
ENGINE_DIGESTS_PTR digests; |
+ /* Public key handling via this callback */ |
+ ENGINE_PKEY_METHS_PTR pkey_meths; |
+ /* ASN1 public key handling via this callback */ |
+ ENGINE_PKEY_ASN1_METHS_PTR pkey_asn1_meths; |
- |
ENGINE_GEN_INT_FUNC_PTR destroy; |
ENGINE_GEN_INT_FUNC_PTR init; |