tramp-devel
[Top][All Lists]
Advanced

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

tramp (2.0.35); two tramp buffers (nil/, ssh/) are created on startup


From: Hanak David
Subject: tramp (2.0.35); two tramp buffers (nil/, ssh/) are created on startup
Date: Tue, 24 Jun 2003 20:33:36 +0200
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

Enter your bug report in this message, including as much detail as you
possibly can about the problem, what you did to cause it and what the
local and remote machines are.

If you can give a simple set of instructions to make this bug happen
reliably, please include those.  Thank you for helping kill bugs in
TRAMP.

Another useful thing to do is to put (setq tramp-debug-buffer t) in
the ~/.emacs file and to repeat the bug.  Then, include the contents
of the *tramp/foo* buffer and the *debug tramp/foo* buffer in your bug
report.

--bug report follows this line--
Greetings,

The following bug was *not* present in version 2.0.33, only in 2.0.34 and
2.0.35.

When I open a new connection to a site, the rather slow "first-time-login"
process runs twice.  This is because at first tramp doesn't know which
method it uses to connect to the site, and uses *tramp/nil ...* buffer for
communication, but somewhere after testing /bin/ls for the -n option, it
realizes that the method is actually ssh, and opens a new buffer,
*tramp/ssh ...*, and everything starts all over again.  You can see that in
the messages buffer, look for the two "Opening connection..." lines (there
was no interaction while these lines appeared):

