summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/ssh.scm10
1 files changed, 6 insertions, 4 deletions
diff --git a/guix/ssh.scm b/guix/ssh.scm
index 232b6bfe94..a6f0f2eb96 100644
--- a/guix/ssh.scm
+++ b/guix/ssh.scm
@@ -102,7 +102,8 @@ actual key does not match."
(define* (open-ssh-session host #:key user port identity
host-key
(compression %compression)
- (timeout 3600))
+ (timeout 3600)
+ (connection-timeout 10))
"Open an SSH session for HOST and return it. IDENTITY specifies the file
name of a private key to use for authenticating with the host. When USER,
PORT, or IDENTITY are #f, use default values or whatever '~/.ssh/config'
@@ -112,15 +113,16 @@ When HOST-KEY is true, it must be a string like \"ssh-ed25519 AAAAC3Nz…
root@example.org\"; the server is authenticated and an error is raised if its
host key is different from HOST-KEY.
-Install TIMEOUT as the maximum time in seconds after which a read or write
-operation on a channel of the returned session is considered as failing.
+Error out if connection establishment takes more than CONNECTION-TIMEOUT
+seconds. Install TIMEOUT as the maximum time in seconds after which a read or
+write operation on a channel of the returned session is considered as failing.
Throw an error on failure."
(let ((session (make-session #:user user
#:identity identity
#:host host
#:port port
- #:timeout 10 ;seconds
+ #:timeout connection-timeout
;; #:log-verbosity 'protocol
;; Prevent libssh from reading