Dmitry Timoshkov : crypt32: Implement CryptImportPublicKeyInfoEx2.
Module: wine Branch: stable Commit: fa4714e6045fdc4e25a0943bd9ef1936606b2755 URL: https://source.winehq.org/git/wine.git/?a=commit;h=fa4714e6045fdc4e25a0943bd... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Mon Apr 12 15:20:57 2021 +0300 crypt32: Implement CryptImportPublicKeyInfoEx2. Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> Signed-off-by: Hans Leidekker <hans(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> (cherry picked from commit c2c7946680b61bfccd4c4f5788864d4130af9baf) Signed-off-by: Michael Stefaniuc <mstefani(a)winehq.org> --- dlls/crypt32/cert.c | 2 +- dlls/crypt32/crypt32_private.h | 2 ++ dlls/crypt32/encode.c | 9 ++++++--- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/dlls/crypt32/cert.c b/dlls/crypt32/cert.c index aad8fa047b7..95e2746a7d5 100644 --- a/dlls/crypt32/cert.c +++ b/dlls/crypt32/cert.c @@ -2689,7 +2689,7 @@ done: return !status; } -static BOOL CNG_ImportPubKey(CERT_PUBLIC_KEY_INFO *pubKeyInfo, BCRYPT_KEY_HANDLE *key) +BOOL CNG_ImportPubKey(CERT_PUBLIC_KEY_INFO *pubKeyInfo, BCRYPT_KEY_HANDLE *key) { if (!strcmp(pubKeyInfo->Algorithm.pszObjId, szOID_ECC_PUBLIC_KEY)) return CNG_ImportECCPubKey(pubKeyInfo, key); diff --git a/dlls/crypt32/crypt32_private.h b/dlls/crypt32/crypt32_private.h index 30cf4334de4..9f8f43e7632 100644 --- a/dlls/crypt32/crypt32_private.h +++ b/dlls/crypt32/crypt32_private.h @@ -21,6 +21,8 @@ #include "wine/list.h" +BOOL CNG_ImportPubKey(CERT_PUBLIC_KEY_INFO *pubKeyInfo, BCRYPT_KEY_HANDLE *key) DECLSPEC_HIDDEN; + /* a few asn.1 tags we need */ #define ASN_BOOL (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x01) #define ASN_BITSTRING (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x03) diff --git a/dlls/crypt32/encode.c b/dlls/crypt32/encode.c index 46f4b8f25e7..02b235696ce 100644 --- a/dlls/crypt32/encode.c +++ b/dlls/crypt32/encode.c @@ -5050,8 +5050,11 @@ BOOL WINAPI CryptImportPublicKeyInfoEx2(DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, DWORD dwFlags, void *pvAuxInfo, BCRYPT_KEY_HANDLE *phKey) { - FIXME_(crypt)("(%d, %p, %08x, %p, %p): stub\n", dwCertEncodingType, pInfo, + TRACE_(crypt)("(%d, %p, %08x, %p, %p)\n", dwCertEncodingType, pInfo, dwFlags, pvAuxInfo, phKey); - SetLastError(ERROR_FILE_NOT_FOUND); - return FALSE; + + if (dwFlags) + FIXME("flags %#x ignored\n", dwFlags); + + return CNG_ImportPubKey(pInfo, phKey); }
participants (1)
-
Alexandre Julliard