aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2013-11-06 12:45:45 -0500
committerAndreas Schneider <asn@cryptomilk.org>2013-11-09 12:29:24 +0100
commit1ecf7003f6c7088c567e41029d31adac73dd7903 (patch)
tree5c475c47fac787d2ec2431f78f7b3d0d596a2fc1 /src
parent70c54d94458c052e1bac3ed437dec5675200f2ab (diff)
downloadlibssh-1ecf7003f6c7088c567e41029d31adac73dd7903.tar.gz
libssh-1ecf7003f6c7088c567e41029d31adac73dd7903.tar.xz
libssh-1ecf7003f6c7088c567e41029d31adac73dd7903.zip
client: If we have a pre-connected FD, set state to SOCKET_CONNECTED
Otherwise applications providing their own fd end up tripping an assertion, since the session is just in _CONNECTING. Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src')
-rw-r--r--src/client.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/client.c b/src/client.c
index 49bb544e..18b40e94 100644
--- a/src/client.c
+++ b/src/client.c
@@ -504,6 +504,7 @@ int ssh_connect(ssh_session session) {
session->socket_callbacks.exception=ssh_socket_exception_callback;
session->socket_callbacks.userdata=session;
if (session->opts.fd != SSH_INVALID_SOCKET) {
+ session->session_state=SSH_SESSION_STATE_SOCKET_CONNECTED;
ssh_socket_set_fd(session->socket, session->opts.fd);
ret=SSH_OK;
#ifndef _WIN32