summaryrefslogtreecommitdiffstats
path: root/include/libssh
diff options
context:
space:
mode:
Diffstat (limited to 'include/libssh')
-rw-r--r--include/libssh/libssh.h2
-rw-r--r--include/libssh/pki.h3
2 files changed, 5 insertions, 0 deletions
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h
index 4051f73..9b6b2fc 100644
--- a/include/libssh/libssh.h
+++ b/include/libssh/libssh.h
@@ -414,6 +414,8 @@ LIBSSH_API enum ssh_keytypes_e ssh_privatekey_type(ssh_private_key privatekey);
LIBSSH_API ssh_key ssh_key_new(void);
LIBSSH_API void ssh_key_free (ssh_key key);
+LIBSSH_API int ssh_pki_import_privkey_base64(ssh_key key, ssh_session session,
+ const char *b64_key, const char *passphrase);
LIBSSH_API void ssh_print_hexa(const char *descr, const unsigned char *what, size_t len);
LIBSSH_API int ssh_scp_accept_request(ssh_scp scp);
LIBSSH_API int ssh_scp_close(ssh_scp scp);
diff --git a/include/libssh/pki.h b/include/libssh/pki.h
index 73f02ec..1f59345 100644
--- a/include/libssh/pki.h
+++ b/include/libssh/pki.h
@@ -39,6 +39,9 @@ struct ssh_key_struct {
#endif
};
+#define ssh_key_is_public(k) (k && k->flags & SSH_KEY_FLAG_PUBLIC)
+#define ssh_key_is_private(k) (k && k->flags & SSH_KEY_FLAG_PRIVATE)
+
void ssh_key_clean (ssh_key key);
enum ssh_keytypes_e ssh_key_type(ssh_key key);
int ssh_key_import_private(ssh_key key, ssh_session session,