Change test for ControlPath in order to avoid DNS timeouts.
Fixes: debbugs:20015 * net/tramp-sh.el (tramp-ssh-controlmaster-options): Change test for ControlPath in order to avoid DNS timeouts.
This commit is contained in:
parent
b0743354e5
commit
508049aae9
2 changed files with 11 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2015-03-17 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp-sh.el (tramp-ssh-controlmaster-options): Change test
|
||||
for ControlPath in order to avoid DNS timeouts. (Bug#20015)
|
||||
|
||||
2015-03-16 Alan Mackenzie <acm@muc.de>
|
||||
|
||||
Edebug: Allow "S" to work during trace mode. Fixes debbugs #20074.
|
||||
|
|
|
@ -4565,7 +4565,7 @@ Gateway hops are already opened."
|
|||
|
||||
;; In case the host name is not used for the remote shell
|
||||
;; command, the user could be misguided by applying a random
|
||||
;; hostname.
|
||||
;; host name.
|
||||
(let* ((v (car target-alist))
|
||||
(method (tramp-file-name-method v))
|
||||
(host (tramp-file-name-host v)))
|
||||
|
@ -4611,9 +4611,13 @@ Gateway hops are already opened."
|
|||
(setq tramp-ssh-controlmaster-options "-o ControlMaster=auto")))
|
||||
(unless (zerop (length tramp-ssh-controlmaster-options))
|
||||
(with-temp-buffer
|
||||
;; When we use a non-existing host name, we could run
|
||||
;; into DNS timeouts. So we use "localhost" with an
|
||||
;; improper port, expecting nobody runs sshd on the
|
||||
;; telnet port.
|
||||
(tramp-call-process
|
||||
vec "ssh" nil t nil
|
||||
"-o" "ControlPath=%C" "host.does.not.exist")
|
||||
"-p" "23" "-o" "ControlPath=%C" "localhost")
|
||||
(goto-char (point-min))
|
||||
(setq tramp-ssh-controlmaster-options
|
||||
(if (search-forward-regexp "unknown.+key" nil t)
|
||||
|
|
Loading…
Add table
Reference in a new issue