summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pki.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pki.c b/src/pki.c
index fd30ee4..c3947ae 100644
--- a/src/pki.c
+++ b/src/pki.c
@@ -37,6 +37,18 @@
#include "libssh/keys.h"
#include "libssh/buffer.h"
+enum ssh_keytypes_e pki_privatekey_type_from_string(const char *privkey) {
+ if (strncmp(privkey, DSA_HEADER_BEGIN, strlen(DSA_HEADER_BEGIN)) == 0) {
+ return SSH_KEYTYPE_DSS;
+ }
+
+ if (strncmp(privkey, RSA_HEADER_BEGIN, strlen(RSA_HEADER_BEGIN)) == 0) {
+ return SSH_KEYTYPE_RSA;
+ }
+
+ return SSH_KEYTYPE_UNKNOWN;
+}
+
/**
* @brief creates a new empty SSH key
* @returns an empty ssh_key handle, or NULL on error.