rsa: Return immediately if required-key verification fails
authorDaniele Alessandrelli <daniele.alessandrelli@gmail.com>
Wed, 18 Sep 2019 14:04:54 +0000 (16:04 +0200)
committerSimon Glass <sjg@chromium.org>
Tue, 15 Oct 2019 14:40:03 +0000 (08:40 -0600)
Currently, if image verification with a required key fails, rsa_verify()
code tries to find another key to verify the FIT image. This however, is
not the intended behavior as the documentation says that required keys
"must be verified for the image / configuration to be considered valid".

This patch fixes the issue by making rsa_verify() return immediately if
the verification of a required key fails.

Signed-off-by: Daniele Alessandrelli <daniele.alessandrelli@gmail.com>
lib/rsa/rsa-verify.c

index 287fcc4..82dc513 100644 (file)
@@ -437,8 +437,7 @@ int rsa_verify(struct image_sign_info *info,
        if (info->required_keynode != -1) {
                ret = rsa_verify_with_keynode(info, hash, sig, sig_len,
                        info->required_keynode);
-               if (!ret)
-                       return ret;
+               return ret;
        }
 
        /* Look for a key that matches our hint */