diff --git a/include/libssh/session.h b/include/libssh/session.h index 0f5989bc..bb5bd51b 100644 --- a/include/libssh/session.h +++ b/include/libssh/session.h @@ -57,6 +57,7 @@ enum ssh_pending_call_e { SSH_PENDING_CALL_AUTH_PASSWORD, SSH_PENDING_CALL_AUTH_OFFER_PUBKEY, SSH_PENDING_CALL_AUTH_PUBKEY, + SSH_PENDING_CALL_AUTH_AGENT }; /* libssh calls may block an undefined amount of time */ diff --git a/src/auth.c b/src/auth.c index 624c2784..34d7aa58 100644 --- a/src/auth.c +++ b/src/auth.c @@ -778,7 +778,7 @@ static int ssh_userauth_agent_publickey(ssh_session session, switch(session->pending_call_state) { case SSH_PENDING_CALL_NONE: break; - case SSH_PENDING_CALL_AUTH_PUBKEY: + case SSH_PENDING_CALL_AUTH_AGENT: goto pending; default: ssh_set_error(session, @@ -883,7 +883,7 @@ static int ssh_userauth_agent_publickey(ssh_session session, } session->auth_state = SSH_AUTH_STATE_NONE; - session->pending_call_state = SSH_PENDING_CALL_AUTH_PUBKEY; + session->pending_call_state = SSH_PENDING_CALL_AUTH_AGENT; rc = packet_send(session); if (rc == SSH_ERROR) { return SSH_AUTH_ERROR;