diff options
author | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2018-12-20 15:35:07 +0100 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2018-12-20 15:35:07 +0100 |
commit | 6e603ea6e028001e3d56dc56822cb9c1cf2908f9 (patch) | |
tree | ecde2ff65bcb3ef7f0379d9ccc5eb30d6033f8f3 /crypto/ccm.c | |
parent | 50d4fb1dc129955ab571c1dd7bf14cd07cc5984d (diff) | |
parent | 7271e588c712517a184f75744b6e94d05c8251a4 (diff) | |
download | linux-crypto-6e603ea6e028001e3d56dc56822cb9c1cf2908f9.tar.gz linux-crypto-6e603ea6e028001e3d56dc56822cb9c1cf2908f9.zip |
Merge tag 'v4.20-rc7' of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux into fbdev-for-next
Linux 4.20-rc7
Sync with upstream (which now contains fbdev-v4.20 changes) to
prepare a base for fbdev-v4.21 changes.
Diffstat (limited to 'crypto/ccm.c')
-rw-r--r-- | crypto/ccm.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/crypto/ccm.c b/crypto/ccm.c index 0a083342..b242fd0d 100644 --- a/crypto/ccm.c +++ b/crypto/ccm.c @@ -50,7 +50,10 @@ struct crypto_ccm_req_priv_ctx { u32 flags; struct scatterlist src[3]; struct scatterlist dst[3]; - struct skcipher_request skreq; + union { + struct ahash_request ahreq; + struct skcipher_request skreq; + }; }; struct cbcmac_tfm_ctx { @@ -181,7 +184,7 @@ static int crypto_ccm_auth(struct aead_request *req, struct scatterlist *plain, struct crypto_ccm_req_priv_ctx *pctx = crypto_ccm_reqctx(req); struct crypto_aead *aead = crypto_aead_reqtfm(req); struct crypto_ccm_ctx *ctx = crypto_aead_ctx(aead); - AHASH_REQUEST_ON_STACK(ahreq, ctx->mac); + struct ahash_request *ahreq = &pctx->ahreq; unsigned int assoclen = req->assoclen; struct scatterlist sg[3]; u8 *odata = pctx->odata; @@ -427,7 +430,7 @@ static int crypto_ccm_init_tfm(struct crypto_aead *tfm) crypto_aead_set_reqsize( tfm, align + sizeof(struct crypto_ccm_req_priv_ctx) + - crypto_skcipher_reqsize(ctr)); + max(crypto_ahash_reqsize(mac), crypto_skcipher_reqsize(ctr))); return 0; |