mirror of
git://git.gnupg.org/gnupg.git
synced 2025-02-07 17:33:02 +01:00
scd: Fix for EdDSA.
* scd/app-openpgp.c (get_algo_byte): It catches 22. (store_fpr): It's MPI usually, but it's opaque bytes for EdDSA.
This commit is contained in:
parent
f4ed04fca8
commit
c50c11d575
@ -752,7 +752,7 @@ get_algo_byte (key_type_t key_type)
|
|||||||
else if (key_type == KEY_TYPE_ECDH)
|
else if (key_type == KEY_TYPE_ECDH)
|
||||||
return 18;
|
return 18;
|
||||||
else if (key_type == KEY_TYPE_EDDSA)
|
else if (key_type == KEY_TYPE_EDDSA)
|
||||||
return 105; /* (experimental) */
|
return 22;
|
||||||
else
|
else
|
||||||
return 1; /* RSA */
|
return 1; /* RSA */
|
||||||
}
|
}
|
||||||
@ -790,8 +790,10 @@ store_fpr (app_t app, int keynumber, u32 timestamp,
|
|||||||
{
|
{
|
||||||
m[i] = va_arg (ap, const unsigned char *);
|
m[i] = va_arg (ap, const unsigned char *);
|
||||||
mlen[i] = va_arg (ap, size_t);
|
mlen[i] = va_arg (ap, size_t);
|
||||||
for (; mlen[i] && !*m[i]; mlen[i]--, m[i]++) /* strip leading zeroes */
|
if (key_type != KEY_TYPE_EDDSA)
|
||||||
;
|
/* strip off leading zeroes */
|
||||||
|
for (; mlen[i] && !*m[i]; mlen[i]--, m[i]++)
|
||||||
|
;
|
||||||
if (key_type == KEY_TYPE_RSA || i == 1)
|
if (key_type == KEY_TYPE_RSA || i == 1)
|
||||||
n += 2;
|
n += 2;
|
||||||
n += mlen[i];
|
n += mlen[i];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user