summaryrefslogtreecommitdiffstats
path: root/crypto/engine
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2006-06-02 13:09:59 +0000
committerDr. Stephen Henson <steve@openssl.org>2006-06-02 13:09:59 +0000
commit1892c8bf979ebb759ca8c1f3e454cb659eb75ae5 (patch)
tree313cecf30f31e03a7903896c4c8006240c80f319 /crypto/engine
parent5e428e7d0d53522e82a1eb6e418de8b7138e4cda (diff)
Extend default method string to include public key methods.
Add missing prototypes. Fix engine method lookup.
Diffstat (limited to 'crypto/engine')
-rw-r--r--crypto/engine/eng_fat.c4
-rw-r--r--crypto/engine/engine.h2
2 files changed, 6 insertions, 0 deletions
diff --git a/crypto/engine/eng_fat.c b/crypto/engine/eng_fat.c
index 80cc4f0073..41d511a033 100644
--- a/crypto/engine/eng_fat.c
+++ b/crypto/engine/eng_fat.c
@@ -89,6 +89,8 @@ int ENGINE_set_default(ENGINE *e, unsigned int flags)
#endif
if((flags & ENGINE_METHOD_RAND) && !ENGINE_set_default_RAND(e))
return 0;
+ if((flags & ENGINE_METHOD_PKEY_METHS) && !ENGINE_set_default_pkey_meths(e))
+ return 0;
return 1;
}
@@ -115,6 +117,8 @@ static int int_def_cb(const char *alg, int len, void *arg)
*pflags |= ENGINE_METHOD_CIPHERS;
else if (!strncmp(alg, "DIGESTS", len))
*pflags |= ENGINE_METHOD_DIGESTS;
+ else if (!strncmp(alg, "PKEY", len))
+ *pflags |= ENGINE_METHOD_PKEY_METHS;
else
return 0;
return 1;
diff --git a/crypto/engine/engine.h b/crypto/engine/engine.h
index d8d00b3d12..ba70d8981a 100644
--- a/crypto/engine/engine.h
+++ b/crypto/engine/engine.h
@@ -111,6 +111,7 @@ extern "C" {
#define ENGINE_METHOD_CIPHERS (unsigned int)0x0040
#define ENGINE_METHOD_DIGESTS (unsigned int)0x0080
#define ENGINE_METHOD_STORE (unsigned int)0x0100
+#define ENGINE_METHOD_PKEY_METHS (unsigned int)0x0200
/* Obvious all-or-nothing cases. */
#define ENGINE_METHOD_ALL (unsigned int)0xFFFF
#define ENGINE_METHOD_NONE (unsigned int)0x0000
@@ -568,6 +569,7 @@ int ENGINE_set_default_DH(ENGINE *e);
int ENGINE_set_default_RAND(ENGINE *e);
int ENGINE_set_default_ciphers(ENGINE *e);
int ENGINE_set_default_digests(ENGINE *e);
+int ENGINE_set_default_pkey_meths(ENGINE *e);
/* The combination "set" - the flags are bitwise "OR"d from the
* ENGINE_METHOD_*** defines above. As with the "ENGINE_register_complete()"