crypt32/tests: Win64 printf format warning fixes.

This commit is contained in:
Juan Lang 2006-09-29 14:36:26 -07:00 committed by Alexandre Julliard
parent d62c50bc86
commit 353cd81c9a
11 changed files with 907 additions and 908 deletions

View File

@ -4,7 +4,6 @@ SRCDIR = @srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
TESTDLL = crypt32.dll TESTDLL = crypt32.dll
IMPORTS = crypt32 advapi32 kernel32 IMPORTS = crypt32 advapi32 kernel32
EXTRADEFS = -DWINE_NO_LONG_AS_INT
CTESTS = \ CTESTS = \
base64.c \ base64.c \

View File

@ -96,7 +96,7 @@ static void encodeAndCompareBase64_A(const BYTE *toEncode, DWORD toEncodeLen,
BOOL ret; BOOL ret;
ret = pCryptBinaryToStringA(toEncode, toEncodeLen, format, NULL, &strLen); ret = pCryptBinaryToStringA(toEncode, toEncodeLen, format, NULL, &strLen);
ok(ret, "CryptBinaryToStringA failed: %ld\n", GetLastError()); ok(ret, "CryptBinaryToStringA failed: %d\n", GetLastError());
str = HeapAlloc(GetProcessHeap(), 0, strLen); str = HeapAlloc(GetProcessHeap(), 0, strLen);
if (str) if (str)
{ {
@ -105,8 +105,8 @@ static void encodeAndCompareBase64_A(const BYTE *toEncode, DWORD toEncodeLen,
ret = pCryptBinaryToStringA(toEncode, toEncodeLen, format, str, ret = pCryptBinaryToStringA(toEncode, toEncodeLen, format, str,
&strLen2); &strLen2);
ok(ret, "CryptBinaryToStringA failed: %ld\n", GetLastError()); ok(ret, "CryptBinaryToStringA failed: %d\n", GetLastError());
ok(strLen2 == strLen - 1, "Expected length %ld, got %ld\n", ok(strLen2 == strLen - 1, "Expected length %d, got %d\n",
strLen - 1, strLen); strLen - 1, strLen);
if (header) if (header)
{ {
@ -136,10 +136,10 @@ static void testBinaryToStringA(void)
ret = pCryptBinaryToStringA(NULL, 0, 0, NULL, NULL); ret = pCryptBinaryToStringA(NULL, 0, 0, NULL, NULL);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError()); "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
ret = pCryptBinaryToStringA(NULL, 0, 0, NULL, &strLen); ret = pCryptBinaryToStringA(NULL, 0, 0, NULL, &strLen);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError()); "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++)
{ {
DWORD strLen = 0; DWORD strLen = 0;
@ -148,7 +148,7 @@ static void testBinaryToStringA(void)
ret = pCryptBinaryToStringA(tests[i].toEncode, tests[i].toEncodeLen, ret = pCryptBinaryToStringA(tests[i].toEncode, tests[i].toEncodeLen,
CRYPT_STRING_BINARY, NULL, &strLen); CRYPT_STRING_BINARY, NULL, &strLen);
ok(ret, "CryptBinaryToStringA failed: %ld\n", GetLastError()); ok(ret, "CryptBinaryToStringA failed: %d\n", GetLastError());
str = HeapAlloc(GetProcessHeap(), 0, strLen); str = HeapAlloc(GetProcessHeap(), 0, strLen);
if (str) if (str)
{ {
@ -156,7 +156,7 @@ static void testBinaryToStringA(void)
ret = pCryptBinaryToStringA(tests[i].toEncode, tests[i].toEncodeLen, ret = pCryptBinaryToStringA(tests[i].toEncode, tests[i].toEncodeLen,
CRYPT_STRING_BINARY, str, &strLen2); CRYPT_STRING_BINARY, str, &strLen2);
ok(strLen == strLen2, "Expected length %ld, got %ld\n", strLen, ok(strLen == strLen2, "Expected length %d, got %d\n", strLen,
strLen2); strLen2);
ok(!memcmp(str, tests[i].toEncode, tests[i].toEncodeLen), ok(!memcmp(str, tests[i].toEncode, tests[i].toEncodeLen),
"Unexpected value\n"); "Unexpected value\n");
@ -183,7 +183,7 @@ static void testBinaryToStringA(void)
ret = pCryptBinaryToStringA(testsNoCR[i].toEncode, ret = pCryptBinaryToStringA(testsNoCR[i].toEncode,
testsNoCR[i].toEncodeLen, CRYPT_STRING_BINARY | CRYPT_STRING_NOCR, testsNoCR[i].toEncodeLen, CRYPT_STRING_BINARY | CRYPT_STRING_NOCR,
NULL, &strLen); NULL, &strLen);
ok(ret, "CryptBinaryToStringA failed: %ld\n", GetLastError()); ok(ret, "CryptBinaryToStringA failed: %d\n", GetLastError());
str = HeapAlloc(GetProcessHeap(), 0, strLen); str = HeapAlloc(GetProcessHeap(), 0, strLen);
if (str) if (str)
{ {
@ -192,7 +192,7 @@ static void testBinaryToStringA(void)
ret = pCryptBinaryToStringA(testsNoCR[i].toEncode, ret = pCryptBinaryToStringA(testsNoCR[i].toEncode,
testsNoCR[i].toEncodeLen, CRYPT_STRING_BINARY | CRYPT_STRING_NOCR, testsNoCR[i].toEncodeLen, CRYPT_STRING_BINARY | CRYPT_STRING_NOCR,
str, &strLen2); str, &strLen2);
ok(strLen == strLen2, "Expected length %ld, got %ld\n", strLen, ok(strLen == strLen2, "Expected length %d, got %d\n", strLen,
strLen2); strLen2);
ok(!memcmp(str, testsNoCR[i].toEncode, testsNoCR[i].toEncodeLen), ok(!memcmp(str, testsNoCR[i].toEncode, testsNoCR[i].toEncodeLen),
"Unexpected value\n"); "Unexpected value\n");
@ -245,7 +245,7 @@ static void decodeAndCompareBase64_A(LPCSTR toDecode, LPCSTR header,
strcat(str, trailer); strcat(str, trailer);
ret = pCryptStringToBinaryA(str, 0, useFormat, NULL, &bufLen, NULL, ret = pCryptStringToBinaryA(str, 0, useFormat, NULL, &bufLen, NULL,
NULL); NULL);
ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
buf = HeapAlloc(GetProcessHeap(), 0, bufLen); buf = HeapAlloc(GetProcessHeap(), 0, bufLen);
if (buf) if (buf)
{ {
@ -254,16 +254,16 @@ static void decodeAndCompareBase64_A(LPCSTR toDecode, LPCSTR header,
/* check as normal, make sure last two parameters are optional */ /* check as normal, make sure last two parameters are optional */
ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen, NULL, ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen, NULL,
NULL); NULL);
ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
ok(bufLen == expectedLen, ok(bufLen == expectedLen,
"Expected length %ld, got %ld\n", expectedLen, bufLen); "Expected length %d, got %d\n", expectedLen, bufLen);
ok(!memcmp(buf, expected, bufLen), "Unexpected value\n"); ok(!memcmp(buf, expected, bufLen), "Unexpected value\n");
/* check last two params */ /* check last two params */
ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen, ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen,
&skipped, &usedFormat); &skipped, &usedFormat);
ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
ok(skipped == 0, "Expected skipped 0, got %ld\n", skipped); ok(skipped == 0, "Expected skipped 0, got %d\n", skipped);
ok(usedFormat == expectedFormat, "Expected format %ld, got %ld\n", ok(usedFormat == expectedFormat, "Expected format %d, got %d\n",
expectedFormat, usedFormat); expectedFormat, usedFormat);
HeapFree(GetProcessHeap(), 0, buf); HeapFree(GetProcessHeap(), 0, buf);
} }
@ -279,10 +279,10 @@ static void decodeAndCompareBase64_A(LPCSTR toDecode, LPCSTR header,
NULL); NULL);
/* expect failure with no header, and success with one */ /* expect failure with no header, and success with one */
if (header) if (header)
ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
else else
ok(!ret && GetLastError() == ERROR_INVALID_DATA, ok(!ret && GetLastError() == ERROR_INVALID_DATA,
"Expected ERROR_INVALID_DATA, got %ld\n", GetLastError()); "Expected ERROR_INVALID_DATA, got %d\n", GetLastError());
if (ret) if (ret)
{ {
buf = HeapAlloc(GetProcessHeap(), 0, bufLen); buf = HeapAlloc(GetProcessHeap(), 0, bufLen);
@ -293,7 +293,7 @@ static void decodeAndCompareBase64_A(LPCSTR toDecode, LPCSTR header,
ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen, ret = pCryptStringToBinaryA(str, 0, useFormat, buf, &bufLen,
&skipped, &usedFormat); &skipped, &usedFormat);
ok(skipped == strlen(garbage), ok(skipped == strlen(garbage),
"Expected %d characters skipped, got %ld\n", lstrlenA(garbage), "Expected %d characters skipped, got %d\n", lstrlenA(garbage),
skipped); skipped);
HeapFree(GetProcessHeap(), 0, buf); HeapFree(GetProcessHeap(), 0, buf);
} }
@ -324,20 +324,20 @@ static void testStringToBinaryA(void)
ret = pCryptStringToBinaryA(NULL, 0, 0, NULL, NULL, NULL, NULL); ret = pCryptStringToBinaryA(NULL, 0, 0, NULL, NULL, NULL, NULL);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError()); "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
ret = pCryptStringToBinaryA(NULL, 0, 0, NULL, &bufLen, NULL, NULL); ret = pCryptStringToBinaryA(NULL, 0, 0, NULL, &bufLen, NULL, NULL);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError()); "Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
/* Bogus format */ /* Bogus format */
ret = pCryptStringToBinaryA(tests[0].base64, 0, 0, NULL, &bufLen, NULL, ret = pCryptStringToBinaryA(tests[0].base64, 0, 0, NULL, &bufLen, NULL,
NULL); NULL);
ok(!ret && GetLastError() == ERROR_INVALID_DATA, ok(!ret && GetLastError() == ERROR_INVALID_DATA,
"Expected ERROR_INVALID_DATA, got %ld\n", GetLastError()); "Expected ERROR_INVALID_DATA, got %d\n", GetLastError());
/* Decoding doesn't expect the NOCR flag to be specified */ /* Decoding doesn't expect the NOCR flag to be specified */
ret = pCryptStringToBinaryA(tests[0].base64, 1, ret = pCryptStringToBinaryA(tests[0].base64, 1,
CRYPT_STRING_BASE64 | CRYPT_STRING_NOCR, NULL, &bufLen, NULL, NULL); CRYPT_STRING_BASE64 | CRYPT_STRING_NOCR, NULL, &bufLen, NULL, NULL);
ok(!ret && GetLastError() == ERROR_INVALID_DATA, ok(!ret && GetLastError() == ERROR_INVALID_DATA,
"Expected ERROR_INVALID_DATA, got %ld\n", GetLastError()); "Expected ERROR_INVALID_DATA, got %d\n", GetLastError());
/* Bad strings */ /* Bad strings */
for (i = 0; i < sizeof(badStrings) / sizeof(badStrings[0]); i++) for (i = 0; i < sizeof(badStrings) / sizeof(badStrings[0]); i++)
{ {
@ -345,7 +345,7 @@ static void testStringToBinaryA(void)
ret = pCryptStringToBinaryA(badStrings[i].str, 0, badStrings[i].format, ret = pCryptStringToBinaryA(badStrings[i].str, 0, badStrings[i].format,
NULL, &bufLen, NULL, NULL); NULL, &bufLen, NULL, NULL);
ok(!ret && GetLastError() == ERROR_INVALID_DATA, ok(!ret && GetLastError() == ERROR_INVALID_DATA,
"Expected ERROR_INVALID_DATA, got %ld\n", GetLastError()); "Expected ERROR_INVALID_DATA, got %d\n", GetLastError());
} }
/* Good strings */ /* Good strings */
for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++) for (i = 0; i < sizeof(tests) / sizeof(tests[0]); i++)
@ -356,7 +356,7 @@ static void testStringToBinaryA(void)
*/ */
ret = pCryptStringToBinaryA(tests[i].base64, 1, CRYPT_STRING_BASE64, ret = pCryptStringToBinaryA(tests[i].base64, 1, CRYPT_STRING_BASE64,
NULL, &bufLen, NULL, NULL); NULL, &bufLen, NULL, NULL);
todo_wine ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); todo_wine ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
/* Check with the precise format */ /* Check with the precise format */
decodeAndCompareBase64_A(tests[i].base64, NULL, NULL, decodeAndCompareBase64_A(tests[i].base64, NULL, NULL,
CRYPT_STRING_BASE64, CRYPT_STRING_BASE64, tests[i].toEncode, CRYPT_STRING_BASE64, CRYPT_STRING_BASE64, tests[i].toEncode,
@ -410,7 +410,7 @@ static void testStringToBinaryA(void)
*/ */
ret = pCryptStringToBinaryA(testsNoCR[i].base64, 1, CRYPT_STRING_BASE64, ret = pCryptStringToBinaryA(testsNoCR[i].base64, 1, CRYPT_STRING_BASE64,
NULL, &bufLen, NULL, NULL); NULL, &bufLen, NULL, NULL);
todo_wine ok(ret, "CryptStringToBinaryA failed: %ld\n", GetLastError()); todo_wine ok(ret, "CryptStringToBinaryA failed: %d\n", GetLastError());
/* Check with the precise format */ /* Check with the precise format */
decodeAndCompareBase64_A(testsNoCR[i].base64, NULL, NULL, decodeAndCompareBase64_A(testsNoCR[i].base64, NULL, NULL,
CRYPT_STRING_BASE64, CRYPT_STRING_BASE64, testsNoCR[i].toEncode, CRYPT_STRING_BASE64, CRYPT_STRING_BASE64, testsNoCR[i].toEncode,

File diff suppressed because it is too large Load Diff

View File

@ -65,21 +65,21 @@ static void testCreateCertChainEngine(void)
*/ */
ret = CertCreateCertificateChainEngine(&config, NULL); ret = CertCreateCertificateChainEngine(&config, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertCreateCertificateChainEngine(&config, &engine); ret = CertCreateCertificateChainEngine(&config, &engine);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* Crashes /* Crashes
config.cbSize = sizeof(config); config.cbSize = sizeof(config);
ret = CertCreateCertificateChainEngine(&config, NULL); ret = CertCreateCertificateChainEngine(&config, NULL);
*/ */
config.cbSize = sizeof(config); config.cbSize = sizeof(config);
ret = CertCreateCertificateChainEngine(&config, &engine); ret = CertCreateCertificateChainEngine(&config, &engine);
ok(ret, "CertCreateCertificateChainEngine failed: %08lx\n", GetLastError()); ok(ret, "CertCreateCertificateChainEngine failed: %08x\n", GetLastError());
CertFreeCertificateChainEngine(engine); CertFreeCertificateChainEngine(engine);
config.dwFlags = 0xff000000; config.dwFlags = 0xff000000;
ret = CertCreateCertificateChainEngine(&config, &engine); ret = CertCreateCertificateChainEngine(&config, &engine);
ok(ret, "CertCreateCertificateChainEngine failed: %08lx\n", GetLastError()); ok(ret, "CertCreateCertificateChainEngine failed: %08x\n", GetLastError());
CertFreeCertificateChainEngine(engine); CertFreeCertificateChainEngine(engine);
/* Creating a cert with no root certs at all is allowed.. */ /* Creating a cert with no root certs at all is allowed.. */
@ -87,7 +87,7 @@ static void testCreateCertChainEngine(void)
CERT_STORE_CREATE_NEW_FLAG, NULL); CERT_STORE_CREATE_NEW_FLAG, NULL);
config.hRestrictedRoot = store; config.hRestrictedRoot = store;
ret = CertCreateCertificateChainEngine(&config, &engine); ret = CertCreateCertificateChainEngine(&config, &engine);
ok(ret, "CertCreateCertificateChainEngine failed: %08lx\n", GetLastError()); ok(ret, "CertCreateCertificateChainEngine failed: %08x\n", GetLastError());
CertFreeCertificateChainEngine(engine); CertFreeCertificateChainEngine(engine);
/* but creating one with a restricted root with a cert that isn't a member /* but creating one with a restricted root with a cert that isn't a member
@ -97,7 +97,7 @@ static void testCreateCertChainEngine(void)
sizeof(selfSignedCert), CERT_STORE_ADD_ALWAYS, NULL); sizeof(selfSignedCert), CERT_STORE_ADD_ALWAYS, NULL);
ret = CertCreateCertificateChainEngine(&config, &engine); ret = CertCreateCertificateChainEngine(&config, &engine);
ok(!ret && GetLastError() == CRYPT_E_NOT_FOUND, ok(!ret && GetLastError() == CRYPT_E_NOT_FOUND,
"Expected CRYPT_E_NOT_FOUND, got %08lx\n", GetLastError()); "Expected CRYPT_E_NOT_FOUND, got %08x\n", GetLastError());
CertCloseStore(store, 0); CertCloseStore(store, 0);
} }

View File

@ -94,26 +94,26 @@ static void testCreateCRL(void)
context = CertCreateCRLContext(0, NULL, 0); context = CertCreateCRLContext(0, NULL, 0);
ok(!context && GetLastError() == E_INVALIDARG, ok(!context && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
context = CertCreateCRLContext(X509_ASN_ENCODING, NULL, 0); context = CertCreateCRLContext(X509_ASN_ENCODING, NULL, 0);
ok(!context && GetLastError() == CRYPT_E_ASN1_EOD, ok(!context && GetLastError() == CRYPT_E_ASN1_EOD,
"Expected CRYPT_E_ASN1_EOD, got %08lx\n", GetLastError()); "Expected CRYPT_E_ASN1_EOD, got %08x\n", GetLastError());
context = CertCreateCRLContext(X509_ASN_ENCODING, bigCert, sizeof(bigCert)); context = CertCreateCRLContext(X509_ASN_ENCODING, bigCert, sizeof(bigCert));
ok(!context && GetLastError() == CRYPT_E_ASN1_CORRUPT, ok(!context && GetLastError() == CRYPT_E_ASN1_CORRUPT,
"Expected CRYPT_E_ASN1_CORRUPT, got %08lx\n", GetLastError()); "Expected CRYPT_E_ASN1_CORRUPT, got %08x\n", GetLastError());
context = CertCreateCRLContext(X509_ASN_ENCODING, signedCRL, context = CertCreateCRLContext(X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL) - 1); sizeof(signedCRL) - 1);
ok(!context && (GetLastError() == CRYPT_E_ASN1_EOD || ok(!context && (GetLastError() == CRYPT_E_ASN1_EOD ||
GetLastError() == CRYPT_E_ASN1_CORRUPT), GetLastError() == CRYPT_E_ASN1_CORRUPT),
"Expected CRYPT_E_ASN1_EOD or CRYPT_E_ASN1_CORRUPT, got %08lx\n", "Expected CRYPT_E_ASN1_EOD or CRYPT_E_ASN1_CORRUPT, got %08x\n",
GetLastError()); GetLastError());
context = CertCreateCRLContext(X509_ASN_ENCODING, signedCRL, context = CertCreateCRLContext(X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL)); sizeof(signedCRL));
ok(context != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(context != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
if (context) if (context)
CertFreeCRLContext(context); CertFreeCRLContext(context);
context = CertCreateCRLContext(X509_ASN_ENCODING, CRL, sizeof(CRL)); context = CertCreateCRLContext(X509_ASN_ENCODING, CRL, sizeof(CRL));
ok(context != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(context != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
if (context) if (context)
CertFreeCRLContext(context); CertFreeCRLContext(context);
} }
@ -130,50 +130,50 @@ static void testAddCRL(void)
/* Bad CRL encoding type */ /* Bad CRL encoding type */
ret = CertAddEncodedCRLToStore(0, 0, NULL, 0, 0, NULL); ret = CertAddEncodedCRLToStore(0, 0, NULL, 0, 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, 0, NULL, 0, 0, NULL); ret = CertAddEncodedCRLToStore(store, 0, NULL, 0, 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(0, 0, signedCRL, sizeof(signedCRL), 0, NULL); ret = CertAddEncodedCRLToStore(0, 0, signedCRL, sizeof(signedCRL), 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, 0, signedCRL, sizeof(signedCRL), 0, ret = CertAddEncodedCRLToStore(store, 0, signedCRL, sizeof(signedCRL), 0,
NULL); NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(0, 0, signedCRL, sizeof(signedCRL), ret = CertAddEncodedCRLToStore(0, 0, signedCRL, sizeof(signedCRL),
CERT_STORE_ADD_ALWAYS, NULL); CERT_STORE_ADD_ALWAYS, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, 0, signedCRL, sizeof(signedCRL), ret = CertAddEncodedCRLToStore(store, 0, signedCRL, sizeof(signedCRL),
CERT_STORE_ADD_ALWAYS, NULL); CERT_STORE_ADD_ALWAYS, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* No CRL */ /* No CRL */
ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, NULL, 0, 0, NULL); ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, NULL, 0, 0, NULL);
ok(!ret && GetLastError() == CRYPT_E_ASN1_EOD, ok(!ret && GetLastError() == CRYPT_E_ASN1_EOD,
"Expected CRYPT_E_ASN1_EOD, got %08lx\n", GetLastError()); "Expected CRYPT_E_ASN1_EOD, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, NULL, 0, 0, NULL); ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, NULL, 0, 0, NULL);
ok(!ret && GetLastError() == CRYPT_E_ASN1_EOD, ok(!ret && GetLastError() == CRYPT_E_ASN1_EOD,
"Expected CRYPT_E_ASN1_EOD, got %08lx\n", GetLastError()); "Expected CRYPT_E_ASN1_EOD, got %08x\n", GetLastError());
/* Weird--bad add disposition leads to an access violation in Windows. */ /* Weird--bad add disposition leads to an access violation in Windows. */
ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, signedCRL, ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL), 0, NULL); sizeof(signedCRL), 0, NULL);
ok(!ret && GetLastError() == STATUS_ACCESS_VIOLATION, ok(!ret && GetLastError() == STATUS_ACCESS_VIOLATION,
"Expected STATUS_ACCESS_VIOLATION, got %08lx\n", GetLastError()); "Expected STATUS_ACCESS_VIOLATION, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL), 0, NULL); sizeof(signedCRL), 0, NULL);
ok(!ret && GetLastError() == STATUS_ACCESS_VIOLATION, ok(!ret && GetLastError() == STATUS_ACCESS_VIOLATION,
"Expected STATUS_ACCESS_VIOLATION, got %08lx\n", GetLastError()); "Expected STATUS_ACCESS_VIOLATION, got %08x\n", GetLastError());
/* Weird--can add a CRL to the NULL store (does this have special meaning?) /* Weird--can add a CRL to the NULL store (does this have special meaning?)
*/ */
context = NULL; context = NULL;
ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, signedCRL, ret = CertAddEncodedCRLToStore(0, X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, &context); sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, &context);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
if (context) if (context)
CertFreeCRLContext(context); CertFreeCRLContext(context);
@ -183,17 +183,17 @@ static void testAddCRL(void)
/* and an unsigned one is too. */ /* and an unsigned one is too. */
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, CRL, sizeof(CRL), ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, CRL, sizeof(CRL),
CERT_STORE_ADD_ALWAYS, NULL); CERT_STORE_ADD_ALWAYS, NULL);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, newerCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, newerCRL,
sizeof(newerCRL), CERT_STORE_ADD_NEW, NULL); sizeof(newerCRL), CERT_STORE_ADD_NEW, NULL);
ok(!ret && GetLastError() == CRYPT_E_EXISTS, ok(!ret && GetLastError() == CRYPT_E_EXISTS,
"Expected CRYPT_E_EXISTS, got %08lx\n", GetLastError()); "Expected CRYPT_E_EXISTS, got %08x\n", GetLastError());
/* This should replace (one of) the existing CRL(s). */ /* This should replace (one of) the existing CRL(s). */
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, newerCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, newerCRL,
sizeof(newerCRL), CERT_STORE_ADD_NEWER, NULL); sizeof(newerCRL), CERT_STORE_ADD_NEWER, NULL);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
CertCloseStore(store, 0); CertCloseStore(store, 0);
} }
@ -210,7 +210,7 @@ static void testFindCRL(void)
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, NULL); sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, NULL);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
/* Crashes /* Crashes
context = CertFindCRLInStore(NULL, 0, 0, 0, NULL, NULL); context = CertFindCRLInStore(NULL, 0, 0, 0, NULL, NULL);
@ -241,7 +241,7 @@ static void testFindCRL(void)
/* Try to match an issuer that isn't in the store */ /* Try to match an issuer that isn't in the store */
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert2, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert2,
sizeof(bigCert2)); sizeof(bigCert2));
ok(cert != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
context = CertFindCRLInStore(store, 0, 0, CRL_FIND_ISSUED_BY, cert, NULL); context = CertFindCRLInStore(store, 0, 0, CRL_FIND_ISSUED_BY, cert, NULL);
ok(context == NULL, "Expected no matching context\n"); ok(context == NULL, "Expected no matching context\n");
@ -250,7 +250,7 @@ static void testFindCRL(void)
/* Match an issuer that is in the store */ /* Match an issuer that is in the store */
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert,
sizeof(bigCert)); sizeof(bigCert));
ok(cert != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
context = CertFindCRLInStore(store, 0, 0, CRL_FIND_ISSUED_BY, cert, NULL); context = CertFindCRLInStore(store, 0, 0, CRL_FIND_ISSUED_BY, cert, NULL);
ok(context != NULL, "Expected a context\n"); ok(context != NULL, "Expected a context\n");
@ -281,17 +281,17 @@ static void testGetCRLFromStore(void)
flags = 0xffffffff; flags = 0xffffffff;
context = CertGetCRLFromStore(store, NULL, NULL, &flags); context = CertGetCRLFromStore(store, NULL, NULL, &flags);
ok(!context && GetLastError() == E_INVALIDARG, ok(!context && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* Test an empty store */ /* Test an empty store */
flags = 0; flags = 0;
context = CertGetCRLFromStore(store, NULL, NULL, &flags); context = CertGetCRLFromStore(store, NULL, NULL, &flags);
ok(context == NULL && GetLastError() == CRYPT_E_NOT_FOUND, ok(context == NULL && GetLastError() == CRYPT_E_NOT_FOUND,
"Expected CRYPT_E_NOT_FOUND, got %08lx\n", GetLastError()); "Expected CRYPT_E_NOT_FOUND, got %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, signedCRL,
sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, NULL); sizeof(signedCRL), CERT_STORE_ADD_ALWAYS, NULL);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
/* NULL matches any CRL */ /* NULL matches any CRL */
flags = 0; flags = 0;
@ -302,17 +302,17 @@ static void testGetCRLFromStore(void)
/* This cert's issuer isn't in */ /* This cert's issuer isn't in */
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert2, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert2,
sizeof(bigCert2)); sizeof(bigCert2));
ok(cert != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
context = CertGetCRLFromStore(store, cert, NULL, &flags); context = CertGetCRLFromStore(store, cert, NULL, &flags);
ok(context == NULL && GetLastError() == CRYPT_E_NOT_FOUND, ok(context == NULL && GetLastError() == CRYPT_E_NOT_FOUND,
"Expected CRYPT_E_NOT_FOUND, got %08lx\n", GetLastError()); "Expected CRYPT_E_NOT_FOUND, got %08x\n", GetLastError());
CertFreeCertificateContext(cert); CertFreeCertificateContext(cert);
/* But this one is */ /* But this one is */
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert,
sizeof(bigCert)); sizeof(bigCert));
ok(cert != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
context = CertGetCRLFromStore(store, cert, NULL, &flags); context = CertGetCRLFromStore(store, cert, NULL, &flags);
ok(context != NULL, "Expected a context\n"); ok(context != NULL, "Expected a context\n");
@ -333,10 +333,10 @@ static void checkCRLHash(const BYTE *data, DWORD dataLen, ALG_ID algID,
memset(hashProperty, 0, sizeof(hashProperty)); memset(hashProperty, 0, sizeof(hashProperty));
size = sizeof(hash); size = sizeof(hash);
ret = CryptHashCertificate(0, algID, 0, data, dataLen, hash, &size); ret = CryptHashCertificate(0, algID, 0, data, dataLen, hash, &size);
ok(ret, "CryptHashCertificate failed: %08lx\n", GetLastError()); ok(ret, "CryptHashCertificate failed: %08x\n", GetLastError());
ret = CertGetCRLContextProperty(context, propID, hashProperty, &size); ret = CertGetCRLContextProperty(context, propID, hashProperty, &size);
ok(ret, "CertGetCRLContextProperty failed: %08lx\n", GetLastError()); ok(ret, "CertGetCRLContextProperty failed: %08x\n", GetLastError());
ok(!memcmp(hash, hashProperty, size), "Unexpected hash for property %ld\n", ok(!memcmp(hash, hashProperty, size), "Unexpected hash for property %d\n",
propID); propID);
} }
@ -345,7 +345,7 @@ static void testCRLProperties(void)
PCCRL_CONTEXT context = CertCreateCRLContext(X509_ASN_ENCODING, PCCRL_CONTEXT context = CertCreateCRLContext(X509_ASN_ENCODING,
CRL, sizeof(CRL)); CRL, sizeof(CRL));
ok(context != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(context != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
if (context) if (context)
{ {
DWORD propID, numProps, access, size; DWORD propID, numProps, access, size;
@ -364,12 +364,12 @@ static void testCRLProperties(void)
if (propID) if (propID)
numProps++; numProps++;
} while (propID != 0); } while (propID != 0);
ok(numProps == 0, "Expected 0 properties, got %ld\n", numProps); ok(numProps == 0, "Expected 0 properties, got %d\n", numProps);
/* Tests with a NULL cert context. Prop ID 0 fails.. */ /* Tests with a NULL cert context. Prop ID 0 fails.. */
ret = CertSetCRLContextProperty(NULL, 0, 0, NULL); ret = CertSetCRLContextProperty(NULL, 0, 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* while this just crashes. /* while this just crashes.
ret = CertSetCRLContextProperty(NULL, CERT_KEY_PROV_HANDLE_PROP_ID, 0, ret = CertSetCRLContextProperty(NULL, CERT_KEY_PROV_HANDLE_PROP_ID, 0,
NULL); NULL);
@ -377,7 +377,7 @@ static void testCRLProperties(void)
ret = CertSetCRLContextProperty(context, 0, 0, NULL); ret = CertSetCRLContextProperty(context, 0, 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* Can't set the cert property directly, this crashes. /* Can't set the cert property directly, this crashes.
ret = CertSetCRLContextProperty(context, CERT_CRL_PROP_ID, 0, CRL); ret = CertSetCRLContextProperty(context, CERT_CRL_PROP_ID, 0, CRL);
*/ */
@ -394,14 +394,14 @@ static void testCRLProperties(void)
ret = CertGetCRLContextProperty(context, CERT_KEY_PROV_INFO_PROP_ID, ret = CertGetCRLContextProperty(context, CERT_KEY_PROV_INFO_PROP_ID,
NULL, &size); NULL, &size);
ok(!ret && GetLastError() == CRYPT_E_NOT_FOUND, ok(!ret && GetLastError() == CRYPT_E_NOT_FOUND,
"Expected CRYPT_E_NOT_FOUND, got %08lx\n", GetLastError()); "Expected CRYPT_E_NOT_FOUND, got %08x\n", GetLastError());
/* And, an implicit property */ /* And, an implicit property */
ret = CertGetCRLContextProperty(context, CERT_ACCESS_STATE_PROP_ID, ret = CertGetCRLContextProperty(context, CERT_ACCESS_STATE_PROP_ID,
NULL, &size); NULL, &size);
ok(ret, "CertGetCRLContextProperty failed: %08lx\n", GetLastError()); ok(ret, "CertGetCRLContextProperty failed: %08x\n", GetLastError());
ret = CertGetCRLContextProperty(context, CERT_ACCESS_STATE_PROP_ID, ret = CertGetCRLContextProperty(context, CERT_ACCESS_STATE_PROP_ID,
&access, &size); &access, &size);
ok(ret, "CertGetCRLContextProperty failed: %08lx\n", GetLastError()); ok(ret, "CertGetCRLContextProperty failed: %08x\n", GetLastError());
ok(!(access & CERT_ACCESS_STATE_WRITE_PERSIST_FLAG), ok(!(access & CERT_ACCESS_STATE_WRITE_PERSIST_FLAG),
"Didn't expect a persisted crl\n"); "Didn't expect a persisted crl\n");
/* Trying to set this "read only" property crashes. /* Trying to set this "read only" property crashes.
@ -414,7 +414,7 @@ static void testCRLProperties(void)
blob.pbData = hash; blob.pbData = hash;
blob.cbData = sizeof(hash); blob.cbData = sizeof(hash);
ret = CertSetCRLContextProperty(context, CERT_HASH_PROP_ID, 0, &blob); ret = CertSetCRLContextProperty(context, CERT_HASH_PROP_ID, 0, &blob);
ok(ret, "CertSetCRLContextProperty failed: %08lx\n", ok(ret, "CertSetCRLContextProperty failed: %08x\n",
GetLastError()); GetLastError());
size = sizeof(hashProperty); size = sizeof(hashProperty);
ret = CertGetCRLContextProperty(context, CERT_HASH_PROP_ID, ret = CertGetCRLContextProperty(context, CERT_HASH_PROP_ID,
@ -422,7 +422,7 @@ static void testCRLProperties(void)
ok(!memcmp(hashProperty, hash, sizeof(hash)), "Unexpected hash\n"); ok(!memcmp(hashProperty, hash, sizeof(hash)), "Unexpected hash\n");
/* Delete the (bogus) hash, and get the real one */ /* Delete the (bogus) hash, and get the real one */
ret = CertSetCRLContextProperty(context, CERT_HASH_PROP_ID, 0, NULL); ret = CertSetCRLContextProperty(context, CERT_HASH_PROP_ID, 0, NULL);
ok(ret, "CertSetCRLContextProperty failed: %08lx\n", GetLastError()); ok(ret, "CertSetCRLContextProperty failed: %08x\n", GetLastError());
checkCRLHash(CRL, sizeof(CRL), CALG_SHA1, context, CERT_HASH_PROP_ID); checkCRLHash(CRL, sizeof(CRL), CALG_SHA1, context, CERT_HASH_PROP_ID);
/* Now that the hash property is set, we should get one property when /* Now that the hash property is set, we should get one property when
@ -435,7 +435,7 @@ static void testCRLProperties(void)
if (propID) if (propID)
numProps++; numProps++;
} while (propID != 0); } while (propID != 0);
ok(numProps == 1, "Expected 1 properties, got %ld\n", numProps); ok(numProps == 1, "Expected 1 properties, got %d\n", numProps);
/* Check a few other implicit properties */ /* Check a few other implicit properties */
checkCRLHash(CRL, sizeof(CRL), CALG_MD5, context, checkCRLHash(CRL, sizeof(CRL), CALG_MD5, context,
@ -505,10 +505,10 @@ static void testIsValidCRLForCert(void)
crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry, crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry,
sizeof(v1CRLWithIssuerAndEntry)); sizeof(v1CRLWithIssuerAndEntry));
ok(crl != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(crl != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
cert1 = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert, cert1 = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert,
sizeof(bigCert)); sizeof(bigCert));
ok(cert1 != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert1 != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
/* Crash /* Crash
@ -518,15 +518,15 @@ static void testIsValidCRLForCert(void)
/* Curiously, any CRL is valid for the NULL certificate */ /* Curiously, any CRL is valid for the NULL certificate */
ret = pCertIsValidCRLForCertificate(NULL, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(NULL, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
/* Same issuer for both cert and CRL, this CRL is valid for that cert */ /* Same issuer for both cert and CRL, this CRL is valid for that cert */
ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
cert2 = CertCreateCertificateContext(X509_ASN_ENCODING, cert2 = CertCreateCertificateContext(X509_ASN_ENCODING,
bigCertWithDifferentIssuer, sizeof(bigCertWithDifferentIssuer)); bigCertWithDifferentIssuer, sizeof(bigCertWithDifferentIssuer));
ok(cert2 != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert2 != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
/* Yet more curious: different issuers for these, yet the CRL is valid for /* Yet more curious: different issuers for these, yet the CRL is valid for
@ -534,7 +534,7 @@ static void testIsValidCRLForCert(void)
* CRL has a CRL_ISSUING_DIST_POINT extension. * CRL has a CRL_ISSUING_DIST_POINT extension.
*/ */
ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
@ -543,24 +543,24 @@ static void testIsValidCRLForCert(void)
*/ */
crl = CertCreateCRLContext(X509_ASN_ENCODING, v2CRLWithIssuingDistPoint, crl = CertCreateCRLContext(X509_ASN_ENCODING, v2CRLWithIssuingDistPoint,
sizeof(v2CRLWithIssuingDistPoint)); sizeof(v2CRLWithIssuingDistPoint));
ok(crl != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(crl != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
/* And again, with a real CRL, the CRL is valid for both certs. */ /* And again, with a real CRL, the CRL is valid for both certs. */
crl = CertCreateCRLContext(X509_ASN_ENCODING, verisignCRL, crl = CertCreateCRLContext(X509_ASN_ENCODING, verisignCRL,
sizeof(verisignCRL)); sizeof(verisignCRL));
ok(crl != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(crl != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
@ -569,16 +569,16 @@ static void testIsValidCRLForCert(void)
*/ */
store = CertOpenStore(CERT_STORE_PROV_MEMORY, X509_ASN_ENCODING, 0, store = CertOpenStore(CERT_STORE_PROV_MEMORY, X509_ASN_ENCODING, 0,
CERT_STORE_CREATE_NEW_FLAG, NULL); CERT_STORE_CREATE_NEW_FLAG, NULL);
ok(store != NULL, "CertOpenStore failed: %08lx\n", GetLastError()); ok(store != NULL, "CertOpenStore failed: %08x\n", GetLastError());
ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, verisignCRL, ret = CertAddEncodedCRLToStore(store, X509_ASN_ENCODING, verisignCRL,
sizeof(verisignCRL), CERT_STORE_ADD_ALWAYS, &crl); sizeof(verisignCRL), CERT_STORE_ADD_ALWAYS, &crl);
ok(ret, "CertAddEncodedCRLToStore failed: %08lx\n", GetLastError()); ok(ret, "CertAddEncodedCRLToStore failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert1, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL); ret = pCertIsValidCRLForCertificate(cert2, crl, 0, NULL);
ok(ret, "CertIsValidCRLForCertificate failed: %08lx\n", GetLastError()); ok(ret, "CertIsValidCRLForCertificate failed: %08x\n", GetLastError());
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
@ -604,7 +604,7 @@ static void testFindCertInCRL(void)
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert,
sizeof(bigCert)); sizeof(bigCert));
ok(cert != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(cert != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
/* Crash /* Crash
@ -620,14 +620,14 @@ static void testFindCertInCRL(void)
crl = CertCreateCRLContext(X509_ASN_ENCODING, verisignCRL, crl = CertCreateCRLContext(X509_ASN_ENCODING, verisignCRL,
sizeof(verisignCRL)); sizeof(verisignCRL));
ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry); ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry);
ok(ret, "CertFindCertificateInCRL failed: %08lx\n", GetLastError()); ok(ret, "CertFindCertificateInCRL failed: %08x\n", GetLastError());
ok(entry == NULL, "Expected not to find an entry in CRL\n"); ok(entry == NULL, "Expected not to find an entry in CRL\n");
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry, crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry,
sizeof(v1CRLWithIssuerAndEntry)); sizeof(v1CRLWithIssuerAndEntry));
ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry); ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry);
ok(ret, "CertFindCertificateInCRL failed: %08lx\n", GetLastError()); ok(ret, "CertFindCertificateInCRL failed: %08x\n", GetLastError());
ok(entry != NULL, "Expected to find an entry in CRL\n"); ok(entry != NULL, "Expected to find an entry in CRL\n");
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
@ -635,7 +635,7 @@ static void testFindCertInCRL(void)
crl = CertCreateCRLContext(X509_ASN_ENCODING, crlWithDifferentIssuer, crl = CertCreateCRLContext(X509_ASN_ENCODING, crlWithDifferentIssuer,
sizeof(crlWithDifferentIssuer)); sizeof(crlWithDifferentIssuer));
ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry); ret = CertFindCertificateInCRL(cert, crl, 0, NULL, &entry);
ok(ret, "CertFindCertificateInCRL failed: %08lx\n", GetLastError()); ok(ret, "CertFindCertificateInCRL failed: %08x\n", GetLastError());
ok(entry != NULL, "Expected to find an entry in CRL\n"); ok(entry != NULL, "Expected to find an entry in CRL\n");
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
@ -649,18 +649,18 @@ static void testVerifyCRLRevocation(void)
PCCRL_CONTEXT crl; PCCRL_CONTEXT crl;
ret = CertVerifyCRLRevocation(0, NULL, 0, NULL); ret = CertVerifyCRLRevocation(0, NULL, 0, NULL);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, NULL, 0, NULL); ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, NULL, 0, NULL);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert, cert = CertCreateCertificateContext(X509_ASN_ENCODING, bigCert,
sizeof(bigCert)); sizeof(bigCert));
/* Check against no CRL */ /* Check against no CRL */
ret = CertVerifyCRLRevocation(0, cert->pCertInfo, 0, NULL); ret = CertVerifyCRLRevocation(0, cert->pCertInfo, 0, NULL);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 0, NULL); ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 0, NULL);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
/* Check against CRL with entry for the cert */ /* Check against CRL with entry for the cert */
crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry, crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry,
@ -676,7 +676,7 @@ static void testVerifyCRLRevocation(void)
/* Check against CRL with different issuer and entry for the cert */ /* Check against CRL with different issuer and entry for the cert */
crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry, crl = CertCreateCRLContext(X509_ASN_ENCODING, v1CRLWithIssuerAndEntry,
sizeof(v1CRLWithIssuerAndEntry)); sizeof(v1CRLWithIssuerAndEntry));
ok(crl != NULL, "CertCreateCRLContext failed: %08lx\n", GetLastError()); ok(crl != NULL, "CertCreateCRLContext failed: %08x\n", GetLastError());
ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 1, ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 1,
(PCRL_INFO *)&crl->pCrlInfo); (PCRL_INFO *)&crl->pCrlInfo);
ok(!ret, "CertVerifyCRLRevocation should have been revoked\n"); ok(!ret, "CertVerifyCRLRevocation should have been revoked\n");
@ -687,10 +687,10 @@ static void testVerifyCRLRevocation(void)
sizeof(verisignCRL)); sizeof(verisignCRL));
ret = CertVerifyCRLRevocation(0, cert->pCertInfo, 1, ret = CertVerifyCRLRevocation(0, cert->pCertInfo, 1,
(PCRL_INFO *)&crl->pCrlInfo); (PCRL_INFO *)&crl->pCrlInfo);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 1, ret = CertVerifyCRLRevocation(X509_ASN_ENCODING, cert->pCertInfo, 1,
(PCRL_INFO *)&crl->pCrlInfo); (PCRL_INFO *)&crl->pCrlInfo);
ok(ret, "CertVerifyCRLRevocation failed: %08lx\n", GetLastError()); ok(ret, "CertVerifyCRLRevocation failed: %08x\n", GetLastError());
CertFreeCRLContext(crl); CertFreeCRLContext(crl);
CertFreeCertificateContext(cert); CertFreeCertificateContext(cert);

File diff suppressed because it is too large Load Diff

View File

@ -42,7 +42,7 @@ static void test_findAttribute(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindAttribute(NULL, 0, NULL); ret = CertFindAttribute(NULL, 0, NULL);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* crashes /* crashes
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
@ -52,24 +52,24 @@ static void test_findAttribute(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindAttribute(NULL, 1, &attr); ret = CertFindAttribute(NULL, 1, &attr);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld (%08lx)\n", GetLastError(), "Expected ERROR_INVALID_PARAMETER, got %d (%08x)\n", GetLastError(),
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindAttribute("bogus", 1, &attr); ret = CertFindAttribute("bogus", 1, &attr);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindAttribute("1.2.4", 1, &attr); ret = CertFindAttribute("1.2.4", 1, &attr);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* succeeds, last error not set */ /* succeeds, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindAttribute("1.2.3", 1, &attr); ret = CertFindAttribute("1.2.3", 1, &attr);
ok(ret != NULL, "CertFindAttribute failed: %08lx\n", GetLastError()); ok(ret != NULL, "CertFindAttribute failed: %08x\n", GetLastError());
} }
static void test_findExtension(void) static void test_findExtension(void)
@ -83,7 +83,7 @@ static void test_findExtension(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindExtension(NULL, 0, NULL); ret = CertFindExtension(NULL, 0, NULL);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* crashes /* crashes
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
@ -93,24 +93,24 @@ static void test_findExtension(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindExtension(NULL, 1, &ext); ret = CertFindExtension(NULL, 1, &ext);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld (%08lx)\n", GetLastError(), "Expected ERROR_INVALID_PARAMETER, got %d (%08x)\n", GetLastError(),
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindExtension("bogus", 1, &ext); ret = CertFindExtension("bogus", 1, &ext);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindExtension("1.2.4", 1, &ext); ret = CertFindExtension("1.2.4", 1, &ext);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* succeeds, last error not set */ /* succeeds, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindExtension("1.2.3", 1, &ext); ret = CertFindExtension("1.2.3", 1, &ext);
ok(ret != NULL, "CertFindExtension failed: %08lx\n", GetLastError()); ok(ret != NULL, "CertFindExtension failed: %08x\n", GetLastError());
} }
static void test_findRDNAttr(void) static void test_findRDNAttr(void)
@ -134,24 +134,24 @@ static void test_findRDNAttr(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindRDNAttr(NULL, &nameInfo); ret = CertFindRDNAttr(NULL, &nameInfo);
ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER, ok(!ret && GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %ld (%08lx)\n", GetLastError(), "Expected ERROR_INVALID_PARAMETER, got %d (%08x)\n", GetLastError(),
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindRDNAttr("bogus", &nameInfo); ret = CertFindRDNAttr("bogus", &nameInfo);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* returns NULL, last error not set */ /* returns NULL, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindRDNAttr("1.2.4", &nameInfo); ret = CertFindRDNAttr("1.2.4", &nameInfo);
ok(ret == NULL, "Expected failure\n"); ok(ret == NULL, "Expected failure\n");
ok(GetLastError() == 0xdeadbeef, "Last error was set to %08lx\n", ok(GetLastError() == 0xdeadbeef, "Last error was set to %08x\n",
GetLastError()); GetLastError());
/* succeeds, last error not set */ /* succeeds, last error not set */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CertFindRDNAttr("1.2.3", &nameInfo); ret = CertFindRDNAttr("1.2.3", &nameInfo);
ok(ret != NULL, "CertFindRDNAttr failed: %08lx\n", GetLastError()); ok(ret != NULL, "CertFindRDNAttr failed: %08x\n", GetLastError());
} }
static void test_verifyTimeValidity(void) static void test_verifyTimeValidity(void)
@ -169,16 +169,16 @@ static void test_verifyTimeValidity(void)
*/ */
/* Check with 0 NotBefore and NotAfter */ /* Check with 0 NotBefore and NotAfter */
ret = CertVerifyTimeValidity(&fileTime, &info); ret = CertVerifyTimeValidity(&fileTime, &info);
ok(ret == 1, "Expected 1, got %ld\n", ret); ok(ret == 1, "Expected 1, got %d\n", ret);
memcpy(&info.NotAfter, &fileTime, sizeof(info.NotAfter)); memcpy(&info.NotAfter, &fileTime, sizeof(info.NotAfter));
/* Check with NotAfter equal to comparison time */ /* Check with NotAfter equal to comparison time */
ret = CertVerifyTimeValidity(&fileTime, &info); ret = CertVerifyTimeValidity(&fileTime, &info);
ok(ret == 0, "Expected 0, got %ld\n", ret); ok(ret == 0, "Expected 0, got %d\n", ret);
/* Check with NotBefore after comparison time */ /* Check with NotBefore after comparison time */
memcpy(&info.NotBefore, &fileTime, sizeof(info.NotBefore)); memcpy(&info.NotBefore, &fileTime, sizeof(info.NotBefore));
info.NotBefore.dwLowDateTime += 5000; info.NotBefore.dwLowDateTime += 5000;
ret = CertVerifyTimeValidity(&fileTime, &info); ret = CertVerifyTimeValidity(&fileTime, &info);
ok(ret == -1, "Expected -1, got %ld\n", ret); ok(ret == -1, "Expected -1, got %d\n", ret);
} }
static void test_cryptAllocate(void) static void test_cryptAllocate(void)
@ -186,13 +186,13 @@ static void test_cryptAllocate(void)
LPVOID buf; LPVOID buf;
buf = CryptMemAlloc(0); buf = CryptMemAlloc(0);
ok(buf != NULL, "CryptMemAlloc failed: %08lx\n", GetLastError()); ok(buf != NULL, "CryptMemAlloc failed: %08x\n", GetLastError());
CryptMemFree(buf); CryptMemFree(buf);
buf = CryptMemRealloc(NULL, 0); buf = CryptMemRealloc(NULL, 0);
ok(!buf, "Expected NULL\n"); ok(!buf, "Expected NULL\n");
buf = CryptMemAlloc(0); buf = CryptMemAlloc(0);
buf = CryptMemRealloc(buf, 1); buf = CryptMemRealloc(buf, 1);
ok(buf != NULL, "CryptMemRealloc failed: %08lx\n", GetLastError()); ok(buf != NULL, "CryptMemRealloc failed: %08x\n", GetLastError());
CryptMemFree(buf); CryptMemFree(buf);
} }
@ -228,7 +228,7 @@ static void test_cryptTls(void)
/* One normal pass */ /* One normal pass */
index = pI_CryptAllocTls(); index = pI_CryptAllocTls();
ok(index, "I_CryptAllocTls failed: %08lx\n", GetLastError()); ok(index, "I_CryptAllocTls failed: %08x\n", GetLastError());
if (index) if (index)
{ {
LPVOID ptr; LPVOID ptr;
@ -236,24 +236,24 @@ static void test_cryptTls(void)
ptr = pI_CryptGetTls(index); ptr = pI_CryptGetTls(index);
ok(!ptr, "Expected NULL\n"); ok(!ptr, "Expected NULL\n");
ret = pI_CryptSetTls(index, (LPVOID)0xdeadbeef); ret = pI_CryptSetTls(index, (LPVOID)0xdeadbeef);
ok(ret, "I_CryptSetTls failed: %08lx\n", GetLastError()); ok(ret, "I_CryptSetTls failed: %08x\n", GetLastError());
ptr = pI_CryptGetTls(index); ptr = pI_CryptGetTls(index);
ok(ptr == (LPVOID)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", ptr); ok(ptr == (LPVOID)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", ptr);
/* This crashes /* This crashes
ret = pI_CryptFreeTls(index, 1); ret = pI_CryptFreeTls(index, 1);
*/ */
ret = pI_CryptFreeTls(index, 0); ret = pI_CryptFreeTls(index, 0);
ok(ret, "I_CryptFreeTls failed: %08lx\n", GetLastError()); ok(ret, "I_CryptFreeTls failed: %08x\n", GetLastError());
ret = pI_CryptFreeTls(index, 0); ret = pI_CryptFreeTls(index, 0);
/* Not sure if this fails because TlsFree should fail, so leave as /* Not sure if this fails because TlsFree should fail, so leave as
* todo for now. * todo for now.
*/ */
todo_wine ok(!ret && GetLastError() == E_INVALIDARG, todo_wine ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
} }
/* Similar pass, check I_CryptDetachTls */ /* Similar pass, check I_CryptDetachTls */
index = pI_CryptAllocTls(); index = pI_CryptAllocTls();
ok(index, "I_CryptAllocTls failed: %08lx\n", GetLastError()); ok(index, "I_CryptAllocTls failed: %08x\n", GetLastError());
if (index) if (index)
{ {
LPVOID ptr; LPVOID ptr;
@ -261,7 +261,7 @@ static void test_cryptTls(void)
ptr = pI_CryptGetTls(index); ptr = pI_CryptGetTls(index);
ok(!ptr, "Expected NULL\n"); ok(!ptr, "Expected NULL\n");
ret = pI_CryptSetTls(index, (LPVOID)0xdeadbeef); ret = pI_CryptSetTls(index, (LPVOID)0xdeadbeef);
ok(ret, "I_CryptSetTls failed: %08lx\n", GetLastError()); ok(ret, "I_CryptSetTls failed: %08x\n", GetLastError());
ptr = pI_CryptGetTls(index); ptr = pI_CryptGetTls(index);
ok(ptr == (LPVOID)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", ptr); ok(ptr == (LPVOID)0xdeadbeef, "Expected 0xdeadbeef, got %p\n", ptr);
ptr = pI_CryptDetachTls(index); ptr = pI_CryptDetachTls(index);
@ -312,7 +312,7 @@ static void test_readTrustedPublisherDWORD(void)
ret = pReadDWORD(authenticodeFlags, &returnedFlags); ret = pReadDWORD(authenticodeFlags, &returnedFlags);
ok(ret == exists, "Unexpected return value\n"); ok(ret == exists, "Unexpected return value\n");
ok(readFlags == returnedFlags, ok(readFlags == returnedFlags,
"Expected flags %08lx, got %08lx\n", readFlags, returnedFlags); "Expected flags %08x, got %08x\n", readFlags, returnedFlags);
} }
} }
@ -331,15 +331,15 @@ static void test_getDefaultCryptProv(void)
prov = pI_CryptGetDefaultCryptProv(0xdeadbeef); prov = pI_CryptGetDefaultCryptProv(0xdeadbeef);
ok(prov == 0 && GetLastError() == E_INVALIDARG, ok(prov == 0 && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
prov = pI_CryptGetDefaultCryptProv(PROV_RSA_FULL); prov = pI_CryptGetDefaultCryptProv(PROV_RSA_FULL);
ok(prov == 0 && GetLastError() == E_INVALIDARG, ok(prov == 0 && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
prov = pI_CryptGetDefaultCryptProv(1); prov = pI_CryptGetDefaultCryptProv(1);
ok(prov == 0 && GetLastError() == E_INVALIDARG, ok(prov == 0 && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
prov = pI_CryptGetDefaultCryptProv(0); prov = pI_CryptGetDefaultCryptProv(0);
ok(prov != 0, "I_CryptGetDefaultCryptProv failed: %08lx\n", GetLastError()); ok(prov != 0, "I_CryptGetDefaultCryptProv failed: %08x\n", GetLastError());
CryptReleaseContext(prov, 0); CryptReleaseContext(prov, 0);
} }

View File

@ -94,7 +94,7 @@ static void testOIDToAlgID(void)
alg = CertOIDToAlgId("1.2.3"); alg = CertOIDToAlgId("1.2.3");
ok(!alg && (GetLastError() == 0xdeadbeef || ok(!alg && (GetLastError() == 0xdeadbeef ||
GetLastError() == ERROR_RESOURCE_NAME_NOT_FOUND), GetLastError() == ERROR_RESOURCE_NAME_NOT_FOUND),
"Expected ERROR_RESOURCE_NAME_NOT_FOUND or no error set, got %08lx\n", "Expected ERROR_RESOURCE_NAME_NOT_FOUND or no error set, got %08x\n",
GetLastError()); GetLastError());
for (i = 0; i < sizeof(oidToAlgID) / sizeof(oidToAlgID[0]); i++) for (i = 0; i < sizeof(oidToAlgID) / sizeof(oidToAlgID[0]); i++)
@ -104,7 +104,7 @@ static void testOIDToAlgID(void)
* at least not the wrong one. * at least not the wrong one.
*/ */
ok(alg == 0 || alg == oidToAlgID[i].algID, ok(alg == 0 || alg == oidToAlgID[i].algID,
"Expected %ld, got %ld\n", oidToAlgID[i].algID, alg); "Expected %d, got %d\n", oidToAlgID[i].algID, alg);
} }
} }
@ -117,7 +117,7 @@ static void testAlgIDToOID(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
oid = CertAlgIdToOID(ALG_CLASS_SIGNATURE | ALG_TYPE_ANY | 80); oid = CertAlgIdToOID(ALG_CLASS_SIGNATURE | ALG_TYPE_ANY | 80);
ok(!oid && GetLastError() == 0xdeadbeef, ok(!oid && GetLastError() == 0xdeadbeef,
"Didn't expect last error (%08lx) to be set\n", GetLastError()); "Didn't expect last error (%08x) to be set\n", GetLastError());
for (i = 0; i < sizeof(algIDToOID) / sizeof(algIDToOID[0]); i++) for (i = 0; i < sizeof(algIDToOID) / sizeof(algIDToOID[0]); i++)
{ {
oid = CertAlgIdToOID(algIDToOID[i].algID); oid = CertAlgIdToOID(algIDToOID[i].algID);
@ -141,7 +141,7 @@ static void test_oidFunctionSet(void)
/* The name doesn't mean much */ /* The name doesn't mean much */
set1 = CryptInitOIDFunctionSet("funky", 0); set1 = CryptInitOIDFunctionSet("funky", 0);
ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08lx\n", GetLastError()); ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08x\n", GetLastError());
if (set1) if (set1)
{ {
/* These crash /* These crash
@ -150,14 +150,14 @@ static void test_oidFunctionSet(void)
*/ */
size = 0; size = 0;
ret = CryptGetDefaultOIDDllList(set1, 0, NULL, &size); ret = CryptGetDefaultOIDDllList(set1, 0, NULL, &size);
ok(ret, "CryptGetDefaultOIDDllList failed: %08lx\n", GetLastError()); ok(ret, "CryptGetDefaultOIDDllList failed: %08x\n", GetLastError());
if (ret) if (ret)
{ {
buf = HeapAlloc(GetProcessHeap(), 0, size * sizeof(WCHAR)); buf = HeapAlloc(GetProcessHeap(), 0, size * sizeof(WCHAR));
if (buf) if (buf)
{ {
ret = CryptGetDefaultOIDDllList(set1, 0, buf, &size); ret = CryptGetDefaultOIDDllList(set1, 0, buf, &size);
ok(ret, "CryptGetDefaultOIDDllList failed: %08lx\n", ok(ret, "CryptGetDefaultOIDDllList failed: %08x\n",
GetLastError()); GetLastError());
ok(!*buf, "Expected empty DLL list\n"); ok(!*buf, "Expected empty DLL list\n");
HeapFree(GetProcessHeap(), 0, buf); HeapFree(GetProcessHeap(), 0, buf);
@ -167,9 +167,9 @@ static void test_oidFunctionSet(void)
/* MSDN says flags must be 0, but it's not checked */ /* MSDN says flags must be 0, but it's not checked */
set1 = CryptInitOIDFunctionSet("", 1); set1 = CryptInitOIDFunctionSet("", 1);
ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08lx\n", GetLastError()); ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08x\n", GetLastError());
set2 = CryptInitOIDFunctionSet("", 0); set2 = CryptInitOIDFunctionSet("", 0);
ok(set2 != 0, "CryptInitOIDFunctionSet failed: %08lx\n", GetLastError()); ok(set2 != 0, "CryptInitOIDFunctionSet failed: %08x\n", GetLastError());
/* There isn't a free function, so there must be only one set per name to /* There isn't a free function, so there must be only one set per name to
* limit leaks. (I guess the sets are freed when crypt32 is unloaded.) * limit leaks. (I guess the sets are freed when crypt32 is unloaded.)
*/ */
@ -183,7 +183,7 @@ static void test_oidFunctionSet(void)
/* There's no installed function for a built-in encoding. */ /* There's no installed function for a built-in encoding. */
set1 = CryptInitOIDFunctionSet("CryptDllEncodeObject", 0); set1 = CryptInitOIDFunctionSet("CryptDllEncodeObject", 0);
ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08lx\n", GetLastError()); ok(set1 != 0, "CryptInitOIDFunctionSet failed: %08x\n", GetLastError());
if (set1) if (set1)
{ {
void *funcAddr; void *funcAddr;
@ -192,7 +192,7 @@ static void test_oidFunctionSet(void)
ret = CryptGetOIDFunctionAddress(set1, X509_ASN_ENCODING, X509_CERT, 0, ret = CryptGetOIDFunctionAddress(set1, X509_ASN_ENCODING, X509_CERT, 0,
&funcAddr, &hFuncAddr); &funcAddr, &hFuncAddr);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %08lx\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %08x\n", GetLastError());
} }
} }
@ -217,21 +217,21 @@ static void test_installOIDFunctionAddress(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CryptInstallOIDFunctionAddress(NULL, 0, "CryptDllEncodeObject", 0, ret = CryptInstallOIDFunctionAddress(NULL, 0, "CryptDllEncodeObject", 0,
NULL, 0); NULL, 0);
ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08lx\n", ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08x\n",
GetLastError()); GetLastError());
/* The function name doesn't much matter */ /* The function name doesn't much matter */
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = CryptInstallOIDFunctionAddress(NULL, 0, "OhSoFunky", 0, NULL, 0); ret = CryptInstallOIDFunctionAddress(NULL, 0, "OhSoFunky", 0, NULL, 0);
ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08lx\n", ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08x\n",
GetLastError()); GetLastError());
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
entry.pszOID = X509_CERT; entry.pszOID = X509_CERT;
ret = CryptInstallOIDFunctionAddress(NULL, 0, "OhSoFunky", 1, &entry, 0); ret = CryptInstallOIDFunctionAddress(NULL, 0, "OhSoFunky", 1, &entry, 0);
ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08lx\n", ok(ret && GetLastError() == 0xdeadbeef, "Expected success, got %08x\n",
GetLastError()); GetLastError());
set = CryptInitOIDFunctionSet("OhSoFunky", 0); set = CryptInitOIDFunctionSet("OhSoFunky", 0);
ok(set != 0, "CryptInitOIDFunctionSet failed: %08lx\n", GetLastError()); ok(set != 0, "CryptInitOIDFunctionSet failed: %08x\n", GetLastError());
if (set) if (set)
{ {
funcY funcAddr = NULL; funcY funcAddr = NULL;
@ -244,14 +244,14 @@ static void test_installOIDFunctionAddress(void)
ret = CryptGetOIDFunctionAddress(set, X509_ASN_ENCODING, 0, 0, ret = CryptGetOIDFunctionAddress(set, X509_ASN_ENCODING, 0, 0,
(void **)&funcAddr, &hFuncAddr); (void **)&funcAddr, &hFuncAddr);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %ld\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %d\n", GetLastError());
ret = CryptGetOIDFunctionAddress(set, X509_ASN_ENCODING, X509_CERT, 0, ret = CryptGetOIDFunctionAddress(set, X509_ASN_ENCODING, X509_CERT, 0,
(void **)&funcAddr, &hFuncAddr); (void **)&funcAddr, &hFuncAddr);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %ld\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %d\n", GetLastError());
ret = CryptGetOIDFunctionAddress(set, 0, X509_CERT, 0, ret = CryptGetOIDFunctionAddress(set, 0, X509_CERT, 0,
(void **)&funcAddr, &hFuncAddr); (void **)&funcAddr, &hFuncAddr);
ok(ret, "CryptGetOIDFunctionAddress failed: %ld\n", GetLastError()); ok(ret, "CryptGetOIDFunctionAddress failed: %d\n", GetLastError());
if (funcAddr) if (funcAddr)
{ {
int y = funcAddr(0xabadc0da); int y = funcAddr(0xabadc0da);
@ -279,40 +279,40 @@ static void test_registerOIDFunction(void)
ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "foo", NULL, bogusDll, ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "foo", NULL, bogusDll,
NULL); NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG: %ld\n", GetLastError()); "Expected E_INVALIDARG: %d\n", GetLastError());
/* This has no effect, but "succeeds" on XP */ /* This has no effect, but "succeeds" on XP */
ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "foo", ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "foo",
"1.2.3.4.5.6.7.8.9.10", NULL, NULL); "1.2.3.4.5.6.7.8.9.10", NULL, NULL);
ok(ret, "Expected pseudo-success, got %ld\n", GetLastError()); ok(ret, "Expected pseudo-success, got %d\n", GetLastError());
ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "CryptDllEncodeObject", ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10", bogusDll, NULL); "1.2.3.4.5.6.7.8.9.10", bogusDll, NULL);
ok(ret, "CryptRegisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptRegisterOIDFunction failed: %d\n", GetLastError());
ret = CryptUnregisterOIDFunction(X509_ASN_ENCODING, "CryptDllEncodeObject", ret = CryptUnregisterOIDFunction(X509_ASN_ENCODING, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10"); "1.2.3.4.5.6.7.8.9.10");
ok(ret, "CryptUnregisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptUnregisterOIDFunction failed: %d\n", GetLastError());
ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "bogus", ret = CryptRegisterOIDFunction(X509_ASN_ENCODING, "bogus",
"1.2.3.4.5.6.7.8.9.10", bogusDll, NULL); "1.2.3.4.5.6.7.8.9.10", bogusDll, NULL);
ok(ret, "CryptRegisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptRegisterOIDFunction failed: %d\n", GetLastError());
ret = CryptUnregisterOIDFunction(X509_ASN_ENCODING, "bogus", ret = CryptUnregisterOIDFunction(X509_ASN_ENCODING, "bogus",
"1.2.3.4.5.6.7.8.9.10"); "1.2.3.4.5.6.7.8.9.10");
ok(ret, "CryptUnregisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptUnregisterOIDFunction failed: %d\n", GetLastError());
/* This has no effect */ /* This has no effect */
ret = CryptRegisterOIDFunction(PKCS_7_ASN_ENCODING, "CryptDllEncodeObject", ret = CryptRegisterOIDFunction(PKCS_7_ASN_ENCODING, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10", bogusDll, NULL); "1.2.3.4.5.6.7.8.9.10", bogusDll, NULL);
ok(ret, "CryptRegisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptRegisterOIDFunction failed: %d\n", GetLastError());
/* Check with bogus encoding type: */ /* Check with bogus encoding type: */
ret = CryptRegisterOIDFunction(0, "CryptDllEncodeObject", ret = CryptRegisterOIDFunction(0, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10", bogusDll, NULL); "1.2.3.4.5.6.7.8.9.10", bogusDll, NULL);
ok(ret, "CryptRegisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptRegisterOIDFunction failed: %d\n", GetLastError());
/* This is written with value 3 verbatim. Thus, the encoding type isn't /* This is written with value 3 verbatim. Thus, the encoding type isn't
* (for now) treated as a mask. * (for now) treated as a mask.
*/ */
ret = CryptRegisterOIDFunction(3, "CryptDllEncodeObject", ret = CryptRegisterOIDFunction(3, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10", bogusDll, NULL); "1.2.3.4.5.6.7.8.9.10", bogusDll, NULL);
ok(ret, "CryptRegisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptRegisterOIDFunction failed: %d\n", GetLastError());
ret = CryptUnregisterOIDFunction(3, "CryptDllEncodeObject", ret = CryptUnregisterOIDFunction(3, "CryptDllEncodeObject",
"1.2.3.4.5.6.7.8.9.10"); "1.2.3.4.5.6.7.8.9.10");
ok(ret, "CryptUnregisterOIDFunction failed: %ld\n", GetLastError()); ok(ret, "CryptUnregisterOIDFunction failed: %d\n", GetLastError());
} }
static const WCHAR bogusDll[] = { 'b','o','g','u','s','.','d','l','l',0 }; static const WCHAR bogusDll[] = { 'b','o','g','u','s','.','d','l','l',0 };
@ -330,28 +330,28 @@ static void test_registerDefaultOIDFunction(void)
ret = CryptRegisterDefaultOIDFunction(0, NULL, 0, NULL); ret = CryptRegisterDefaultOIDFunction(0, NULL, 0, NULL);
ok(!ret && GetLastError() == E_INVALIDARG, ok(!ret && GetLastError() == E_INVALIDARG,
"Expected E_INVALIDARG, got %08lx\n", GetLastError()); "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* This succeeds on WinXP, although the bogus entry is unusable. /* This succeeds on WinXP, although the bogus entry is unusable.
ret = CryptRegisterDefaultOIDFunction(0, NULL, 0, bogusDll); ret = CryptRegisterDefaultOIDFunction(0, NULL, 0, bogusDll);
*/ */
/* Register one at index 0 */ /* Register one at index 0 */
ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 0, ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 0,
bogusDll); bogusDll);
ok(ret, "CryptRegisterDefaultOIDFunction failed: %08lx\n", GetLastError()); ok(ret, "CryptRegisterDefaultOIDFunction failed: %08x\n", GetLastError());
/* Reregistering should fail */ /* Reregistering should fail */
ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 0, ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 0,
bogusDll); bogusDll);
ok(!ret && GetLastError() == ERROR_FILE_EXISTS, ok(!ret && GetLastError() == ERROR_FILE_EXISTS,
"Expected ERROR_FILE_EXISTS, got %08lx\n", GetLastError()); "Expected ERROR_FILE_EXISTS, got %08x\n", GetLastError());
/* Registering the same one at index 1 should also fail */ /* Registering the same one at index 1 should also fail */
ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 1, ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 1,
bogusDll); bogusDll);
ok(!ret && GetLastError() == ERROR_FILE_EXISTS, ok(!ret && GetLastError() == ERROR_FILE_EXISTS,
"Expected ERROR_FILE_EXISTS, got %08lx\n", GetLastError()); "Expected ERROR_FILE_EXISTS, got %08x\n", GetLastError());
/* Registering a different one at index 1 succeeds */ /* Registering a different one at index 1 succeeds */
ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 1, ret = CryptRegisterDefaultOIDFunction(0, "CertDllOpenStoreProv", 1,
bogus2Dll); bogus2Dll);
ok(ret, "CryptRegisterDefaultOIDFunction failed: %08lx\n", GetLastError()); ok(ret, "CryptRegisterDefaultOIDFunction failed: %08x\n", GetLastError());
sprintf(buf, fmt, 0, func); sprintf(buf, fmt, 0, func);
rc = RegOpenKeyA(HKEY_LOCAL_MACHINE, buf, &key); rc = RegOpenKeyA(HKEY_LOCAL_MACHINE, buf, &key);
ok(rc == 0, "Expected key to exist, RegOpenKeyW failed: %ld\n", rc); ok(rc == 0, "Expected key to exist, RegOpenKeyW failed: %ld\n", rc);
@ -366,7 +366,7 @@ static void test_registerDefaultOIDFunction(void)
rc = RegQueryValueExW(key, dllW, NULL, &type, (LPBYTE)dllBuf, &size); rc = RegQueryValueExW(key, dllW, NULL, &type, (LPBYTE)dllBuf, &size);
ok(rc == 0, ok(rc == 0,
"Expected Dll value to exist, RegQueryValueExW failed: %ld\n", rc); "Expected Dll value to exist, RegQueryValueExW failed: %ld\n", rc);
ok(type == REG_MULTI_SZ, "Expected type REG_MULTI_SZ, got %ld\n", type); ok(type == REG_MULTI_SZ, "Expected type REG_MULTI_SZ, got %d\n", type);
/* bogusDll was registered first, so that should be first */ /* bogusDll was registered first, so that should be first */
ptr = dllBuf; ptr = dllBuf;
ok(!lstrcmpiW(ptr, bogusDll), "Unexpected dll\n"); ok(!lstrcmpiW(ptr, bogusDll), "Unexpected dll\n");
@ -377,17 +377,17 @@ static void test_registerDefaultOIDFunction(void)
/* Unregister both of them */ /* Unregister both of them */
ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv", ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv",
bogusDll); bogusDll);
ok(ret, "CryptUnregisterDefaultOIDFunction failed: %08lx\n", ok(ret, "CryptUnregisterDefaultOIDFunction failed: %08x\n",
GetLastError()); GetLastError());
ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv", ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv",
bogus2Dll); bogus2Dll);
ok(ret, "CryptUnregisterDefaultOIDFunction failed: %08lx\n", ok(ret, "CryptUnregisterDefaultOIDFunction failed: %08x\n",
GetLastError()); GetLastError());
/* Now that they're both unregistered, unregistering should fail */ /* Now that they're both unregistered, unregistering should fail */
ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv", ret = CryptUnregisterDefaultOIDFunction(0, "CertDllOpenStoreProv",
bogusDll); bogusDll);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %ld\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %d\n", GetLastError());
/* Repeat a few tests on the normal encoding type */ /* Repeat a few tests on the normal encoding type */
ret = CryptRegisterDefaultOIDFunction(X509_ASN_ENCODING, ret = CryptRegisterDefaultOIDFunction(X509_ASN_ENCODING,
@ -398,7 +398,7 @@ static void test_registerDefaultOIDFunction(void)
ret = CryptUnregisterDefaultOIDFunction(X509_ASN_ENCODING, ret = CryptUnregisterDefaultOIDFunction(X509_ASN_ENCODING,
"CertDllOpenStoreProv", bogusDll); "CertDllOpenStoreProv", bogusDll);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %08lx\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %08x\n", GetLastError());
} }
static BOOL WINAPI countOidInfo(PCCRYPT_OID_INFO pInfo, void *pvArg) static BOOL WINAPI countOidInfo(PCCRYPT_OID_INFO pInfo, void *pvArg)

