diff --git a/g10/call-agent.c b/g10/call-agent.c index 9a3b43d9e..a553ef67a 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -531,7 +531,8 @@ learn_status_cb (void *opaque, const char *line) xfree (parm->serialno); parm->serialno = store_serialno (line); parm->is_v2 = (strlen (parm->serialno) >= 16 - && xtoi_2 (parm->serialno+12) >= 2 ); + && (xtoi_2 (parm->serialno+12) == 0 /* Yubikey */ + || xtoi_2 (parm->serialno+12) >= 2)); } else if (keywordlen == 7 && !memcmp (keyword, "APPTYPE", keywordlen)) { diff --git a/tools/card-call-scd.c b/tools/card-call-scd.c index bb739e684..0bb1eb538 100644 --- a/tools/card-call-scd.c +++ b/tools/card-call-scd.c @@ -823,7 +823,8 @@ learn_status_cb (void *opaque, const char *line) xfree (parm->serialno); parm->serialno = store_serialno (line); parm->is_v2 = (strlen (parm->serialno) >= 16 - && xtoi_2 (parm->serialno+12) >= 2 ); + && (xtoi_2 (parm->serialno+12) == 0 /* Yubikey */ + || xtoi_2 (parm->serialno+12) >= 2)); } else if (!memcmp (keyword, "CARDTYPE", keywordlen)) {