]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: seqiv - Stop using cryptoff
authorHerbert Xu <herbert@gondor.apana.org.au>
Sat, 23 May 2015 07:41:56 +0000 (15:41 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 25 May 2015 10:41:31 +0000 (18:41 +0800)
commit703ad8baf05f943c5a10ab2836432fb588785a88
tree42dd01017346da9dc7f6410807cad449f82200b2
parent89c4870346ab4240975c74f6ec60990974892196
crypto: seqiv - Stop using cryptoff

The cryptoff parameter was added to facilitate the skipping of
IVs that sit between the AD and the plain/cipher text.  However,
it was never implemented correctly as and we do not handle users
such as IPsec setting cryptoff.  It is simply ignored.

Implementing correctly is in fact more trouble than what it's
worth.

This patch removes the uses of cryptoff by moving the AD forward
to fill the gap left by the IV.  The AD is moved back after the
underlying AEAD processing is finished.

This is in fact beter than the cryptoff solution because it allows
algorithms that use seqniv (i.e., GCM and CCM) to hash the whole
packet as a single piece, while cryptoff meant that there was
guaranteed to be a gap.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/seqiv.c