,----[ *Messages* buffer ]
| tramp: Opening connection at dp.iit.bme.hu using nil...
| tramp: Waiting for prompts from remote shell
| tramp: Waiting 60s for prompt from remote shell
| tramp: Found remote shell prompt.
| tramp: Initializing remote shell
| tramp: Waiting 30s for remote `/bin/sh' to come up...
| Loading time-date...done
| tramp: Setting up remote shell environment
| tramp: Determining coding system
| tramp: Waiting 30s for `HISTFILE=$HOME/.tramp_history; HISTSIZE=1'
| tramp: Waiting 30s for `set +o vi +o emacs'
| tramp: Waiting 30s for `unset MAIL MAILCHECK MAILPATH'
| tramp: Waiting 30s for `unset CDPATH'
| tramp: Setting shell prompt
| tramp: Remote `/bin/sh' groks tilde expansion, good
| tramp: Finding command to check if file exists
| tramp: Finding a suitable `ls' command
| tramp: Checking remote `/bin/ls' command for `-n' option
| tramp: Testing remote command `/bin/ls' for -n...okay
| tramp: Using remote command `/bin/ls' for getting directory listings
| tramp: Opening connection at dp.iit.bme.hu using ssh...
| tramp: Waiting for prompts from remote shell
| tramp: Waiting 60s for prompt from remote shell
| tramp: Found remote shell prompt.
| tramp: Initializing remote shell
| tramp: Waiting 30s for remote `/bin/sh' to come up...
| tramp: Setting up remote shell environment
| tramp: Determining coding system
| tramp: Waiting 30s for `HISTFILE=$HOME/.tramp_history; HISTSIZE=1'
| tramp: Waiting 30s for `set +o vi +o emacs'
| tramp: Waiting 30s for `unset MAIL MAILCHECK MAILPATH'
| tramp: Waiting 30s for `unset CDPATH'
| tramp: Setting shell prompt
| tramp: Remote `/bin/sh' groks tilde expansion, good
| tramp: Finding command to check if file exists
| tramp: Finding a suitable `ls' command
| tramp: Checking remote `/bin/ls' command for `-n' option
| tramp: Testing remote command `/bin/ls' for -n...okay
| tramp: Using remote command `/bin/ls' for getting directory listings
| tramp: Sending the Perl `file-attributes' implementation.
| tramp: Sending the Perl `mime-encode' implementations.
| tramp: Sending the Perl `mime-decode' implementations.
| tramp: Checking remote encoding command `mimencode -b' for sanity
| tramp: Checking remote decoding command `mimencode -u -b' for sanity
| tramp: Checking to see if encoding/decoding commands work on remote 
host...done
| tramp: Sending the Perl `file-attributes' implementation.
| tramp: Sending the Perl `mime-encode' implementations.
| tramp: Sending the Perl `mime-decode' implementations.
| tramp: Checking remote encoding command `mimencode -b' for sanity
| tramp: Checking remote decoding command `mimencode -u -b' for sanity
| tramp: Checking to see if encoding/decoding commands work on remote 
host...done
`----

The problem could be fixed with the following patch:

*** /usr/share/emacs/site-lisp/tramp/tramp.el   2003-06-24 20:08:23.000000000 
+0200
--- /home/david/progs/lisp/tramp.el     2003-06-24 20:13:11.000000000 +0200
***************
*** 4118,4126 ****
    (cond (multi-method
           (tramp-buffer-name-multi-method "tramp" multi-method method user 
host))
          (user
!          (format "*tramp/%s address@hidden" method user host))
          (t
!          (format "*tramp/%s %s*" method host))))
  
  (defun tramp-buffer-name-multi-method (prefix multi-method method user host)
    "A name for the multi method connection buffer.
--- 4118,4130 ----
    (cond (multi-method
           (tramp-buffer-name-multi-method "tramp" multi-method method user 
host))
          (user
!          (format "*tramp/%s address@hidden"
!                (tramp-find-method multi-method method user host)
!                user host))
          (t
!          (format "*tramp/%s %s*"
!                (tramp-find-method multi-method method user host)
!                host))))
  
  (defun tramp-buffer-name-multi-method (prefix multi-method method user host)
    "A name for the multi method connection buffer.

But the "Opening connection ... using nil" message is also unfortunate.  So
I guess it better be fixed at a point *before* calling tramp-open-connection-...

David

-----

Emacs  : GNU Emacs 21.3.50.1 (i386-mandrake-linux-gnu, X toolkit, Xaw3d scroll 
bars)
 of 2003-06-16 on maui.hanak.hu
Package: tramp (2.0.35)

current state:
==============
(setq
 tramp-ls-command nil
 tramp-test-groks-nt nil
 tramp-file-exists-command nil
 tramp-current-multi-method nil
 tramp-current-method nil
 tramp-current-user nil
 tramp-current-host nil
 tramp-auto-save-directory "/tmp"
 tramp-default-method "ssh"
 tramp-rsh-end-of-line "\n"
 tramp-password-end-of-line "\n"
 tramp-remote-path '("/bin" "/usr/bin" "/usr/sbin" "/usr/local/bin" 
"/usr/ccs/bin" "/local/bin"
                     "/local/freeware/bin" "/local/gnu/bin" "/usr/freeware/bin" 
"/usr/pkg/bin"
                     "/usr/contrib/bin")
 tramp-login-prompt-regexp ".*ogin: *"
 tramp-password-prompt-regexp "^.*\\([pP]assword\\|passphrase.*\\):.? *"
 tramp-wrong-passwd-regexp "^.*\\(Connection 
\\(?:\\(?:clo\\|refu\\)sed\\)\\|Host key verification failed\\.\\|Login 
\\(?:[Ii]ncorrect\\)\\|Name or service not known\\|\\(?:Permission 
denied\\|Sorry, try again\\)\\.\\).*\\|^.*\\(Received signal [0-9]+\\).*"
 tramp-yesno-prompt-regexp "\\(Are you sure you want to continue connecting 
(yes/no)\\?\\)\\s-*"
 tramp-yn-prompt-regexp "\\(Store key in cache\\? (y/n)\\)\\s-*"
 tramp-temp-name-prefix "tramp."
 tramp-file-name-structure '("^/\\(\\([a-zA-Z_0-9-]+\\):\\)?\\(\\([^:@/         
]*\\)@\\)?\\([a-zA-Z0-9_.#-]*\\):\\(.*$\\)" 2 4 5 6)
 tramp-file-name-regexp "\\`/[^/:]+:"
 tramp-multi-file-name-structure 
