set SSH timeout

This commit is contained in:
Mark
2024-01-18 23:13:14 -05:00
parent 25e2b9d8c2
commit 392e380463
2 changed files with 7 additions and 2 deletions

View File

@@ -490,8 +490,7 @@ typedef enum {
*
* opts(GIT_OPT_SET_SERVER_CONNECT_TIMEOUT, int timeout)
* > Sets the timeout (in milliseconds) to attempt connections to
* > a remote server. This is supported only for HTTP(S) connections
* > and is not supported by SSH. Set to 0 to use the system default.
* > a remote server. Set to 0 to use the system default.
* > Note that this may not be able to be configured longer than the
* > system default, typically 75 seconds.
*

View File

@@ -23,6 +23,8 @@
#define OWNING_SUBTRANSPORT(s) ((ssh_subtransport *)(s)->parent.subtransport)
extern int git_socket_stream__connect_timeout;
static const char cmd_uploadpack[] = "git-upload-pack";
static const char cmd_receivepack[] = "git-receive-pack";
@@ -539,6 +541,10 @@ static int _git_ssh_session_create(
return -1;
}
if (git_socket_stream__connect_timeout > 0) {
libssh2_session_set_timeout(s, git_socket_stream__connect_timeout);
}
if ((rc = load_known_hosts(&known_hosts, s)) < 0) {
ssh_error(s, "error loading known_hosts");
libssh2_session_free(s);