aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--examples/authentication.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/examples/authentication.c b/examples/authentication.c
index 29b83eaa..988ed91f 100644
--- a/examples/authentication.c
+++ b/examples/authentication.c
@@ -64,6 +64,10 @@ int authenticate_kbdint(ssh_session session){
return err;
}
+static void error(ssh_session session){
+ fprintf(stderr,"Authentication failed: %s\n",ssh_get_error(session));
+}
+
int authenticate_console(ssh_session session){
int rc;
int method;
@@ -73,7 +77,7 @@ int authenticate_console(ssh_session session){
// Try to authenticate
rc = ssh_userauth_none(session, NULL);
if (rc == SSH_AUTH_ERROR) {
- perror("Authentication failed.");
+ error(session);
return rc;
}
@@ -84,7 +88,7 @@ int authenticate_console(ssh_session session){
if (method & SSH_AUTH_METHOD_PUBLICKEY) {
rc = ssh_userauth_autopubkey(session, NULL);
if (rc == SSH_AUTH_ERROR) {
- perror("Authentication failed.");
+ error(session);
return rc;
} else if (rc == SSH_AUTH_SUCCESS) {
break;
@@ -95,7 +99,7 @@ int authenticate_console(ssh_session session){
if (method & SSH_AUTH_METHOD_INTERACTIVE) {
rc = authenticate_kbdint(session);
if (rc == SSH_AUTH_ERROR) {
- perror("Authentication failed.");
+ error(session);
return rc;
} else if (rc == SSH_AUTH_SUCCESS) {
break;
@@ -107,7 +111,7 @@ int authenticate_console(ssh_session session){
if (method & SSH_AUTH_METHOD_PASSWORD) {
rc = ssh_userauth_password(session, NULL, password);
if (rc == SSH_AUTH_ERROR) {
- perror("Authentication failed.");
+ error(session);
return rc;
} else if (rc == SSH_AUTH_SUCCESS) {
break;