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
822d2d6ac9
commit
b0b2161ce4
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=362123
@ -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…
Reference in New Issue
Block a user