rsaenh/tests: Add tests for the default encryption chaining mode
Bruno Jesus
00cpxxx at gmail.com
Sun Jun 29 20:56:04 CDT 2014
A few tests related to bug http://bugs.winehq.org/show_bug.cgi?id=36765
-------------- next part --------------
diff --git a/dlls/rsaenh/tests/rsaenh.c b/dlls/rsaenh/tests/rsaenh.c
index babc435..f0b7b19 100644
--- a/dlls/rsaenh/tests/rsaenh.c
+++ b/dlls/rsaenh/tests/rsaenh.c
@@ -700,6 +700,13 @@ static void test_block_cipher_modes(void)
memcpy(abData, plain, sizeof(plain));
+ /* test default chaining mode */
+ dwMode = 0xdeadbeef;
+ dwLen = sizeof(dwMode);
+ result = CryptGetKeyParam(hKey, KP_MODE, (BYTE*)&dwMode, &dwLen, 0);
+ ok(result, "%08x\n", GetLastError());
+ ok(dwMode == CRYPT_MODE_CBC, "Wrong default chaining mode\n");
+
dwMode = CRYPT_MODE_ECB;
result = CryptSetKeyParam(hKey, KP_MODE, (BYTE*)&dwMode, 0);
ok(result, "%08x\n", GetLastError());
@@ -1040,7 +1047,7 @@ static void test_aes(int keylen)
{
HCRYPTKEY hKey;
BOOL result;
- DWORD dwLen;
+ DWORD dwLen, dwMode;
unsigned char pbData[16], enc_data[16], bad_data[16];
int i;
@@ -1068,6 +1075,14 @@ static void test_aes(int keylen)
if (result)
ok(!dwLen, "unexpected salt length %d\n", dwLen);
+ /* test default chaining mode */
+ dwMode = 0xdeadbeef;
+ dwLen = sizeof(dwMode);
+ result = CryptGetKeyParam(hKey, KP_MODE, (BYTE*)&dwMode, &dwLen, 0);
+ ok(result, "%08x\n", GetLastError());
+todo_wine
+ ok(dwMode == CRYPT_MODE_CBC, "Wrong default chaining\n");
+
dwLen = 13;
result = CryptEncrypt(hKey, 0, TRUE, 0, pbData, &dwLen, 16);
ok(result, "%08x\n", GetLastError());
@@ -1276,6 +1291,13 @@ static void test_rc2(void)
result = CryptGetKeyParam(hKey, KP_KEYLEN, (BYTE*)&dwKeyLen, &dwLen, 0);
ok(result, "%08x\n", GetLastError());
+ /* test default chaining mode */
+ dwMode = 0xdeadbeef;
+ dwLen = sizeof(dwMode);
+ result = CryptGetKeyParam(hKey, KP_MODE, (BYTE*)&dwMode, &dwLen, 0);
+ ok(result, "%08x\n", GetLastError());
+ ok(dwMode == CRYPT_MODE_CBC, "Wrong default chaining mode\n");
+
dwMode = CRYPT_MODE_CBC;
result = CryptSetKeyParam(hKey, KP_MODE, (BYTE*)&dwMode, 0);
ok(result, "%08x\n", GetLastError());
More information about the wine-patches
mailing list