Author: jhb
Date: Tue Sep  8 23:19:59 2020
New Revision: 365482
URL: https://svnweb.freebsd.org/changeset/base/365482

Log:
  MFC 362123: 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.

Modified:
  stable/12/sys/crypto/aesni/aesni_ccm.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/crypto/aesni/aesni_ccm.c
==============================================================================
--- stable/12/sys/crypto/aesni/aesni_ccm.c      Tue Sep  8 22:59:43 2020        
(r365481)
+++ stable/12/sys/crypto/aesni/aesni_ccm.c      Tue Sep  8 23:19:59 2020        
(r365482)
@@ -155,7 +155,7 @@ cbc_mac_start(const unsigned char *auth_data, size_t a
                 * 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);
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to