If `keydir` is not present, we need to build a PKCS11 URI
from just the key name. In this case, we *do* need 'pkcs11:'

Fixes: ece85cc020 rsa: use pkcs11 uri as defined in rfc7512

Signed-off-by: Csókás Bence <csokas.be...@prolan.hu>
---
 lib/rsa/rsa-sign.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/rsa/rsa-sign.c b/lib/rsa/rsa-sign.c
index 858ad92a6f..fd587d8deb 100644
--- a/lib/rsa/rsa-sign.c
+++ b/lib/rsa/rsa-sign.c
@@ -124,7 +124,7 @@ static int rsa_engine_get_pub_key(const char *keydir, const 
char *name,
                                         keydir, name);
                else
                        snprintf(key_id, sizeof(key_id),
-                                "object=%s;type=public",
+                                "pkcs11:object=%s;type=public",
                                 name);
        } else if (engine_id) {
                if (keydir)
@@ -246,7 +246,7 @@ static int rsa_engine_get_priv_key(const char *keydir, 
const char *name,
                                         keydir, name);
                else
                        snprintf(key_id, sizeof(key_id),
-                                "object=%s;type=private",
+                                "pkcs11:object=%s;type=private",
                                 name);
        } else if (engine_id) {
                if (keydir && name)
-- 
2.25.1


Reply via email to