From 029716d646d1cb5dd3c80d73f129c19e6c14388e Mon Sep 17 00:00:00 2001 From: Amine Khaldi Date: Sat, 27 Sep 2014 00:03:58 +0000 Subject: [PATCH] [BCRYPT_WINETEST] * Sync with Wine 1.7.27. CORE-8540 svn path=/trunk/; revision=64320 --- rostests/winetests/bcrypt/bcrypt.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/rostests/winetests/bcrypt/bcrypt.c b/rostests/winetests/bcrypt/bcrypt.c index 288e745d4be..9e659d69b79 100644 --- a/rostests/winetests/bcrypt/bcrypt.c +++ b/rostests/winetests/bcrypt/bcrypt.c @@ -27,6 +27,7 @@ static NTSTATUS (WINAPI *pBCryptGenRandom)(BCRYPT_ALG_HANDLE hAlgorithm, PUCHAR pbBuffer, ULONG cbBuffer, ULONG dwFlags); +static NTSTATUS (WINAPI *pBCryptGetFipsAlgorithmMode)(BOOLEAN *enabled); static BOOL Init(void) { @@ -38,6 +39,7 @@ static BOOL Init(void) } pBCryptGenRandom = (void *)GetProcAddress(hbcrypt, "BCryptGenRandom"); + pBCryptGetFipsAlgorithmMode = (void *)GetProcAddress(hbcrypt, "BCryptGetFipsAlgorithmMode"); return TRUE; } @@ -78,10 +80,29 @@ static void test_BCryptGenRandom(void) ok(memcmp(buffer, buffer + 8, 8), "Expected a random number, got 0\n"); } +static void test_BCryptGetFipsAlgorithmMode(void) +{ + NTSTATUS ret; + BOOLEAN enabled; + + if (!pBCryptGetFipsAlgorithmMode) + { + win_skip("BCryptGetFipsAlgorithmMode is not available\n"); + return; + } + + ret = pBCryptGetFipsAlgorithmMode(&enabled); + ok(ret == STATUS_SUCCESS, "Expected STATUS_SUCCESS, got 0x%x\n", ret); + + ret = pBCryptGetFipsAlgorithmMode(NULL); + ok(ret == STATUS_INVALID_PARAMETER, "Expected STATUS_INVALID_PARAMETER, got 0x%x\n", ret); +} + START_TEST(bcrypt) { if (!Init()) return; test_BCryptGenRandom(); + test_BCryptGetFipsAlgorithmMode(); }