tramp-devel
[Top][All Lists]
Advanced

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

tramp (2.0.54); Filenames with spaces


From: Michael Heerdegen
Subject: tramp (2.0.54); Filenames with spaces
Date: Sat, 1 Mar 2008 19:23:17 +0100

Hello,

I know my tramp version is not the newest one, but I reproduced the
following bug with the latest version that I could run; this was
version 2.1.3 used with Emacs 22 and Debian.

If you call `dired-do-copy' with a destination directory handled by
tramp, files whose names include space characters are not copied
properly: Empty files whose names are parts of the source file names
are additionally created in the destination folder.

Instructions for reproduction:

Suppose we have a directory /home/micha/dir1, for example. It includes
a file `a b' with a space character in the middle.

Open dir1 with dired: (dired "/home/micha/dir1" nil). Go to the line with the
`a b' file and press `C' (`dired-do-copy'). Then enter

  /su::/home/micha

for example, and the password.

After that, we do not only have the (correctly) copied file
`/home/micha/a b' but also an empty file `/home/micha/a' which wasn't
there before.

This also occurs with other users or when using the ssh method and a
remote destination directory.



Emacs  : GNU Emacs 21.4.1 (i486-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2007-06-19 on ninsei, modified by Debian
Package: tramp (2.0.54)

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 nil
 tramp-default-method "ssh"
 tramp-rsh-end-of-line "\n"
 tramp-default-password-end-of-line "\n"
 tramp-remote-path '("/usr/xpg4/bin" "/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\\( .*\\)?: *"
 ;; variable encoded due to non-printable characters
 tramp-password-prompt-regexp (base64-decode-string 
"Xi4qXChbcFBdYXNzd29yZFx8cGFzc3BocmFzZVwpLio6AD8gKg==")
 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-terminal-prompt-regexp "\\(TERM = (.*)\\|Terminal type\\? 
\\[.*\\]\\)\\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")
                                         ("ssht" tramp-multi-connect-rlogin
                                          "ssh %h -e none -t -t -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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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")
                  (tramp-password-end-of-line nil))
                 ("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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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")
                  (tramp-password-end-of-line nil))
                 ("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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line 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)
                  (tramp-password-end-of-line "xy"))
                 ("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)
                  (tramp-password-end-of-line "xy"))
                 ("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")
                  (tramp-password-end-of-line "xy"))
                 ("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-password-end-of-line nil))
                 )
 tramp-end-of-output "///8fb61216803a5f1d92f25612d3ca3c16"
 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 /dev/stdout"
                          tramp-uuencode-region uudecode-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-process-alive-regexp
                               tramp-action-process-alive)
                              )
 tramp-actions-copy-out-of-band '((tramp-password-prompt-regexp
                                   tramp-action-password)
                                  (tramp-wrong-passwd-regexp
                                   tramp-action-permission-denied)
                                  (tramp-process-alive-regexp
                                   tramp-action-out-of-band)
                                  )
 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-process-alive-regexp
                        tramp-multi-action-process-alive)
                       )
 tramp-terminal-type "dumb"
 ;; variable encoded due to non-printable characters
 tramp-shell-prompt-pattern (base64-decode-string 
"XlteIyQlPgpdKlsjJCU+XSAqXCgbXFtbMC05O10qW2EtekEtWl0gKlwpKg==")
 tramp-chunksize nil
 tramp-backup-directory-alist nil
 shell-prompt-pattern "^[^#$%>\n]*[#$%>] *"
 backup-by-copying nil
 backup-by-copying-when-linked t
 backup-by-copying-when-mismatch t
 backup-by-copying-when-privileged-mismatch 200
 password-cache t
 password-cache-expiry 16
 backup-directory-alist nil
 file-name-handler-alist 
'(("\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'\\|\\.bz2\\'\\|\\.tgz\\'\\|\\.g?z\\(~\\|\\.~[0-9]+~\\)?\\'"
 . jka-compr-handler)
                           ("^/[^/]*$" . tramp-completion-file-name-handler)
                           
("\\.\\(GIF\\|JP\\(?:E?G\\)\\|P\\(?:BM\\|GM\\|NG\\|PM\\)\\|TIFF?\\|X\\(?:[BP]M\\)\\|gif\\|jp\\(?:e?g\\)\\|p\\(?:bm\\|gm\\|ng\\|pm\\)\\|tiff?\\|x\\(?:[bp]m\\)\\)\\'"
 . image-file-handler)
                           ("\\`/[^/:]+:" . tramp-file-name-handler)
                           ("\\`/:" . file-name-non-special))
 )




reply via email to

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