From 054d14887ef8fa1cbadef4ed2ea28213f25f5d25 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Fri, 6 May 2022 18:15:31 +0900 Subject: [PATCH] scd: Add workaround for ECC attribute on Yubikey. * scd/app-openpgp.c (parse_algorithm_attribute): Skip possibly bogus octet in a key attribute. -- GnuPG-bug-id: 5963 Signed-off-by: NIIBE Yutaka --- scd/app-openpgp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index d4439e7c3..7dc98aa75 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -6226,7 +6226,8 @@ parse_algorithm_attribute (app_t app, int keyno) app->app_local->keyattr[keyno].ecc.algo = *buffer; app->app_local->keyattr[keyno].ecc.flags = 0; - if (buffer[buflen-1] == 0x00 || buffer[buflen-1] == 0xff) + if (APP_CARD(app)->cardtype == CARDTYPE_YUBIKEY + || buffer[buflen-1] == 0x00 || buffer[buflen-1] == 0xff) { /* Found "pubkey required"-byte for private key template. */ oidlen--; if (buffer[buflen-1] == 0xff)