From 4961211732c8b0c90a200bfe09f3dbff61056298 Mon Sep 17 00:00:00 2001 From: Christoph von Wittich Date: Sun, 3 Jan 2010 11:59:59 +0000 Subject: [PATCH] [crypt32_winetest] sync crypt32_winetest to wine 1.1.35 svn path=/trunk/; revision=44910 --- rostests/winetests/crypt32/cert.c | 15 +++++++-------- rostests/winetests/crypt32/chain.c | 2 +- rostests/winetests/crypt32/protectdata.c | 4 +++- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/rostests/winetests/crypt32/cert.c b/rostests/winetests/crypt32/cert.c index 0566797925b..d3b362c8a34 100644 --- a/rostests/winetests/crypt32/cert.c +++ b/rostests/winetests/crypt32/cert.c @@ -1639,16 +1639,16 @@ static void verifySig(HCRYPTPROV csp, const BYTE *toSign, size_t toSignLen, /* Tests signing the certificate described by toBeSigned with the CSP passed in, * using the algorithm with OID sigOID. The CSP is assumed to be empty, and a - * keyset named AT_SIGNATURE will be added to it. The signing key will be - * stored in *key, and the signature will be stored in sig. sigLen should be - * at least 64 bytes. + * keyset named AT_SIGNATURE will be added to it. The signature will be stored + * in sig. sigLen should be at least 64 bytes. */ static void testSignCert(HCRYPTPROV csp, const CRYPT_DATA_BLOB *toBeSigned, - LPCSTR sigOID, HCRYPTKEY *key, BYTE *sig, DWORD *sigLen) + LPCSTR sigOID, BYTE *sig, DWORD *sigLen) { BOOL ret; DWORD size = 0; CRYPT_ALGORITHM_IDENTIFIER algoID = { NULL, { 0, NULL } }; + HCRYPTKEY key; /* These all crash ret = CryptSignCertificate(0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL); @@ -1680,7 +1680,7 @@ static void testSignCert(HCRYPTPROV csp, const CRYPT_DATA_BLOB *toBeSigned, ok(!ret && (GetLastError() == NTE_BAD_KEYSET || GetLastError() == NTE_NO_KEY), "Expected NTE_BAD_KEYSET or NTE_NO_KEY, got %08x\n", GetLastError()); - ret = CryptGenKey(csp, AT_SIGNATURE, 0, key); + ret = CryptGenKey(csp, AT_SIGNATURE, 0, &key); ok(ret, "CryptGenKey failed: %08x\n", GetLastError()); if (ret) { @@ -1700,6 +1700,7 @@ static void testSignCert(HCRYPTPROV csp, const CRYPT_DATA_BLOB *toBeSigned, size); } } + CryptDestroyKey(key); } } @@ -1809,7 +1810,6 @@ static void testCertSigs(void) HCRYPTPROV csp; CRYPT_DATA_BLOB toBeSigned = { sizeof(emptyCert), emptyCert }; BOOL ret; - HCRYPTKEY key; BYTE sig[64]; DWORD sigSize = sizeof(sig); @@ -1820,10 +1820,9 @@ static void testCertSigs(void) CRYPT_NEWKEYSET); ok(ret, "CryptAcquireContext failed: %08x\n", GetLastError()); - testSignCert(csp, &toBeSigned, szOID_RSA_SHA1RSA, &key, sig, &sigSize); + testSignCert(csp, &toBeSigned, szOID_RSA_SHA1RSA, sig, &sigSize); testVerifyCertSig(csp, &toBeSigned, szOID_RSA_SHA1RSA, sig, sigSize); - CryptDestroyKey(key); CryptReleaseContext(csp, 0); ret = pCryptAcquireContextA(&csp, cspNameA, MS_DEF_PROV_A, PROV_RSA_FULL, CRYPT_DELETEKEYSET); diff --git a/rostests/winetests/crypt32/chain.c b/rostests/winetests/crypt32/chain.c index 4192e116d17..a626b82c4fe 100644 --- a/rostests/winetests/crypt32/chain.c +++ b/rostests/winetests/crypt32/chain.c @@ -4018,7 +4018,7 @@ static void check_ssl_policy(void) /* And again authenticating a client, but specify the size of the policy * parameter. */ - sslPolicyPara.cbSize = sizeof(sslPolicyCheck); + U(sslPolicyPara).cbSize = sizeof(sslPolicyCheck); sslPolicyPara.dwAuthType = AUTHTYPE_CLIENT; for (i = 0; i < sizeof(sslPolicyCheck) / sizeof(sslPolicyCheck[0]); i++) diff --git a/rostests/winetests/crypt32/protectdata.c b/rostests/winetests/crypt32/protectdata.c index 91bad8e43c6..29d04e81aa6 100644 --- a/rostests/winetests/crypt32/protectdata.c +++ b/rostests/winetests/crypt32/protectdata.c @@ -235,8 +235,10 @@ static void test_simpleroundtrip(const char *plaintext) res = pCryptUnprotectData(&encrypted, NULL, NULL, NULL, NULL, 0, &output); ok(res != 0, "can't unprotect; last error %u\n", GetLastError()); - ok(output.cbData == strlen(plaintext), "output wrong length %d for input '%s', wanted %d\n", output.cbData, plaintext, strlen(plaintext)); + ok(output.cbData == strlen(plaintext), "output wrong length %d for input '%s', wanted %d\n", output.cbData, plaintext, lstrlenA(plaintext)); ok(!memcmp(plaintext, (char *)output.pbData, output.cbData), "output wrong contents for input '%s'\n", plaintext); + LocalFree(output.pbData); + LocalFree(encrypted.pbData); } START_TEST(protectdata)