diff options
author | Damien Miller <djm@mindrot.org> | 2014-07-02 15:28:02 +1000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2014-07-02 15:28:02 +1000 |
commit | 8668706d0f52654fe64c0ca41a96113aeab8d2b8 (patch) | |
tree | 73e78e1ea3d39206e39870bbe0af17d6c430fb51 /authfile.h | |
parent | 2cd7929250cf9e9f658d70dcd452f529ba08c942 (diff) |
- djm@cvs.openbsd.org 2014/06/24 01:13:21
[Makefile.in auth-bsdauth.c auth-chall.c auth-options.c auth-rsa.c
[auth2-none.c auth2-pubkey.c authfile.c authfile.h cipher-3des1.c
[cipher-chachapoly.c cipher-chachapoly.h cipher.c cipher.h
[digest-libc.c digest-openssl.c digest.h dns.c entropy.c hmac.h
[hostfile.c key.c key.h krl.c monitor.c packet.c rsa.c rsa.h
[ssh-add.c ssh-agent.c ssh-dss.c ssh-ecdsa.c ssh-ed25519.c
[ssh-keygen.c ssh-pkcs11-client.c ssh-pkcs11-helper.c ssh-pkcs11.c
[ssh-rsa.c sshbuf-misc.c sshbuf.h sshconnect.c sshconnect1.c
[sshconnect2.c sshd.c sshkey.c sshkey.h
[openbsd-compat/openssl-compat.c openbsd-compat/openssl-compat.h]
New key API: refactor key-related functions to be more library-like,
existing API is offered as a set of wrappers.
with and ok markus@
Thanks also to Ben Hawkes, David Tomaschik, Ivan Fratric, Matthew
Dempsky and Ron Bowes for a detailed review a few months ago.
NB. This commit also removes portable OpenSSH support for OpenSSL
<0.9.8e.
Diffstat (limited to 'authfile.h')
-rw-r--r-- | authfile.h | 63 |
1 files changed, 41 insertions, 22 deletions
diff --git a/authfile.h b/authfile.h index 8ba1c2dbe..223101202 100644 --- a/authfile.h +++ b/authfile.h | |||
@@ -1,32 +1,51 @@ | |||
1 | /* $OpenBSD: authfile.h,v 1.17 2013/12/06 13:34:54 markus Exp $ */ | 1 | /* $OpenBSD: authfile.h,v 1.18 2014/06/24 01:13:21 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 4 | * Copyright (c) 2000, 2013 Markus Friedl. All rights reserved. |
5 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | ||
6 | * All rights reserved | ||
7 | * | 5 | * |
8 | * As far as I am concerned, the code I have written for this software | 6 | * Redistribution and use in source and binary forms, with or without |
9 | * can be used freely for any purpose. Any derived versions of this | 7 | * modification, are permitted provided that the following conditions |
10 | * software must be clearly marked as such, and if the derived work is | 8 | * are met: |
11 | * incompatible with the protocol description in the RFC file, it must be | 9 | * 1. Redistributions of source code must retain the above copyright |
12 | * called by a name other than "ssh" or "Secure Shell". | 10 | * notice, this list of conditions and the following disclaimer. |
11 | * 2. Redistributions in binary form must reproduce the above copyright | ||
12 | * notice, this list of conditions and the following disclaimer in the | ||
13 | * documentation and/or other materials provided with the distribution. | ||
14 | * | ||
15 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | ||
16 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
17 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | ||
18 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
19 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
20 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
21 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
22 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
24 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
13 | */ | 25 | */ |
14 | 26 | ||
15 | #ifndef AUTHFILE_H | 27 | #ifndef AUTHFILE_H |
16 | #define AUTHFILE_H | 28 | #define AUTHFILE_H |
17 | 29 | ||
18 | int key_save_private(Key *, const char *, const char *, const char *, | 30 | #ifdef WITH_LEAKMALLOC |
19 | int, const char *, int); | 31 | #include "leakmalloc.h" |
20 | int key_load_file(int, const char *, Buffer *); | 32 | #endif |
21 | Key *key_load_cert(const char *); | 33 | |
22 | Key *key_load_public(const char *, char **); | 34 | struct sshbuf; |
23 | Key *key_load_public_type(int, const char *, char **); | 35 | struct sshkey; |
24 | Key *key_parse_private(Buffer *, const char *, const char *, char **); | 36 | |
25 | Key *key_load_private(const char *, const char *, char **); | 37 | int sshkey_save_private(struct sshkey *, const char *, |
26 | Key *key_load_private_cert(int, const char *, const char *, int *); | 38 | const char *, const char *, int, const char *, int); |
27 | Key *key_load_private_type(int, const char *, const char *, char **, int *); | 39 | int sshkey_load_file(int, const char *, struct sshbuf *); |
28 | Key *key_load_private_pem(int, int, const char *, char **); | 40 | int sshkey_load_cert(const char *, struct sshkey **); |
29 | int key_perm_ok(int, const char *); | 41 | int sshkey_load_public(const char *, struct sshkey **, char **); |
30 | int key_in_file(Key *, const char *, int); | 42 | int sshkey_load_private(const char *, const char *, struct sshkey **, char **); |
43 | int sshkey_load_private_cert(int, const char *, const char *, | ||
44 | struct sshkey **, int *); | ||
45 | int sshkey_load_private_type(int, const char *, const char *, | ||
46 | struct sshkey **, char **, int *); | ||
47 | int sshkey_load_private_pem(int, int, const char *, struct sshkey **, char **); | ||
48 | int sshkey_perm_ok(int, const char *); | ||
49 | int sshkey_in_file(struct sshkey *, const char *, int); | ||
31 | 50 | ||
32 | #endif | 51 | #endif |