]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: chainiv - Offer normal cipher functionality without RNG
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 21 Jun 2015 11:11:46 +0000 (19:11 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 22 Jun 2015 07:49:28 +0000 (15:49 +0800)
commit4a363c1009cf9d31d0a5534b7ad8f547ef2f794e
tree23976bbcaf26202ea1082567bd4d402e7ba1c3eb
parentd56c608c0088a0cf1e9adf221763f047ac1e7181
crypto: chainiv - Offer normal cipher functionality without RNG

The RNG may not be available during early boot, e.g., the relevant
modules may not be included in the initramfs.  As the RNG Is only
needed for IPsec, we should not let this prevent use of ciphers
without IV generators, e.g., for disk encryption.

This patch postpones the RNG allocation to the init function so
that one failure during early boot does not make the RNG unavailable
for all subsequent users of the same cipher.

More importantly, it lets the cipher live even if RNG allocation
fails.  Of course we no longer offer IV generation and which will
fail with an error if invoked.  But all other cipher capabilities
will function as usual.

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