crypto: api - Fix race condition in larval lookup
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 8 Sep 2013 04:33:50 +0000 (14:33 +1000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Sep 2013 00:15:30 +0000 (17:15 -0700)
commitd2fb5fcd0e84f7e23467ddfb80280c00798aee4c
tree69a54676815476c7dba0b1037d1026af3d965eb1
parent8283dfa4d7864d1a1cbafbe0b89d83fdbf6204ae
crypto: api - Fix race condition in larval lookup

commit 77dbd7a95e4a4f15264c333a9e9ab97ee27dc2aa upstream.

crypto_larval_lookup should only return a larval if it created one.
Any larval created by another entity must be processed through
crypto_larval_wait before being returned.

Otherwise this will lead to a larval being killed twice, which
will most likely lead to a crash.

Reported-by: Kees Cook <keescook@chromium.org>
Tested-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
crypto/api.c