diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2016-03-15 16:54:45 -0700 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2016-03-15 16:54:45 -0700 |
commit | 0d6e29d8da85e74c1b37801469be3974fd706ba7 (patch) | |
tree | 0a5824f6fef63ea2be36406768e8cfe3e6c2457e /crypto/chacha20poly1305.c | |
parent | 2db18d12ffa4131d398564bfc0fb15f26cdf52e5 (diff) | |
parent | 5da64d0814134dc3542fb314a66dcdf74e8553bd (diff) | |
download | linux-crypto-0d6e29d8da85e74c1b37801469be3974fd706ba7.tar.gz linux-crypto-0d6e29d8da85e74c1b37801469be3974fd706ba7.zip |
Merge tag 'v4.5' into next
Merge with Linux 4.5 to get PROPERTY_ENTRY_INTEGER() that is needed to
fix pxa/raumfeld rotary encoder properties.
Diffstat (limited to '')
-rw-r--r-- | crypto/chacha20poly1305.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/crypto/chacha20poly1305.c b/crypto/chacha20poly1305.c index 99c3cce0..7b6b935c 100644 --- a/crypto/chacha20poly1305.c +++ b/crypto/chacha20poly1305.c @@ -130,6 +130,9 @@ static int chacha_decrypt(struct aead_request *req) struct scatterlist *src, *dst; int err; + if (rctx->cryptlen == 0) + goto skip; + chacha_iv(creq->iv, req, 1); sg_init_table(rctx->src, 2); @@ -150,6 +153,7 @@ static int chacha_decrypt(struct aead_request *req) if (err) return err; +skip: return poly_verify_tag(req); } @@ -415,6 +419,9 @@ static int chacha_encrypt(struct aead_request *req) struct scatterlist *src, *dst; int err; + if (req->cryptlen == 0) + goto skip; + chacha_iv(creq->iv, req, 1); sg_init_table(rctx->src, 2); @@ -435,6 +442,7 @@ static int chacha_encrypt(struct aead_request *req) if (err) return err; +skip: return poly_genkey(req); } |