diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/net/tramp-sh.el | 2 | ||||
-rw-r--r-- | lisp/net/tramp.el | 15 |
2 files changed, 12 insertions, 5 deletions
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index 3ba3d956efc..2fb5566a3bf 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el @@ -4634,7 +4634,7 @@ Goes through the list `tramp-inline-compress-commands'." ;; host name in their command template. In this case, the remote ;; file name must use either a local host name (first hop), or a ;; host name matching the previous hop. - (let ((previous-host tramp-local-host-regexp)) + (let ((previous-host (or tramp-local-host-regexp ""))) (setq choices target-alist) (while (setq item (pop choices)) (let ((host (tramp-file-name-host item))) diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 52ff021c500..5c785b16d89 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -428,13 +428,19 @@ host runs a registered shell, it shall be added to this list, too." :require 'tramp) ;;;###tramp-autoload -(defconst tramp-local-host-regexp +(defcustom tramp-local-host-regexp (concat "\\`" (regexp-opt (list "localhost" "localhost6" (system-name) "127.0.0.1" "::1") t) "\\'") - "Host names which are regarded as local host.") + "Host names which are regarded as local host. +If the local host runs a chrooted environment, set this to nil." + :version "27.1" + :group 'tramp + :type '(choice (const :tag "Chrooted environment" nil) + (regexp :tag "Host regexp")) + :require 'tramp) (defvar tramp-completion-function-alist nil "Alist of methods for remote files. @@ -4239,11 +4245,12 @@ be granted." ;;;###tramp-autoload (defun tramp-local-host-p (vec) - "Return t if this points to the local host, nil otherwise." + "Return t if this points to the local host, nil otherwise. +This handles also chrooted environments, which are not regarded as local." (let ((host (tramp-file-name-host vec)) (port (tramp-file-name-port vec))) (and - (stringp host) + (stringp tramp-local-host-regexp) (stringp host) (string-match tramp-local-host-regexp host) ;; A port is an indication for an ssh tunnel or alike. (null port) |