HMAC-BLAKE2b: avoid coverity complaints about accessing x_key out of range
This commit is contained in:
@@ -534,7 +534,9 @@ int wc_Blake2bHmacInit(Blake2b* b2b, const byte* key, size_t key_len)
|
||||
ret = wc_Blake2bFinal(b2b, x_key, 0);
|
||||
} else {
|
||||
XMEMCPY(x_key, key, key_len);
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2B_BLOCKBYTES - key_len);
|
||||
if (key_len < BLAKE2B_BLOCKBYTES) {
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2B_BLOCKBYTES - key_len);
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0) {
|
||||
@@ -581,7 +583,9 @@ int wc_Blake2bHmacFinal(Blake2b* b2b, const byte* key, size_t key_len,
|
||||
ret = wc_Blake2bFinal(b2b, x_key, 0);
|
||||
} else {
|
||||
XMEMCPY(x_key, key, key_len);
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2B_BLOCKBYTES - key_len);
|
||||
if (key_len < BLAKE2B_BLOCKBYTES) {
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2B_BLOCKBYTES - key_len);
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0) {
|
||||
|
||||
@@ -528,7 +528,9 @@ int wc_Blake2sHmacInit(Blake2s* b2s, const byte* key, size_t key_len)
|
||||
ret = wc_Blake2sFinal(b2s, x_key, 0);
|
||||
} else {
|
||||
XMEMCPY(x_key, key, key_len);
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2S_BLOCKBYTES - key_len);
|
||||
if (key_len < BLAKE2S_BLOCKBYTES) {
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2S_BLOCKBYTES - key_len);
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0) {
|
||||
@@ -575,7 +577,9 @@ int wc_Blake2sHmacFinal(Blake2s* b2s, const byte* key, size_t key_len,
|
||||
ret = wc_Blake2sFinal(b2s, x_key, 0);
|
||||
} else {
|
||||
XMEMCPY(x_key, key, key_len);
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2S_BLOCKBYTES - key_len);
|
||||
if (key_len < BLAKE2S_BLOCKBYTES) {
|
||||
XMEMSET(x_key + key_len, 0, BLAKE2S_BLOCKBYTES - key_len);
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0) {
|
||||
|
||||
Reference in New Issue
Block a user