Some Tramp password fixes
* lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords of the hops. * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:" at the beginning of the command. Otherwise, it could be interpreted as password prompt if the remote host echoes the command. (tramp-remote-coding-commands): Add "openssl enc -base64".
This commit is contained in:
parent
21d6414a4b
commit
447e5890a8
2 changed files with 15 additions and 1 deletions
|
@ -288,7 +288,10 @@ The string is used in `tramp-methods'.")
|
|||
(add-to-list 'tramp-methods
|
||||
'("sudo"
|
||||
(tramp-login-program "sudo")
|
||||
(tramp-login-args (("-u" "%u") ("-s") ("-H") ("-p" "Password:")))
|
||||
;; The password template must not be the last argument.
|
||||
;; Otherwise, it could be interpreted as password prompt if the
|
||||
;; remote host echoes the command.
|
||||
(tramp-login-args (("-p" "Password:") ("-u" "%u") ("-s") ("-H")))
|
||||
;; Local $SHELL could be a nasty one, like zsh or fish. Let's override it.
|
||||
(tramp-login-env (("SHELL") ("/bin/sh")))
|
||||
(tramp-remote-shell "/bin/sh")
|
||||
|
@ -4316,6 +4319,7 @@ with the encoded or decoded results, respectively.")
|
|||
;; However, I don't know whether all base64 versions do supports
|
||||
;; this option.
|
||||
(b64 "base64" "base64 -d")
|
||||
(b64 "openssl enc -base64" "openssl enc -d -base64")
|
||||
(b64 "mimencode -b" "mimencode -u -b")
|
||||
(b64 "mmencode -b" "mmencode -u -b")
|
||||
(b64 "recode data..base64" "recode base64..data")
|
||||
|
|
|
@ -4258,6 +4258,16 @@ Invokes `password-read' if available, `read-passwd' else."
|
|||
;;;###tramp-autoload
|
||||
(defun tramp-clear-passwd (vec)
|
||||
"Clear password cache for connection related to VEC."
|
||||
(let ((hop (tramp-file-name-hop vec)))
|
||||
(when hop
|
||||
;; Clear also the passwords of the hops.
|
||||
(tramp-clear-passwd
|
||||
(tramp-dissect-file-name
|
||||
(concat
|
||||
tramp-prefix-format
|
||||
(tramp-compat-replace-regexp-in-string
|
||||
(concat tramp-postfix-hop-regexp "$")
|
||||
tramp-postfix-host-format hop))))))
|
||||
(tramp-compat-funcall
|
||||
'password-cache-remove
|
||||
(tramp-make-tramp-file-name
|
||||
|
|
Loading…
Add table
Reference in a new issue