Module: wine Branch: master Commit: e55dc350209e15ff9d8c05a12be01c93dbd3e318 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e55dc350209e15ff9d8c05a12b...
Author: Bruno Jesus 00cpxxx@gmail.com Date: Wed Jul 23 00:47:53 2014 -0300
rsaenh: Change the default AES chaining mode to CBC.
---
dlls/rsaenh/rsaenh.c | 2 +- dlls/rsaenh/tests/rsaenh.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/dlls/rsaenh/rsaenh.c b/dlls/rsaenh/rsaenh.c index b5ab7a9..dd49618 100644 --- a/dlls/rsaenh/rsaenh.c +++ b/dlls/rsaenh/rsaenh.c @@ -900,7 +900,7 @@ static HCRYPTKEY new_key(HCRYPTPROV hProv, ALG_ID aiAlgid, DWORD dwFlags, CRYPTK case CALG_AES_192: case CALG_AES_256: pCryptKey->dwBlockLen = 16; - pCryptKey->dwMode = CRYPT_MODE_ECB; + pCryptKey->dwMode = CRYPT_MODE_CBC; break;
case CALG_RSA_KEYX: diff --git a/dlls/rsaenh/tests/rsaenh.c b/dlls/rsaenh/tests/rsaenh.c index 3e1dc59..dad6a27 100644 --- a/dlls/rsaenh/tests/rsaenh.c +++ b/dlls/rsaenh/tests/rsaenh.c @@ -1140,7 +1140,9 @@ static void test_aes(int keylen) result = CryptEncrypt(hKey, 0, TRUE, 0, pbData, &dwLen, sizeof(pbData)); ok(result, "Expected OK, got last error %d\n", GetLastError()); ok(dwLen == 48, "Expected dwLen 48, got %d\n", dwLen); -todo_wine + if(i == 0) todo_wine + ok(!memcmp(aes_cbc_enc[i], pbData, dwLen), "Expected equal data sequences\n"); + else ok(!memcmp(aes_cbc_enc[i], pbData, dwLen), "Expected equal data sequences\n");
result = CryptDecrypt(hKey, 0, TRUE, 0, pbData, &dwLen); @@ -1161,7 +1163,6 @@ todo_wine 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; @@ -3529,12 +3530,9 @@ static void test_key_derivation(const char *prov)
memset(wine_broken, 0, sizeof(wine_broken)); wine_broken[8].mode = wine_broken[8].blen = 1; - wine_broken[9].mode = wine_broken[9].exp_data = 1; - wine_broken[10].mode = 1; + wine_broken[9].exp_data = 1; wine_broken[20] = wine_broken[32] = wine_broken[44] = wine_broken[8]; wine_broken[21] = wine_broken[33] = wine_broken[45] = wine_broken[9]; - wine_broken[22] = wine_broken[23] = wine_broken[34] = wine_broken[35] = wine_broken[10]; - wine_broken[46] = wine_broken[47] = wine_broken[11] = wine_broken[10];
for (i=0; i<sizeof(tests)/sizeof(tests[0]); i++) {