58{
59 static WCHAR DummyDllW[] = {
'd',
'e',
'a',
'd',
'b',
'e',
'e',
'f',
'.',
'd',
'l',
'l',0 };
60 static WCHAR DummyFunctionW[] = {
'd',
'u',
'm',
'm',
'y',
'f',
'u',
'n',
'c',
't',
'i',
'o',
'n',0 };
61 GUID ActionID = { 0xdeadbeef, 0xdead, 0xbeef, { 0xde,0xad,0xbe,0xef,0xde,0xad,0xbe,0xef }};
66
67 if (!pWintrustAddActionID || !pWintrustRemoveActionID)
68 {
69 win_skip(
"WintrustAddActionID and/or WintrustRemoveActionID are not available\n");
70 return;
71 }
72
73
76 ok (!
ret,
"Expected WintrustAddActionID to fail.\n");
79 "Expected ERROR_INVALID_PARAMETER(W2K3) or 0xdeadbeef(Win98/NT4/W2K), got %u.\n",
GetLastError());
80
81
83 ret = pWintrustAddActionID(&ActionID, 0,
NULL);
84 ok (!
ret,
"Expected WintrustAddActionID to fail.\n");
87 "Expected ERROR_INVALID_PARAMETER(W2K3) or 0xdeadbeef(Win98/NT4/W2K), got %u.\n",
GetLastError());
88
89
92 ret = pWintrustAddActionID(&ActionID, 0, &ActionIDFunctions);
93 ok (!
ret,
"Expected WintrustAddActionID to fail.\n");
96 "Expected ERROR_INVALID_PARAMETER(W2K3) or 0xdeadbeef(Win98/NT4/W2K), got %u.\n",
GetLastError());
97
98
102 ret = pWintrustAddActionID(&ActionID, 0, &ActionIDFunctions);
103 ok (
ret,
"Expected WintrustAddActionID to succeed.\n");
105 "Expected ERROR_INVALID_PARAMETER, got %u.\n",
GetLastError());
106
107
108
109
121 ret = pWintrustAddActionID(&ActionID, 0, &ActionIDFunctions);
122 ok (
ret,
"Expected WintrustAddActionID to succeed.\n");
125 "Expected ERROR_INVALID_PARAMETER or ERROR_ACCESS_DENIED, got %u.\n",
127
128
129
130
142 ret = pWintrustAddActionID(&ActionID, 0, &ActionIDFunctions);
143 ok (
ret,
"Expected WintrustAddActionID to succeed.\n");
145 "Expected 0xdeadbeef or ERROR_ACCESS_DENIED, got %u.\n",
147
149 ret = pWintrustRemoveActionID(&ActionID);
152
153
155 ret = pWintrustRemoveActionID(
NULL);
156 ok (
ret,
"Expected WintrustRemoveActionID to succeed.\n");
158 "Expected ERROR_INVALID_PARAMETER, got %u.\n",
GetLastError());
159
160
162 ret = pWintrustRemoveActionID(&ActionID);
163 ok (
ret,
"Expected WintrustRemoveActionID to succeed.\n");
166}
#define ERROR_ACCESS_DENIED
CRYPT_TRUST_REG_ENTRY sCertificateProvider
CRYPT_TRUST_REG_ENTRY sInitProvider
CRYPT_TRUST_REG_ENTRY sTestPolicyProvider
CRYPT_TRUST_REG_ENTRY sCertificatePolicyProvider
CRYPT_TRUST_REG_ENTRY sFinalPolicyProvider
CRYPT_TRUST_REG_ENTRY sCleanupProvider
CRYPT_TRUST_REG_ENTRY sObjectProvider
CRYPT_TRUST_REG_ENTRY sSignatureProvider
struct _CRYPT_REGISTER_ACTIONID CRYPT_REGISTER_ACTIONID
struct _CRYPT_TRUST_REG_ENTRY CRYPT_TRUST_REG_ENTRY