]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: allow PEM export of DSA and ECDSA keys; bz3091, patch
authordjm@openbsd.org <djm@openbsd.org>
Fri, 24 Jan 2020 00:00:31 +0000 (00:00 +0000)
committerDamien Miller <djm@mindrot.org>
Sat, 25 Jan 2020 00:27:29 +0000 (11:27 +1100)
from Jakub Jelen ok markus@

OpenBSD-Commit-ID: a58edec8b9f07acab4b962a71a5125830d321b51

ssh-keygen.c

index 363da70db7b25bf0fc51019545c4b1f74a54b4eb..564c3c4811a3c9dd27fe00e1b878ebd85086c407 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keygen.c,v 1.388 2020/01/23 23:31:52 djm Exp $ */
+/* $OpenBSD: ssh-keygen.c,v 1.389 2020/01/24 00:00:31 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -402,6 +402,14 @@ do_convert_to_pem(struct sshkey *k)
                if (!PEM_write_RSAPublicKey(stdout, k->rsa))
                        fatal("PEM_write_RSAPublicKey failed");
                break;
+       case KEY_DSA:
+               if (!PEM_write_DSA_PUBKEY(stdout, k->dsa))
+                       fatal("PEM_write_DSA_PUBKEY failed");
+               break;
+       case KEY_ECDSA:
+               if (!PEM_write_EC_PUBKEY(stdout, k->ecdsa))
+                       fatal("PEM_write_EC_PUBKEY failed");
+               break;
        default:
                fatal("%s: unsupported key type %s", __func__, sshkey_type(k));
        }