sys/crypto/ocb: fix max data condition
This commit is contained in:
parent
d9ca9f3ef2
commit
607aa6fbcd
@ -319,8 +319,7 @@ int32_t cipher_decrypt_ocb(cipher_t *cipher, uint8_t *auth_data,
|
|||||||
uint8_t tag_len, uint8_t *nonce, size_t nonce_len,
|
uint8_t tag_len, uint8_t *nonce, size_t nonce_len,
|
||||||
uint8_t *input, size_t input_len, uint8_t *output)
|
uint8_t *input, size_t input_len, uint8_t *output)
|
||||||
{
|
{
|
||||||
|
if (input_len > (uint32_t)(INT32_MAX + tag_len)) {
|
||||||
if (input_len - tag_len > INT32_MAX) {
|
|
||||||
// We would not be able to return the proper output length for data this long
|
// We would not be able to return the proper output length for data this long
|
||||||
return OCB_ERR_INVALID_DATA_LENGTH;
|
return OCB_ERR_INVALID_DATA_LENGTH;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user