1. 04 Apr, 2003 1 commit
  2. 29 Mar, 2003 1 commit
    • Kai Großjohann's avatar
      * tramp.el: Version 2.0.31 released. · b1a2b924
      Kai Großjohann authored
      (tramp-handle-expand-file-name): Do not allow ".." to
      cross file handler boundaries, so that "/user@host:/../foo"
      expands to itself, rather than "/foo".  This is intended to work
      in conjunction with a change in `file-relative-name' which makes
      sure to use absolute file names if FILE and DIRECTORY have
      different handlers.
      (tramp-handle-insert-directory): Comment out XEmacs
      kludge.  Suggested by Katsumi Yamaoka <yamaoka@jpl.org>.
      * Makefile.in (../info/tramp): Compile Emacs, instead of XEmacs,
      version of manual.
      * tramp.texi (Auto-save and Backup): New node.
  3. 28 Feb, 2003 1 commit
    • Kai Großjohann's avatar
      Version 2.0.30 released. · 7432277c
      Kai Großjohann authored
      Replace term "path" with "localname" unless it is used for a
      search path.
      (tramp-handle-expand-file-name): Allow ".." to cross host
      (tramp-open-connection-setup-interactive-shell): Unset $ENV in
      addition to setting $PS1 when starting the Bourne-ish shell.  Some
      sh implementations (eg, bash when called as sh) read the file
      named there on startup, which could clobber $PS1.
      (tramp-do-copy-or-rename-file-one-local): New function.  Not
      implemented.  Not used.  Should invoke rcp or scp directly to keep
      the time.
  4. 05 Feb, 2003 1 commit
    • Kai Großjohann's avatar
      2003-02-05 Kai Gro�ohann <kai.grossjohann@uni-duisburg.de> · 8daea7fc
      Kai Großjohann authored
      	Version 2.0.29 released.
      	* net/tramp.el (tramp-send-region): Protect against
      	tramp-chunksize being nil.
      2003-02-04  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-handle-directory-file-name): Handle the case
      	PATH is "".
      	(tramp-completion-handle-file-name-all-completions): Define
      	`tramp-current-user' locally.  See `tramp-parse-passwd'.
      	(tramp-parse-passwd): For su-alike methods it would be desirable
      	to return "root@localhost" as default.  Unfortunately, we have no
      	information whether any user name has been typed already.  So we
      	(mis-)use tramp-current-user as indication, assuming it is set in
      	(tramp-send-region): Handle the case `tramp-chunksize' is equal
      	0.  I did it accidently.  Infinite loop ...
      	* net/tramp-ftp.el (top-level): eval-after-load "ange-ftp"
      	'(tramp-disable-ange-ftp).  Suggested by Kai.
      	(tramp-ftp-file-name-handler): `tramp-disable-ange-ftp' not needed
      	any longer.
      	* net/tramp-smb.el (tramp-smb-file-name-handler-alist): Apply
      	`tramp-handle-directory-file-name' in order to profit from Kai's
      	yesterday changes.
      2003-02-03  Kai Gro�ohann  <kai.grossjohann@uni-duisburg.de>
      	* net/tramp.el (tramp-chunksize): Set default to 500 as workaround
      	for some ssh connections.
      	(tramp-handle-directory-file-name): New implementation.  Not sure
      	if it works.
      2003-01-28  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-get-device): `tramp-make-tramp-file-name'
      	must not be called with NIL path.  It fails in case of
      2003-01-27  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-file-name-for-operation): Apply
      	`expand-file-name' for relative file names only.  Otherwise there
      	might be problems if the default directory is another Tramp
      	directory as the directory the file is based on.
      	(tramp-find-foreign-file-name-handler): Check whether FILENAME is
      	a Tramp file name.  It isn't if it comes from an expanded file
      	name (like "/xx:yy//zz").
      2003-01-25  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-devices): New variable.  Keeps virtual
      	device numbers.  Devices must distinguish physical file systems.
      	The device numbers provided by "lstat" aren't unique, because we
      	operate on different hosts.  So we use virtual device numbers,
      	generated by `tramp-get-device'.  Both Ange-FTP and EFS use device
      	number -1.  In order to be different, we use device number (-1 x),
      	whereby "x" is unique for a given (multi-method method user host).
      	Suggested by Kai.
      	(tramp-perl-file-attributes): Always return device number -1.
      	There will be a virtual device number set in
      	`tramp-handle-file-attributes', which replaces this one.
      	(tramp-handle-file-attributes): Set virtual device number.
      	(tramp-get-device): New function.  Returns the virtual device
      	number.  If it doesn't exist, generate a new one.
      	(tramp-handle-file-regular-p): Use Emacs file name primitives
      	instead of calling tramp-handle-* equivalents directly.  Needed
      	for tramp-smb.
      	* net/tramp-smb.el (tramp-smb-devices, tramp-smb-get-device): Removed.
      	Functionality moved to tramp.el.
      	(tramp-smb-handle-file-attributes): Apply
      	`tramp-get-device'. ATIME and CTIME are (0 0) now (= "don't
      	know"), which is more honest.
      	(tramp-smb-handle-make-directory): Use Emacs file name primitives
      	instead of calling tramp-smb-handle-* equivalents directly.
      	(tramp-smb-read-file-entry): Return size as a number but a string.
      2003-01-24  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-function-alist-ssh): Add parsing
      	of "/etc/ssh_config" and "~/.ssh/config".  Suggested by Kai.
      	(tramp-completion-function-alist, tramp-set-completion-function):
      	Doc string update.
      	(tramp-parse-sconfig, tramp-parse-sconfig-group): New functions.
      	Provide parsing of "~/.ssh/config" style files.
      2003-01-21  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-handle-expand-file-name): Apply
      	`tramp-drop-volume-letter'.  Otherwise, there are problems on W32
      2003-01-21  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp-smb.el (tramp-smb-get-device, tramp-smb-get-inode): New
      	functions.  Device number and inode number don't exist for SMB
      	files.  Therefore we must generate virtual ones.
      	(tramp-smb-devices, tramp-smb-inodes): New variables.  Keep
      	generated virtual device numbers and inodes numbers for SMB files.
      	(tramp-smb-handle-file-attributes): Apply them.
      2003-01-14  Kai Gro�ohann  <kai.grossjohann@uni-duisburg.de>
      	* net/tramp.el (tramp-md5-function): Require md5 before checking
      	function md5.  If using md5-encode, put wrapper around it that
      	converts vector of bytes to ascii text.
      2003-01-13  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-mode): Perform check (integerp
      	last-input-event) before (event-modifiers last-input-event) -
      	there might be problems if `last-input-event' is a mouse event.
      2003-01-12  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-parse-rhosts, tramp-parse-shosts)
      	(tramp-parse-hosts, tramp-parse-passwd, tramp-parse-netrc): Use
      	`file-readable-p' instead of `file-exists-p'.  Otherwise these
      	functions might block.  Reported by <kin@neoscale.com>.
      2003-01-02  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp-ftp.el (top-level): Defaults for
      	`tramp-default-method-alist' must be a list.
      	* net/tramp-smb.el (top-level): Defaults for
      	`tramp-default-method-alist' must be a list.
      2003-01-02  Kai Gro�ohann  <kai.grossjohann@uni-duisburg.de>
      	* net/tramp.el (top-level): Avoid byte-compiler warnings of unused
      	variables if the byte-compiler supports this.  This is for the
      	with-parsed-tramp-file-name macro which is wont to produce such
  5. 04 Feb, 2003 1 commit
  6. 26 Dec, 2002 1 commit
  7. 06 Oct, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.25 released. · 487f4fb7
      Kai Großjohann authored
      (tramp-handle-file-truename): If it's a directory,
      append slash only if result doesn't end in a slash already.
      (tramp-handle-file-truename): Restructure logic.  If list of steps
      is nil, return "/" as the real name.
      (tramp-completion-mode): Add "\\(" and "\\)". Otherwise,
      `match-string' doesn't make sense.  From Michael Albinus.
      (tramp-host-with-port-regexp): New defcustom. Equal to previous
      `tramp-host-regexp'.  From Michael Albinus.
      (tramp-host-regexp): Taken off hashes in host names. Otherwise,
      scanning files like .rhosts would take comments as host names.
      From Michael Albinus.
      (tramp-file-name-structure, tramp-multi-file-name-hop-structure):
      Replace `tramp-host-regexp' by `tramp-host-with-port-regexp'.
      From Michael Albinus.
      (tramp-action-terminal): New function.
      (tramp-terminal-prompt-regexp): New variable, matches "tset"
      (tramp-actions-before-shell): Use them.
      (tramp-handle-shell-command): Logic error.  From Ivan
      Zakharyaschev <imz@altlinux.org>.
  8. 29 Sep, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.24 released. · 3b89d388
      Kai Großjohann authored
      (tramp-methods, tramp-completion-function-alist):
      Rename "*-old" methods to "*_old".  From Michael Albinus.
      (tramp-completion-function-alist): Use
      `tramp-completion-function-alist-ssh' for the "fcp" method.  From
      Michael Albinus.
      (tramp-default-method-alist): Use "su" for "root@localhost".
      (tramp-host-regexp): Allow "#" for "host#port" kludge.
      (tramp-ange-ftp-file-name-p): If METHOD is nil, find the right
      default method.  Require additional args USER and HOST for this.
      Callers changed.
      (tramp-handle-file-local-copy): More local bindings.  Bind results
      of tramp-get-{remote,local}-{de,en}coding earlier to avoid nasty
      "are you awake" problem.
      (tramp-action-password): Protect against clobbered match data.
      (tramp-open-connection-setup-interactive-shell): Explicitly set
      tramp-last-cmd-time before invoking tramp-send-command the first
      time.  Otherwise, tramp-send-command would issue "echo are you
      awake" right at the first time, which is not what we want.
      Reported by Douglas Gray Stephens.
      (tramp-find-inline-encoding): Don't redirect stdout to
      /dev/null to avoid "chmode go-rwx" operation from "mimencode
      >/dev/null" as root(!), and to check the output of the decoding
      (tramp-maybe-open-connection): Don't send "are you awake" if
      process has died.
  9. 23 Sep, 2002 1 commit
  10. 22 Sep, 2002 3 commits
    • Kai Großjohann's avatar
      Version 2.0.22 released. · 292ffc15
      Kai Großjohann authored
      (tramp-parse-rhosts, tramp-parse-shosts)
      (tramp-parse-hosts, tramp-parse-passwd): Apply `push' but
      `add-to-list' for performance reasons.
      (tramp-get-completion-user-host): Return `nil' in case both `user'
      and 'host' are empty (not necessarily `nil'.
      (tramp-parse-netrc, tramp-parse-netrc-group): New functions.
      (tramp-user-regexp): " \t" are not user regexp characters.
      (tramp-completion-handle-file-name-all-completions): Remove
      Ange-FTP cmpletion. It has a bug not handling the "/ftp:" prefix
      completely, and it returns local completions as well.
      (tramp-completion-function-alist-ftp): New constant.
      (tramp-completion-function-alist): Add completion function for
      From Michael Albinus <Michael.Albinus@alcatel.de>.
    • Kai Großjohann's avatar
      Version 2.0.21 released. · 91879624
      Kai Großjohann authored
      (tramp-handle-file-newer-than-file-p): If mtime of both files is
      known, return a useful result.  Better error message in case one
      is a Tramp file and one isn't.
      (tramp-handle-file-local-copy, tramp-handle-write-region)
      (tramp-find-shell, tramp-open-connection-telnet)
      (tramp-open-connection-rsh, tramp-open-connection-su)
      (tramp-post-connection, tramp-maybe-open-connection)
      (tramp-method-out-of-band-p): Correct number of args for
      `tramp-get-rsh-program' and similar functions.
    • Kai Großjohann's avatar
      Sync with version 2.0.20. Lengthy ChangeLog follows: · 16674e4f
      Kai Großjohann authored
      2002-09-22  Kai Gro�ohann  <grossjoh@ls6.informatik.uni-dortmund.de>
      	Version 2.0.20 released.
      2002-09-20  Kai Gro�ohann  <grossjoh@ls6.informatik.uni-dortmund.de>
      	* net/tramp.el (tramp-completion-function-alist): Escape open
      	paren in docstring.
      	(tramp-user-regexp, tramp-host-regexp): Allow empty strings.
      	(tramp-handle-insert-file-contents): Call tramp-message-for-buffer
      	instead of tramp-message.
      	(tramp-open-connection-rsh): Handle empty string as user name.
      	(tramp-open-connection-su): Handle empty string as host name.
      	Handle nil user name.
      	(tramp-handle-file-local-copy, tramp-handle-write-region)
      	(tramp-open-connection-telnet, tramp-open-connection-rsh)
      	(tramp-open-connection-su, tramp-post-connection)
      	(tramp-maybe-open-connection, tramp-method-out-of-band-p)
      	(tramp-get-connection-function, tramp-get-remote-sh)
      	(tramp-get-rsh-program, tramp-get-rsh-args)
      	(tramp-get-rcp-program, tramp-get-rcp-args)
      	(tramp-get-rcp-keep-date-arg, tramp-get-su-program)
      	(tramp-get-su-args, tramp-get-telnet-program)
      	(tramp-get-telnet-args): Use `tramp-find-method', perhaps require
      	additional args USER, HOST.
      	(tramp-action-password, tramp-open-connection-telnet)
      	(tramp-open-connection-su, tramp-open-connection-multi)
      	(tramp-method-out-of-band-p): `tramp-method-out-of-band-p' now
      	takes USER and HOST arguments, to be able to use
      	`tramp-find-method'.  Update callers.
      	(tramp-find-method): New function.
      2002-09-20  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-handle-insert-directory): Handle "--dired"
      	in SWITCHES (by removing it).
      2002-09-18  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-file-name-handler): Add `file-remote-p'
      2002-09-17  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (top-level): Maybe autoload uudecode-decode-region.
      2002-09-16  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-bug): Add tramp-methods.
      2002-09-16  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-methods): Update docstring:
      	tramp-encoding-command, tramp-decoding-command,
      	tramp-encoding-function and tramp-decoding-function are not
      	parameters anymore.
      	(tramp-uuencode-region): Autoload it.
      2002-09-13  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	Version 2.0.19 released.
      	* net/tramp-uu.el: New file, implements uuencode in Lisp.
      	* net/tramp.el (tramp-coding-commands): Use
      	`tramp-uuencode-region' as local encoder for the uuencode based
      2002-09-13  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-handle-write-region): Wrong parens.
      2002-09-13  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	Version 2.0.18 released.
      	* net/tramp.el (tramp-perl-decode): Perl changes to accomodate
      	older versions of Perl.  Now tested with 5.004.  Suggestion from
      	Michael Albinus.
      2002-09-12  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-find-inline-encoding): Call
      	tramp-call-local-coding-command with nil for INPUT and OUTPUT.
      	(tramp-call-local-coding-command): OUTPUT equals nil means to
      	discard the output.  INPUT equals nil means /dev/null.
      2002-09-12  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-encoding-shell): Default to environment
      	variable COMSPEC on Windows.
      	(tramp-handle-write-region): More debugging output.
      	(tramp-find-inline-encoding): Ditto.
      2002-09-11  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-handle-file-name-all-completions):
      	Define `result1'.
      	(tramp-parse-hosts-group): Discard IPv6 entries.
      2002-09-11  Kai Gro�ohann  <grossjoh@ls6.informatik.uni-dortmund.de>
      	* net/tramp.el (tramp-post-connection): Only send Perl
      	mime-encode/decode implementations when using inline method.
      	(tramp-handle-write-region, tramp-post-connection)
      	(tramp-coding-commands, tramp-find-inline-encoding): For the
      	inline encodings, distinguish between local and remote commands,
      	instead of between commands and functions.  (The local commands
      	can be functions, too.)  If the local host is a Windows machine,
      	we can't expect the same commands to work there as on the remote
      	(tramp-call-local-coding-command): New function for calling local
      	encoding and decoding commands.
      	(tramp-set-remote-encoding, tramp-get-remote-encoding)
      	(tramp-set-remote-decoding, tramp-get-remote-decoding)
      	(tramp-set-local-encoding, tramp-get-local-encoding)
      	(tramp-set-local-decoding, tramp-get-local-decoding): New
      	(tramp-get-encoding-command, tramp-set-encoding-command)
      	(tramp-get-decoding-command, tramp-set-decoding-command)
      	(tramp-get-encoding-function, tramp-set-encoding-function)
      	(tramp-get-decoding-function, tramp-set-decoding-function): Old
      	functions, removed.
      2002-09-10  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-open-connection-setup-interactive-shell):
      	Change command to invoke /bin/sh slightly to make it compatible
      	with the `rc' shell.  Suggested by Daniel Pittman.
      2002-09-10  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-handle-write-region): Added missing
      	`)'. Hope it's the right place.
      2002-09-09  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-open-connection-setup-interactive-shell): Do
      	"exec env PS1='$ ' /bin/sh" instead of just "exec /bin/sh" in
      	order to get a sane shell prompt.  If people have ${CWD}, say, in
      	their shell prompt, then the default login shell might display
      	something harmless, but the /bin/sh will display a dollar sign
      	which confused the subsequent prompt recognition.
      	(tramp-multi-action-password): More debugging output.
      	(tramp-encoding-shell): Renamed from tramp-sh-program.  More
      	documentation.  Default to cmd.exe on Windows NT.
      	(tramp-encoding-command-switch): New variable.  Use instead of
      	hard-wired "-c" which is only good for /bin/sh.
      	(tramp-encoding-reads-stdin): New variable.  If t, commands are
      	called like "/bin/sh -c COMMAND <INPUT", if nil, they are called
      	like "/bin/sh -c COMMAND INPUT", ie the input file is the last
      	(tramp-multi-sh-program): Always default to tramp-encoding-shell.
      	(tramp-handle-file-local-copy, tramp-handle-write-region): Respect
      	tramp-encoding-shell and friends.
      	(tramp-find-inline-encoding): Use new-style calls for checking if
      	the local commands work.
      2002-09-07  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-methods): Remove `tramp-completion-function'
      	entries. They are handled now by
      	(tramp-completion-function): Defvar removed. I've never used
      	it. Hmm.
      	(tramp-get-completion-rsh, tramp-get-completion-ssh)
      	(tramp-get-completion-telnet, tramp-get-completion-su): Functions
      	removed as well. Not necessary any longer due to extended
      	customization means.
      	(tramp-completion-function-alist): New defcustom. Holds all
      	FUNCTION FILE pairs used for user and host name completion
      	relevant for METHOD.
      	(tramp-completion-function-alist-su): Defconst for initializing
      	`tramp-completion-function-alist'. Unfortunately, mainly UNIX-like
      	values are known for me until now. Needs to be completed for at
      	least VMS++ like operating systems.
      	(tramp-get-completion-function): New functions for configuration
      	of `tramp-completion-function-alist'. The old definition of
      	`tramp-get-completion-function' has been discarded.
      	(tramp-completion-handle-file-name-all-completions): Change
      	function call for user/host completion according to definition in
      	(tramp-parse-passwd): Added exception handling for "root", because
      	`tramp-get-completion-su' (the previous place for this stuff)
      	doesn't exist any longer.
      2002-09-07  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-enter-password): Use
      	`tramp-password-end-of-line' to terminate the line.
      	(tramp-bug): Include new variable `tramp-password-end-of-line'.
      	(tramp-password-end-of-line): New variable.  People who use plink
      	under Windows might have to issue "\r\n" after the password, but
      	they need to send just "\n" after the other commands.  So this
      	variable was introduced to complement `tramp-rsh-end-of-line'.
      	(tramp-wait-for-output, tramp-post-connection): Allow "\r" at end
      	of line of the output delimiter.
      2002-09-06  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-handle-file-local-copy, tramp-find-shell)
      	(tramp-open-connection-setup-interactive-shell): Add some comments
      	about Douglas Grey Stephen's suggestions to make Tramp work better
      	with plink under Windows.  I'm not sure what to think of them, but
      	now I have a guinea pig to try it out on.  Said guinea pig is
      	having other problems, though...  Also remove some commented-out
      2002-09-06  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-get-completion-methods): Algorithm slightly
      	(tramp-get-completion-user-host): Accept user names as they are if
      	typed until "@".
      	(tramp-completion-mode): Replace `last-input-char' by modern
      	`last-input-event'. Check for `event-modifiers'.
      2002-09-06  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (file-expand-wildcards): Corrected check to see if
      	advising is necessary.
      2002-09-05  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-postfix-single-method-format)
      	(tramp-postfix-user-format): New format strings.
      	(tramp-make-tramp-file-name): Apply them.
      	(tramp-completion-handle-file-name-all-completions): Fix for
      	invoking ange-ftp in case of "/ftp:xxx" file names.
      2002-09-04  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-prefix-format)
      	(tramp-postfix-host-format): New format strings.
      	(tramp-prefix-regexp, tramp-method-regexp)
      	(tramp-user-regexp, tramp-postfix-user-regexp)
      	(tramp-host-regexp, tramp-postfix-host-regexp)
      	(tramp-path-regexp): New atomar regular expressions. If
      	corresponding format strings exist, derived from them.
      	(tramp-parse-passwd-group): Apply these expressions.
      	(tramp-make-multi-tramp-file-format-separate): Removed.
      	(tramp-make-tramp-file-name): Allow partial tramp file
      	names. Generate tramp file format on-the-fly depending on
      	parameters. Apply atomar format strings resp expressions.
      	(tramp-get-completion-user-host): Apply
      	(tramp-parse-hosts-group): Take all host names and IP addresses
      	into account.
      	(tramp-bug): Remove `tramp-make-tramp-file-format'.
      2002-09-01  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-methods): Add `tramp-completion-function'
      	for "su" and "sudo".
      	(tramp-get-completion-telnet): Implement it.
      	(tramp-parse-passwd-group): New functions.
      2002-08-31  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-mode): Check for
      	(tramp-completion-file-name-handler-alist): Add handler for
      	(tramp-completion-handle-file-exists-p): New function.
      	(tramp-completion-handle-file-name-completion): Simplified.
      	(tramp-completion-dissect-file-name): Regexp's reorganised.
      	(tramp-completion-handle-file-name-all-completions): Call
      	completion-function only if `user' or `host' is given.
      	(tramp-get-completion-user-host): New function.
      	(tramp-get-completion-ssh): Apply it.
      2002-08-29  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-file-name-handler-alist): Add
      	handler for `expand-file-name'.
      	(tramp-completion-handle-expand-file-name): New function.
      2002-08-26  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-mode): New function.
      	(tramp-completion-handle-file-name-all-completions): Apply it.
      	(tramp-methods): Remove double definition of `ssh1-old' and
      	(tramp-point-at-eol): New defalias.
      	(tramp-parse-shosts-group):: Apply it.
      2002-08-25  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-get-completion-methods)
      	(tramp-get-completion-ssh): Add "[" for Xemacs.
      	(tramp-completion-file-name-regexp-separate): Expression adapted.
      	(tramp-completion-file-name-handler-alist): Add handler for
      	`file-name-directory' and `file-name-nondirectory'.
      	(tramp-completion-run-real-handler): New functions.
      	(tramp-completion-handle-file-name-all-completions): Apply
      	(tramp-parse-shosts): Use `with-temp-buffer'. `result� renamed to
      	`res' (otherwise side effects in XEmacs).
      2002-08-24  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-file-name-regexp)
      	(tramp-get-completion-ssh): Doc string tuned.
      	(tramp-methods): Doc string and custom type extended for
      	(tramp-completion-function): Variable added. Is it really used?
      	Other variables like `tramp-completion-function' aren't used.
      	(tramp-completion-file-name-handler-alist): Add handler for
      	(tramp-completion-handle-file-name-completion): New function.
      2002-08-18  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-parse-rhosts)
      	(tramp-parse-shosts-group): New functions.
      2002-08-17  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-dissect-file-name)
      	(tramp-completion-dissect-file-name1): New functions.
      2002-08-16  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-get-completion-function)
      	(tramp-get-completion-telnet): New functions.
      	(tramp-methods): Add `tramp-completion-function' for all methods.
      2002-08-15  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-get-completion-methods): New function.
      	(tramp-find-default-method): Allow host to be nil (like user).
      2002-08-14  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-completion-file-name-regexp-unified)
      	(tramp-completion-file-name-handler-alist): New defcustoms.
      	(tramp-completion-file-name-handler): New function. Add
      	`tramp-completion-file-name-handler' to `file-name-handler-alist'.
      	(tramp-run-real-handler): Add `tramp-completion-file-name-handler'
      	to `inhibit-file-name-handlers'.
      	(tramp-completion-handle-file-name-completion): New functions.
      2002-08-12  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-invoke-ange-ftp): `tramp-disable-ange-ftp'
      	must be called again after activating `ange-ftp'.
      	(tramp-ange-ftp-file-name-p): Check for Xemacs.
      2002-08-08  Michael Albinus  <Michael.Albinus@alcatel.de>
      	* net/tramp.el (tramp-do-copy-or-rename-file): Don't pass
      	KEEP-DATE to tramp-invoke-ange-ftp 'rename.
      	(tramp-handle-write-region): Don't pass LOCKNAME and CONFIRM to
      	tramp-invoke-ange-ftp 'write-region.
      	(tramp-handle-set-file-modes): Change order of FILENAME and MODE
      	passing to tramp-invoke-ange-ftp 'set-file-modes.
      	(tramp-flatten-list): New function. Maybe this functionality does
      	exist already elsewhere in the libraries.
      	(tramp-invoke-ange-ftp): Apply `tramp-flatten-list' to parameter
      	list in order to avoid nested lists, f.e. when invoked from
      2002-09-05  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-chunksize): New kluge variable.
      	(tramp-send-region): If tramp-chunksize is non-nil, send region in
      	parts and sleep 0.1 seconds between chunks.
      2002-09-03  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-handle-insert-directory): Use
      	`insert-buffer-substring' instead of `insert-buffer', which is not
      	supposed to be used from Lisp.  Remember old point in a variable
      	instead of using `mark'.  Suggestion from Stefan Monnier.
      	(tramp-unified-filenames): New variable.  Use it in default value
      	of other filename variables.
      	(file-expand-wildcards): Don't advise unless "[" and "]" are used
      	in the filename format.
      2002-09-01  Kai Gro�ohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
      	* net/tramp.el (tramp-methods): Remove duplicate definition of
      	ssh1-old and ssh2-old.
  11. 02 Sep, 2002 1 commit
    • Kai Großjohann's avatar
      * net/tramp.el: Version 2.0.15 released. · dba28077
      Kai Großjohann authored
      (require 'base64): Most modern Emacsen have the base64
      encode/decode functions built in, so test to see if they are bound
      before we go blindly requiring base64.el.  From Steve Youngs
      (tramp-feature-write-region-fix): XEmacs doesn't have a
      'find-operation-coding-system' and this variable doesn't seem to
      be used anywhere so wrap it in (unless (featurep 'xemacs)).  From
      Steve Youngs <youngs@xemacs.org>.
      (tramp-methods): Remove duplicate definition of ssh1-old and
      (tramp-open-connection-su): Use user name "root" if no user name
      is given.
      From Michael Albinus <Michael.Albinus@alcatel.de>:
      * net/tramp.el (tramp-invoke-ange-ftp):
      (tramp-ange-ftp-file-name-p): Check for Xemacs.
      (tramp-do-copy-or-rename-file): Don't pass KEEP-DATE to
      tramp-invoke-ange-ftp 'rename.
      (tramp-handle-write-region): Don't pass LOCKNAME and CONFIRM to
      tramp-invoke-ange-ftp 'write-region.
      (tramp-handle-set-file-modes): Change order of FILENAME and MODE
      passing to tramp-invoke-ange-ftp 'set-file-modes.
      (tramp-invoke-ange-ftp): `tramp-disable-ange-ftp' must be called
      again after activating `ange-ftp'.
  12. 22 Aug, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.14 released. · 821e6e36
      Kai Großjohann authored
      (tramp-shell-prompt-pattern): New variable.
      (tramp-actions-before-shell, tramp-multi-actions)
      (tramp-find-shell, tramp-open-connection-multi)
      (tramp-open-connection-setup-interactive-shell): Use it.
      (tramp-open-connection-telnet, tramp-open-connection-rsh)
      (tramp-open-connection-su): Mention `tramp-shell-prompt-pattern'
      in the docstring.
      (tramp-bug): Report `tramp-shell-prompt-pattern'.
      (tramp-process-one-multi-action, tramp-process-one-action): Make
      message clearer so people don't confuse it with Emacs asking them
      a question if the regexp happens to end with "?".
      (tramp-verbose): Change default value from 10 to 9.  Also change
      some logging levels so that 10 is reserved for stuff which is
      needed for debugging only, but 9 catches everything that people
      might like to see in order to see that Tramp is actually working.
  13. 21 Aug, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.13 released. · 3cdaec13
      Kai Großjohann authored
      (tramp-handle-write-region): Don't check to see if remote end is
      awake after sending data to remote host: we want to send "EOF" not
      "echo are you awake"...
      (tramp-maybe-open-connection): Swap args for tramp-time-diff.
      (tramp-yn-prompt-regexp): New variable.
      (tramp-action-yn): New function, using it.
      (tramp-feature-write-region-fix): New internal variable.  Not yet
      used.  Should be used in `tramp-handle-write-region'.
  14. 07 Aug, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.12 released. · 685f5858
      Kai Großjohann authored
      (tramp-find-shell, tramp-open-connection-setup-interactive-shell):
      Comment out possibly obsolete "echo hello" commands.
      (tramp-run-real-handler): If operation is
      `ange-ftp-hook-function', use first arg as the real operation.
      (tramp-check-ls-commands): Use / instead of \ as directory
      separator.  (Relevant for XEmacs on Windows.)
      (tramp-maybe-open-connection): Use tramp-wait-for-output when
      waiting for the "are you awake" command.  Use a different string
      for the "are you awake" command.
      (tramp-send-command): New optional arg NEVEROPEN means to never
      invoke tramp-maybe-open-connection.
      (tramp-maybe-open-connection): Use it
  15. 05 Aug, 2002 1 commit
    • Kai Großjohann's avatar
      Version 2.0.11 released. · 5beaf831
      Kai Großjohann authored
      (tramp-perl-file-attributes): Print uid and gid as signed
      (tramp-invoke-ange-ftp): Correct check for Ange-FTP being loaded.
      Invoke Ange-FTP with tramp-run-real-handler to avoid Ange-FTP
      calling Tramp again.
      (tramp-find-file-exists-command): Check for `ls -d' last, after
      all the variants on `test -e'.
      (tramp-post-connection): Erase buffer before finding a command to
      check if file exists.
  16. 04 Aug, 2002 2 commits
    • Kai Großjohann's avatar
      Version 2.0.10 released. · fabf2143
      Kai Großjohann authored
      (tramp-uudecode): New shell function `tramp_uudecode' to decode to
      standard output even if `uudecode -p' and `uudecode -o -' don't
      (tramp-post-connection): After finding the right shell, wait a
      bit.  This is a kludge to avoid a race condition, even though I
      don't understand why there is a race condition in the first place.
      (tramp-post-connection): Install the `tramp_uudecode' shell
      function on the remote host.
      (tramp-coding-commands): Add an alternative for `tramp_uudecode'.
      (tramp-bug): Include more variables in the report.
    • Kai Großjohann's avatar
      Version 2.0.9 released. · 89509ea0
      Kai Großjohann authored
      (tramp-bug): Add wording about additional info to include in bug
      (tramp-find-shell): Set $PS1 for invocation of second shell (for
      tilde expansion).
      (tramp-find-shell): Shell prompt must match at end of buffer.  Do
      this also for fallback shell prompt.
      (tramp-find-shell): More debugging output.
      (tramp-find-inline-encoding): When checking the decoding command,
      some commands fail when reading from /dev/null.  So we pass a
      known string through the encoding command and pass that through
      the decoding command.  So we know whether the decoding command can
      deal with some real input.
  17. 03 Aug, 2002 4 commits
    • Andreas Schwab's avatar
    • Kai Großjohann's avatar
      Version 2.0.8. · 36541701
      Kai Großjohann authored
      (tramp-perl-encode, tramp-perl-encode): Double the backslashes.
    • Kai Großjohann's avatar
      Version 2.0.7. · fa32e96a
      Kai Großjohann authored
      (tramp-perl-encode-with-module, tramp-perl-decode-with-module)
      (tramp-perl-encode, tramp-perl-decode): Escape `%' characters
      because of `format' and say so in the docstring.
    • Kai Großjohann's avatar
      Version 2.0.6. · b1d06e75
      Kai Großjohann authored
      (tramp-default-method): Change to "ssh" from "sm".
      (tramp-wrong-passwd-regexp): Restructure.  Add additional
      (tramp-su-program): New internal variable for method parameter.
      (tramp-perl-encode-with-module, tramp-perl-decode-with-module):
      New variables.  Very short Perl one-liner, but requires Perl
      module MIME::Base64 to be installed on the remote site.
      (tramp-perl-encode, tramp-perl-decode): New base64
      encoder/decoder.  From Juanma Barranquero <lektu@terra.es>.
      (tramp-handle-file-truename): Invoke Ange-FTP properly (even
      though Ange-FTP doesn't do anything for this operation).
      (tramp-handle-set-visited-file-modtime): Comment change.
      (tramp-handle-make-directory): Save-excursion.
      (tramp-handle-expand-many-files): Don't try to invoke Ange-FTP
      twice, once is enough.
      (tramp-action-permission-denied): Show *tramp/foo* buffer so the
      user knows what's wrong.
      (tramp-post-connection): Support the two Perl encoders and
      (tramp-coding-commands): Ditto.  Add some todo items.
  18. 30 Jul, 2002 1 commit
    • Kai Großjohann's avatar
      New version 2.0.5. · ac474af1
      Kai Großjohann authored
      (tramp-methods): Remove inline encoding method parameters.  The
      encoding is now autodetected.  Also shorten the list of
      methods (u/m distinction gone) and rename the remaining methods to
      have longer, but more mnemonic, names.
      (tramp-login-prompt-regexp, tramp-password-prompt-regexp)
      (tramp-wrong-passwd-regexp): Trailing `$' not needed, regexp is
      matched at end of buffer anyway.
      (tramp-yesno-prompt-regexp): New variable, for questions where the
      user should say "yes" or "no".
      (tramp-file-name-structure-separate): Allow dash in method names.
      (tramp-actions-before-shell): New variable, contains list of
      pattern/action pairs.  Output sent by remote end is scanned for
      the patterns, then the actions are executed.
      (tramp-multi-actions): Like `tramp-actions-before-shell', but
      executed for each hop in a multi-hop connection.
      (tramp-last-cmd-time): New variable.  If nothing has been sent to
      remote end for 60 seconds, look to see if the remote end is still
      (tramp-perl-mime-encode, tramp-perl-mime-decode): Remove.  It
      didn't work.
      (tramp-perl-encode, tramp-perl-decode): New variables, these
      require the MIME::Base64 module on the remote end.
      (tramp-handle-file-attributes): Restructure logic.
      (tramp-handle-file-attributes-with-perl): More debugging.
      (tramp-handle-directory-files): Grok fifth arg `files-only' for
      (tramp-handle-make-directory, tramp-handle-delete-directory)
      (tramp-handle-delete-file, tramp-handle-insert-directory): Expand
      file name.
      (tramp-handle-shell-command): Use `when', not `if'.
      (tramp-handle-file-local-copy, tramp-handle-write-region): Adapt
      to autodetection of inline encoding.
      (tramp-invoke-ange-ftp): Require ange-ftp to make sure that
      variable ange-ftp-name-format is defined before binding it.
      (tramp-action-login, tramp-action-password, tramp-action-succeed)
      (tramp-action-permission-denied, tramp-action-yesno): Functions
      called from `tramp-actions-before-shell'.
      (tramp-multi-action-login, tramp-multi-action-password)
      (tramp-multi-action-permission-denied): Functions called from
      (tramp-process-one-action, tramp-process-actions): Pattern
      matching and action invocation code for
      (tramp-process-one-multi-action, tramp-process-multi-actions):
      Same for `tramp-multi-actions'.
      (tramp-open-connection-telnet, tramp-open-connection-rsh)
      (tramp-open-connection-su): Process actions instead of hardwired
      (tramp-multi-connect-telnet, tramp-multi-connect-rlogin)
      (tramp-multi-connect-su): Ditto.
      (tramp-post-connection): New method for tramp_encode and
      tramp_decode scripts.
      (tramp-post-connection): Invoke inline autodetection code.
      (tramp-coding-commands): List of inline codings.
      (tramp-find-inline-encoding): This is the inline autodetection
      (tramp-maybe-open-connection): If nothing was sent to connection
      for 60 seconds, look if it connection is still alive.
      (tramp-send-command): Remember that something was sent to the
      (tramp-make-tramp-file-name, tramp-make-tramp-multi-file-name):
      Use backticks for constructing alist.
      (tramp-get-encoding-command, tramp-set-encoding-command)
      (tramp-get-decoding-command, tramp-set-decoding-command)
      (tramp-get-encoding-function, tramp-set-encoding-function)
      (tramp-get-decoding-function, tramp-set-decoding-function): Use
      for results of inline autodetection.
      (tramp-get-encoding-command, tramp-get-decoding-command)
      (tramp-get-encoding-function, tramp-get-decoding-function):
      Remove these old functions.
  19. 21 Jul, 2002 1 commit
    • Kai Großjohann's avatar
      Bump version to 2.0.2. · 90dc758d
      Kai Großjohann authored
      (tramp-methods): Rename methods invoking "ssh1" or "ssh2" to
      longer names.  Use old names "sm1", "sm2" and so on for methods
      invoking "ssh -1" or "ssh -2".
      (tramp-multi-file-name-structure-separate): Typo, its name was set
      to "tramp-file-name-structure-separate".  Trivial patch.  From
      Steve Youngs <youngs@xemacs.org>.
      (tramp-multi-sh-program): New variable.
      (tramp-open-connection-multi): Use it.  Now you can use multi
      methods from Windows (at least in principle).
      (tramp-do-copy-or-rename-via-buffer): New function.
      (tramp-do-copy-or-rename-file): Use it.  Change and simplify
      logic.  Omit special case of invoking rcp directly to copy the
      (tramp-open-connection-su, tramp-multi-connect-telnet)
      (tramp-multi-connect-rlogin, tramp-multi-connect-su)
      (tramp-make-tramp-file-name, tramp-make-tramp-multi-file-name):
      Use backticks in format-spec for brevity and to avoid
      character/number confusion in XEmacs.
  20. 13 Jul, 2002 1 commit
  21. 11 Jul, 2002 2 commits
    • Kai Großjohann's avatar
    • Kai Großjohann's avatar
      (tramp-default-method): New default method "sm" · 505edaeb
      Kai Großjohann authored
      which I guess to be good for most people.
      (tramp-default-method-alist): Use "ftp" method (ie, forwarding to
      Ange-FTP) for some user/host combinations.
      (tramp-file-name-structure, tramp-file-name-regexp)
      (tramp-make-multi-tramp-file-format): New default value which
      unifies the filename syntax between Tramp and Ange-FTP.  The new
      syntax is "/method:user@host:path".  Note the colon after the
      (tramp-handle-file-name-directory): Don't return "/" when
      completing a remote root directory (where the filename looks like
      (tramp-handle-ange-ftp): Deleted.
      (tramp-disable-ange-ftp): New function, called at toplevel,
      deletes Ange-FTP from file-name-handler-alist.
  22. 03 Jul, 2002 2 commits
  23. 27 Jun, 2002 2 commits
    • Andreas Schwab's avatar
      (tramp-handle-ange-ftp): Fix typo. · cdf4ead8
      Andreas Schwab authored
    • Kai Großjohann's avatar
      (tramp-file-name-structure) · 487fa986
      Kai Großjohann authored
      (tramp-multi-file-name-hop-structure): Split for easier
      (tramp-handle-make-symbolic-link): Use user/host/method/... from
      (tramp-handle-verify-visited-file-modtime): Call
      tramp-ange-ftp-file-name-p with right parameters.
      (tramp-handle-verify-visited-file-modtime): `insert' does not
      work for integers, convert them to strings first.
      (tramp-handle-ange-ftp): New function to perform setup for
      replacing Ange-FTP with Tramp.
      (tramp-repair-jka-compr): New function to factor out some
      previously top-level code.  Call the function at top-level.
  24. 25 Jun, 2002 2 commits
    • Kai Großjohann's avatar
      (tramp-open-connection-rsh): Support a kludgy feature for the · 8e3a1104
      Kai Großjohann authored
      "-p" option to ssh.  If host name is given as "host#42", uses the
      "-p 42" option.
    • Kai Großjohann's avatar
      (tramp-ftp-method): New user option. · c62c9d08
      Kai Großjohann authored
      (tramp-invoke-ange-ftp): New function to forward calls to
      (with-parsed-tramp-file-name): New macro for the usual big `let'
      statement to dissect a file-name.
      (tramp-handle-make-symbolic-link, tramp-handle-load)
      (tramp-handle-file-name-nondirectory, tramp-handle-file-truename)
      (tramp-handle-file-truename, tramp-handle-file-directory-p)
      (tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
      (tramp-handle-file-writable-p, tramp-handle-file-writable-p):
      Use the new macro and forward call to Ange-FTP if applicable.
      (tramp-make-ange-ftp-file-name): New helper function to convert a
      file name into an Ange-FTP file name, used by
      (tramp-default-method-alist): New user option.
      (tramp-find-default-method): Use it.
      (tramp-sh-extra-args): New variable.
      (tramp-find-shell): Use it.
  25. 17 Jun, 2002 1 commit