aboutsummaryrefslogtreecommitdiff
path: root/include/libssh
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2010-05-02 00:03:06 +0200
committerAris Adamantiadis <aris@0xbadc0de.be>2010-05-02 00:03:06 +0200
commitc691aa3e328809e5cf1100b93737ddde130bc642 (patch)
treea4b2be5311419737d2bdd4eeb8264644819fbc5c /include/libssh
parent430e570629d663efdf550ea4f9669a1fc0bb40f9 (diff)
downloadlibssh-c691aa3e328809e5cf1100b93737ddde130bc642.tar.gz
libssh-c691aa3e328809e5cf1100b93737ddde130bc642.tar.xz
libssh-c691aa3e328809e5cf1100b93737ddde130bc642.zip
Forgot the pki files
Diffstat (limited to 'include/libssh')
-rw-r--r--include/libssh/pki.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/include/libssh/pki.h b/include/libssh/pki.h
new file mode 100644
index 00000000..6a0403e2
--- /dev/null
+++ b/include/libssh/pki.h
@@ -0,0 +1,28 @@
+#ifndef PKI_H_
+#define PKI_H_
+
+#define SSH_KEY_FLAG_EMPTY 0
+#define SSH_KEY_FLAG_PUBLIC 1
+#define SSH_KEY_FLAG_PRIVATE 2
+
+struct ssh_key_struct {
+ enum ssh_keytypes_e type;
+ int flags;
+ const char *type_c; /* Don't free it ! it is static */
+#ifdef HAVE_LIBGCRYPT
+ gcry_sexp_t dsa;
+ gcry_sexp_t rsa;
+#elif HAVE_LIBCRYPTO
+ DSA *dsa;
+ RSA *rsa;
+#endif
+};
+
+ssh_key ssh_key_new (void);
+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,
+ const char *filename, const char *passphrase);
+void ssh_key_free (ssh_key key);
+
+#endif /* PKI_H_ */