From 54cb668a030d2724623051537995298701a607ab Mon Sep 17 00:00:00 2001 From: Alexander Morozov Date: Mon, 21 Nov 2011 17:09:01 +0400 Subject: [eterwine 7/7] crypt32: Find a provider for used algorithm. --- dlls/crypt32/msg.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dlls/crypt32/msg.c b/dlls/crypt32/msg.c index 7d86cb7..be8ac07 100644 --- a/dlls/crypt32/msg.c +++ b/dlls/crypt32/msg.c @@ -1953,8 +1953,9 @@ static HCRYPTMSG CEnvelopedEncodeMsg_Open(DWORD dwFlags, prov = info->hCryptProv; else { - prov = CRYPT_GetDefaultProvider(); - dwFlags &= ~CMSG_CRYPT_RELEASE_CONTEXT_FLAG; + prov = CRYPT_GetProvForAlgId(algID); + if (!prov) return NULL; + dwFlags |= CMSG_CRYPT_RELEASE_CONTEXT_FLAG; } msg = CryptMemAlloc(sizeof(CEnvelopedEncodeMsg)); if (msg) -- 1.7.7.3