integrity: include keyring name for unknown key request
authorBruno Meneguele <bmeneg@redhat.com>
Fri, 4 Sep 2020 19:41:00 +0000 (16:41 -0300)
committerMimi Zohar <zohar@linux.ibm.com>
Thu, 10 Sep 2020 00:05:28 +0000 (20:05 -0400)
Depending on the IMA policy rule a key may be searched for in multiple
keyrings (e.g. .ima and .platform) and possibly not found.  This patch
improves feedback by including the keyring "description" (name) in the
error message.

Signed-off-by: Bruno Meneguele <bmeneg@redhat.com>
[zohar@linux.ibm.com: updated commit message]
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
security/integrity/digsig_asymmetric.c

index cfa4127..14de98e 100644 (file)
@@ -55,8 +55,14 @@ static struct key *request_asymmetric_key(struct key *keyring, uint32_t keyid)
        }
 
        if (IS_ERR(key)) {
-               pr_err_ratelimited("Request for unknown key '%s' err %ld\n",
-                                  name, PTR_ERR(key));
+               if (keyring)
+                       pr_err_ratelimited("Request for unknown key '%s' in '%s' keyring. err %ld\n",
+                                          name, keyring->description,
+                                          PTR_ERR(key));
+               else
+                       pr_err_ratelimited("Request for unknown key '%s' err %ld\n",
+                                          name, PTR_ERR(key));
+
                switch (PTR_ERR(key)) {
                        /* Hide some search errors */
                case -EACCES: