]> git.ipfire.org Git - thirdparty/linux.git/commit
KEYS: prevent NULL pointer dereference in find_asymmetric_key()
authorRoman Smirnov <r.smirnov@omp.ru>
Tue, 17 Sep 2024 15:54:53 +0000 (18:54 +0300)
committerJarkko Sakkinen <jarkko@kernel.org>
Fri, 20 Sep 2024 16:49:49 +0000 (19:49 +0300)
commit70fd1966c93bf3bfe3fe6d753eb3d83a76597eef
treee6699a352b086e3ec2d27b79947f4fb02076f88f
parent652bfcb76fe689f4d85b6f3688025a87fb94f9a1
KEYS: prevent NULL pointer dereference in find_asymmetric_key()

In find_asymmetric_key(), if all NULLs are passed in the id_{0,1,2}
arguments, the kernel will first emit WARN but then have an oops
because id_2 gets dereferenced anyway.

Add the missing id_2 check and move WARN_ON() to the final else branch
to avoid duplicate NULL checks.

Found by Linux Verification Center (linuxtesting.org) with Svace static
analysis tool.

Cc: stable@vger.kernel.org # v5.17+
Fixes: 7d30198ee24f ("keys: X.509 public key issuer lookup without AKID")
Suggested-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Signed-off-by: Roman Smirnov <r.smirnov@omp.ru>
Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
crypto/asymmetric_keys/asymmetric_type.c