aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAxel Eppe <aeppe@google.com>2015-08-23 17:42:21 +0100
committerAndreas Schneider <asn@cryptomilk.org>2015-09-07 13:30:14 +0200
commitbdfe6870f63227a623ec3f91fad3b09c42119e77 (patch)
tree0abf11cf65b8aa38e5e927e67230719b4c81e62d /include
parent9775f78ab2cf6cc348bad8728caf76709729a42a (diff)
downloadlibssh-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')
-rw-r--r--include/libssh/libssh.h9
-rw-r--r--include/libssh/pki.h4
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);