mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-22 14:39:24 -05:00
Fix crash when adding an ECDSA key to Pageant.
The new_priv_openssh method for ECDSA keys was trying to initialise the key as if it was EdDSA, leading to an assertion failure at setup time. This is what I get for not having taken cryptsuite.py all the way to testing every top-level signature algorithm.
This commit is contained in:
parent
93c29b2277
commit
867e691874
4
sshecc.c
4
sshecc.c
@ -796,12 +796,12 @@ static ssh_key *ecdsa_new_priv_openssh(
|
|||||||
|
|
||||||
get_string(src);
|
get_string(src);
|
||||||
|
|
||||||
struct eddsa_key *ek = snew(struct eddsa_key);
|
struct ecdsa_key *ek = snew(struct ecdsa_key);
|
||||||
ek->sshk.vt = alg;
|
ek->sshk.vt = alg;
|
||||||
ek->curve = curve;
|
ek->curve = curve;
|
||||||
ek->privateKey = NULL;
|
ek->privateKey = NULL;
|
||||||
|
|
||||||
ek->publicKey = get_epoint(src, curve);
|
ek->publicKey = get_wpoint(src, curve);
|
||||||
if (!ek->publicKey) {
|
if (!ek->publicKey) {
|
||||||
eddsa_freekey(&ek->sshk);
|
eddsa_freekey(&ek->sshk);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user