summaryrefslogtreecommitdiff
path: root/authfile.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2013-12-07 11:24:01 +1100
committerDamien Miller <djm@mindrot.org>2013-12-07 11:24:01 +1100
commit5be9d9e3cbd9c66f24745d25bf2e809c1d158ee0 (patch)
treed2086d37436014ea44f0f024396a1a8638640b00 /authfile.c
parentbcd00abd8451f36142ae2ee10cc657202149201e (diff)
- markus@cvs.openbsd.org 2013/12/06 13:39:49
[authfd.c authfile.c key.c key.h myproposal.h pathnames.h readconf.c] [servconf.c ssh-agent.c ssh-keygen.c ssh-keyscan.1 ssh-keyscan.c] [ssh-keysign.c ssh.c ssh_config.5 sshd.8 sshd.c verify.c ssh-ed25519.c] [sc25519.h sc25519.c hash.c ge25519_base.data ge25519.h ge25519.c] [fe25519.h fe25519.c ed25519.c crypto_api.h blocks.c] support ed25519 keys (hostkeys and user identities) using the public domain ed25519 reference code from SUPERCOP, see http://ed25519.cr.yp.to/software.html feedback, help & ok djm@
Diffstat (limited to 'authfile.c')
-rw-r--r--authfile.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/authfile.c b/authfile.c
index e38a3dd14..b0fc23e6a 100644
--- a/authfile.c
+++ b/authfile.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: authfile.c,v 1.99 2013/12/06 13:34:54 markus Exp $ */ 1/* $OpenBSD: authfile.c,v 1.100 2013/12/06 13:39:49 markus Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -50,6 +50,8 @@
50/* compatibility with old or broken OpenSSL versions */ 50/* compatibility with old or broken OpenSSL versions */
51#include "openbsd-compat/openssl-compat.h" 51#include "openbsd-compat/openssl-compat.h"
52 52
53#include "crypto_api.h"
54
53#include <errno.h> 55#include <errno.h>
54#include <fcntl.h> 56#include <fcntl.h>
55#include <stdarg.h> 57#include <stdarg.h>
@@ -593,6 +595,9 @@ key_private_to_blob(Key *key, Buffer *blob, const char *passphrase,
593 comment, new_format_cipher, new_format_rounds); 595 comment, new_format_cipher, new_format_rounds);
594 } 596 }
595 return key_private_pem_to_blob(key, blob, passphrase, comment); 597 return key_private_pem_to_blob(key, blob, passphrase, comment);
598 case KEY_ED25519:
599 return key_private_to_blob2(key, blob, passphrase,
600 comment, new_format_cipher, new_format_rounds);
596 default: 601 default:
597 error("%s: cannot save key type %d", __func__, key->type); 602 error("%s: cannot save key type %d", __func__, key->type);
598 return 0; 603 return 0;
@@ -997,6 +1002,9 @@ key_parse_private_type(Buffer *blob, int type, const char *passphrase,
997 case KEY_DSA: 1002 case KEY_DSA:
998 case KEY_ECDSA: 1003 case KEY_ECDSA:
999 case KEY_RSA: 1004 case KEY_RSA:
1005 return key_parse_private_pem(blob, type, passphrase, commentp);
1006 case KEY_ED25519:
1007 return key_parse_private2(blob, type, passphrase, commentp);
1000 case KEY_UNSPEC: 1008 case KEY_UNSPEC:
1001 if ((k = key_parse_private2(blob, type, passphrase, commentp))) 1009 if ((k = key_parse_private2(blob, type, passphrase, commentp)))
1002 return k; 1010 return k;