From f555aef2691afc3a017f802121a2a598023d2e02 Mon Sep 17 00:00:00 2001 From: Paul Vriens Date: Thu, 22 Oct 2009 20:57:21 +0200 Subject: [PATCH] advapi32/tests: Fix some test failures on several platforms. --- dlls/advapi32/tests/crypt.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/dlls/advapi32/tests/crypt.c b/dlls/advapi32/tests/crypt.c index 0b3f90f50e0..d408f96d22d 100644 --- a/dlls/advapi32/tests/crypt.c +++ b/dlls/advapi32/tests/crypt.c @@ -988,15 +988,21 @@ static void test_rc2_keylen(void) ret = pCryptImportKey(provider, (BYTE*)&key_blob, sizeof(BLOBHEADER)+sizeof(DWORD)+key_blob.key_size, 0, 0, &hkey); - ok(!ret && GetLastError() == NTE_BAD_DATA, - "expected NTE_BAD_DATA, got %08x\n", GetLastError()); + ok(!ret && (GetLastError() == NTE_BAD_DATA || + GetLastError() == NTE_BAD_LEN || /* Win7 */ + GetLastError() == NTE_BAD_TYPE || /* W2K */ + GetLastError() == NTE_PERM), /* Win9x, WinMe and NT4 */ + "unexpected error %08x\n", GetLastError()); /* but importing an 8-bit (7-byte) key does.. */ key_blob.key_size = 7; SetLastError(0xdeadbeef); ret = pCryptImportKey(provider, (BYTE*)&key_blob, sizeof(BLOBHEADER)+sizeof(DWORD)+key_blob.key_size, 0, 0, &hkey); - ok(ret, "CryptAcquireContext error %08x\n", GetLastError()); + ok(ret || + broken(!ret && GetLastError() == NTE_BAD_TYPE) || /* W2K */ + broken(!ret && GetLastError() == NTE_PERM), /* Win9x, WinMe and NT4 */ + "CryptAcquireContext error %08x\n", GetLastError()); pCryptDestroyKey(hkey); /* as does importing a 16-byte key with the base provider when * CRYPT_IPSEC_HMAC_KEY is specified.