Fix AES-CCM requests with an AAD size smaller than a single block.
The amount to copy for the first block is the minimum of the size of the AAD region or the remaining space in the first block. Reported by: cryptocheck -z MFC after: 2 weeks Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D25140
This commit is contained in:
parent
bb2575e27d
commit
8abd951159
@ -155,7 +155,7 @@ cbc_mac_start(const unsigned char *auth_data, size_t auth_len,
|
||||
* already partially filled, by auth_amt, so we need
|
||||
* to handle that. The last block needs to be zero padded.
|
||||
*/
|
||||
copy_amt = MIN(auth_len - auth_amt,
|
||||
copy_amt = MIN(auth_len,
|
||||
sizeof(staging_block) - auth_amt);
|
||||
byte_ptr = (uint8_t*)&staging_block;
|
||||
bcopy(auth_ptr, &byte_ptr[auth_amt], copy_amt);
|
||||
|
Loading…
x
Reference in New Issue
Block a user