[CRYPTO] cipher: Added block cipher type
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 21 Aug 2006 14:07:53 +0000 (00:07 +1000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 21 Sep 2006 01:41:52 +0000 (11:41 +1000)
commit5cde0af2a9825dd1edaca233bd9590566579ef21
treee396297e3a2436d4a6ac77de63f95f2328c7a0fe
parent5c64097aa0f6dc4f27718ef47ca9a12538d62860
[CRYPTO] cipher: Added block cipher type

This patch adds the new type of block ciphers.  Unlike current cipher
algorithms which operate on a single block at a time, block ciphers
operate on an arbitrarily long linear area of data.  As it is block-based,
it will skip any data remaining at the end which cannot form a block.

The block cipher has one major difference when compared to the existing
block cipher implementation.  The sg walking is now performed by the
algorithm rather than the cipher mid-layer.  This is needed for drivers
that directly support sg lists.  It also improves performance for all
algorithms as it reduces the total number of indirect calls by one.

In future the existing cipher algorithm will be converted to only have
a single-block interface.  This will be done after all existing users
have switched over to the new block cipher type.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/Kconfig
crypto/Makefile
crypto/blkcipher.c [new file with mode: 0644]
include/crypto/algapi.h
include/linux/crypto.h