diff options
author | Robert Baronescu | 2017-10-10 13:22:00 +0300 |
---|---|---|
committer | Herbert Xu | 2017-11-03 21:50:47 +0800 |
commit | 7aacbfcb331ceff3ac43096d563a1f93ed46e35e (patch) | |
tree | e9f361deefc50f460b2119afaf055ed74562eb7d /crypto | |
parent | 59517226a35a4041e41d114d085846ac94ebfbf2 (diff) |
crypto: tcrypt - fix buffer lengths in test_aead_speed()
Fix the way the length of the buffers used for
encryption / decryption are computed.
For e.g. in case of encryption, input buffer does not contain
an authentication tag.
Signed-off-by: Robert Baronescu <robert.baronescu@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/tcrypt.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c index 28bffa6f0292..65d191b27ecc 100644 --- a/crypto/tcrypt.c +++ b/crypto/tcrypt.c @@ -340,7 +340,7 @@ static void test_aead_speed(const char *algo, int enc, unsigned int secs, } sg_init_aead(sg, xbuf, - *b_size + (enc ? authsize : 0)); + *b_size + (enc ? 0 : authsize)); sg_init_aead(sgout, xoutbuf, *b_size + (enc ? authsize : 0)); @@ -348,7 +348,9 @@ static void test_aead_speed(const char *algo, int enc, unsigned int secs, sg_set_buf(&sg[0], assoc, aad_size); sg_set_buf(&sgout[0], assoc, aad_size); - aead_request_set_crypt(req, sg, sgout, *b_size, iv); + aead_request_set_crypt(req, sg, sgout, + *b_size + (enc ? 0 : authsize), + iv); aead_request_set_ad(req, aad_size); if (secs) |