View File

@ -52,13 +52,13 @@ static void test_cryptprotectdata(void)
protected = CryptProtectData(NULL,desc,NULL,NULL,NULL,0,&cipher); protected = CryptProtectData(NULL,desc,NULL,NULL,NULL,0,&cipher);
ok(!protected, "Encrypting without plain data source.\n"); ok(!protected, "Encrypting without plain data source.\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_PARAMETER, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_INVALID_PARAMETER, "Wrong (%u) GetLastError seen\n",r);
SetLastError(0xDEADBEEF); SetLastError(0xDEADBEEF);
protected = CryptProtectData(&plain,desc,NULL,NULL,NULL,0,NULL); protected = CryptProtectData(&plain,desc,NULL,NULL,NULL,0,NULL);
ok(!protected, "Encrypting without cipher destination.\n"); ok(!protected, "Encrypting without cipher destination.\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_PARAMETER, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_INVALID_PARAMETER, "Wrong (%u) GetLastError seen\n",r);
cipher.pbData=NULL; cipher.pbData=NULL;
cipher.cbData=0; cipher.cbData=0;
@ -68,7 +68,7 @@ static void test_cryptprotectdata(void)
protected = CryptProtectData(&plain,desc,NULL,NULL,NULL,0,&cipher); protected = CryptProtectData(&plain,desc,NULL,NULL,NULL,0,&cipher);
ok(protected, "Encrypting without entropy.\n"); ok(protected, "Encrypting without entropy.\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
cipher_entropy.pbData=NULL; cipher_entropy.pbData=NULL;
cipher_entropy.cbData=0; cipher_entropy.cbData=0;
@ -78,7 +78,7 @@ static void test_cryptprotectdata(void)
protected = CryptProtectData(&plain,desc,&entropy,NULL,NULL,0,&cipher_entropy); protected = CryptProtectData(&plain,desc,&entropy,NULL,NULL,0,&cipher_entropy);
ok(protected, "Encrypting with entropy.\n"); ok(protected, "Encrypting with entropy.\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
cipher_no_desc.pbData=NULL; cipher_no_desc.pbData=NULL;
cipher_no_desc.cbData=0; cipher_no_desc.cbData=0;
@ -90,7 +90,7 @@ static void test_cryptprotectdata(void)
protected = CryptProtectData(&plain,NULL,&entropy,NULL,NULL,0,&cipher_no_desc); protected = CryptProtectData(&plain,NULL,&entropy,NULL,NULL,0,&cipher_no_desc);
ok(protected, "Encrypting with entropy and no description.\n"); ok(protected, "Encrypting with entropy and no description.\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
} }
static void test_cryptunprotectdata(void) static void test_cryptunprotectdata(void)
@ -114,13 +114,13 @@ static void test_cryptunprotectdata(void)
okay = CryptUnprotectData(&cipher,NULL,NULL,NULL,NULL,0,NULL); okay = CryptUnprotectData(&cipher,NULL,NULL,NULL,NULL,0,NULL);
ok(!okay,"Decrypting without destination\n"); ok(!okay,"Decrypting without destination\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_PARAMETER, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_INVALID_PARAMETER, "Wrong (%u) GetLastError seen\n",r);
SetLastError(0xDEADBEEF); SetLastError(0xDEADBEEF);
okay = CryptUnprotectData(NULL,NULL,NULL,NULL,NULL,0,&plain); okay = CryptUnprotectData(NULL,NULL,NULL,NULL,NULL,0,&plain);
ok(!okay,"Decrypting without source\n"); ok(!okay,"Decrypting without source\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_PARAMETER, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_INVALID_PARAMETER, "Wrong (%u) GetLastError seen\n",r);
plain.pbData=NULL; plain.pbData=NULL;
plain.cbData=0; plain.cbData=0;
@ -129,7 +129,7 @@ static void test_cryptunprotectdata(void)
okay = CryptUnprotectData(&cipher_entropy,NULL,NULL,NULL,NULL,0,&plain); okay = CryptUnprotectData(&cipher_entropy,NULL,NULL,NULL,NULL,0,&plain);
ok(!okay,"Decrypting without needed entropy\n"); ok(!okay,"Decrypting without needed entropy\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_DATA, "Wrong (%lu) GetLastError seen\n", r); ok(r == ERROR_INVALID_DATA, "Wrong (%u) GetLastError seen\n", r);
plain.pbData=NULL; plain.pbData=NULL;
plain.cbData=0; plain.cbData=0;
@ -140,7 +140,7 @@ static void test_cryptunprotectdata(void)
okay = CryptUnprotectData(&cipher,&data_desc,NULL,NULL,NULL,0,&plain); okay = CryptUnprotectData(&cipher,&data_desc,NULL,NULL,NULL,0,&plain);
ok(okay,"Decrypting without entropy\n"); ok(okay,"Decrypting without entropy\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n"); ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n");
ok(plain.cbData==strlen(secret)+1,"Plain DATA_BLOB wrong length\n"); ok(plain.cbData==strlen(secret)+1,"Plain DATA_BLOB wrong length\n");
@ -160,14 +160,14 @@ static void test_cryptunprotectdata(void)
okay = CryptUnprotectData(&cipher_entropy,&data_desc,&cipher_entropy,NULL,NULL,0,&plain); okay = CryptUnprotectData(&cipher_entropy,&data_desc,&cipher_entropy,NULL,NULL,0,&plain);
ok(!okay,"Decrypting with wrong entropy\n"); ok(!okay,"Decrypting with wrong entropy\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_INVALID_DATA, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_INVALID_DATA, "Wrong (%u) GetLastError seen\n",r);
/* with entropy */ /* with entropy */
SetLastError(0xDEADBEEF); SetLastError(0xDEADBEEF);
okay = CryptUnprotectData(&cipher_entropy,&data_desc,&entropy,NULL,NULL,0,&plain); okay = CryptUnprotectData(&cipher_entropy,&data_desc,&entropy,NULL,NULL,0,&plain);
ok(okay,"Decrypting with entropy\n"); ok(okay,"Decrypting with entropy\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n"); ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n");
ok(plain.cbData==strlen(secret)+1,"Plain DATA_BLOB wrong length\n"); ok(plain.cbData==strlen(secret)+1,"Plain DATA_BLOB wrong length\n");
@ -187,7 +187,7 @@ static void test_cryptunprotectdata(void)
okay = CryptUnprotectData(&cipher_no_desc,&data_desc,&entropy,NULL,NULL,0,&plain); okay = CryptUnprotectData(&cipher_no_desc,&data_desc,&entropy,NULL,NULL,0,&plain);
ok(okay,"Decrypting with entropy and no description\n"); ok(okay,"Decrypting with entropy and no description\n");
r = GetLastError(); r = GetLastError();
ok(r == ERROR_SUCCESS, "Wrong (%lu) GetLastError seen\n",r); ok(r == ERROR_SUCCESS, "Wrong (%u) GetLastError seen\n",r);
ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n"); ok(plain.pbData!=NULL,"Plain DATA_BLOB missing data\n");
ok(plain.cbData==strlen(secret2)+1,"Plain DATA_BLOB wrong length\n"); ok(plain.cbData==strlen(secret2)+1,"Plain DATA_BLOB wrong length\n");

File diff suppressed because it is too large Load Diff

View File

@ -231,7 +231,7 @@ static void test_CertRDNValueToStrA(void)
{ {
ret = pCertRDNValueToStrA(attrs[i].dwValueType, &attrs[i].Value, ret = pCertRDNValueToStrA(attrs[i].dwValueType, &attrs[i].Value,
buffer, sizeof(buffer)); buffer, sizeof(buffer));
ok(ret == strlen(attrs[i].str) + 1, "Expected length %d, got %ld\n", ok(ret == strlen(attrs[i].str) + 1, "Expected length %d, got %d\n",
lstrlenA(attrs[i].str) + 1, ret); lstrlenA(attrs[i].str) + 1, ret);
ok(!strcmp(buffer, attrs[i].str), "Expected %s, got %s\n", attrs[i].str, ok(!strcmp(buffer, attrs[i].str), "Expected %s, got %s\n", attrs[i].str,
buffer); buffer);
@ -289,7 +289,7 @@ static void test_CertRDNValueToStrW(void)
{ {
ret = pCertRDNValueToStrW(attrs[i].dwValueType, &attrs[i].Value, ret = pCertRDNValueToStrW(attrs[i].dwValueType, &attrs[i].Value,
buffer, sizeof(buffer) / sizeof(buffer[0])); buffer, sizeof(buffer) / sizeof(buffer[0]));
ok(ret == lstrlenW(attrs[i].str) + 1, "Expected length %d, got %ld\n", ok(ret == lstrlenW(attrs[i].str) + 1, "Expected length %d, got %d\n",
lstrlenW(attrs[i].str) + 1, ret); lstrlenW(attrs[i].str) + 1, ret);
ok(!lstrcmpW(buffer, attrs[i].str), "Unexpected value\n"); ok(!lstrcmpW(buffer, attrs[i].str), "Unexpected value\n");
#ifdef DUMP_STRINGS #ifdef DUMP_STRINGS
@ -306,11 +306,11 @@ static void test_NameToStrConversionA(PCERT_NAME_BLOB pName, DWORD dwStrType,
DWORD i; DWORD i;
i = pCertNameToStrA(X509_ASN_ENCODING, pName, dwStrType, NULL, 0); i = pCertNameToStrA(X509_ASN_ENCODING, pName, dwStrType, NULL, 0);
ok(i == strlen(expected) + 1, "Expected %d chars, got %ld\n", ok(i == strlen(expected) + 1, "Expected %d chars, got %d\n",
lstrlenA(expected) + 1, i); lstrlenA(expected) + 1, i);
i = pCertNameToStrA(X509_ASN_ENCODING,pName, dwStrType, buffer, i = pCertNameToStrA(X509_ASN_ENCODING,pName, dwStrType, buffer,
sizeof(buffer)); sizeof(buffer));
ok(i == strlen(expected) + 1, "Expected %d chars, got %ld\n", ok(i == strlen(expected) + 1, "Expected %d chars, got %d\n",
lstrlenA(expected) + 1, i); lstrlenA(expected) + 1, i);
ok(!strcmp(buffer, expected), "Expected %s, got %s\n", expected, buffer); ok(!strcmp(buffer, expected), "Expected %s, got %s\n", expected, buffer);
} }
@ -323,7 +323,7 @@ static void test_CertNameToStrA(void)
context = CertCreateCertificateContext(X509_ASN_ENCODING, cert, context = CertCreateCertificateContext(X509_ASN_ENCODING, cert,
sizeof(cert)); sizeof(cert));
ok(context != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(context != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
if (context) if (context)
{ {
@ -336,13 +336,13 @@ static void test_CertNameToStrA(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = pCertNameToStrA(0, &context->pCertInfo->Issuer, 0, NULL, 0); ret = pCertNameToStrA(0, &context->pCertInfo->Issuer, 0, NULL, 0);
ok(ret == 1 && GetLastError() == ERROR_FILE_NOT_FOUND, ok(ret == 1 && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected retval 1 and ERROR_FILE_NOT_FOUND, got %ld - %08lx\n", "Expected retval 1 and ERROR_FILE_NOT_FOUND, got %d - %08x\n",
ret, GetLastError()); ret, GetLastError());
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = pCertNameToStrA(X509_ASN_ENCODING, &context->pCertInfo->Issuer, ret = pCertNameToStrA(X509_ASN_ENCODING, &context->pCertInfo->Issuer,
0, NULL, 0); 0, NULL, 0);
ok(ret && GetLastError() == ERROR_SUCCESS, ok(ret && GetLastError() == ERROR_SUCCESS,
"Expected positive return and ERROR_SUCCESS, got %ld - %08lx\n", "Expected positive return and ERROR_SUCCESS, got %d - %08x\n",
ret, GetLastError()); ret, GetLastError());
test_NameToStrConversionA(&context->pCertInfo->Issuer, test_NameToStrConversionA(&context->pCertInfo->Issuer,
@ -375,11 +375,11 @@ static void test_NameToStrConversionW(PCERT_NAME_BLOB pName, DWORD dwStrType,
DWORD i; DWORD i;
i = pCertNameToStrW(X509_ASN_ENCODING,pName, dwStrType, NULL, 0); i = pCertNameToStrW(X509_ASN_ENCODING,pName, dwStrType, NULL, 0);
ok(i == lstrlenW(expected) + 1, "Expected %d chars, got %ld\n", ok(i == lstrlenW(expected) + 1, "Expected %d chars, got %d\n",
lstrlenW(expected) + 1, i); lstrlenW(expected) + 1, i);
i = pCertNameToStrW(X509_ASN_ENCODING,pName, dwStrType, buffer, i = pCertNameToStrW(X509_ASN_ENCODING,pName, dwStrType, buffer,
sizeof(buffer) / sizeof(buffer[0])); sizeof(buffer) / sizeof(buffer[0]));
ok(i == lstrlenW(expected) + 1, "Expected %d chars, got %ld\n", ok(i == lstrlenW(expected) + 1, "Expected %d chars, got %d\n",
lstrlenW(expected) + 1, i); lstrlenW(expected) + 1, i);
ok(!lstrcmpW(buffer, expected), "Unexpected value\n"); ok(!lstrcmpW(buffer, expected), "Unexpected value\n");
#ifdef DUMP_STRINGS #ifdef DUMP_STRINGS
@ -396,7 +396,7 @@ static void test_CertNameToStrW(void)
context = CertCreateCertificateContext(X509_ASN_ENCODING, cert, context = CertCreateCertificateContext(X509_ASN_ENCODING, cert,
sizeof(cert)); sizeof(cert));
ok(context != NULL, "CertCreateCertificateContext failed: %08lx\n", ok(context != NULL, "CertCreateCertificateContext failed: %08x\n",
GetLastError()); GetLastError());
if (context) if (context)
{ {
@ -409,13 +409,13 @@ static void test_CertNameToStrW(void)
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = pCertNameToStrW(0, &context->pCertInfo->Issuer, 0, NULL, 0); ret = pCertNameToStrW(0, &context->pCertInfo->Issuer, 0, NULL, 0);
ok(ret == 1 && GetLastError() == ERROR_FILE_NOT_FOUND, ok(ret == 1 && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected retval 1 and ERROR_FILE_NOT_FOUND, got %ld - %08lx\n", "Expected retval 1 and ERROR_FILE_NOT_FOUND, got %d - %08x\n",
ret, GetLastError()); ret, GetLastError());
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = pCertNameToStrW(X509_ASN_ENCODING, &context->pCertInfo->Issuer, ret = pCertNameToStrW(X509_ASN_ENCODING, &context->pCertInfo->Issuer,
0, NULL, 0); 0, NULL, 0);
ok(ret && GetLastError() == ERROR_SUCCESS, ok(ret && GetLastError() == ERROR_SUCCESS,
"Expected positive return and ERROR_SUCCESS, got %ld - %08lx\n", "Expected positive return and ERROR_SUCCESS, got %d - %08x\n",
ret, GetLastError()); ret, GetLastError());
test_NameToStrConversionW(&context->pCertInfo->Issuer, test_NameToStrConversionW(&context->pCertInfo->Issuer,
@ -482,33 +482,33 @@ static void test_CertStrToNameA(void)
ok(!ret, "Expected failure\n"); ok(!ret, "Expected failure\n");
ret = pCertStrToNameA(0, "bogus", 0, NULL, NULL, &size, NULL); ret = pCertStrToNameA(0, "bogus", 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameA(0, "foo=1", 0, NULL, NULL, &size, NULL); ret = pCertStrToNameA(0, "foo=1", 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameA(0, "CN=1", 0, NULL, NULL, &size, NULL); ret = pCertStrToNameA(0, "CN=1", 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %08lx\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %08x\n", GetLastError());
ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=1", 0, NULL, NULL, &size, NULL); ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=1", 0, NULL, NULL, &size, NULL);
ok(ret, "CertStrToNameA failed: %08lx\n", GetLastError()); ok(ret, "CertStrToNameA failed: %08x\n", GetLastError());
size = sizeof(buf); size = sizeof(buf);
ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=\"\"1\"\"", 0, NULL, buf, &size, ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=\"\"1\"\"", 0, NULL, buf, &size,
NULL); NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=1+2", 0, NULL, buf, ret = pCertStrToNameA(X509_ASN_ENCODING, "CN=1+2", 0, NULL, buf,
&size, NULL); &size, NULL);
todo_wine ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, todo_wine ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
for (i = 0; i < sizeof(namesA) / sizeof(namesA[0]); i++) for (i = 0; i < sizeof(namesA) / sizeof(namesA[0]); i++)
{ {
size = sizeof(buf); size = sizeof(buf);
ret = pCertStrToNameA(X509_ASN_ENCODING, namesA[i].x500, 0, NULL, buf, ret = pCertStrToNameA(X509_ASN_ENCODING, namesA[i].x500, 0, NULL, buf,
&size, NULL); &size, NULL);
ok(ret, "CertStrToNameA failed on string %s: %08lx\n", namesA[i].x500, ok(ret, "CertStrToNameA failed on string %s: %08x\n", namesA[i].x500,
GetLastError()); GetLastError());
ok(size == namesA[i].encodedSize, ok(size == namesA[i].encodedSize,
"Expected size %ld, got %ld\n", namesA[i].encodedSize, size); "Expected size %d, got %d\n", namesA[i].encodedSize, size);
if (ret) if (ret)
ok(!memcmp(buf, namesA[i].encoded, namesA[i].encodedSize), ok(!memcmp(buf, namesA[i].encoded, namesA[i].encodedSize),
"Unexpected value for string %s\n", namesA[i].x500); "Unexpected value for string %s\n", namesA[i].x500);
@ -563,38 +563,38 @@ static void test_CertStrToNameW(void)
ok(!ret, "Expected failure\n"); ok(!ret, "Expected failure\n");
ret = pCertStrToNameW(0, bogusW, 0, NULL, NULL, &size, NULL); ret = pCertStrToNameW(0, bogusW, 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameW(0, fooW, 0, NULL, NULL, &size, NULL); ret = pCertStrToNameW(0, fooW, 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameW(0, simpleCN_W, 0, NULL, NULL, &size, NULL); ret = pCertStrToNameW(0, simpleCN_W, 0, NULL, NULL, &size, NULL);
ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND, ok(!ret && GetLastError() == ERROR_FILE_NOT_FOUND,
"Expected ERROR_FILE_NOT_FOUND, got %08lx\n", GetLastError()); "Expected ERROR_FILE_NOT_FOUND, got %08x\n", GetLastError());
ret = pCertStrToNameW(X509_ASN_ENCODING, simpleCN_W, 0, NULL, NULL, &size, ret = pCertStrToNameW(X509_ASN_ENCODING, simpleCN_W, 0, NULL, NULL, &size,
NULL); NULL);
ok(ret, "CertStrToNameW failed: %08lx\n", GetLastError()); ok(ret, "CertStrToNameW failed: %08x\n", GetLastError());
size = sizeof(buf); size = sizeof(buf);
ret = pCertStrToNameW(X509_ASN_ENCODING, badlyQuotedCN_W, 0, NULL, buf, ret = pCertStrToNameW(X509_ASN_ENCODING, badlyQuotedCN_W, 0, NULL, buf,
&size, NULL); &size, NULL);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ret = pCertStrToNameW(X509_ASN_ENCODING, badlyQuotedCN_W, 0, NULL, buf, ret = pCertStrToNameW(X509_ASN_ENCODING, badlyQuotedCN_W, 0, NULL, buf,
&size, &errorPtr); &size, &errorPtr);
ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING, ok(!ret && GetLastError() == CRYPT_E_INVALID_X500_STRING,
"Expected CRYPT_E_INVALID_X500_STRING, got %08lx\n", GetLastError()); "Expected CRYPT_E_INVALID_X500_STRING, got %08x\n", GetLastError());
ok(errorPtr && *errorPtr == '1', "Expected first error character was 1\n"); ok(errorPtr && *errorPtr == '1', "Expected first error character was 1\n");
for (i = 0; i < sizeof(namesW) / sizeof(namesW[0]); i++) for (i = 0; i < sizeof(namesW) / sizeof(namesW[0]); i++)
{ {
size = sizeof(buf); size = sizeof(buf);
ret = pCertStrToNameW(X509_ASN_ENCODING, namesW[i].x500, 0, NULL, buf, ret = pCertStrToNameW(X509_ASN_ENCODING, namesW[i].x500, 0, NULL, buf,
&size, NULL); &size, NULL);
ok(ret, "Index %ld: CertStrToNameW failed: %08lx\n", i, GetLastError()); ok(ret, "Index %d: CertStrToNameW failed: %08x\n", i, GetLastError());
ok(size == namesW[i].encodedSize, ok(size == namesW[i].encodedSize,
"Index %ld: expected size %ld, got %ld\n", i, namesW[i].encodedSize, "Index %d: expected size %d, got %d\n", i, namesW[i].encodedSize,
size); size);
if (ret) if (ret)
ok(!memcmp(buf, namesW[i].encoded, size), ok(!memcmp(buf, namesW[i].encoded, size),
"Index %ld: unexpected value\n", i); "Index %d: unexpected value\n", i);
} }
} }