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

Make the cmac 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 cmac_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/cmac.c