aboutsummaryrefslogtreecommitdiff
path: root/src/agent.c
diff options
context:
space:
mode:
authorAxel Eppe <aeppe@google.com>2016-03-01 00:46:13 +0000
committerAndreas Schneider <asn@cryptomilk.org>2016-03-15 08:37:57 +0100
commit8fe8dbb378d1d9d7cde54dfd3aa7ff9acca77733 (patch)
treef731655e2a5bc1cb29059a7a2989ff88981f808d /src/agent.c
parent8923a0126491a4544ec885f1170b0d5c1358af7c (diff)
downloadlibssh-8fe8dbb378d1d9d7cde54dfd3aa7ff9acca77733.tar.gz
libssh-8fe8dbb378d1d9d7cde54dfd3aa7ff9acca77733.tar.xz
libssh-8fe8dbb378d1d9d7cde54dfd3aa7ff9acca77733.zip
agent: Add cert auth support to ssh_agent_get_next_ident()
Signed-off-by: Axel Eppe <aeppe@google.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/agent.c')
-rw-r--r--src/agent.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/agent.c b/src/agent.c
index 76265645..0b145ff3 100644
--- a/src/agent.c
+++ b/src/agent.c
@@ -472,6 +472,10 @@ ssh_key ssh_agent_get_next_ident(struct ssh_session_struct *session,
/* get key from blob */
rc = ssh_pki_import_pubkey_blob(blob, &key);
+ if (rc == SSH_ERROR) {
+ /* Try again as a cert. */
+ rc = ssh_pki_import_cert_blob(blob, &key);
+ }
ssh_string_free(blob);
if (rc == SSH_ERROR) {
return NULL;