diff options
author | Axel Eppe <aeppe@google.com> | 2015-08-23 17:42:21 +0100 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2015-09-07 13:30:14 +0200 |
commit | bdfe6870f63227a623ec3f91fad3b09c42119e77 (patch) | |
tree | 0abf11cf65b8aa38e5e927e67230719b4c81e62d /include/libssh | |
parent | 9775f78ab2cf6cc348bad8728caf76709729a42a (diff) | |
download | libssh-bdfe6870f63227a623ec3f91fad3b09c42119e77.tar.gz libssh-bdfe6870f63227a623ec3f91fad3b09c42119e77.tar.xz libssh-bdfe6870f63227a623ec3f91fad3b09c42119e77.zip |
pki: Add certificate loading functions
- ssh_pki_import_cert_base64()
- ssh_pki_import_cert_file()
- ssh_pki_import_cert_blob()
Those functions are currently simple wrappers around their pubkey counterpart.
- ssh_pki_copy_cert_to_privkey()
This function copies the cert-specific data to a private key.
Signed-off-by: Axel Eppe <aeppe@google.com>
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'include/libssh')
-rw-r--r-- | include/libssh/libssh.h | 9 | ||||
-rw-r--r-- | include/libssh/pki.h | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h index 9a243470..aff01909 100644 --- a/include/libssh/libssh.h +++ b/include/libssh/libssh.h @@ -551,12 +551,21 @@ LIBSSH_API int ssh_pki_export_privkey_file(const ssh_key privkey, void *auth_data, const char *filename); +LIBSSH_API int ssh_pki_copy_cert_to_privkey(const ssh_key cert_key, + ssh_key privkey); + LIBSSH_API int ssh_pki_import_pubkey_base64(const char *b64_key, enum ssh_keytypes_e type, ssh_key *pkey); LIBSSH_API int ssh_pki_import_pubkey_file(const char *filename, ssh_key *pkey); +LIBSSH_API int ssh_pki_import_cert_base64(const char *b64_cert, + enum ssh_keytypes_e type, + ssh_key *pkey); +LIBSSH_API int ssh_pki_import_cert_file(const char *filename, + ssh_key *pkey); + LIBSSH_API int ssh_pki_export_privkey_to_pubkey(const ssh_key privkey, ssh_key *pkey); LIBSSH_API int ssh_pki_export_pubkey_base64(const ssh_key key, diff --git a/include/libssh/pki.h b/include/libssh/pki.h index b146d982..905956b3 100644 --- a/include/libssh/pki.h +++ b/include/libssh/pki.h @@ -113,6 +113,10 @@ int ssh_pki_export_pubkey_rsa1(const ssh_key key, char *rsa1, size_t rsa1_len); +int ssh_pki_import_cert_blob(const ssh_string cert_blob, + ssh_key *pkey); + + /* SSH Signing Functions */ ssh_string ssh_pki_do_sign(ssh_session session, ssh_buffer sigbuf, const ssh_key privatekey); |