mirror of
https://git.libssh.org/projects/libssh.git
synced 2026-02-09 18:04:25 +09:00
examples: Reformat connect_ssh.c
Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
This commit is contained in:
committed by
Andreas Schneider
parent
d38007c4be
commit
986e0c593f
@@ -21,47 +21,50 @@ clients must be made or how a client should react.
|
|||||||
#include "examples_common.h"
|
#include "examples_common.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
ssh_session connect_ssh(const char *host, const char *user,int verbosity){
|
ssh_session connect_ssh(const char *host, const char *user, int verbosity)
|
||||||
ssh_session session;
|
{
|
||||||
int auth=0;
|
ssh_session session;
|
||||||
|
int auth = 0;
|
||||||
|
|
||||||
session=ssh_new();
|
session = ssh_new();
|
||||||
if (session == NULL) {
|
if (session == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
|
||||||
|
|
||||||
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) {
|
if (user != NULL) {
|
||||||
ssh_free(session);
|
if (ssh_options_set(session, SSH_OPTIONS_USER, user) < 0) {
|
||||||
return NULL;
|
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 (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_disconnect(session);
|
||||||
ssh_free(session);
|
ssh_free(session);
|
||||||
return NULL;
|
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;
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user