dssenh: Return NTE_BAD_KEYSET when key cannot be opened.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=30244
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cf770571bf)
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
This commit is contained in:
Rémi Bernon 2021-05-25 17:37:11 +02:00 committed by Michael Stefaniuc
parent 239bb6cc55
commit e83cd0e70f
2 changed files with 3 additions and 2 deletions

View File

@ -286,7 +286,8 @@ BOOL WINAPI CPAcquireContext( HCRYPTPROV *ret_prov, LPSTR container, DWORD flags
{
case 0:
case 0 | CRYPT_MACHINE_KEYSET:
ret = read_key_container( name, flags );
if (!(ret = read_key_container( name, flags )))
SetLastError( NTE_BAD_KEYSET );
break;
case CRYPT_NEWKEYSET:

View File

@ -75,7 +75,7 @@ static void test_acquire_context(void)
result = CryptAcquireContextA(&hProv, NULL, NULL, PROV_DSS, 0);
if (!result)
{
todo_wine ok(GetLastError() == NTE_BAD_KEYSET, "Expected NTE_BAD_KEYSET, got %08x\n", GetLastError());
ok(GetLastError() == NTE_BAD_KEYSET, "Expected NTE_BAD_KEYSET, got %08x\n", GetLastError());
SetLastError(0xdeadbeef);
result = CryptAcquireContextA(&hProv, NULL, NULL, PROV_DSS, CRYPT_NEWKEYSET);
}