Juan Lang wrote:
- todo_wine
- {
ok ( ret, "Expected CryptSIPLoad to succeed\n");
/* This error will always be there as native searches for the function DllCanUnloadNow
* in WINTRUST.DLL (in this case). This function is not available in WINTRUST.DLL.
* For now there's no need to implement this is Wine as I doubt any program will rely on
* this last error when the call succeeded.
*/
ok ( GetLastError() == ERROR_PROC_NOT_FOUND,
"Expected ERROR_PROC_NOT_FOUND, got 0x%08x\n", GetLastError());
ok( sdi.pfGet != (pCryptSIPGetSignedDataMsg)0xdeadbeef, "Expected a function pointer to be loaded.\n");
- }
ok ( ret, "Expected CryptSIPLoad to succeed\n");
ok( sdi.pfGet != (pCryptSIPGetSignedDataMsg)0xdeadbeef, "Expected a function pointer to be loaded.\n");
/* The function addresses returned by CryptSIPLoad are actually the addresses of
- crypt32's own functions. A function calling these addresses will end up first
@@ -348,18 +337,8 @@ static void test_SIPLoad(void) sdi.cbSize = sizeof(SIP_DISPATCH_INFO); sdi.pfGet = (pCryptSIPGetSignedDataMsg)0xdeadbeef; ret = CryptSIPLoad(&unknown2, 0, &sdi);
- todo_wine
- {
ok ( ret, "Expected CryptSIPLoad to succeed\n");
/* This call on it's own would have resulted in a ERROR_PROC_NOT_FOUND, but the previous
* call to CryptSIPLoad already loaded wintrust.dll. As this information is cached,
* CryptSIPLoad will not try to search for the already mentioned DllCanUnloadNow.
*/
- }
- ok ( GetLastError() == 0xdeadbeef,
"Expected 0xdeadbeef, got 0x%08x\n", GetLastError());
- todo_wine
ok( sdi.pfGet != (pCryptSIPGetSignedDataMsg)0xdeadbeef, "Expected a function pointer to be loaded.\n");
ok ( ret, "Expected CryptSIPLoad to succeed\n");
ok( sdi.pfGet != (pCryptSIPGetSignedDataMsg)0xdeadbeef, "Expected a function pointer to be loaded.\n");
/* All OK, but other SIP */ SetLastError(0xdeadbeef);
Hi Juan,
Why did you remove all the comments from the test? It does explain (a little bit) how native does get to this specific lasterror. I agree that the lasterror is not very valuable.
I've spent quite some time figuring this stuff out and it seems that (at least to my perception) information gets lost.
Cheers,
Paul.