summaryrefslogtreecommitdiffstats
path: root/libssh/client.c
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2010-01-25 23:23:01 +0100
committerAris Adamantiadis <aris@0xbadc0de.be>2010-01-25 23:23:01 +0100
commite7b74c57f30c097f78c42dde0726825941b906a2 (patch)
treec98fa084f181a9e8bd37b014e834df8b8ab9fb32 /libssh/client.c
parentcfdd4296a8cec84ee31f4af996126b4a47cb8bc9 (diff)
downloadlibssh-e7b74c57f30c097f78c42dde0726825941b906a2.tar.gz
libssh-e7b74c57f30c097f78c42dde0726825941b906a2.tar.xz
libssh-e7b74c57f30c097f78c42dde0726825941b906a2.zip
Hacked SSH1 to get past authentication
Also resolved some bugs that may impact 0.4. need to check
Diffstat (limited to 'libssh/client.c')
-rw-r--r--libssh/client.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libssh/client.c b/libssh/client.c
index b24bd84..cf15453 100644
--- a/libssh/client.c
+++ b/libssh/client.c
@@ -697,14 +697,15 @@ int ssh_connect(ssh_session session) {
session->alive = 1;
ssh_log(session,SSH_LOG_PROTOCOL,"Socket connecting, now waiting for the callbacks to work");
while(session->session_state != SSH_SESSION_STATE_ERROR &&
- session->session_state != SSH_SESSION_STATE_AUTHENTICATING){
+ session->session_state != SSH_SESSION_STATE_AUTHENTICATING &&
+ session->session_state != SSH_SESSION_STATE_DISCONNECTED){
/* loop until SSH_SESSION_STATE_BANNER_RECEIVED or
* SSH_SESSION_STATE_ERROR */
ssh_handle_packets(session,-1);
ssh_log(session,SSH_LOG_PACKET,"ssh_connect: Actual state : %d",session->session_state);
}
leave_function();
- if(session->session_state == SSH_SESSION_STATE_ERROR)
+ if(session->session_state == SSH_SESSION_STATE_ERROR || session->session_state == SSH_SESSION_STATE_DISCONNECTED)
return SSH_ERROR;
return SSH_OK;
}