Dmitry Timoshkov
fd1be205ba
crypt32: Store CRYPT_KEY_PROV_INFO in a platform independent way.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 12:25:09 +02:00
Dmitry Timoshkov
0e30815636
crypt32: pwszContainerName or pwszProvName could be NULL in CRYPT_KEY_PROV_INFO.
...
Make behaviour of CRYPT_FixKeyProvInfoPointers match
CRYPT_CopyKeyProvInfo, and fix reading CRYPT_KEY_PROV_INFO certificate
property from the store.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-21 20:25:50 +02:00
Piotr Caban
57a8c4dbe8
crypt32: Don't use strncasecmp.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-03 20:27:39 +02:00
Dmitry Timoshkov
23f97773ee
crypt32: CryptAcquireCertificatePrivateKey should look up certificate in the user's store if not linked to a provider.
...
Under Windows passing to CryptAcquireCertificatePrivateKey() a certificate
retrieved from the key container using CryptGetKeyParam(KP_CERTIFICATE) +
CertCreateCertificateContext() works although such a certificate doesn't
have assigned properties at all. In order for this to work Windows probably
looks up an original certificate in the user's private store.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Dmitry Timoshkov
fca88e169a
crypt32: Simplify the code.
...
cache can't be FALSE at this point.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 13:27:11 +01:00
Dmitry Timoshkov
df173bd097
crypt32: Add support for CRYPT_ACQUIRE_SILENT_FLAG to CryptAcquireCertificatePrivateKey.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 13:26:59 +01:00
Dmitry Timoshkov
e020d6c99d
crypt32: Add support for CERT_COMPARE_KEY_IDENTIFIER to CertFindCertificateInStore.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 13:26:18 +01:00
Orhan Kavrakoğlu
d3c606954b
crypt32: Implement CryptHashCertificate2.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46516
Signed-off-by: Orhan Kavrakoğlu <aibok42@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 17:12:13 +01:00
Dmitry Timoshkov
ca683382e0
crypt32: Make sure that the provider supports the specified hash algorithm.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:41:49 +01:00
Dmitry Timoshkov
34a89805e3
crypt32: Make sure that the provider supports the specified signature algorithm.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:41:47 +01:00
Dmitry Timoshkov
ea77ba04f3
crypt32: If there is no optional parameters set rgProvParam to NULL in CRYPT_KEY_PROV_INFO.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-07 16:43:33 +01:00
Dmitry Timoshkov
ee883ff659
crypt32: Pass type and flags in correct order to the find() helper.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 22:27:04 +01:00
Dmitry Timoshkov
a9baa25c8c
crypt32: Make sure that the provider supports the specified public key algorithm.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Dmitry Timoshkov
99a2514fda
crypt32: Add support for 3rd party CSPs to CertGetPublicKeyLength.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 10:35:51 +01:00
Dmitry Timoshkov
41e0a38f7c
crypt32: Directly call I_CryptGetDefaultCryptProv to make hooking from a 3rd party CSP work.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 10:35:45 +01:00
Dmitry Timoshkov
787133fc21
crypt32: Add CryptSetKeyIdentifierProperty stub.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Dmitry Timoshkov
8f488a71b9
crypt32: CertComparePublicKeyInfo should not try to decode a non-RSA public key.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-26 21:18:27 +02:00
Dmitry Timoshkov
b81c0c3e47
crypt32: Simplify the CertComparePublicKeyInfo implementation.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-25 20:32:03 +02:00
Nikolay Sivov
568673282c
crypt32: Fix key buffer leak (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Michael Müller
4d1190f5a8
crypt32: Implement verification of ECDSA signatures.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-26 13:29:10 +02:00
Nikolay Sivov
6de2e83e00
crypt32: Use ARRAY_SIZE macro.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-20 11:23:06 +02:00
Philippe Groarke
dcc6868057
crypt32: Add CERT_OCSP_RESPONSE_PROP_ID setter.
2015-08-26 23:53:22 +09:00
Bruno Jesus
9df1f2fa87
crypt32: Remove dead assignments in cert.c (Cppcheck).
2014-11-03 16:32:17 +09:00
Bruno Jesus
7a40fdbf8c
crypt32: CertGetIssuerCertificateFromStore must return error for self-signed certificates.
2014-07-23 21:24:20 +02:00
Sebastian Lackner
2b1c8fed24
crypt32: Set correct return value if CryptMemAlloc fails.
2013-12-09 11:47:44 +01:00
Francois Gouget
62122b660f
crypt32: Remove WINAPI on static functions where not needed.
2013-11-01 10:55:15 +01:00
Francois Gouget
ca894127f8
crypt32: Make add_cert_to_store() static.
2013-10-25 14:41:37 +02:00
Jacek Caban
217e0119d9
crypt32: Get rid of no longer needed hCertStore checks.
2013-10-21 21:06:17 +02:00
Jacek Caban
e7ab43c4bb
crypt32: Return context_t from Context_CreateDataContext.
2013-10-21 21:06:17 +02:00
Jacek Caban
9fb1e4d675
crypt32: Keep reference to store in contexts.
2013-10-18 11:35:58 +02:00
Jacek Caban
f329de4df4
crypt32: Always return TRUE from CertFreeCertificateContext.
2013-10-18 11:34:01 +02:00
Jacek Caban
83026a7143
crypt32: Use context_t in addContext.
2013-10-17 11:19:20 +02:00
Jacek Caban
6eddbf18ca
crypt32: Store properties directly in link contexts and get rid of Context_GetProperties.
2013-10-17 11:19:03 +02:00
Jacek Caban
2601f58acb
crypt32: Don't use links to certs in memory store.
2013-10-17 11:18:45 +02:00
Jacek Caban
6ab429363a
crypt32: Added cloning logic to context's vtbl.
2013-10-15 17:43:11 +02:00
Jacek Caban
988e8a78c2
crypt32: Moved CertAddCertificateContextToStore to cert.c.
2013-10-15 17:43:00 +02:00
Jacek Caban
993691bef5
crypt32: Moved context desatructor to vtbl.
2013-10-14 17:26:15 +02:00
Jacek Caban
17e1dfef9b
crypt32: Pass context as context_t to Context_Release.
2013-10-14 17:26:14 +02:00
Jacek Caban
802a6bc1bb
crypt32: Pass context as BASE_CONTEXT to Context_AddRef and added structs describing memory layout behind context structs.
2013-10-14 17:26:14 +02:00
Jacek Caban
c7d1082b4f
crypt32: Added new empty store type and use it for creating certificates with no store.
2013-10-14 17:26:14 +02:00
Jacek Caban
c1fa23ac5d
crypt32: Get rid of no longer used contextSize argument in Context_Release.
2013-10-08 18:10:06 +02:00
Jacek Caban
c6fd036b54
crypt32: Get rid of no longer used contextSize argument in Context_GetProperties.
2013-10-08 18:10:02 +02:00
Jacek Caban
f82237102b
crypt32: Get rid of no longer used contextSize argument in Context_AddRef.
2013-10-08 18:09:53 +02:00
Jacek Caban
0a5cb15f94
crypt32: Get rid of remaining P* typedefs.
2013-09-04 14:38:41 +02:00
Jacek Caban
0c4a2df240
crypt32: Get rid of PWINECRYPT_CERTSTORE typedef.
2013-09-04 14:37:57 +02:00
Jacek Caban
d8c3ccee28
crypt32: Get rid of PCONTEXT_PROPERTY_LIST typedef.
2013-09-04 14:37:49 +02:00
Michael Stefaniuc
6af92365ea
crypt32: Use assignment instead of memcpy to copy structs.
2013-02-05 20:15:36 +01:00
Juan Lang
f86ab49be2
crypt32: Initialize key spec correctly.
2012-05-31 12:37:21 +02:00
Juan Lang
da53cfc8bb
crypt32: Fail earlier if CryptExportPublicKeyInfo fails.
2012-05-31 12:37:20 +02:00
Juan Lang
6ccdbab6c8
crypt32: Don't fail if HCRYPTPROV and PCRYPT_KEY_PROV_INFO parameters are both non-NULL.
2012-05-31 12:37:20 +02:00