'("^/\\(\\([a-zA-Z_0-9-]+\\)\\)?\\(\\(:%s\\)+\\)?:\\(.*$\\)" 2 3
                                   -1)
 tramp-multi-file-name-hop-structure '("\\([a-zA-Z_0-9-]+\\):\\([^:@/   
]*\\)@\\([a-zA-Z0-9_.#-]*\\)" 1 2 3)
 tramp-multi-methods '("multi" "multiu")
 tramp-multi-connection-function-alist '(("telnet" tramp-multi-connect-telnet 
"telnet %h%n")
                                         ("rsh" tramp-multi-connect-rlogin "rsh 
%h -l %u%n")
                                         ("remsh" tramp-multi-connect-rlogin 
"remsh %h -l %u%n")
                                         ("ssh" tramp-multi-connect-rlogin "ssh 
%h -l %u%n")
                                         ("su" tramp-multi-connect-su "su - 
%u%n")
                                         ("sudo" tramp-multi-connect-su
                                          "sudo -u %u -s -p Password:%n")
                                         )
 tramp-methods '(("smb") ("ftp")
                 ("rcp" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "rsh") (tramp-copy-program "rcp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args nil) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg "-p"))
                 ("scp" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program "scp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg "-p"))
                 ("scp1" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program "scp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-1" "-e" 
"none"))
                  (tramp-copy-args ("-1")) (tramp-copy-keep-date-arg "-p"))
                 ("scp2" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program "scp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-2" "-e" 
"none"))
                  (tramp-copy-args ("-2")) (tramp-copy-keep-date-arg "-p"))
                 ("scp1_old" (tramp-connection-function 
tramp-open-connection-rsh)
                  (tramp-login-program "ssh1") (tramp-copy-program "scp1")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg "-p"))
                 ("scp2_old" (tramp-connection-function 
tramp-open-connection-rsh)
                  (tramp-login-program "ssh2") (tramp-copy-program "scp2")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg "-p"))
                 ("rsync" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program "rsync")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args ("-e" "ssh")) (tramp-copy-keep-date-arg 
"-t"))
                 ("remcp" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "remsh") (tramp-copy-program "rcp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args nil) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg "-p"))
                 ("rsh" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "rsh") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args nil) (tramp-copy-args nil) 
(tramp-copy-keep-date-arg nil))
                 ("ssh" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args ("-e" "none")) (tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("ssh1" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args ("-1" "-e" "none")) (tramp-copy-args ("-1"))
                  (tramp-copy-keep-date-arg nil))
                 ("ssh2" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args ("-2" "-e" "none")) (tramp-copy-args ("-2"))
                  (tramp-copy-keep-date-arg nil))
                 ("ssh1_old" (tramp-connection-function 
tramp-open-connection-rsh)
                  (tramp-login-program "ssh1") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg nil))
                 ("ssh2_old" (tramp-connection-function 
tramp-open-connection-rsh)
                  (tramp-login-program "ssh2") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg nil))
                 ("remsh" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "remsh") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args nil) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("telnet" (tramp-connection-function 
tramp-open-connection-telnet)
                  (tramp-login-program "telnet") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args nil) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("su" (tramp-connection-function tramp-open-connection-su)
                  (tramp-login-program "su") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args ("-" "%u")) (tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("sudo" (tramp-connection-function tramp-open-connection-su)
                  (tramp-login-program "sudo") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-u" "%u" "-s" 
"-p" "Password:"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg nil))
                 ("multi" (tramp-connection-function 
tramp-open-connection-multi)
                  (tramp-login-program nil) (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args nil) (tramp-copy-args nil) 
(tramp-copy-keep-date-arg nil))
                 ("scpx" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program "scp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-e" "none" 
"-t" "-t" "/bin/sh"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg "-p"))
                 ("sshx" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "ssh") (tramp-copy-program nil) 
(tramp-remote-sh "/bin/sh")
                  (tramp-login-args ("-e" "none" "-t" "-t" "/bin/sh")) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("krlogin" (tramp-connection-function 
tramp-open-connection-rsh)
                  (tramp-login-program "krlogin") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-x")) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("plink" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "plink") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-ssh")) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg nil))
                 ("plink1" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "plink") (tramp-copy-program nil)
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-1" "-ssh"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg nil))
                 ("pscp" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "plink") (tramp-copy-program "pscp")
                  (tramp-remote-sh "/bin/sh") (tramp-login-args ("-ssh")) 
