Add control to retrieve signature MD.
This commit is contained in:
parent
e423c360fd
commit
810639536c
5 changed files with 26 additions and 0 deletions
|
@ -199,6 +199,10 @@ static int pkey_dsa_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2)
|
||||||
dctx->md = p2;
|
dctx->md = p2;
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
case EVP_PKEY_CTRL_GET_MD:
|
||||||
|
*(const EVP_MD **)p2 = dctx->md;
|
||||||
|
return 1;
|
||||||
|
|
||||||
case EVP_PKEY_CTRL_DIGESTINIT:
|
case EVP_PKEY_CTRL_DIGESTINIT:
|
||||||
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
||||||
case EVP_PKEY_CTRL_CMS_SIGN:
|
case EVP_PKEY_CTRL_CMS_SIGN:
|
||||||
|
|
|
@ -242,6 +242,10 @@ static int pkey_ec_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2)
|
||||||
dctx->md = p2;
|
dctx->md = p2;
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
case EVP_PKEY_CTRL_GET_MD:
|
||||||
|
*(const EVP_MD **)p2 = dctx->md;
|
||||||
|
return 1;
|
||||||
|
|
||||||
case EVP_PKEY_CTRL_PEER_KEY:
|
case EVP_PKEY_CTRL_PEER_KEY:
|
||||||
/* Default behaviour is OK */
|
/* Default behaviour is OK */
|
||||||
case EVP_PKEY_CTRL_DIGESTINIT:
|
case EVP_PKEY_CTRL_DIGESTINIT:
|
||||||
|
|
|
@ -1113,6 +1113,10 @@ void EVP_PKEY_asn1_set_ctrl(EVP_PKEY_ASN1_METHOD *ameth,
|
||||||
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \
|
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \
|
||||||
EVP_PKEY_CTRL_MD, 0, (void *)md)
|
EVP_PKEY_CTRL_MD, 0, (void *)md)
|
||||||
|
|
||||||
|
#define EVP_PKEY_CTX_get_signature_md(ctx, pmd) \
|
||||||
|
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \
|
||||||
|
EVP_PKEY_CTRL_GET_MD, 0, (void *)pmd)
|
||||||
|
|
||||||
#define EVP_PKEY_CTRL_MD 1
|
#define EVP_PKEY_CTRL_MD 1
|
||||||
#define EVP_PKEY_CTRL_PEER_KEY 2
|
#define EVP_PKEY_CTRL_PEER_KEY 2
|
||||||
|
|
||||||
|
@ -1134,6 +1138,8 @@ void EVP_PKEY_asn1_set_ctrl(EVP_PKEY_ASN1_METHOD *ameth,
|
||||||
|
|
||||||
#define EVP_PKEY_CTRL_CIPHER 12
|
#define EVP_PKEY_CTRL_CIPHER 12
|
||||||
|
|
||||||
|
#define EVP_PKEY_CTRL_GET_MD 13
|
||||||
|
|
||||||
#define EVP_PKEY_ALG_CTRL 0x1000
|
#define EVP_PKEY_ALG_CTRL 0x1000
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -534,6 +534,10 @@ static int pkey_rsa_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2)
|
||||||
rctx->md = p2;
|
rctx->md = p2;
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
case EVP_PKEY_CTRL_GET_MD:
|
||||||
|
*(const EVP_MD **)p2 = rctx->md;
|
||||||
|
return 1;
|
||||||
|
|
||||||
case EVP_PKEY_CTRL_RSA_MGF1_MD:
|
case EVP_PKEY_CTRL_RSA_MGF1_MD:
|
||||||
case EVP_PKEY_CTRL_GET_RSA_MGF1_MD:
|
case EVP_PKEY_CTRL_GET_RSA_MGF1_MD:
|
||||||
if (rctx->pad_mode != RSA_PKCS1_PSS_PADDING
|
if (rctx->pad_mode != RSA_PKCS1_PSS_PADDING
|
||||||
|
|
|
@ -86,6 +86,10 @@ static int pkey_gost_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case EVP_PKEY_CTRL_GET_MD:
|
||||||
|
*(const EVP_MD **)p2 = pctx->md;
|
||||||
|
return 1;
|
||||||
|
|
||||||
case EVP_PKEY_CTRL_PKCS7_ENCRYPT:
|
case EVP_PKEY_CTRL_PKCS7_ENCRYPT:
|
||||||
case EVP_PKEY_CTRL_PKCS7_DECRYPT:
|
case EVP_PKEY_CTRL_PKCS7_DECRYPT:
|
||||||
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
||||||
|
@ -464,6 +468,10 @@ static int pkey_gost_mac_ctrl(EVP_PKEY_CTX *ctx, int type, int p1, void *p2)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case EVP_PKEY_CTRL_GET_MD:
|
||||||
|
*(const EVP_MD **)p2 = data->md;
|
||||||
|
return 1;
|
||||||
|
|
||||||
case EVP_PKEY_CTRL_PKCS7_ENCRYPT:
|
case EVP_PKEY_CTRL_PKCS7_ENCRYPT:
|
||||||
case EVP_PKEY_CTRL_PKCS7_DECRYPT:
|
case EVP_PKEY_CTRL_PKCS7_DECRYPT:
|
||||||
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
case EVP_PKEY_CTRL_PKCS7_SIGN:
|
||||||
|
|
Loading…
Reference in a new issue