]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: mcryptd - Check mcryptd algorithm compatibility
authortim <tim.c.chen@linux.intel.com>
Mon, 5 Dec 2016 19:46:31 +0000 (11:46 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 7 Dec 2016 11:55:37 +0000 (19:55 +0800)
commitcaaf202c8c84fe6b667246a521bd993195fbf425
tree2cc24a02c43a2d4d6382916f4614b118b82d27b4
parent0990be4ae7158ce9c10b66f7bbfb362613a97137
crypto: mcryptd - Check mcryptd algorithm compatibility

Algorithms not compatible with mcryptd could be spawned by mcryptd
with a direct crypto_alloc_tfm invocation using a "mcryptd(alg)" name
construct.  This causes mcryptd to crash the kernel if an arbitrary
"alg" is incompatible and not intended to be used with mcryptd.  It is
an issue if AF_ALG tries to spawn mcryptd(alg) to expose it externally.
But such algorithms must be used internally and not be exposed.

We added a check to enforce that only internal algorithms are allowed
with mcryptd at the time mcryptd is spawning an algorithm.

Link: http://marc.info/?l=linux-crypto-vger&m=148063683310477&w=2
Cc: stable@vger.kernel.org
Reported-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/mcryptd.c