tests: Module test for hmac_sha256_kdf() maximum output length
Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
0d2a7bad0f
commit
6f5b284b32
1 changed files with 24 additions and 0 deletions
|
@ -1503,6 +1503,7 @@ static int test_sha256(void)
|
||||||
const u8 *addr[2];
|
const u8 *addr[2];
|
||||||
size_t len[2];
|
size_t len[2];
|
||||||
int errors = 0;
|
int errors = 0;
|
||||||
|
u8 *key;
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(tests); i++) {
|
for (i = 0; i < ARRAY_SIZE(tests); i++) {
|
||||||
wpa_printf(MSG_INFO, "SHA256 test case %d:", i + 1);
|
wpa_printf(MSG_INFO, "SHA256 test case %d:", i + 1);
|
||||||
|
@ -1573,6 +1574,29 @@ static int test_sha256(void)
|
||||||
hash, sizeof(hash));
|
hash, sizeof(hash));
|
||||||
/* TODO: add proper test case for this */
|
/* TODO: add proper test case for this */
|
||||||
|
|
||||||
|
key = os_malloc(8161);
|
||||||
|
if (key) {
|
||||||
|
int res;
|
||||||
|
|
||||||
|
res = hmac_sha256_kdf((u8 *) "secret", 6, "label",
|
||||||
|
(u8 *) "seed", 4, key, 8160);
|
||||||
|
if (res) {
|
||||||
|
wpa_printf(MSG_INFO,
|
||||||
|
"Unexpected hmac_sha256_kdf(outlen=8160) failure");
|
||||||
|
errors++;
|
||||||
|
}
|
||||||
|
|
||||||
|
res = hmac_sha256_kdf((u8 *) "secret", 6, "label",
|
||||||
|
(u8 *) "seed", 4, key, 8161);
|
||||||
|
if (res == 0) {
|
||||||
|
wpa_printf(MSG_INFO,
|
||||||
|
"Unexpected hmac_sha256_kdf(outlen=8161) success");
|
||||||
|
errors++;
|
||||||
|
}
|
||||||
|
|
||||||
|
os_free(key);
|
||||||
|
}
|
||||||
|
|
||||||
if (!errors)
|
if (!errors)
|
||||||
wpa_printf(MSG_INFO, "SHA256 test cases passed");
|
wpa_printf(MSG_INFO, "SHA256 test cases passed");
|
||||||
return errors;
|
return errors;
|
||||||
|
|
Loading…
Reference in a new issue