mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-25 07:28:20 +00:00
Tweak Tramp method definition syntax to allow overriding check for localhost-only methods
This commit is contained in:
parent
b7e0ef72d0
commit
b9bef71fd3
@ -1,3 +1,10 @@
|
||||
2013-10-29 Daniel Colascione <dancol@dancol.org>
|
||||
|
||||
* net/tramp.el (tramp-methods): Document new functionality.
|
||||
* net/tramp-sh.el (tramp-compute-multi-hops): Punt to
|
||||
tramp-hostname-checker if method provides one instead of scanning
|
||||
argument list for "%h" to decide hostname acceptability.
|
||||
|
||||
2013-10-28 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp-sh.el (tramp-sh-handle-copy-directory):
|
||||
|
@ -4285,6 +4285,10 @@ Gateway hops are already opened."
|
||||
(or
|
||||
;; There are multi-hops.
|
||||
(cdr target-alist)
|
||||
;; This method explicitly has an explicit allowability check.
|
||||
(let ((checker (tramp-get-method-parameter
|
||||
method 'tramp-hostname-checker)))
|
||||
(when checker (funcall checker v host method) t))
|
||||
;; The host name is used for the remote shell command.
|
||||
(member
|
||||
'("%h") (tramp-get-method-parameter method 'tramp-login-args))
|
||||
|
@ -265,6 +265,15 @@ pair of the form (KEY VALUE). The following KEYs are defined:
|
||||
In general, the global default value shall be used, but for
|
||||
some methods, like \"su\" or \"sudo\", a shorter timeout
|
||||
might be desirable.
|
||||
* `tramp-hostname-checker'
|
||||
This is a function that tramp calls while setting
|
||||
up a connection. It is called with three arguments:
|
||||
the target, the host, and the method description. If
|
||||
the hostname is unacceptable, this function should signal
|
||||
using `tramp-error'. If a method does not provide
|
||||
a value here, then Tramp looks at whether the method's
|
||||
login program uses a \"%h\" parameter. If not, then Tramp
|
||||
requires that the given hostname match `tramp-local-host-regexp'.
|
||||
|
||||
What does all this mean? Well, you should specify `tramp-login-program'
|
||||
for all methods; this program is used to log in to the remote site. Then,
|
||||
|
Loading…
Reference in New Issue
Block a user