Juan Lang : crypt32: Fix some test failures on Win9x.
Alexandre Julliard
julliard at winehq.org
Wed Feb 25 09:22:38 CST 2009
Module: wine
Branch: master
Commit: f290ec4961183831c6175bd7df98e0df637ea878
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f290ec4961183831c6175bd7df98e0df637ea878
Author: Juan Lang <juan.lang at gmail.com>
Date: Tue Feb 24 11:40:04 2009 -0800
crypt32: Fix some test failures on Win9x.
---
dlls/crypt32/tests/msg.c | 20 +++++++++++++++-----
1 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/dlls/crypt32/tests/msg.c b/dlls/crypt32/tests/msg.c
index 7794f35..0150490 100644
--- a/dlls/crypt32/tests/msg.c
+++ b/dlls/crypt32/tests/msg.c
@@ -295,7 +295,13 @@ static void check_param(LPCSTR test, HCRYPTMSG msg, DWORD param,
size = 0xdeadbeef;
ret = CryptMsgGetParam(msg, param, 0, NULL, &size);
- ok(ret, "%s: CryptMsgGetParam failed: %08x\n", test, GetLastError());
+ ok(ret || broken(GetLastError() == OSS_LIMITED /* Win9x */),
+ "%s: CryptMsgGetParam failed: %08x\n", test, GetLastError());
+ if (!ret)
+ {
+ win_skip("parameter %d not supported, skipping tests\n", param);
+ return;
+ }
buf = HeapAlloc(GetProcessHeap(), 0, size);
ret = CryptMsgGetParam(msg, param, 0, buf, &size);
ok(ret, "%s: CryptMsgGetParam failed: %08x\n", test, GetLastError());
@@ -801,12 +807,15 @@ static void test_hash_msg_get_param(void)
ok(ret, "CryptMsgGetParam failed: %08x\n", GetLastError());
size = 0;
ret = CryptMsgGetParam(msg, CMSG_BARE_CONTENT_PARAM, 0, NULL, &size);
- ok(ret, "CryptMsgGetParam failed: %08x\n", GetLastError());
+ ok(ret || broken(GetLastError() == OSS_LIMITED /* Win9x */),
+ "CryptMsgGetParam failed: %08x\n", GetLastError());
/* For an encoded hash message, the hash data aren't available */
SetLastError(0xdeadbeef);
ret = CryptMsgGetParam(msg, CMSG_HASH_DATA_PARAM, 0, NULL, &size);
- ok(!ret && GetLastError() == CRYPT_E_INVALID_MSG_TYPE,
- "Expected CRYPT_E_INVALID_MSG_TYPE, got %08x\n", GetLastError());
+ ok(!ret && (GetLastError() == CRYPT_E_INVALID_MSG_TYPE ||
+ GetLastError() == OSS_LIMITED /* Win9x */),
+ "Expected CRYPT_E_INVALID_MSG_TYPE or OSS_LIMITED, got %08x\n",
+ GetLastError());
/* The hash is also available. */
size = 0;
ret = CryptMsgGetParam(msg, CMSG_COMPUTED_HASH_PARAM, 0, NULL, &size);
@@ -2911,7 +2920,8 @@ static void test_msg_control(void)
ret = CryptMsgUpdate(msg, msgData, sizeof(msgData), TRUE);
ok(ret, "CryptMsgUpdate failed: %08x\n", GetLastError());
ret = CryptMsgControl(msg, 0, CMSG_CTRL_VERIFY_SIGNATURE, &certInfo);
- ok(ret, "CryptMsgControl failed: %08x\n", GetLastError());
+ ok(ret || broken(GetLastError() == OSS_DATA_ERROR /* Win9x */),
+ "CryptMsgControl failed: %08x\n", GetLastError());
CryptMsgClose(msg);
}
More information about the wine-cvs
mailing list