提交 2d74d405 编写于 作者: S Sebastian Siewior 提交者: Herbert Xu

[CRYPTO] s390-aes: Use correct encrypt/decrypt function in fallback

crypto_blkcipher_decrypt is wrong because it does not care about
the IV.
Signed-off-by: NSebastian Siewior <sebastian@breakpoint.cc>
Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
上级 fdc520aa
...@@ -234,13 +234,10 @@ static int fallback_blk_dec(struct blkcipher_desc *desc, ...@@ -234,13 +234,10 @@ static int fallback_blk_dec(struct blkcipher_desc *desc,
struct crypto_blkcipher *tfm; struct crypto_blkcipher *tfm;
struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(desc->tfm); struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(desc->tfm);
memcpy(crypto_blkcipher_crt(sctx->fallback.blk)->iv, desc->info,
AES_BLOCK_SIZE);
tfm = desc->tfm; tfm = desc->tfm;
desc->tfm = sctx->fallback.blk; desc->tfm = sctx->fallback.blk;
ret = crypto_blkcipher_decrypt(desc, dst, src, nbytes); ret = crypto_blkcipher_decrypt_iv(desc, dst, src, nbytes);
desc->tfm = tfm; desc->tfm = tfm;
return ret; return ret;
...@@ -254,13 +251,10 @@ static int fallback_blk_enc(struct blkcipher_desc *desc, ...@@ -254,13 +251,10 @@ static int fallback_blk_enc(struct blkcipher_desc *desc,
struct crypto_blkcipher *tfm; struct crypto_blkcipher *tfm;
struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(desc->tfm); struct s390_aes_ctx *sctx = crypto_blkcipher_ctx(desc->tfm);
memcpy(crypto_blkcipher_crt(sctx->fallback.blk)->iv, desc->info,
AES_BLOCK_SIZE);
tfm = desc->tfm; tfm = desc->tfm;
desc->tfm = sctx->fallback.blk; desc->tfm = sctx->fallback.blk;
ret = crypto_blkcipher_encrypt(desc, dst, src, nbytes); ret = crypto_blkcipher_encrypt_iv(desc, dst, src, nbytes);
desc->tfm = tfm; desc->tfm = tfm;
return ret; return ret;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册