(tramp-copy-args nil)
                  (tramp-copy-keep-date-arg "-p"))
                 ("fcp" (tramp-connection-function tramp-open-connection-rsh)
                  (tramp-login-program "fsh") (tramp-copy-program "fcp")
                  (tramp-remote-sh "/bin/sh -i") (tramp-login-args ("sh" "-i"))
                  (tramp-copy-args nil) (tramp-copy-keep-date-arg "-p"))
                 )
 tramp-end-of-output "///1b738ef68522524228a69cf60da187ca"
 tramp-coding-commands '(("mimencode -b" "mimencode -u -b" base64-encode-region
                          base64-decode-region)
                         ("mmencode -b" "mmencode -u -b" base64-encode-region 
base64-decode-region)
                         ("recode data..base64" "recode base64..data" 
base64-encode-region
                          base64-decode-region)
                         ("uuencode xxx" "uudecode -o -" tramp-uuencode-region
                          uudecode-decode-region)
                         ("uuencode xxx" "uudecode -p" tramp-uuencode-region
                          uudecode-decode-region)
                         ("uuencode xxx" "tramp_uudecode" tramp-uuencode-region
                          uudecode-decode-region)
                         ("tramp_encode_with_module" "tramp_decode_with_module"
                          base64-encode-region base64-decode-region)
                         ("tramp_encode" "tramp_decode" base64-encode-region 
base64-decode-region))
 tramp-actions-before-shell '((tramp-password-prompt-regexp 
tramp-action-password)
                              (tramp-login-prompt-regexp tramp-action-login)
                              (shell-prompt-pattern tramp-action-succeed)
                              (tramp-shell-prompt-pattern tramp-action-succeed)
                              (tramp-wrong-passwd-regexp 
tramp-action-permission-denied)
                              (tramp-yesno-prompt-regexp tramp-action-yesno)
                              (tramp-yn-prompt-regexp tramp-action-yn)
                              (tramp-terminal-prompt-regexp 
tramp-action-terminal))
 tramp-multi-actions '((tramp-password-prompt-regexp 
tramp-multi-action-password)
                       (tramp-login-prompt-regexp tramp-multi-action-login)
                       (shell-prompt-pattern tramp-multi-action-succeed)
                       (tramp-shell-prompt-pattern tramp-multi-action-succeed)
                       (tramp-wrong-passwd-regexp 
tramp-multi-action-permission-denied))
 tramp-terminal-type "dumb"
 tramp-shell-prompt-pattern "^[^#$%>\n]*[#$%>] *\\(.\\[[0-9;]*[a-zA-Z] *\\)*"
 tramp-chunksize nil
 shell-prompt-pattern "^? \\|^| \\(\\?-\\)+ \\|^(gdb) 
\\|^\\(ba\\|t?c\\)sh-.*\\$ \\|address@hidden .*\\][$%:#] \\|\\(\\([Oo]ld 
\\|[Nn]ew \\|'s \\|login \\|Kerberos \\|CVS \\|UNIX \\| SMB 
\\|^\\)[Pp]assword\\( (again)\\)?\\|pass phrase\\|\\(Enter\\|Repeat\\) 
passphrase\\)\\( for [^:]+\\)?:\\s *\\'\\|^\\(([0-9]+) \\)?PWD: 
.*$\\|address@hidden(tty.*\\|pts/[0-9]+\\)\\][#:] "
 backup-by-copying nil
 backup-by-copying-when-linked t
 backup-by-copying-when-mismatch t
 backup-by-copying-when-privileged-mismatch 200
 file-name-handler-alist 
'(("\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'\\|\\.bz2\\'\\|\\.tgz\\'\\|\\.g?z\\(~\\|\\.~[0-9]+~\\)?\\'"
 . jka-compr-handler)
                           ("^/[^/]*$" . tramp-completion-file-name-handler)
                           ("^/#" . avfs-normal-find-file-handler)
                           ("\\`/[^/:]+:" . tramp-file-name-handler)
                           ("\\`/:" . file-name-non-special))
 )




reply via email to

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