Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru>
---
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);
}
--
2.30.2