summaryrefslogtreecommitdiffstats
path: root/crypto/evp/evp.h
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2006-07-10 18:36:55 +0000
committerDr. Stephen Henson <steve@openssl.org>2006-07-10 18:36:55 +0000
commitb7683e3a5d93aa5319263b7bbfd0fee18f25955e (patch)
tree25f7f84a90273ae2ff3bfaf1e25052f1cf1ce5be /crypto/evp/evp.h
parent0ee2166cc50cffba02514b686c6bf75c76ff2e62 (diff)
Allow digests to supply S/MIME micalg values from a ctrl.
Send ctrls to EVP_PKEY_METHOD during signing of PKCS7 structure so customisation is possible.
Diffstat (limited to 'crypto/evp/evp.h')
-rw-r--r--crypto/evp/evp.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/crypto/evp/evp.h b/crypto/evp/evp.h
index 509f8579af..be16b5ecee 100644
--- a/crypto/evp/evp.h
+++ b/crypto/evp/evp.h
@@ -218,6 +218,7 @@ typedef int evp_verify_method(int type,const unsigned char *m,
/* Digest ctrls */
#define EVP_MD_CTRL_DIGALGID 0x1
+#define EVP_MD_CTRL_MICALG 0x2
/* Minimum Algorithm specific ctrl value */
@@ -455,6 +456,9 @@ typedef int (EVP_PBE_KEYGEN)(EVP_CIPHER_CTX *ctx, const char *pass, int passlen,
#define EVP_SignDigestUpdate(a,b,c) EVP_DigestUpdate(a,b,c)
#define EVP_VerifyDigestUpdate(a,b,c) EVP_DigestUpdate(a,b,c)
+#define EVP_DigestSignUpdate(a,b,c) EVP_DigestUpdate(a,b,c)
+#define EVP_DigestVerifyUpdate(a,b,c) EVP_DigestUpdate(a,b,c)
+
#ifdef CONST_STRICT
void BIO_set_md(BIO *,const EVP_MD *md);
#else
@@ -981,10 +985,12 @@ void EVP_PKEY_asn1_set_ctrl(EVP_PKEY_ASN1_METHOD *ameth,
EVP_PKEY_CTRL_MD, 0, (void *)md)
#define EVP_PKEY_CTRL_MD 1
-#define EVP_PKEY_CTRL_PEER_KEY 2
+#define EVP_PKEY_CTRL_PEER_KEY 2
+
+#define EVP_PKEY_CTRL_PKCS7_ENCRYPT 3
+#define EVP_PKEY_CTRL_PKCS7_DECRYPT 4
-#define EVP_PKEY_CTRL_PKCS7_ENCRYPT 3
-#define EVP_PKEY_CTRL_PKCS7_DECRYPT 4
+#define EVP_PKEY_CTRL_PKCS7_SIGN 5
#define EVP_PKEY_ALG_CTRL 0x1000