diff --git a/examples/connect_ssh.c b/examples/connect_ssh.c index c9e4ef6e..51dce16a 100644 --- a/examples/connect_ssh.c +++ b/examples/connect_ssh.c @@ -21,47 +21,50 @@ clients must be made or how a client should react. #include "examples_common.h" #include -ssh_session connect_ssh(const char *host, const char *user,int verbosity){ - ssh_session session; - int auth=0; +ssh_session connect_ssh(const char *host, const char *user, int verbosity) +{ + ssh_session session; + int auth = 0; - session=ssh_new(); - if (session == NULL) { - return NULL; - } - - if(user != NULL){ - if (ssh_options_set(session, SSH_OPTIONS_USER, user) < 0) { - ssh_free(session); - return NULL; + session = ssh_new(); + if (session == NULL) { + return NULL; } - } - if (ssh_options_set(session, SSH_OPTIONS_HOST, host) < 0) { - ssh_free(session); - return NULL; - } - ssh_options_set(session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity); - if(ssh_connect(session)){ - fprintf(stderr,"Connection failed : %s\n",ssh_get_error(session)); + if (user != NULL) { + if (ssh_options_set(session, SSH_OPTIONS_USER, user) < 0) { + ssh_free(session); + return NULL; + } + } + + if (ssh_options_set(session, SSH_OPTIONS_HOST, host) < 0) { + ssh_free(session); + return NULL; + } + ssh_options_set(session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity); + if (ssh_connect(session)) { + fprintf(stderr, "Connection failed : %s\n", ssh_get_error(session)); + ssh_disconnect(session); + ssh_free(session); + return NULL; + } + if (verify_knownhost(session) < 0) { + ssh_disconnect(session); + ssh_free(session); + return NULL; + } + auth = authenticate_console(session); + if (auth == SSH_AUTH_SUCCESS) { + return session; + } else if (auth == SSH_AUTH_DENIED) { + fprintf(stderr, "Authentication failed\n"); + } else { + fprintf(stderr, + "Error while authenticating : %s\n", + ssh_get_error(session)); + } ssh_disconnect(session); ssh_free(session); return NULL; - } - if(verify_knownhost(session)<0){ - ssh_disconnect(session); - ssh_free(session); - return NULL; - } - auth=authenticate_console(session); - if(auth==SSH_AUTH_SUCCESS){ - return session; - } else if(auth==SSH_AUTH_DENIED){ - fprintf(stderr,"Authentication failed\n"); - } else { - fprintf(stderr,"Error while authenticating : %s\n",ssh_get_error(session)); - } - ssh_disconnect(session); - ssh_free(session); - return NULL; }