tramp-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

"Tramp failed to connect" to an ssh server (gpg as an ssh agent)


From: Daniel Krajnik
Subject: "Tramp failed to connect" to an ssh server (gpg as an ssh agent)
Date: Thu, 7 Sep 2023 18:38:24 +0100
User-agent: Mozilla Thunderbird

Hi


I'm wondering if anyone is able to use Tramp with a gpg smart card or a gpg agent that manages the ssh socket (so acts as an ssh agent)?

For me it fails with file-error "Tramp failed to connect. If this happens repeatedly, try\n ‘M-x tramp-cleanup-this-connection’"))"

I tried tramp-cleanup-this-connection, but no, that didn't help.

Tramp seems to work locally - I am able to "sudo-this-file" and enter pin to unlock sudo (it's managed by the smart card U2F pam module).

Any suggestions how to approach debugging this would be very welcome.


Debugger:

Debugger entered--Lisp error: (file-error "Tramp failed to connect.  If this happens repeated...")
  apply(debug error (file-error "Tramp failed to connect.  If this happens repeated..."))
  edebug(error (file-error "Tramp failed to connect.  If this happens repeated..."))
  signal(file-error ("Tramp failed to connect.  If this happens repeated..."))
  tramp-error(nil file-error "Tramp failed to connect.  If this happens repeated...")
  tramp-signal-hook-function(file-error ("Tramp failed to connect.  If this happens repeated..."))
  signal(file-error ("Tramp failed to connect.  If this happens repeated..."))
  (edebug-after (edebug-before 478) 485 (signal (edebug-after (edebug-before 479) 481 (car (edebug-after 0 480 err))) (edebug-after (edebug-before 482) 484 (cdr (edebug-after 0 483 err)))))
  (condition-case err (edebug-after (edebug-before 97) 474 (if (edebug-after (edebug-before 98) 100 (process-live-p (edebug-after 0 99 p))) nil (edebug-after (edebug-before 101) 473 (if (or noninteractive inhibit-message) (progn (edebug-after (edebug-before 133) 472 (catch ... ... ... ... ... ... ... ... ...))) (tramp-message (edebug-after 0 102 vec) 3 "%s..." (edebug-after (edebug-before 103) 132 (if ... ... ...))) (let ((cookie "failed") (tm ...)) (unwind-protect (prog1 ... ...) (if tm ...) (tramp-message ... 3 "%s...%s" ... cookie))))))) ((error quit) (edebug-after (edebug-before 475) 477 (tramp-cleanup-connection (edebug-after 0 476 vec) t)) (edebug-after (edebug-before 478) 485 (signal (edebug-after (edebug-before 479) 481 (car (edebug-after 0 480 err))) (edebug-after (edebug-before 482) 484 (cdr (edebug-after 0 483 err)))))))
  (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if (edebug-after (edebug-before 98) 100 (process-live-p (edebug-after 0 99 p))) nil (edebug-after (edebug-before 101) 473 (if (or noninteractive inhibit-message) (progn (edebug-after ... 472 ...)) (tramp-message (edebug-after 0 102 vec) 3 "%s..." (edebug-after ... 132 ...)) (let (... ...) (unwind-protect ... ... ...)))))) ((error quit) (edebug-after (edebug-before 475) 477 (tramp-cleanup-connection (edebug-after 0 476 vec) t)) (edebug-after (edebug-before 478) 485 (signal (edebug-after (edebug-before 479) 481 (car (edebug-after 0 480 err))) (edebug-after (edebug-before 482) 484 (cdr (edebug-after 0 483 err))))))))
  (let ((p (edebug-after (edebug-before 8) 10 (tramp-get-connection-process (edebug-after 0 9 vec)))) (process-name (edebug-after (edebug-before 11) 13 (tramp-get-connection-property (edebug-after 0 12 vec) "process-name"))) (process-environment (edebug-after (edebug-before 14) 16 (copy-sequence (edebug-after 0 15 process-environment)))) (pos (edebug-after (edebug-before 17) 23 (save-current-buffer (set-buffer (edebug-after (edebug-before 18) 20 (tramp-get-connection-buffer ...))) (edebug-after (edebug-before 21) 22 (point)))))) (edebug-after (edebug-before 24) 58 (if (edebug-after (edebug-before 25) 55 (or (edebug-after (edebug-before 26) 28 (process-live-p (edebug-after 0 27 p))) (edebug-after (edebug-before 29) 36 (and (edebug-after ... 32 ...) (edebug-after ... 35 ...))) (edebug-after (edebug-before 37) 44 (not (edebug-after ... 43 ...))) (edebug-after (edebug-before 45) 54 (time-less-p (edebug-after ... 50 ...) (edebug-after ... 53 ...))))) nil (edebug-after (edebug-before 56) 57 (throw 'suppress 'suppress)))) (edebug-after (edebug-before 59) 95 (condition-case nil (edebug-after (edebug-before 60) 89 (if (edebug-after (edebug-before 61) 72 (and (edebug-after ... 68 ...) (edebug-after ... 71 ...))) (progn (edebug-after (edebug-before 73) 75 (tramp-send-command ... "echo are you awake" t t)) (edebug-after (edebug-before 76) 88 (if ... nil ...))))) (file-error (edebug-after (edebug-before 90) 92 (tramp-cleanup-connection (edebug-after 0 91 vec) t)) (edebug-after (edebug-before 93) 94 (setq p nil))))) (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if (edebug-after (edebug-before 98) 100 (process-live-p (edebug-after 0 99 p))) nil (edebug-after (edebug-before 101) 473 (if (or noninteractive inhibit-message) (progn ...) (tramp-message ... 3 "%s..." ...) (let ... ...))))) ((error quit) (edebug-after (edebug-before 475) 477 (tramp-cleanup-connection (edebug-after 0 476 vec) t)) (edebug-after (edebug-before 478) 485 (signal (edebug-after (edebug-before 479) 481 (car ...)) (edebug-after (edebug-before 482) 484 (cdr ...))))))))
  (edebug-after (edebug-before 7) 487 (let ((p (edebug-after (edebug-before 8) 10 (tramp-get-connection-process (edebug-after 0 9 vec)))) (process-name (edebug-after (edebug-before 11) 13 (tramp-get-connection-property (edebug-after 0 12 vec) "process-name"))) (process-environment (edebug-after (edebug-before 14) 16 (copy-sequence (edebug-after 0 15 process-environment)))) (pos (edebug-after (edebug-before 17) 23 (save-current-buffer (set-buffer (edebug-after ... 20 ...)) (edebug-after (edebug-before 21) 22 (point)))))) (edebug-after (edebug-before 24) 58 (if (edebug-after (edebug-before 25) 55 (or (edebug-after (edebug-before 26) 28 (process-live-p ...)) (edebug-after (edebug-before 29) 36 (and ... ...)) (edebug-after (edebug-before 37) 44 (not ...)) (edebug-after (edebug-before 45) 54 (time-less-p ... ...)))) nil (edebug-after (edebug-before 56) 57 (throw 'suppress 'suppress)))) (edebug-after (edebug-before 59) 95 (condition-case nil (edebug-after (edebug-before 60) 89 (if (edebug-after (edebug-before 61) 72 (and ... ...)) (progn (edebug-after ... 75 ...) (edebug-after ... 88 ...)))) (file-error (edebug-after (edebug-before 90) 92 (tramp-cleanup-connection (edebug-after 0 91 vec) t)) (edebug-after (edebug-before 93) 94 (setq p nil))))) (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if (edebug-after (edebug-before 98) 100 (process-live-p ...)) nil (edebug-after (edebug-before 101) 473 (if ... ... ... ...)))) ((error quit) (edebug-after (edebug-before 475) 477 (tramp-cleanup-connection (edebug-after 0 476 vec) t)) (edebug-after (edebug-before 478) 485 (signal (edebug-after ... 481 ...) (edebug-after ... 484 ...))))))))
  (closure ((vec tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil)) nil (edebug-after (edebug-before 0) 6 (if (edebug-after (edebug-before 1) 3 (tramp-connectable-p (edebug-after 0 2 vec))) nil (edebug-after (edebug-before 4) 5 (throw 'non-essential 'non-essential)))) (edebug-after (edebug-before 7) 487 (let ((p (edebug-after (edebug-before 8) 10 (tramp-get-connection-process (edebug-after 0 9 vec)))) (process-name (edebug-after (edebug-before 11) 13 (tramp-get-connection-property (edebug-after 0 12 vec) "process-name"))) (process-environment (edebug-after (edebug-before 14) 16 (copy-sequence (edebug-after 0 15 process-environment)))) (pos (edebug-after (edebug-before 17) 23 (save-current-buffer (set-buffer ...) (edebug-after ... 22 ...))))) (edebug-after (edebug-before 24) 58 (if (edebug-after (edebug-before 25) 55 (or (edebug-after ... 28 ...) (edebug-after ... 36 ...) (edebug-after ... 44 ...) (edebug-after ... 54 ...))) nil (edebug-after (edebug-before 56) 57 (throw 'suppress 'suppress)))) (edebug-after (edebug-before 59) 95 (condition-case nil (edebug-after (edebug-before 60) 89 (if (edebug-after ... 72 ...) (progn ... ...))) (file-error (edebug-after (edebug-before 90) 92 (tramp-cleanup-connection ... t)) (edebug-after (edebug-before 93) 94 (setq p nil))))) (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if (edebug-after ... 100 ...) nil (edebug-after ... 473 ...))) ((error quit) (edebug-after (edebug-before 475) 477 (tramp-cleanup-connection ... t)) (edebug-after (edebug-before 478) 485 (signal ... ...))))))))()
  edebug-default-enter(tramp-maybe-open-connection ((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil)) (closure ((vec tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil)) nil (edebug-after (edebug-before 0) 6 (if (edebug-after (edebug-before 1) 3 (tramp-connectable-p (edebug-after 0 2 vec))) nil (edebug-after (edebug-before 4) 5 (throw 'non-essential 'non-essential)))) (edebug-after (edebug-before 7) 487 (let ((p (edebug-after (edebug-before 8) 10 (tramp-get-connection-process ...))) (process-name (edebug-after (edebug-before 11) 13 (tramp-get-connection-property ... "process-name"))) (process-environment (edebug-after (edebug-before 14) 16 (copy-sequence ...))) (pos (edebug-after (edebug-before 17) 23 (save-current-buffer ... ...)))) (edebug-after (edebug-before 24) 58 (if (edebug-after (edebug-before 25) 55 (or ... ... ... ...)) nil (edebug-after (edebug-before 56) 57 (throw ... ...)))) (edebug-after (edebug-before 59) 95 (condition-case nil (edebug-after (edebug-before 60) 89 (if ... ...)) (file-error (edebug-after ... 92 ...) (edebug-after ... 94 ...)))) (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if ... nil ...)) ((error quit) (edebug-after ... 477 ...) (edebug-after ... 485 ...))))))))
  edebug-enter(tramp-maybe-open-connection ((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil)) (closure ((vec tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil)) nil (edebug-after (edebug-before 0) 6 (if (edebug-after (edebug-before 1) 3 (tramp-connectable-p (edebug-after 0 2 vec))) nil (edebug-after (edebug-before 4) 5 (throw 'non-essential 'non-essential)))) (edebug-after (edebug-before 7) 487 (let ((p (edebug-after (edebug-before 8) 10 (tramp-get-connection-process ...))) (process-name (edebug-after (edebug-before 11) 13 (tramp-get-connection-property ... "process-name"))) (process-environment (edebug-after (edebug-before 14) 16 (copy-sequence ...))) (pos (edebug-after (edebug-before 17) 23 (save-current-buffer ... ...)))) (edebug-after (edebug-before 24) 58 (if (edebug-after (edebug-before 25) 55 (or ... ... ... ...)) nil (edebug-after (edebug-before 56) 57 (throw ... ...)))) (edebug-after (edebug-before 59) 95 (condition-case nil (edebug-after (edebug-before 60) 89 (if ... ...)) (file-error (edebug-after ... 92 ...) (edebug-after ... 94 ...)))) (edebug-after (edebug-before 96) 486 (condition-case err (edebug-after (edebug-before 97) 474 (if ... nil ...)) ((error quit) (edebug-after ... 477 ...) (edebug-after ... 485 ...))))))))
  tramp-maybe-open-connection((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil))
  tramp-send-command((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) "echo ~ 2>/dev/null; echo tramp_exit_status $?")
  tramp-send-command-and-check((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) "echo ~")
  tramp-sh-handle-get-home-directory((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) "")
  apply(tramp-sh-handle-get-home-directory ((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) ""))
  tramp-sh-file-name-handler(tramp-get-home-directory (tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) "")
  apply(tramp-sh-file-name-handler tramp-get-home-directory ((tramp-file-name "ssh" nil nil "128.40.123.56" "48273" "" nil) ""))
  (edebug-after (edebug-before 68) 72 (apply (edebug-after 0 69 foreign) (edebug-after 0 70 operation) (edebug-after 0 71 args)))
  (catch 'suppress (edebug-after (edebug-before 68) 72 (apply (edebug-after 0 69 foreign) (edebug-after 0 70 operation) (edebug-after 0 71 args))))
...

Best wishes,

Daniel

Attachment: OpenPGP_0xCFC60FFCAAEC3A7D.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]