crypto: xcbc - use crypto_grab_cipher() and simplify error paths
authorEric Biggers <ebiggers@google.com>
Fri, 3 Jan 2020 03:59:04 +0000 (19:59 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 9 Jan 2020 03:30:56 +0000 (11:30 +0800)
commit1e212a6a562f781f00cba6c7ece93817857e0f32
treeb65531f3e0219833be099626e895f4d3ca97248d
parent3b4e73d8ca810f63af05f367c576f0b33920657b
crypto: xcbc - use crypto_grab_cipher() and simplify error paths

Make the xcbc template use the new function crypto_grab_cipher() to
initialize its cipher spawn.

This is needed to make all spawns be initialized in a consistent way.

This required making xcbc_create() allocate the instance directly rather
than use shash_alloc_instance().

Also simplify the error handling by taking advantage of crypto_drop_*()
now accepting (as a no-op) spawns that haven't been initialized yet, and
by taking advantage of crypto_grab_*() now handling ERR_PTR() names.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/xcbc.c