While connect and transfer works fine in non-blocking mode for the test

suite, transfer fails in the real world.  So after connect set to blocking
as full non-blocking is migrated out.
This commit is contained in:
James Housley 2007-06-12 16:15:20 +00:00
parent 7800b56dc8
commit 6f59e19b91
1 changed files with 13 additions and 3 deletions

View File

@ -302,6 +302,9 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
break;
}
/* Set libssh2 to non-blocking, since cURL is all non-blocking */
libssh2_session_set_blocking(ssh->ssh_session, 0);
#ifdef CURL_LIBSSH2_DEBUG
/*
* Before we authenticate we should check the hostkey's fingerprint
@ -654,6 +657,16 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
Curl_safefree(working_path);
ssh->path = real_path;
/*
*****************************************
*****************************************
** TEMPORARY **
*****************************************
*****************************************
*/
/* Set libssh2 to non-blocking, since cURL is all non-blocking */
libssh2_session_set_blocking(ssh->ssh_session, 1);
/* Connect is all done */
state(conn, SSH_STOP);
}
@ -832,9 +845,6 @@ CURLcode Curl_ssh_connect(struct connectdata *conn, bool *done)
#endif /* CURL_LIBSSH2_DEBUG */
#if (LIBSSH2_APINO >= 200706012030)
/* Set libssh2 to non-blocking, since cURL is all non-blocking */
libssh2_session_set_blocking(ssh->ssh_session, 0);
state(conn, SSH_S_STARTUP);
if (data->state.used_interface == Curl_if_multi)