emacs-devel
[Top][All Lists]
Advanced

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

Re: I miss ange-ftp (address@hidden)


From: Robert J. Chassell
Subject: Re: I miss ange-ftp (address@hidden)
Date: Tue, 26 Nov 2002 12:50:20 +0000 (UTC)

I was able to visit and also save a remote file using ange-ftp, but I
had to get out of the debugger first and then find the buried file.

Using today's CVS snapshot, Tue, 2002 Nov 26  11:49 UTC
GNU Emacs 21.3.50.48 (i686-pc-linux-gnu, X toolkit)
started with

     /usr/local/bin/emacs -q --no-site-file --eval '(blink-cursor-mode 0)'

First, I evaluated all the following:

    (progn
      (require 'tramp)
      (setq tramp-verbose 10)
      (setq tramp-debug-buffer t)
      (setq tramp-default-method "smx")
      ;; when running `emacs -q -l ... ' need to set this
      (custom-set-variables '(shell-prompt-pattern "^[^#$%
    ]*[#$%>] *")))

     ;; [need passive mode for ftp with firewall]
    (setq ange-ftp-try-passive-mode t)

    ;; [set ange-ftp-default-user for ange-ftp]
    (custom-set-variables '(ange-ftp-default-user "address@hidden"))


    ;;; from emacs/lisp/net/ange-ftp.el

    ;;; This regexp takes care of real ange-ftp file names (with a slash
    ;;; and colon).
    ;;; Don't allow the host name to end in a period--some systems use /.:
    ;;;###autoload
    (or (assoc "^/[^/:]*[^/:.]:" file-name-handler-alist)
        (setq file-name-handler-alist
              (cons '("^/[^/:]*[^/:.]:" . ange-ftp-hook-function)
                    file-name-handler-alist)))

    ;;; This regexp recognizes absolute filenames with only one component,
    ;;; for the sake of hostname completion.
    ;;;###autoload
    (or (assoc "^/[^/:]*\\'" file-name-handler-alist)
        (setq file-name-handler-alist
              (cons '("^/[^/:]*\\'" . ange-ftp-completion-hook-function)
                    file-name-handler-alist)))

    ;;; This regexp recognizes absolute filenames with only one component
    ;;; on Windows, for the sake of hostname completion.
    ;;; NB. Do not mark this as autoload, because it is very common to
    ;;; do completions in the root directory of drives on Windows.
    (and (memq system-type '(ms-dos windows-nt))
         (or (assoc "^[a-zA-Z]:/[^/:]*\\'" file-name-handler-alist)
             (setq file-name-handler-alist
                   (cons '("^[a-zA-Z]:/[^/:]*\\'" .
                           ange-ftp-completion-hook-function)
                         file-name-handler-alist))))


Then I visited a file with a command like this (I changed the name of
the user and the destination):

    (find-file "/address@hidden:~user/public_html/links.html" nil)


This threw me into the debugger:


Debugger entered--Lisp error: (error "Method `smx' didn't specify a connection 
function")
  signal(error ("Method `smx' didn't specify a connection function"))
  error("Method `%s' didn't specify a connection function" "smx")
  tramp-get-connection-function(nil "smx" "user" "foo.net")
  tramp-maybe-open-connection(nil nil "user" "foo.net")
  tramp-get-file-exists-command(nil nil "user" "foo.net")
  
tramp-handle-file-exists-p(#("/address@hidden:/home/user/public_html/links.html"
 0 14 nil 14 24 (rear-nonsticky t field output inhibit-line-move-field-capture 
t) 24 47 nil))
  
tramp-handle-file-attributes(#("/address@hidden:/home/user/public_html/links.html"
 0 14 nil 14 24 (rear-nonsticky t field output inhibit-line-move-field-capture 
t) 24 47 nil))
  tramp-handle-file-modes(#("/address@hidden:/home/user/public_html/links.html" 
0 14 nil 14 24 (rear-nonsticky t field output inhibit-line-move-field-capture 
t) 24 47 nil))
  apply(tramp-handle-file-modes 
#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil))
  byte-code("Ã ÄÅ   A\n\"*‡" [save-match-data-internal fn args match-data 
((set-match-data save-match-data-internal)) apply] 3)
  tramp-file-name-handler(file-modes 
#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil))
  file-modes(#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 
24 (rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil))
  apply(file-modes #("/address@hidden:/home/user/public_html/links.html" 0 14 
nil 14 24 (rear-nonsticky t field output inhibit-line-move-field-capture t) 24 
47 nil))
  ange-ftp-run-real-handler(file-modes 
(#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil)))
  ange-ftp-hook-function(file-modes 
#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil))
  file-modes(#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 
24 (rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil))
  after-find-file(nil t)
  find-file-noselect-1(#<buffer links.html> 
#("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil) 
nil nil #("/address@hidden:/home/user/public_html/links.html" 0 14 nil 14 24 
(rear-nonsticky t field output inhibit-line-move-field-capture t) 24 47 nil) (1 
-1))
  find-file-noselect("/address@hidden:~user/public_html/links.html" nil nil nil)
  find-file("/address@hidden:~user/public_html/links.html" nil)
  eval((find-file "/address@hidden:~user/public_html/links.html" nil))
  eval-last-sexp-1(nil)
  eval-last-sexp(nil)
  call-interactively(eval-last-sexp)



Also, the  *ftp address@hidden  buffer showed this:


ftp> open foo.net
Connected to foo.net.
220 uno.foo.net FTP server (Version wu-2.6.2(1) Fri Feb 22 04:09:00 EST 2002) 
ready.
user "user" Turtle Power!
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
ftp> 331 Password required for user.
230 User user logged in.
ftp> hash
Hash mark printing on (1024 bytes/hash mark).
ftp> pwd
257 "/home/user" is current directory.
ftp> passive on
Passive mode on.
ftp> get ~user /dev/null
227 Entering Passive Mode (209,213,0,60,238,166)
550 /home/user: not a plain file.
ftp> cd /home/user/public_html/links.html/
550 /home/user/public_html/links.html/: Not a directory.
ftp> cd /home/user/public_html/links.html/
550 /home/user/public_html/links.html/: Not a directory.
ftp> cd /home/user/public_html/
250 CWD command successful.
ftp> ls -al /tmp/ange-ftp28849Dge
227 Entering Passive Mode (209,213,0,60,203,199)
150 Opening ASCII mode data connection for /bin/ls.

226 Transfer complete.
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> type binary
200 Type set to I.
ftp> get /home/user/public_html/links.html /tmp/ange-ftp28849Qqk
227 Entering Passive Mode (209,213,0,60,5,174)
150 Opening BINARY mode data connection for /home/user/public_html/links.html 
(11994 bytes).

226 Transfer complete.
11994 bytes received in 1.7 seconds (6.7 Kbytes/s)
ftp> type ascii
200 Type set to A.
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> quote mdtm /home/user/public_html/links.html
213 20021126123133
ftp> 


*** ==> However, the visited file was in a buffer -- albeit buried --
        and I was able to modify the visited remote file and save it.

-- 
    Robert J. Chassell                         Rattlesnake Enterprises
    http://www.rattlesnake.com                  GnuPG Key ID: 004B4AC8
    http://www.teak.cc                             address@hidden







reply via email to

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