2007-01-14  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.8 released.

2007-01-13  Michael Albinus  <albinus@arthur>

	* tramp.el (top): Change declaration of `with-temp-message' if it
	doesn't exist.
	(tramp-buffer-name, tramp-debug-buffer-name)
	(tramp-make-tramp-file-name, tramp-make-copy-program-file-name):
	Check also for empty USER.

	* tramp-smb.el (tramp-smb-actions-with-share):
	(tramp-smb-actions-without-share): New defconst.
	(tramp-smb-open-connection): Removed.  Code merged into
	`tramp-smb-maybe-open-connection'.  Use new defconst.

2007-01-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Declare `with-temp-message' if it doesn't exist.

2007-01-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-actions-copy-out-of-band):
	`tramp-copy-failed-regexp' calls `tramp-action-permission-denied'.
	(tramp-handle-file-local-copy): Set `enable-multibyte-characters'
	to nil.  Reported by Chris Moore <christopher.ian.moore@gmail.com>.
	(tramp-handle-write-region): Compute file size as difference
	between END and START.
	(tramp-touch): In case of 'tramp-sh-file-name-handler, apply
	`tramp-send-command', which is more efficient.  Check, whether
	`format-time-string' is a primitive.
	(tramp-action-permission-denied, tramp-action-process-alive):
	Don't apply `pop-to-buffer', this is done centrally.
	(tramp-action-copy-failed): Removed, not needed anymore.
	(tramp-get-remote-stat): Hide temporary error message.

2007-01-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): The sent command must
	ensure that the process terminates, finally.  Write the command
	compatible for shells and w32 COMSPEC.

2007-01-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-fish.el (tramp-fish-handle-write-region): Implement APPEND.
	(tramp-fish-handle-rename-file)
	(tramp-fish-handle-copy-file): Error handling is not necessary here,
	will be done centrally.  Apply `tramp-fish-do-copy-or-rename-file'.
	(tramp-fish-do-copy-or-rename-file)
	(tramp-fish-do-copy-or-rename-file-directly): New defuns.

2006-12-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode): Use `natnump' instead of
	`wholenump' because of XEmacs.

2006-12-30  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist): Add handler for
	`shell-command'.
	(tramp-handle-shell-command): New defun.
	(tramp-touch): Don't bind `shell-file-name' locally.

	* tramp-fish.el (tramp-fish-file-name-handler-alist): Add handler
	for `shell-command'.

	* tramp-util.el (tramp-advice-start-process-shell-command)
	(tramp-advice-call-process-shell-command): Bind
	`shell-command-switch' locally.

2006-12-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-call-process-region): New defun.
	(tramp-touch): Use `shell-command' instead of `call-process', in
	order to make it usable also for the `fish' method.

	* tramp-fish.el (tramp-fish-handle-insert-file-contents): Move
	point to the initial place after insertion.
	(tramp-fish-handle-write-region): Don't send zero length data.

	* tramp-util.el (tramp-advice-call-process-region): New defadvice.

2006-12-27  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in: Add tramp-fish.el

	* tramp-fish.el: New package.

	* tramp.el (top): Require tramp-fish.
	(tramp-inodes): New defvar.
	(tramp-handle-expand-file-name): Cache "home-directory".
	(tramp-get-inode): New defun.

	* tramp-smb.el (tramp-smb-no-stat, tramp-smb-inodes)
	(tramp-smb-get-inode): Removed.  Apply new names.

	* tramp-util.el (tramp-advice-executable-find): Add check for
	`tramp-fish-file-name-handler'.

2006-12-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-action-process-alive)
	(tramp-wait-for-regexp): Pop connection buffer in case of error.
	(tramp-exists-file-name-handler): Handle also `default-directory'.
	(tramp-half-a-year, tramp-parse-time-months): New defconst.
	Transferred from tramp-smb.el.
	(tramp-time-less-p, tramp-time-subtract): New defuns.  Transferred
	from tramp-smb.el.
	(tramp-time-diff): Use them.

	* tramp-smb.el (tramp-smb-half-a-year)
	(tramp-smb-parse-time-months, tramp-smb-time-less-p)
	(tramp-smb-time-subtract): Removed.  Apply new names.

	* tramp-util.el (top): Don't check for file name handlers of
	`start-process-shell-command' and `call-process-shell-command'.

2006-12-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode): Use `wholenump' instead of
	`integerp'.  `char-equal' could fail else in case of negative
	numbers.  Reported by Toby Speight <T.M.Speight.90@cantab.net>.

2006-12-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-name-completion)
	(tramp-completion-handle-file-name-completion): PREDICATE must be
	applied on the expanded car's in `try-completion'.

2006-12-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-name-completion)
	(tramp-completion-handle-file-name-completion): Handle optional
	parameter PREDICATE.

2006-12-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Introduce new method `scpc'.  Remove
	"ControlMaster" option from the other `scp*' methods.
	(tramp-default-method): Check for ssh-agent before setting to
	`scp'.
	(top): Check for `font-lock-add-keywords' before calling; it
	doesn't exist under XEmacs.

2006-12-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-method): Before setting to "pscp", check
	whether package password.el is loaded, or Pageant is running.

	* tramp-smb.el (tramp-smb-errors): Add error messages.

2006-12-14  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-handle-delete-directory)
	(tramp-smb-handle-delete-file): Write a more comprehensive error
	message.  Suggested by Tom Wurgler <twurgl@goodyear.com>.

2006-12-13  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-errors): Add error messages.
	(tramp-smb-handle-directory-files): Fix check for MATCH.

2006-12-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-get-file-entries):
	`tramp-smb-maybe-open-connection' must still be called when share
	is nil.

2006-12-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-password-prompt-regexp): "Passphrase" is used
	with capital first letter by PuTTY.
	(tramp-message): Add message to debug buffer only when process
	buffer is not killed.  Otherwise, debug buffer name cannot be
	determined.
	(tramp-accept-process-output): Under Win32,
	`accept-process-output' doesn't return sometimes.  So we add an
	additional timeout around.

	* tramp-smb.el (tramp-smb-send-command ): This is the only place
	to call `tramp-smb-maybe-open-connection'.  Remove all other
	calls.
	(tramp-smb-maybe-open-connection): SHARE isn't needed as
	parameter.  We compute it ourselves.
	(tramp-smb-open-connection): Set `process-connection-type', which
	was done in `tramp-smb-maybe-open-connection' before.  Pop up
	connection buffer when there are problems.

2006-12-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-enter-password): Inhibit function call traces in
	order to avoid passwords to be included there.

	* tramp-smb.el (tramp-smb-errors): Add error messages.
	(tramp-smb-handle-make-directory-internal): Local file names shall
	carry "\\" instead of "/".  Reported by Tom Wurgler
	<twurgl@goodyear.com>.

2006-12-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-cache.el (tramp-flush-directory-property): Check whether
	KEY is a string.
	(tramp-flush-connection-property): Work with a copy of the key in
	order to avoid side effects.

	* tramp-smb.el (tramp-smb-handle-insert-directory): Handle
	WILDCARD and FULL-DIRECTORY-P.
	(tramp-smb-handle-make-directory-internal): Flush also directory,
	because `file-attributes' is computed from its entries.
	(tramp-smb-get-file-entries): Parameter is a DIRECTORY.

2006-12-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-write-region): Erase buffer before
	applying cksum.
	(tramp-set-remote-path): Apply `tramp-split-string' instead of
	`split-string', because Emacs 21 doesn't support OMIT-NULLS
	parameter.

2006-11-30  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-cache.el (tramp-get-file-property)
	(tramp-set-file-property, tramp-flush-file-property): Work with a
	copy of the vector in order to avoid side effects.

	* tramp-smb.el (tramp-smb-errors): Add error message from Windows
	Server 2003.
	(tramp-smb-not-handled): Removed, replaced by `ignore'.
	(tramp-smb-handle-copy-file, tramp-smb-handle-delete-directory)
	(tramp-smb-handle-delete-file, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region): Flush also directory, because
	`file-attributes' is computed from its entries.
	(tramp-smb-file-name-handler, tramp-smb-handle-file-attributes)
	(tramp-smb-handle-file-directory-p)
	(tramp-smb-handle-file-exists-p)
	(tramp-smb-handle-file-name-all-completions)
	(tramp-smb-handle-file-writable-p)
	(tramp-smb-handle-insert-directory, tramp-smb-get-file-entries)
	(tramp-smb-get-inode): Simplify implementation.
	(tramp-smb-open-connection): Add parameter "-s /dev/null".

2006-11-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-errors): Add error message from Windows
	Server 2003.
	(tramp-smb-no-stat): New constant.  Will be used later on for
	implementation of the stat command.
	(tramp-smb-open-connection): Revert change from 2006-11-23.
	Quoting arguments is not needed, moreover it even breaks the
	command.
	(tramp-smb-wait-for-output): Read pending output.

2006-11-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-maybe-open-connection): Erase always
	the connection buffer.

2006-11-24  Lars Hansen  <larsh@soem.dk>

	* tramp.el (tramp-default-method): Under Windows, change from
	plink to pscp.
	(tramp-copy-failed-regexp, tramp-action-copy-failed): Add.
	(tramp-actions-copy-out-of-band):
	Add pair (tramp-copy-failed-regexp tramp-action-copy-failed).
	(tramp-action-out-of-band): Move "Permission denied" handling to
	tramp-action-copy-failed.

2006-11-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-yn-prompt-regexp): Fix regexp.

2006-11-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-read-file-entry): Share names can
	contain spaces.
	(tramp-smb-open-connection): Quote arguments.

2006-11-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-remote-path): `tramp-default-remote-path'
	contains a trailing ":" under FreeBSD.

2006-11-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-cache.el (tramp-get-connection-property)
	(tramp-set-connection-property): Work with a copy of the vector in
	order to avoid side effects.

	* tramp-smb.el (tramp-smb-maybe-open-connection): Erase the buffer
	when the process is killed, because it is reused.

2006-11-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-copy-size-limit): New defcustom.
	(tramp-methods): Add "ControlPath" and "ControlMaster" to scp,
	scp1 and scp2 methods.  Suggested by Andreas Schwab
	<schwab@suse.de>.
	Fix error in `tramp-login-args' of psftp.
	Rearrange entries for better readability.
	Change syntax of `tramp-copy-args' to that of `tramp-login-args'.
	Rename `tramp-copy-keep-date-arg' to `tramp-copy-keep-date', and
	change meaning.  Describe "%t" and "%k" in the doc string.
	(tramp-default-method): scp is the default method.
	(tramp-do-copy-or-rename-file, tramp-handle-file-local-copy)
	(tramp-handle-write-region): Check for `tramp-copy-size-limit'.
	(tramp-do-copy-or-rename-file-out-of-band): Simplify
	implementation.
	(tramp-maybe-open-connection): Compute format spec only once.

2006-11-05  Lars Hansen  <larsh@soem.dk>

	* tramp.el (with-parsed-tramp-file-name): Correct debug spec.
	Highlight as keyword.
	(tramp-do-copy-or-rename-file): Correct data for
	'file-already-exists.
	(tramp-touch): Quote file name.

2006-10-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-yn-prompt-regexp): Add question from plink.
	(tramp-message): Reduce messages in minibuffer.
	(tramp-handle-call-process): Fix error in error handling.
	(tramp-touch): UTC handling is not possible for XEmacs.

	* tramp-cache.el (top): Don't autoload macro
	`with-parsed-tramp-file-name' but function
	`tramp-dissect-file-name'.
	(tramp-cache-before-revert-function): Change implementation
	accordingly.  Reported by Jonathan Hankins
	<jonathan-hankins@mindspring.com>.

	* tramp-util.el (tramp-advice-executable-find): Check for
	`load-in-progress)'.
	(tramp-advice-call-process): Add check for
	`tramp-fish-file-name-handler'.
	(tramp-grep-setup, tramp-gud-setup, tramp-ediff-setup): Remove
	functions, and call defadvices directly. There is no need for
	`eval-after-load'.
	(top): Add defadvices for `gnus-1', `jka-compr-call-process' and
	`jka-compr-partial-uncompress'.

2006-09-08  Gilles Pion <gpion@lfdj.com>  (tiny change)

	* tramp.el (tramp-open-connection-setup-interactive-shell):
	Simplify command checking the uname of the remote host.

2006-09-03  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.7 released.

	* tramp.el (tramp-methods): Precise doc-string for `su' and `sudo'
	methods in case of non-local host name.

2006-08-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-proxies-alist): Extend doc string for %h
	and %u patterns.
	(tramp-wrong-passwd-regexp): Fix strings.
	(tramp-maybe-open-connection): Add handling of %h and %u
	patterns.  Suggested by Kirk Strauser <kirk@daycos.com>.

2006-08-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-remote-uid, tramp-get-remote-gid): Return -1
	when ID-FORMAT is 'integer, and the command doesn't yield an
	integer.

2006-08-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-function-alist-*): Provide the
	constants also for the Windows case.
	(tramp-completion-file-name-regexp-*): Add the drive letter to the
	constants in the Windows case.
	(tramp-debug-message): Simplify regexp for function names to be
	ignored.
	(tramp-handle-expand-file-name): Act also in completion mode.
	Apply `tramp-drop-volume-letter' then.
	(tramp-file-name-handler): No special handling for
	`expand-file-name'.  But for `file-name-as-directory'.
	(tramp-completion-handle-file-name-all-completions): Apply
	`tramp-drop-volume-letter' where appropriate.
	(tramp-parse-*): Set `default-directory' to a local filename, in
	order to catch the files to be parsed under Windows.
	(tramp-open-connection-setup-interactive-shell): Move
	"(with-current-buffer ..." upwards; there was a wrong logic.

2006-08-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode): Remove parameter, it isn't
	necessary anymore.  Remove check for `tramp-syntax'.
	(tramp-find-method, tramp-find-user, tramp-find-host): Don't
	expand to default values when in completion mode.

2006-08-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-attributes-with-ls): Goto buffer
	head before reading.  Add also quotes to user and group entries
	when not in integer format.

	* tramp-cache.el: Tune autoloading of functions from tramp.el.
	Wrap it with `eval-when-compile', because this is needed for
	compiler pacification only.
	(tramp-set-connection-property): Trap error from missing function
	`tramp-message during startup, where we don't miss the debug
	messages.

2006-08-08  Peter Wagemans  <P.C.C.Wagemans@kpn.com>  (tiny change)

	* tramp.el (tramp-handle-file-attributes-with-stat)
	(tramp-handle-directory-files-and-attributes-with-stat): Add
	quotes to the user and group elements.

2006-07-18  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-find-inline-encoding): `rem-enc' and `rem-dec'
	must not be cached as converted to a string.

2006-06-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-local-copy): Don't evaluate
	`rem-dec' and `loc-enc'.
	(tramp-handle-write-region): Don't evaluate `rem-enc' and
	`loc-dec'.
	(tramp-find-inline-encoding): Set connection properties directly
	via `tramp-set-connection-property'.
	(tramp-set-remote-encoding, tramp-set-remote-decoding)
	(tramp-set-local-encoding, tramp-set-local-decoding): Removed.
	(tramp-get-remote-encoding, tramp-get-remote-decoding): Removed,
	replaced by new defun `tramp-get-remote-coding'.
	(tramp-get-local-encoding, tramp-get-local-decoding): Removed,
	replaced by new defun `tramp-get-local-coding'.

2006-06-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-unload-tramp): Provide a doc string.

2006-06-15  Katsumi Yamaoka  <yamaoka@jpl.org>  (tiny change)

	* tramp.el (tramp-touch): Use UTC to express time.

2006-06-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Require tramp-util also on Windows machines.
	(tramp-message): Process buffer might have been killed.

2006-06-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-actions): Pop connection buffer in case
	of error.  Modify error message depending on `tramp-action'.

	* tramp-cache.el (tramp-persistency-file-name): Default value is
	"~/.emacs.d/tramp" or "~/.xemacs/tramp", respectively.  Suggested
	by Romain Francoise <romain@orebokech.com>.
	(tramp-dump-connection-properties): Suppress error when
	`tramp-persistency-file-name cannot be written.

2006-06-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-one-action): Remove `with-timeout'
	clause.
	(tramp-process-actions): Add optional TIMEOUT parameter.  If set,
	apply it.
	(tramp-maybe-open-connection): Call `tramp-process-actions' with a
	timeout of 60".

2006-06-01  Matt Swift <swift@alum.mit.edu>  (tiny change)

	* tramp.el (tramp-make-copy-program-file-name): Quote LOCALNAME.

2006-05-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-debug-buffer): `outline-mode' must be
	protected with a local `default-directory'.

	* tramp-cache.el (top): When reading
	`tramp-persistency-file-name', discard error messages for
	'file-error.

2006-05-28  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.6 released.

	* tramp.el (tramp-wrong-passwd-regexp): Add PuTTY message.
	(tramp-register-file-name-handlers): `partial-completion-mode' is
	unknown to XEmacs.
	(tramp-time-diff): Don't use `floor', it might fail for large
	differences.

	* tramp-efs.el:
	* tramp-ftp.el: Parse "~/.netrc" for completion also under MS
	Windows.

2006-05-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-initial-commands): Removed.
	(tramp-remote-process-environment): Add the settings from
	`tramp-initial-commands' here.
	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
	Add `executable-find' entry.
	(tramp-message): Apply `save-match-data'.
	(tramp-do-copy-or-rename-file-out-of-band): `executable-find' must
	be called locally.
	(tramp-handle-executable-find): New defun.
	(tramp-process-one-action)
	(tramp-open-connection-setup-interactive-shell): Remove some
	messages.  Send the "unset" commands as one bunch for
	optimization.
	(defun tramp-send-command-internal): Remove the MSG parameter.

	* tramp-smb.el (tramp-smb-open-connection): `executable-find' must
	be called locally.

	* tramp-util.el (tramp-advice-executable-find)
	(start-process-shell-command)
	(tramp-advice-call-process-shell-command): New defadvices.
	(tramp-advice-start-process, tramp-advice-call-process): Don't
	apply parameter lists explicitely.

2006-05-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-message): Write into debug buffer only if
	`tramp-verbose-level' is greater than or equal to 4.
	(tramp-get-completion-function): Add
	`tramp-parse-connection-properties.
	(tramp-process-initial-commands, tramp-post-connection): Removed,
	also their respective calls..
	(tramp-open-connection-setup-interactive-shell) Add code from
	`tramp-process-initial-commands' and `tramp-post-connection'.

	* tramp-cache.el (tramp-parse-connection-properties): New defun.

	* tramp-util.el (tramp-ediff-setup): New defun.

2006-05-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-error): Don't kill the process.  There are
	several cases it doesn't make sense.
	(tramp-do-copy-or-rename-file): Flush NEWNAMEs file property.
	(tramp-do-copy-or-rename-file-out-of-band): Apply `tramp-error'
	when possible.  Make the temporary process more robust.  Use
	"process-name" and "process-buffer" properties.
	(tramp-handle-start-process): Return the process.
	(tramp-completion-handle-file-name-all-completions): Use
	`tramp-find-method'.  It was lost some day, don't know how.
	(tramp-action-permission-denied, tramp-action-yesno)
	(tramp-action-yn, tramp-find-inline-encoding): Apply `kill-process'.
	(tramp-append-tramp-buffers): Add a remark about attached buffers.

	* tramp-cache.el (tramp-cache-print): Make sure processes and
	buffers are dumped as strings.
	(tramp-flush-connection-property): Don't send a debug message.
	Process and/or buffer might have been killed already.
	(tramp-dump-connection-properties): Don't save "process-name" and
	"process-buffer" properties.

2006-05-21  Michael Albinus  <michael.albinus@gmx.de>

	Major rewrite.  Parameter lists changed from METHOD USER HOST to
	VEC.

	* tramp.el (tramp-debug-buffer, tramp-buffer-file-attributes)
	(tramp-connection-function, tramp-remote-sh, tramp-login-program)
	(tramp-login-args, tramp-copy-program, tramp-copy-args)
	(tramp-copy-keep-date-arg, tramp-encoding-command)
	(tramp-decoding-command, tramp-encoding-function)
	(tramp-decoding-function, tramp-password-end-of-line)
	(tramp-current-hop-method, tramp-current-hop-user)
	(tramp-current-hop-host, tramp-last-cmd-time)
	(tramp-message-for-buffer, tramp-trace, tramp-pre-connection)
	(tramp-kill-process): Removed.
	(tramp-find-method, tramp-find-user, tramp-find-host): Changed to
	defsubst.

	* tramp-cache (tramp-cache-data): New defvar.  Combines previous
	`tramp-file-properties' and `tramp-connection-properties'.
	(tramp-cache-setup): Removed.
	(tramp-flush-connection-property): New defun.

	* tramp-smb.el (tramp-smb-share, tramp-smb-share-cache): Removed.

2006-05-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (all): Apply renamings from tramp-cache.el.
	(tramp-handle-start-process, tramp-get-connection-buffer)
	(tramp-get-connection-process, tramp-maybe-open-connection):
	"process-name" and "process-buffer" are handled as file property,
	because they shouldn't be saved in Tramp connection history.
	(tramp-maybe-send-script): Dito for "scripts".
	(tramp-check-for-regexp, tramp-send-command)
	(tramp-send-command-internal): Dito for "check-remote-echo".
	(tramp-open-connection-setup-interactive-shell): Move test for
	`tramp-chunksize)' down.
	(tramp-bug): Add `tramp-file-properties'.
	(tramp-append-tramp-buffers): Remove test for cache data.

	* tramp-cache.el (tramp-file-properties): Renamed from
	`tramp-cache-data'.  It's not buffer local anymore.
	(tramp-cache-setup): Reimplementation.
	(tramp-get-file-property): Renamed from
	`tramp-cache-get-file-property'.  Reimplementation.
	(tramp-set-file-property): Renamed from
	`tramp-cache-set-file-property'.  Reimplementation.
	(tramp-flush-file-property): Renamed from
	`tramp-cache-flush-file'.  Reimplementation.
	(tramp-flush-directory-property): Renamed from
	`tramp-cache-directory-file'.  Reimplementation.
	(with-file-property ): Renamed from `with-cache-data'.
	Reimplementation.
	(tramp-set-connection-property): Remove parameter TRANSIENT.
	(tramp-dump-connection-properties): Pretty printing shall work for
	other Emacsen too.

	* tramp-smb.el (all): Apply renamings from tramp-cache.el.

2006-05-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (all):
	* tramp-util.el (all): Adapt all occurencies of
	`tramp-set-connection-property' and
	`tramp-get-connection-property' according to changed parameter
	list.

	* tramp-cache.el (tramp-get-connection-property): Reorder
	parameter list.
	(tramp-set-connection-property): Reorder parameter list.  Add new
	parameter TRANSIENT which suppresses saving that property in
	persistent connection history.
	(with-connection-property): Apply reordered parameter lists.
	(tramp-dump-connection-properties): Remove transient entries.

2006-05-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Eval expression for adding tramp-(ftp|efs) to
	`tramp-unload-hook'.
	(tramp-handle-file-name-all-completions)
	(tramp-handle-insert-directory): Remove final "cd".
	(tramp-register-file-name-handlers): Enable Tramp completion also
	when ido is loaded.
	(tramp-post-connection): Don't check for (en|de)coding.  It will
	be done on-the-fly.
	(tramp-find-inline-encoding): Remove tramp-get-* checks.
	(tramp-get-remote-encoding, tramp-get-remote-decoding)
	(tramp-get-local-encoding, tramp-get-local-decoding): Add
	`tramp-find-inline-encoding'.

	* tramp-cahe.el (top): Add unload code to
	`tramp-cache-unload-hook'.  Remove also
	`tramp-dump-connection-properties' from `kill-emacs-hook'.  Remove
	"scripts" properties from connection history, they are not
	persistent information.

2006-05-08  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-buffer-name, tramp-debug-buffer-name): Handle
	the case when USER is NIL.  This was lost yesterday.
	(tramp-set-remote-path): Save `tramp-default-remote-path' as
	connection property.
	(all): Remove `save-excursion' inside `with-connection-property'.
	Will be handled there.

	* tramp-cache.el (tramp-cache-print): Apply `prin1-to-string'.
	(with-connection-property): Apply `save-excursion'.
	(tramp-dump-connection-properties): Check for empty hash
	table. Prettyprint.
	(top): Simplify reading from connection history.

2006-05-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): cl and custom are always required.
	(tramp-verbose): Change description of levels.
	(tramp-encoding-reads-stdin, tramp-repair-jka-compr)
	(tramp-discard-garbage, tramp-completion-handle-file-exists-p)
	(tramp-completion-handle-file-name-directory)
	(tramp-completion-handle-file-name-nondirectory)
	(tramp-completion-handle-expand-file-name)
	(tramp-find-default-method, tramp-find-default-user)
	(tramp-find-default-host): Remove them.
	(tramp-methods): Change defcustom into defvar.
	(tramp-actions-before-shell, tramp-actions-copy-out-of-band):
	Change defcustom into defconst.
	(tramp-completion-file-name-handler-alist)
	(tramp-run-real-handler, tramp-completion-run-real-handler)
	(tramp-completion-handle-file-name-all-completions)
	(tramp-completion-handle-file-name-completion): Autoload them.
	(tramp-make-temp-file, tramp-make-tramp-temp-file): Move them up.
	(tramp-handle-file-name-directory): Return the real directory
	name.  Returning "/" only doesn't need to be necessary any longer.
	(tramp-handle-make-auto-save-file-name): For Emacs 21, set
	`tramp-auto-save-directory' if unset in order to guarantee unique
	auto-save file names.
	(tramp-file-name-handler): Make special attention when in hostname
	completion mode.
	(tramp-register-file-name-handlers): New defsubst.  Added with
	autoload cookie.  Code from `tramp-repair-jka-compr' moved here.
	Register `tramp-completion-file-name-handler' only when
	`partial-completion-mode' is enabled.
	(tramp-unload-file-name-handlers): Renamed from
	`tramp-unload-file-name-handler-alist'.
	(tramp-completion-handle-file-name-all-completions): Delete
	directory part from results.
	(tramp-get-completion-methods, tramp-get-completion-user-host):
	Discard deleting "/", it doesn't work after the change of
	`tramp-handle-file-name-directory' above.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-process-actions, tramp-wait-for-regexp)
	(tramp-maybe-open-connection, tramp-send-command)
	(tramp-send-command-internal): Trace sent command with level 6.
	(tramp-check-for-regexp): Trace echo with level 5.
	(tramp-dissect-file-name): Expand method, user, host.
	(tramp-find-method, tramp-find-user, tramp-find-host): Add code
	for default values.  Remove all calls but the one in
	`tramp-dissect-file-name'.
	(tramp-bug, tramp-reporter-dump-variable)
	(tramp-append-tramp-buffers): Dump also hash variables.

	* tramp-cache.el: Trace cache commands with level 7.  Trace
	connection commands with level 8.
	(tramp-cache-print): Dump strings as such.
	(tramp-persistency-file-name): New defcustom.
	(tramp-connection-properties): New defvar.
	(tramp-dump-connection-properties): New defun.
	(tramp-get-connection-property, tramp-set-connection-property):
	Rewritten.
	(top): Dump connection history when leaving Emacs.  Read it during
	initialization.

	* tramp-efs.el (tramp-efs-file-name-p): Don't use tramp-find-*
	functions.

	* tramp-ftp.el (tramp-ftp-file-name-p): Don't use tramp-find-*
	functions.

	* tramp-smb.el: Trace sent commands with level 6.
	(tramp-smb-file-name-p): Don't use tramp-find-* functions.

2006-04-29  Richard Stallman  <rms@gnu.org>

	* tramp.el (tramp-completion-file-name-handler-alist): Delete
	expand-file-name and other operations that can cause spurious loading.

2006-04-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode): ?\t has event-modifier
	'control.  Reported by Matthias Frste
	<slashdevslashnull@gmx.net>.

2006-03-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-path): Add `tramp-default-remote-path' as
	first item.  Remove items which are usually returned by "getconf
	PATH".  Extend custom parameters accordingly.
	(tramp-set-remote-path): Apply "getconf PATH" in order to get
	default directories.  Suggested by Kevin Rodgers <ihs_4664@yahoo.com>.
	Remove parameters VAR and DIRLIST.
	(tramp-post-connection): Set remote PATH variable as first action.
	(tramp-handle-call-process): Add "</dev/null" when INFILE is nil.

	* tramp-util.el (tramp-grep-setup): New defun.

2006-03-14  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in: Implement DESTDIR support.

2006-03-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-util.el (tramp-advice-dired-insert-directory): Ensure it
	isn't used with Emacs 22.

2006-03-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-util.el (tramp-advice-dired-insert-directory): New
	defadvice.

2006-03-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-write-region, tramp-touch)
	(tramp-call-local-coding-command): Local `call-process' and
	`start-process' must be applied with a local `default-directory'.

2006-03-08  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-pre-connection): The buffer must be erased.
	Reported by Heike C. Zimmerer <hcz@hczim.de>.

2006-03-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-debug-message): Don't filter for
	`tramp-warning', it doesn't exist.
	(tramp-touch): Raise a warning only if it fails.  It isn't worth
	an error.

2006-02-27  Heike C. Zimmerer  <hcz@hczim.de>

	* tramp.el (tramp-echo-mark, tramp-echoed-echo-mark-regexp): New
	defconst.
	(tramp-check-for-regexp): New defun.
	(tramp-wait-for-regexp): Apply it.
	(tramp-open-connection-setup-interactive-shell): Check for echo
	suppression on remote side.
	(tramp-send-command, tramp-send-command-internal): Add
	`tramp-echo-mark' to the command if needed.
	(tramp-send-command-and-check): Take a more precise regexp for
	exit status check.

2006-02-20  Heike C. Zimmerer  <hcz@hczim.de>  (tiny change)

	* tramp.el (tramp-maybe-open-connection): Fix typo in calling
	`tramp-wait-for-output'.

2006-02-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el, trampver.el.in: Adapt copyright years.

2006-02-08  Sam Steingold  <sds@gnu.org>

	* tramp.el (tramp-maybe-open-connection): Do not wait for
	output from a dead connection.

2006-02-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-error): Add a fmt-string to the call of
	`tramp-message-for-buffer'.

2006-01-30  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-unload-tramp): Don't try to unload tramp-util.

	* tramp-smb.el (tramp-smb-wait-for-output): Wait always for the
	prompt.  If it returns earlier (when detecting an error message),
	the rest of the output will merge accidently with the output of
	the next command.  Reported by M Jared Finder <jared@hpalace.com>.

2006-01-27  Antonio Martinez  <antonio.martinez.shotton@gmail.com>  (tiny change)

	* tramp.el (tramp-handle-call-process): All excursions must be
	saved correctly.

2006-01-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el, tramp-cache.el, tramp-ftp.el, tramp-util.el,
	* tramp-vc.el: Add code for unloading Tramp.  See comment before
	`tramp-unload-tramp' for checklist.

	* tramp.el (tramp-unload-file-name-handler-alist)
	(tramp-unload-tramp): New defuns.
	(tramp-advice-PC-expand-many-files): New defadvices.
	(tramp-save-PC-expand-many-files, tramp-setup-complete) Defuns
	removed.

	* tramp-ftp.el (tramp-ftp-enable-ange-ftp): New defun.

	* tramp-vc.el (vc-user-login-name): Wrap defadvice with a test for
	`process-file', in order to let it work for older Emacsen too.

2005-12-11  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.5 released.

	* tramp.el (tramp-remote-path): Beautify "/usr/xpg4/bin".  Clarify
	docstring.
	(tramp-handle-expand-file-name): Remove double slash.
	(tramp-set-remote-path): It is sufficient to check for
	`file-directory-p'.
	(tramp-find-file-exists-command): Remove unnecessary message.
	(tramp-check-ls-command, tramp-check-ls-commands)
	(tramp-find-ls-command, tramp-find-id-command): Remove functions.
	Code is moved to corresponding `tramp-get-*' functions.
	(tramp-get-*): Work in connection buffer because local
	`tramp-remote-path'. Insert code from above when necessary.
	(tramp-bug): Add `tramp-default-host', `tramp-default-user',
	`tramp-default-user-alist'.
	(tramp-append-tramp-buffers): Add local variables for all Tramp
	buffers.

2005-12-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-verbose): Document level 7.
	(tramp-send-command-and-check): Clean up tramp_exit_status from
	buffer.
	(tramp-handle-file-local-copy, tramp-send-command-and-read):
	Remove cleaning of tramp_exit_status.
	(tramp-handle-write-region): Make cksum check more robust.
	(tramp-remote-path): Add "/usr/xpg4/bin/".  On Solaris, there are
	the POSIX programs.
	(tramp-find-executable): IGNORE-TILDE is optional now.  New
	parameter IGNORE-PATH.  Adapt callees.
	(tramp-set-remote-path): Return list of existing directories.
	(tramp-post-connection): Make `tramp-remote-path' buffer local.
	Set it to list of existing directories.
	(tramp-find-id-command, tramp-get-remote-id ): New defun.
	(tramp-get-remote-uid, tramp-get-remote-gid): Use them.

2005-11-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-via-buffer)
	(tramp-handle-file-local-copy, tramp-handle-write-region):
	Generate always a new temp buffer. Kill it finally.
	(tramp-handle-unhandled-file-name-directory): Return home directory
	on remote host.
	(tramp-handle-write-region): When `file-precious-flag' is set,
	check also the checksums (in case of inline methods).

2005-11-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist): Remove
	`dired-call-process' again.  Not necessary, now that `tramp-util'
	is required.
	(tramp-handle-dired-call-process): Removed.
	(tramp-handle-process-file): Call just `call-process'.

	* tramp-util.el (file-remote-p): Make it available (Emacs 21), or
	advice it (XEmacs 21).
	(compilation-mode-hook, tramp-gud-file-name): Use `file-remote-p'.
	(tramp-gud-file-name-handler): Removed.  It was a wrong approach.
	(tramp-gud-massage-args): New defun.
	(tramp-gud-setup): Rewritten.  It is called now after loading
	gud.el.
	(tramp-gud-perldb-massage-args): Removed. Replaced by a more
	general approach in `tramp-gud-setup'.

2005-11-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Require `tramp-util'.
	(tramp-make-tramp-temp-file): New defsubst.
	(tramp-handle-call-process): Call it.
	(tramp-find-foreign-file-name-handler): Test also for stringp.
	(tramp-set-auto-save): Simplify test.  It is done in
	`tramp-find-foreign-file-name-handler'.
	(tramp-exists-file-name-handler): Protect it with
	`condition-case'.

	* tramp-util.el (tramp-advice-start-process)
	(tramp-advice-call-process, gud-perldb-massage-args): Replace test
	with `tramp-tramp-file-p' by `tramp-sh-file-name-handler'.  It
	does not work with other file name handlers.
	(tramp-gud-file-name-handler, tramp-gud-setup): New defuns.

	* tramp-vc.el (tramp-vc-user-login-name): Rewritten.
	(tramp-vc-file-owner): Replace test with `tramp-tramp-file-p' by
	`tramp-sh-file-name-handler'.  It does not work with other file
	name handlers.

2005-11-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-send-command-and-read): New defun.
	(tramp-handle-file-attributes-with-perl)
	(tramp-handle-file-attributes-with-stat)
	(tramp-handle-directory-files-and-attributes-with-perl)
	(tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-get-remote-stat, tramp-get-remote-uid)
	(tramp-get-remote-gid): Apply it.
	(tramp-handle-insert-directory): Remove unnecessary comments.
	(tramp-point-at-eol): Removed. All callees replaced by
	`tramp-line-end-position'.
	(tramp-barf-unless-okay): Don't pop up Tramp buffer in case of
	error.
	(tramp-get-ls-command, tramp-get-test-command)
	(tramp-get-test-nt-command, tramp-get-file-exists-command)
	(tramp-get-remote-ln, tramp-get-remote-perl)
	(tramp-get-remote-stat)
	(tramp-get-remote-uid, tramp-get-remote-gid): Apply
	`with-connection-property'.
	(tramp-get-connection-property, tramp-set-connection-property):
	Move to tramp-cache.el.

	* tramp-cache.el:
	(tramp-get-connection-property, tramp-set-connection-property):
	Moved from tramp.el.  Tramp messages added.
	(with-connection-property): New macro.

	* tramp-smb.el (tramp-smb-read-file-entry): `tramp-point-at-eol'
	replaced by `tramp-line-end-position'.

	* tramp-vc.el (tramp-handle-vc-user-login-name): Removed.
	(tramp-vc-user-login-name): Rewritten.

2005-11-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-user-alist): Simplify default value.
	(tramp-handle-file-attributes): Apply `expand-file-name'.
	(tramp-handle-file-newer-than-file-p)
	(tramp-handle-add-name-to-file, tramp-do-copy-or-rename-file):
	Call of `tramp-error' must be more robust.
	(tramp-touch): When there is no Tramp file, we cannot call
	`tramp-error'.
	(tramp-wait-for-regexp, tramp-wait-for-output): Remove unnecessary
	parameter in `tramp-error' call.
	(tramp-get-remote-uid, tramp-get-remote-gid): New parameter
	ID-FORMAT.  Adapt callees.

	* tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new)
	(tramp-vc-simple-command, tramp-vc-workfile-unchanged-p)
	(vc-checkout): Removed, including corresponding defadvices.
	(tramp-file-owner): Removed.  Defadvice `vc-file-owner' changed
	with code left.

2005-11-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-attributes-with-ls): Return t as
	9th attribute.  It doesn't matter, because it will be converted
	later on.
	(tramp-handle-file-ownership-preserved-p): Rewritten.  The old
	implementation was just heuristic.
	(tramp-convert-file-attributes): Set file's gid change bit.
	(tramp-get-remote-uid, tramp-get-remote-gid): New defuns.

2005-11-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-process-environment): New defcustom.
	(tramp-file-name-handler-alist): Add `dired-call-process'.
	(tramp-handle-dired-call-process ): New defun.
	(tramp-debug-message): Extend regexp for backtrace.
	(tramp-message): Apply level specific prefixes.
	(tramp-error): New defsubst.  Replace all calls of `message',
	`signal' and `error' with corresponding Tramp message functions.
	(tramp-handle-file-truename): Apply `tramp-equal-remote'.
	(tramp-handle-expand-file-name): Use "~root" for tilde expansion
	in case of su(do)? methods.  The home directory of the local user
	will be taken else.
	(tramp-handle-start-process): Use narrowing for protecting buffer
	contents.
	(tramp-file-name-handler): Remove signal handling.  Not necessary,
	because `tramp-error' handles it now.
	(tramp-buffer-name, tramp-debug-buffer-name): Handle the case USER
	is nil.
	(tramp-outline-level): Change formula in order to handle level 0.
	(tramp-set-remote-path): Add debug message.
	(tramp-enter-password): Don't erase the buffer, not necessary.
	(tramp-open-connection-setup-interactive-shell): Don't (un)set
	explicitely "TERM", "HISTFILE", "HISTSIZE" "MAIL" "MAILCHECK"
	"MAILPATH" "CDPATH" "LC_TIME".  Set
	`tramp-remote-process-environment' instead of.
	(tramp-barf-unless-okay): Remove SUBSHELL (always nil) and SIGNAL
	(always 'file-error).  Change all callees.
	(tramp-send-string): Apply `delete-region' instead of
	`erase-buffer'.  Necessary because of narrowing.

	* tramp-smb.el (all) Replace all calls of `message', `signal' and
	`error' with corresponding Tramp message functions.

	* tramp-util.el (tramp-advice-gud-perldb-massage-args): New
	defadvice.

2005-11-06  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist): Remove `shell-command.
	(tramp-handle-start-process, tramp-handle-call-process): Apply
	`save-excursion'.
	(tramp-handle-shell-command): Removed.
	(tramp-file-name-for-operation): Add `dired-call-process'. It IS a
	file name handler primitive.
	(tramp-wait-for-regexp): Take the message string from right
	buffer.
	(tramp-post-connection): Remove code for checking encoding
	commands.  It is also in `tramp-find-inline-encoding'.
	(tramp-find-inline-encoding): Check for connection properties.  By
	this, the commands won't be executed again for new connection
	buffers.
	(tramp-maybe-open-connection): Apply `tramp-send-command' instead
	of `tramp-send-string'.  No changed functionality, but better
	traces.

	* tramp-util.el (top): Don't require "compile".  Add handlers for
	`compilation-mode-hook' and `gud-mode-hook'.
	(tramp-advice-start-process, tramp-advice-call-process): Call the
	handlers with `apply'.
	(tramp-gud-file-name): New defun.
	(tramp-compilation-parse-errors-filename-function): Removed.  It
	wasn't such a good idea.

2005-11-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-util.el (tramp-compilation-parse-errors-filename-function):
	New defun.  Assigned to `compilation-parse-errors-filename-function'.

2005-11-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-user): Set to nil.  Otherwise, it would
	overwrite setttings for ssh.  Reported by Richard Edgar
	<rge21@pas.rochester.edu>.
	(tramp-default-user-alist): Add value for rsh and telnet and
	alike.
	(tramp-handle-file-newer-than-file-p)
	(tramp-handle-add-name-to-file, tramp-do-copy-or-rename-file)
	(tramp-run-test2 ): Apply `tramp-equal-remote'.
	(tramp-equal-remote): Improve docstring.
	(tramp-handle-call-process): Continue implementation.

	* tramp-util.el (tramp-advice-start-process)
	(tramp-advice-call-process): Check whether to apply.

2005-11-02  Lars Hansen  <larsh@soem.dk>

	* tramp.el (tramp-action-out-of-band): Handle scp message
	"Permission denied".

2005-11-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-call-process): Improve handling of INFILE
	and DESTINATION.
	(tramp-handle-file-remote-p): Return string instead of struct.
	Expand to default values.
	(tramp-equal-remote): New defun.

2005-10-30  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el: Global change to make access to connection buffer more
	robust.  Don't trust that it is always current buffer; don't
	expect it is writable.
	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
	Add `start-process' and `call-process'.  Remove
	`dired-call-process'.
	(tramp-handle-start-process, tramp-handle-call-process)
	(tramp-get-connection-buffer, tramp-get-connection-process): New
	defuns.
	(tramp-handle-dired-call-process, tramp-async-proc): Removed.
	(tramp-handle-shell-command, tramp-handle-process-file): Rewritten
	completely.
	(tramp-wait-for-output): New arg PROC.
	(tramp-get-connection-property, tramp-set-connection-property):
	Don't call `tramp-maybe-open-connection'.  There might be
	recursions otherwise.
	(tramp-handle-expand-file-name): Use
	`tramp-temporary-file-directory' instead of "/".
	(tramp-maybe-open-connection): Set PS1 to "$ ".  Otherwise, a
	local shell prompt could hurt.  Reported by Romain Francoise
	<romain@orebokech.com>.
	(tramp-chunksize): Escape parentheses in docstring starting at
	beginning of line.  Fontification is messed up when
	`open-paren-in-column-0-is-defun-start' set to t.  Reported by
	John Paul Wallington <jpw@pobox.com>.

	* tramp-cache.el (tramp-cache-setup): Reset `tramp-cache-data'
	only when it doesn't exist yet.  Otherwise, it would be cleaned
	every new asynchronous process.

	* tramp-util.el: Deactivate key mappings for `tramp-minor-mode'.
	(tramp-advice-start-process, tramp-advice-call-process): New
	defadvices.
	(tramp-compile, tramp-recompile): Removed.

2005-10-28  Richard M. Stallman  <rms@gnu.org>

	* tramp.el (tramp-completion-mode): defvar moved up.

2005-10-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-let-maybe): Add `edebug-form-spec' property.
	(tramp-handle-expand-file-name): Bind `default-directory' locally
	to "/" in order to avoid problems with UNC shares or Cygwin
	mounts.

2005-10-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode): New defvar.  Used in
	`tramp-completion-mode' for checking if we are in completion mode.
	(tramp-completion-handle-file-name-all-completions): Reorder code
	in order to complete for file names only in case there are no
	method/user/host completions.  This is necessary for cooperation
	with ido.  Reported by Kim F. Storm <storm@cua.dk>.

2005-10-08  Lars Hansen  <larsh@soem.dk>

	* tramp.el (tramp-perl-directory-files-and-attributes): Add error
	handling.
	(tramp-handle-directory-files-and-attributes-with-perl): Handle
	perl error msg.

2005-10-16  Andy Sloane <andy@guildsoftware.com>  (tiny change)

	* tramp.el (tramp-enter-password): `tramp-password-end-of-line'
	must be taken from `tramp-current-hop-*'.

2005-10-13  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.4 released.

	* tramp.el (tramp-debug-message, tramp-message-for-buffer): Write
	message only if connection buffer exists.  Otherwise, `method',
	`user' and `host' are not set yet.
	(tramp-handle-directory-files-and-attributes-with-perl)
	(tramp-handle-directory-files-and-attributes-with-stat): New
	defuns.
	(tramp-handle-directory-files-and-attributes): Use them.

2005-10-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Try to simplify XEmacs byte-compiler
	pacification.
	(tramp-verbose): Finish doc string.  New default value is 3.
	(all): Apply new verbosity levels.
	(tramp-get-debug-buffer): Remove definition of outline faces.  The
	default values are good enough.
	(tramp-bug): Explain setting of `tramp-verbose'.

	* tramp-cache.el (all): Apply new verbosity levels.

	* tramp-smb.el (top): Try to simplify XEmacs byte-compiler
	pacification.
	(all): Apply new verbosity levels.

	* tramp-vc.el (top): Try to simplify XEmacs byte-compiler
	pacification.

2005-10-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-verbose): Start rewriting the doc string.  Not
	finished yet.
	(tramp-handle-delete-file, tramp-handle-insert-file-contents)
	(tramp-sh-file-name-handler): Signals expect a list as last
	parameter.
	(tramp-file-name-handler): Handle signals in order to trace them
	in the debug buffer.

	* tramp-smb.el (tramp-smb-handle-directory-files): Rewritten in
	order to profit from caching results.
	(tramp-smb-handle-file-name-all-completions): `localname' must be
	expanded by `file-name-as-directory'.

2005-10-11  Steve Youngs  <steve@sxemacs.org>

	* tramp.el: Require `timer-funcs' instead of `timer' if in
	XEmacs.

2005-10-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-delete-directory)
	(tramp-handle-dired-recursive-delete-directory): Apply
	`tramp-cache-flush-directory'.
	(tramp-handle-insert-directory): Apply `tramp-cache-flush-file'.

	* tramp-cache.el: Autoload the needed functions from tramp.el.
	(tramp-cache-flush-directory, tramp-cache-before-revert-function):
	New defuns.
	(top): Add `tramp-cache-before-revert-function' to
	`before-revert-hook'.  Deactivate all Tramp messages for
	performance reasons.

	* tramp-smb.el (tramp-smb-handle-delete-directory): Apply
	`tramp-cache-flush-directory'.
	(tramp-smb-handle-insert-directory): Apply
	`tramp-cache-flush-file'.
	(tramp-smb-handle-directory-files): Local file must be handled as
	directory, otherwise the listing is senseless.

2005-10-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-without-shell-p): Removed.  Not
	needed anymore.
	(tramp-md5-function): Fix typo in error message.
	(tramp-handle-directory-files)
	(tramp-handle-directory-files-and-attributes)
	(tramp-handle-file-name-all-completions): Rewritten in order to
	profit from caching results.
	(tramp-handle-file-name-completion): Removed unnecessary code.

	* tramp-cache.el (with-cache-data): ,@body must be wrapped by
	`progn'.  Add `edebug-form-spec' property.

	* tramp-smb.el (tramp-smb-handle-file-name-all-completions):
	Rewritten in order to profit from caching results.

2005-09-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-actions-before-shell): Reorder actions.  There
	might be a speedup when the next action is recognized immediately.
	At least it doesn't hurt.
	(tramp-find-executable): "which(1)" doesn't return a correct error
	code in some implementations.  Use the number of words it returns
	as indication instead of.
	(tramp-send-string): Trace all chunk sendings.  It might be huge
	for large files, but trace level 10 should be an exception.
	Remove the sleep, it's not necessary (and disturbs accept process
	output logic on Emacs installations without timeouts, like on my
	HP-UX 10.20 desktop).

2005-09-18  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-login-prompt-regexp): Expand regexp in order to
	cover prompts like "login as:".  Reported by Slawomir Nowaczyk
	<slawomir.nowaczyk.847@student.lu.se>.
	(tramp-debug-message): Remove FACE as parameter.  Not necessary
	any longer, we use outline mode now.
	(tramp-message, tramp-trace): Change callees.
	(tramp-message-for-buffer): It is a defsubst now.
	(tramp-get-debug-buffer): Initialize outline mode.
	(tramp-outline-level): New defun.
	(tramp-insert-with-face): Removed.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): tramp-current-* and
	tramp-current-hop-* values should be already expanded.
	(tramp-action-login, tramp-read-passwd): Use tramp-current-hop-*.

2005-09-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Reduce compiler warnings.
	(tramp-current-hop-method, tramp-current-hop-user)
	(tramp-current-hop-host): New defvars.
	(tramp-handle-file-attributes-with-stat): Return floating point
	numbers.  Integers did run out of 2**28.
	(tramp-do-copy-or-rename-file-out-of-band, tramp-pre-connection)
	(tramp-maybe-open-connection): Initialize new defvars.
	(tramp-handle-shell-command): Send "tramp_set_exit_status", it
	isn't sent any longer during initialization.
	(tramp-handle-write-region): Remote decoding command is sent in
	one bunch.
	(tramp-find-executable): Check first in $PATH with "which"
	command.  Directory scan command is sent in one bunch.
	(tramp-check-ls-command, tramp-find-ls-command): Debug messages
	did go to a wrong debug buffer.
	(tramp-action-password, tramp-process-actions): Call
	`tramp-enter-password' and `tramp-clear-passwd' with changed
	parameters.
	(tramp-enter-password, tramp-read-passwd, tramp-clear-passwd):
	Change parameter set.  Rewrite.
	(tramp-post-connection): Remove unnecessary commands.
	(tramp-send-command, tramp-send-string): Move setting of
	`tramp-last-cmd-time'.
	(tramp-wait-for-output): Correct wrong variable names.
	(tramp-get-ls-command): Simplify code.

	* tramp-cache.el (tramp-enable-cache): Removed.  Works stable now.
	(with-cache-data): Change accordingly.

	* tramp-smb.el (top): Require `tramp-cache'.  Reduce compiler
	warnings.
	(tramp-smb-handle-file-attributes)
	(tramp-smb-handle-file-directory-p)
	(tramp-smb-handle-file-exists-p)
	(tramp-smb-handle-file-writable-p): Add `with-cache-data'.
	(tramp-smb-handle-copy-file, tramp-smb-handle-delete-directory)
	(tramp-smb-handle-delete-file, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region): Flush cached data.
	(tramp-smb-open-connection) Call `tramp-enter-password' and
	`tramp-clear-passwd' with changed parameters.

	* tramp-vc.el (top): Reduce compiler warnings.

2005-09-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-action-password): Compile the password prompt
	from `method', `user' and `host'.  Sometimes it isn't obvious
	which password to enter, for example with remote files offered by
	recentf.el.  Suggested by Robert Marshall
	<robert@chezmarshall.freeserve.co.uk>.

2005-09-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Rewrite compiler wrapping for `warnings'.
	(tramp-ls-command, tramp-test-groks-nt)
	(tramp-test-groks-nt): Remove variables.
	(tramp-handle-file-accessible-directory-p): Remove function.
	(tramp-file-name-handler-alist): Remove entry for
	`file-accessible-directory-p'.  Due to caching it doesn't make
	sense to call the test commands explicitely.
	(tramp-handle-file-exists-p): Format-string must be given now.
	(tramp-handle-file-attributes-with-stat): Don't use hard-coded
	"stat" command.
	(tramp-handle-file-newer-than-file-p): Simplify call of
	`tramp-run-test2' by using `tramp-get-test-nt-command'.
	(tramp-handle-file-directory-p): `tramp-run-test' should be
	sufficient.
	(tramp-handle-file-name-all-completions): Don't use hard-coded
	"test" command.
	(tramp-handle-make-auto-save-file-name):
	`tramp-subst-strs-in-string' should be applied all cases.
	(tramp-run-test): Use `with-parsed-tramp-file-name'.
	(tramp-run-test2): PROGRAM is replaced by FORMAT-STRING.  SWITCH
	not needed anymore.
	(tramp-find-file-exists-command): Don't use hard-coded "test" and
	"ls" commands.  Work with local file names but remote file names.
	(tramp-post-connection): Remove settings for
	`tramp-file-exists-command', `tramp-ls-command',
	`tramp-test-groks-nt', `tramp-connection-property' "perl",
	tramp-connection-property "perl-scripts",
	`tramp-connection-property' "ln" and `tramp-connection-property'
	"stat".  They are set on-the-fly.
	(tramp-convert-file-attributes): Rewrite setting directory
	indication bit.
	(tramp-get-ls-command, tramp-get-file-exists-command)
	(tramp-get-remote-perl, tramp-get-remote-stat):
	(tramp-get-remote-ln):  Rewrite.
	(tramp-bug): Remove deleted variables.
	(tramp-handle-set-visited-file-modtime)
	(tramp-handle-insert-file-contents)
	(tramp-handle-write-region): Insert special handling for
	`last-coding-system-used' again, it still seems to be
	necessary (unlike stated before).  Reported by Toshinori Sugita
	<sugita@d-pad.co.jp>.

	* tramp-cache.el (top): Rewrite compiler wrapping for
	`with-no-warnings.
	(tramp-cache-get-file-property): Add new parameter DEFAULT.
	(tramp-cache-flush-file): Don't use the message.
	(with-cache-data): Applicable for absolute file names only.

2005-08-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist)
	(tramp-file-name-for-operation): Add `make-auto-save-file-name'.
	(tramp-handle-make-auto-save-file-name): Rename from
	`tramp-make-auto-save-file-name'.
	(tramp-exists-file-name-handler): New defun.
	(tramp-advice-make-auto-save-file-name): Make defadvice only when
	`make-auto-save-file-name' is not a magic file name operation.

2005-08-28  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in: Replace trampcache.el by tramp-cache.el.

	* trampcache.el: Removed.  Replaced by tramp-cache.el.

	* tramp-cache.el: New file.  Implementation inspired by work of
	Daniel Pittman <daniel@rimspace.net>.

	* tramp.el: Introduce filename caching.  Require `tramp-cache'.
	(tramp-syntax): Correct doc string.
	(tramp-handle-file-truename, tramp-handle-file-exists-p)
	(tramp-handle-file-executable-p, tramp-handle-file-readable-p)
	(tramp-handle-file-accessible-directory-p)
	(tramp-handle-file-directory-p, tramp-handle-file-writable-p)
	(tramp-handle-file-ownership-preserved-p): Add `with-cache-data'.
	(tramp-handle-file-attributes): Add `with-cache-data'.  Check also
	for existence of applicable stat(1) command, which is preferred
	over the Perl script.
	(tramp-handle-file-attributes-with-stat, tramp-get-remote-stat):
	New defuns.
	(tramp-handle-set-file-modes, tramp-handle-add-name-to-file)
	(tramp-do-copy-or-rename-file, tramp-handle-delete-directory)
	(tramp-handle-delete-file, tramp-handle-dired-compress-file)
	(tramp-handle-dired-recursive-delete-directory)
	(tramp-handle-write-region): Flush cached data.
	(tramp-pre-connection): Initialise cache.
	(tramp-post-connection): Check for stat(1) command.
	(tramp-maybe-open-connection): Optimize code.
	(tramp-convert-file-attributes): Handle also attributes returned
	by stat.

2005-08-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-password-prompt-regexp): There might be other
	words before trailing ":".  Reported by Kurt Steinkraus
	<kurt@steinkraus.us>.
	(tramp-chunksize): Improve docstring.
	(tramp-set-auto-save-file-modes): Octal integer code #o600 breaks
	Emacs 20.  Use `tramp-octal-to-decimal' therefore.  Reported by
	Christian Joergensen <bugs@razor.dk>.

2005-08-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-chunksize): Improve docstring.

2005-08-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el: Rewrite communication functions in order to apply them
	more transparent.  Change their use (f.e. remove unnecessary
	`erase-buffer', `tramp-wait-for-output' and `sit-for' calls).

	(tramp-send-string): Erases communication buffer.  Calls
	`process-send-string'.  Always should be used as basic function
	sending input (except passwords, see comment there).  Parameter
	xxx has been removed; buffer is always erased.

	(tramp-accept-process-output): Calls `accept-process-output'.
	Basic function receiving output.
	(tramp-wait-for-regexp): Basic function checking output for any
	regexp.

	(tramp-wait-for-shell-prompt): Calls `tramp-wait-for-regexp'.
	(tramp-barf-if-no-shell-prompt): Calls `tramp-wait-for-shell-prompt'.

	(tramp-wait-for-output): Like `tramp-wait-for-shell-prompt', but
	looks for own defined prompt.

	(tramp-send-command-internal): Calls `tramp-send-string' and
	`tramp-barf-if-no-shell-prompt'.
	(tramp-send-command): Calls `tramp-send-string' and
	`tramp-wait-for-output'.  Parameter NOERASE has been
	removed (buffer is always erased in `tramp-send-string').  New
	parameter NOOUTPUT in case output should not be retrieved..

	(tramp-send-command-and-check): Calls `tramp-send-command', checks
	tramp_exit_status.
	(tramp-barf-unless-okay): Calls `tramp-send-command-and-check'.

	* tramp.el: Other changes.
	(tramp-debug-message, tramp-message-for-buffer): Simplify code.
	(tramp-trace): Trace messages should be visible for verbosity 10
	only.
	(tramp-handle-write-region, tramp-find-executable): Just the last
	"EOF" is sent by `tramp-send-command', all previous parts of the
	command are sent by `tramp-send-string`.
	(tramp-find-shell, tramp-process-initial-commands)
	(tramp-open-connection-setup-interactive-shell): Apply
	`tramp-send-command-internal' for equivalent code sequence.
	(tramp-process-one-action, tramp-accept-process-output)
	(tramp-send-command-internal): Add debug messages.
	(tramp-wait-for-regexp, tramp-wait-for-output): Optimize initial
	check.  Remove trace; this is done at lower level.
	(tramp-discard-garbage-erase-buffer): Function removed, shouldn't
	be necessary any longer.
	(tramp-post-connection): Don't compose string with
	`tramp-rsh-end-of-line'.  This is done anyway in
	`tramp-send-string'.
	(tramp-maybe-open-connection): "Are you awake" must be sent by
	`tramp-send-string', because there is an own process output
	handling afterwards.

	* tramp-smb.el: Remove unnecessary `save-excursion' calls; this is
	done in basic functions when necessary.
	(tramp-smb-not-handled): First argument can be something else than
	a string (filename).  Handle this case for error message.
	(tramp-smb-get-file-entries, tramp-smb-maybe-open-connection)
	(tramp-smb-wait-for-output): Simplify code.
	(tramp-smb-send-command): Most functionality is now in
	`tramp-send-string'.

2005-08-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-make-tramp-file-name): METHOD must not be
	prepopulated.
	(tramp-bug): Fix variable names.

2005-08-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el: Remove defvar of `last-coding-system-used' in the
	XEmacs case; not necessary anymore.
	(tramp-handle-set-visited-file-modtime)
	(tramp-handle-insert-file-contents)
	(tramp-handle-write-region): No special handling for
	`last-coding-system-used, because this is done in
	`tramp-accept-process-output' now.
	(tramp-accept-process-output): New defun.
	(tramp-process-one-action, tramp-wait-for-regexp)
	(tramp-wait-for-output, tramp-discard-garbage-erase-buffer): Call
	it.  Reported by David Howells <dhowells@redhat.com>.
	(clear-visited-file-modtime): Defadvice removed.  The check for
	unset buffer's modtime does not need to be based on
	`tramp-buffer-file-attributes'.  Suggested by RMS.
	(tramp-send-command): Simplify.
	(tramp-make-tramp-file-name): At least method and host delimeter
	must exist.

	* tramp-smb.el: Remove defvar of `last-coding-system-used' in the
	XEmacs case; not necessary anymore.
	(tramp-smb-handle-write-region): No special handling for
	`last-coding-system-used, because this is done in
	`tramp-accept-process-output' now.
	(tramp-smb-wait-for-output): Call `tramp-accept-process-output'.
	Simplify trace message.

2005-08-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-debug-message): Handle the case, that
	`backtrace-frame' returns a lambda expression, or nil.
	(tramp-message): Don't use ARGS as format string, it
	could contain "%".
	(tramp-wait-for-regexp, tramp-wait-for-output): Add a format
	string to the call of `tramp-trace'.
	(tramp-discard-garbage-erase-buffer): Beautify trace.

2005-08-01  Thien-Thi Nguyen  <ttn@gnu.org>

	Update years in copyright notice.

2005-07-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-uudecode): Remove shell function frame to make
	it fit for `tramp-maybe-send-script'.
	(tramp-perl-file-attributes)
	(tramp-perl-directory-files-and-attributes): Add Perl call to make
	it fit for `tramp-maybe-send-script'. Double "%".
	(tramp-perl-encode-with-module, tramp-perl-decode-with-module)
	(tramp-perl-encode, tramp-perl-decode): Change it to a defconst.
	(tramp-debug-message, tramp-trace): New defsubst.
	(tramp-message): Call it.
	(tramp-handle-file-local-copy): Call `insert-buffer-substring'
	instead of `insert-buffer'.  Compiler warning.
	(tramp-maybe-send-perl-script): Rename to
	`tramp-maybe-send-script'. Simplify sending the string.
	(tramp-handle-file-attributes-with-perl)
	(tramp-handle-directory-files-and-attributes): Call it.
	(tramp-find-shell): Use `tramp-barf-if-no-shell-prompt' for code
	sequence with same logic.
	(tramp-wait-for-regexp, tramp-wait-for-output)
	(tramp-discard-garbage-erase-buffer)
	(tramp-send-command, tramp-send-string): Simplify trace messages.
	(tramp-post-connection): Don't send all coding scripts.  This
	will be done if necessary only.
	(tramp-coding-commands): Split into new defconst
	`tramp-local-coding-commands' and `tramp-remote-coding-commands'.
	(tramp-find-inline-encoding): Rewrite.  Use new coding constants
	in order to send only scripts when needed.
	(tramp-bug): Adapt list of variables.

2005-07-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-write-region): Remove unnecessary code.

2005-07-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-user-regexp): Allow "@" as part of user name.
	(tramp-last-cmd, tramp-process-echoes)
	(tramp-feature-write-region-fix): Remove variables.  They are
	mostly not used.

2005-07-21  Juanma Barranquero  <lekktu@gmail.com>

	* tramp.el (tramp-handle-load): Fix typo in error message.

2005-07-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-handle-expand-file-name): Discard call
	of `tramp-drop-volume-letter'.  It is not necessary, and there
	have been problems with (expand-file-name "~/.netrc" "/") in
	ange-ftp.  Reported by Richard G. Bielawski
	<Richard.G.Bielawski@wellsfargo.com>.

2005-07-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Transfer
	message should always be visible.
	(tramp-handle-insert-directory, tramp-append-tramp-buffers):
	Pacify byte-compiler.
	(tramp-bug): Delete non-existing variables from list.  Apply
	`tramp-load-report-modules' as pre-hook.  Mask
	`tramp-password-prompt-regexp', `tramp-shell-prompt-pattern' and
	`shell-prompt-pattern' because of non-7bit characters.  Reported
	by Sebastian Luque <sluque@mun.ca>.
	(tramp-reporter-dump-variable, tramp-load-report-modules): New
	defuns.

2005-07-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-match-string-list): Remove function.
	(tramp-wait-for-regexp): Remove call of that function.  Suggested
	by Kim F. Storm <storm@cua.dk>.

2005-07-05  Lute Kamstra  <lute@gnu.org>

	Update FSF's address in GPL notices.

2005-06-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-auto-save-file-modes): Use octal integer
	code #o600 instead of octal character code ?\600.  The latter
	resulted in a syntax error with XEmacs.

2005-06-19  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in:
	* tramp.el:
	* tramp-ftp.el:
	* tramp-uu.el:
	* trampver.el.in: Adapt email addresses.

2005-06-14  Juanma Barranquero  <lekktu@gmail.com>

	* tramp.el (tramp-find-file-exists-command)
	(tramp-find-shell): Follow error conventions.

2005-05-17  Juanma Barranquero  <lekktu@gmail.com>

	* tramp-smb.el (tramp-smb-open-connection): Pass `tramp-chunksize'
	as fourth (required) argument.

2005-05-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-dired-call-process)
	(tramp-handle-insert-directory):`insert-buffer' cannot be used
	because the contents of the Tramp buffer is changed before
	insertion (`expand-file' and alike).
	(tramp-handle-insert-directory): If `localname' has an empty
	nondirectory name, it must not be quoted.

2005-04-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-auto-save-file-modes): Set file modes of
	`buffer-auto-save-file-name' to ?\600 as fallback solution.
	Reported by Ferenc Wagner <wferi@tba.elte.hu>.

2005-04-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-pre-connection): Add parameter CHUNKSIZE.  Make
	local variable `tramp-chunksize'.  Change callees.
	(tramp-open-connection-setup-interactive-shell): Check remote host
	for buggy `send-process-string' implementation.  Set
	`tramp-chunksize' if found.  Reported by Michael Kifer
	<kifer@cs.sunysb.edu> (and a lot of other people all the years).

2005-04-13  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-shell-command): `insert-buffer' cannot be
	used because the contents of the Tramp buffer is changed before
	insertion (`expand-file' and alike).  Reported by Frdric Bothamy
	<frederic.bothamy@free.fr>.

2005-04-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-auto-save): Actions should be done for Tramp
	file name handler only.  Ange-FTP has its own auto-save mechanism.
	Reported by Richard G. Bielawski <Richard.G.Bielawski@wellsfargo.com>.
	(tramp-bug): Remove obsolete variable.
	(tramp-append-tramp-buffers): Rewrite partly.  More suitable check
	for presence of `mml-mode'.  Make it running for older Emacsen as
	well.

2005-02-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-append-tramp-buffers): New defun.
	(tramp-bug): Apply `tramp-append-tramp-buffers' as post-hook.
	Catch `dont-send' signal.

2005-02-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-auto-save-file-modes): Set always
	permissions, because there might be an old auto-saved file
	belonging to another original file.  This could be a security
	threat.  Reported by Kjetil Kjernsmo <kjetil@kjernsmo.net>.

2005-02-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-prompt): Prompt can contain spaces
	inside directory names.
	(tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file):
	No error message if DIRECTORY or FILENAME doesn't exist.

2005-02-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-set-auto-save-file-modes) Check for Emacs
	21.3.50 removed.

2005-02-09  Kim F. Storm  <storm@cua.dk>

	Change release version from 21.4 to 22.1 throughout.

2005-02-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (all): Change all addresses to .gnu.org.

2005-01-16  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.3 released.

	* tramp.el (TODO): Remove some items which are solved or obsolete.

2005-01-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-operation-not-permitted-regexp) New defcustom,
	catching keep-date problems in cp/scp operations.
	(tramp-handle-copy-file): Don't call `set-file-modes'
	unconditionally.  Specialized functions should know better what is
	necessary.  This improves performance a little bit, and the
	functions could catch errors with `cp -p' and `scp -p'.
	(tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-out-of-band): Call `set-file-modes'
	when appropriate.
	(tramp-do-copy-or-rename-file-directly): Mask `cp -p' error.  Call
	`set-file-modes' when appropriate.
	(tramp-action-out-of-band): Mask `scp -p' error.
	Reported by Isak Johnsson <isak@hypergene.com>.

2005-01-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-util.el (tramp-remap-command): New defun.
	(top): Remove `define-key' calls.  They are replaced by respective
	`tramp-remap-command' and `add-menu-button' calls.  Add
	`tramp-minor-mode' to `dired-mode-hook'.
	(tramp-compile, tramp-recompile): Call the commands
	asynchronously.  Add `compilation-mode' to *Compilation* buffer.

2005-01-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el: Fix copyright years.

	* tramp-smb.el: Fix copyright years.  Adapt author address.

	* tramp-util.el: Fix copyright years.  Adapt author address.
	(tramp-minor-mode): Mode must toggle.

2005-01-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): If the local host does
	not run a UNIX derivate, the local shell cannot handle command
	sequences separated with ";".  Reported by Takashi Tsunakawa
	<tuna@is.s.u-tokyo.ac.jp>.

	* tramp-smb.el (tramp-smb-open-connection): Check existence of
	`tramp-smb-program'.

	* tramp-util.el (tramp-compile, tramp-recompile): Enable
	`tramp-minor-mode' in buffer "*Compilation*".

2004-12-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el: Add new Todo item.

	* tramp-util.el (tramp-minor-mode): New minor mode.  Add it to
	`find-file-hooks'.
	(tramp-minor-mode-map): Respective map.  Add remapping for
	`compile' and `recompile'.
	(tramp-recompile): New defun.

2004-12-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-buffer, tramp-get-debug-buffer): Discard the
	undo list of both Tramp buffer and debug buffer.  Reported by
	Joakim Verona <joakim@verona.se>.

2004-12-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-for-operation): Mark `shell-command'
	as magic for Emacs only.
	(tramp-wait-for-output): Fix error in deleting region.  From Kai
	Grossjohann <kai.grossjohann@gmx.net>.

	* tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new)
	(tramp-vc-simple-command): Call `tramp-handle-shell-command' but
	`shell-command', because it isn't magic in XEmacs.  Reported by
	Adrian Aichner <adrian@xemacs.org>.

2004-12-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for
	`substitute-in-file-name.
	(tramp-smb-handle-substitute-in-file-name): New defun.
	(tramp-smb-advice-PC-do-completion): Delete advice.

2004-12-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-send-perl-script): Change order of
	parameters wrt Tramp convention.
	(tramp-handle-file-attributes-with-perl)
	(tramp-handle-directory-files-and-attributes): Apply it.

2004-11-26  Lars Hansen  <larsh@math.ku.dk>

	Sync with Emacs CVS (Michael Albinus <michael.albinus@gmx.de>)

	* tramp.el (tramp-handle-directory-files-and-attributes): New function.
	(tramp-perl-directory-files-and-attributes): New constant.
	(tramp-file-name-handler-alist): Delete file-directory-files, add
	directory-files-and-attributes.
	(tramp-perl-file-attributes): Surround uid and gid by double
	quotes. Change parameter id-format from nonnumeric.
	(tramp-convert-file-attributes): New function.
	(tramp-handle-file-attributes): Use it.
	(tramp-maybe-send-perl-script): New function.
	(tramp-handle-file-attributes-with-perl): Use it. Don't convert
	file mode. Change parameter id-format from nonnumeric.
	(tramp-handle-file-attributes-with-ls): Change parameter id-format
	from nonnumeric.
	(tramp-post-connection): Don't send tramp-perl-file-attributes
	script. Reset connection property "perl-scripts".
	(tramp-handle-insert-directory): Run real handler when ls-lisp is
	in use.

2004-12-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Check for
	existence of `copy-program'.  Reported by Zack Weinberg
	<zack@codesourcery.com>.

2004-11-06  Richard M. Stallman  <rms@gnu.org>

	* tramp.el (tramp group): Add :version.

2004-11-05  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-coding-commands): Additionally try "uudecode -o
	/dev/stdout" before trying "uudecode -o -".  Suggested by Han
	Boetes.
	(tramp-uudecode): Mention `uudecode -o /dev/stdout'.

2004-07-06  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-handle-file-newer-than-file-p): Reverse logic.
	From Andrew J. Korty <ajk@iu.edu>.

2004-10-23  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp-vc.el (vc-do-command): Do not advise it if
	process-file is fboundp.
	* tramp.el (tramp-file-name-handler-alist): Add entry for
	process-file.
	(tramp-handle-process-file): New function.
	(tramp-file-name-for-operation): Support process-file.

2004-10-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-advice-PC-do-completion): Make the
	advice less fragile.  Surround temporary redefinition of
	`substitute-in-file-name' with `unwind-protect'.  Suggested by
	Matt Hodges <MPHodges@member.fsf.org>.

2004-10-15  John Paul Wallington  <jpw@gnu.org>

	* tramp.el (top): Set `edebug-form-spec' property directly rather
	than calling `def-edebug-spec'.

2004-10-12  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-smb.el (tramp-smb-advice-PC-do-completion): Don't activate
	advice during definition.  This is done later on, depending on
	test result of `substitute-in-file-name'.  Suggested by Stefan
	Monnier <monnier@iro.umontreal.ca>.

2004-10-10  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Apply `def-edebug-spec' only if function is
	defined.  This is not the case for XEmacs without package
	"edebug".
	(tramp-set-auto-save-file-modes): Set permissions of autosaved
	remote files to the permissions of the original file.  This is not
	the case for Emacs < 21.3.50 and XEmacs < 21.5.  Add function to
	`auto-save-hook'.  Reported by Thomas Prokosch <thomas@nadev.net>.

2004-10-10  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-coding-commands): New entry, uses built-in uu
	encoding provided by Perl.  Contributed by Slaven Rezic.  (2
	lines.)

2004-09-19  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.2 released.

	* tramp.el (tramp-handle-substitute-in-file-name): Implementation
	reworked.  It handles now both "//" and "/~" for URL syntax.
	(top): Undefine also "~" in `read-file-name-map' when syntax is
	'url.  Needed for XEmacs.

	* tramp-efs.el, tramp-ftp.el (top): Add
	`tramp-handle-substitute-in-file-name' to respective file name
	handler.  Doesn't seem to work for EFS yet.

2004-09-08  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-perl-decode): Fixed an error in Perl
	implementation.  $pending must be cleared every loop.  Reported by
	Benjamin Place <benjaminplace@sprintmail.com>.

2004-09-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Undefine "/" in `read-file-name-map' when syntax
	is 'url.  Otherwise, XEmacs would break the syntax with
	`minibuffer-electric-separator'.

2004-09-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-efs.el (all): Rename `tramp-postfix-single-method-*' to
	`tramp-postfix-method-*'.

2004-08-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): The echo command
	encloses every single word with '\"'.  Otherwise, the message
	could be detected during connection already, and Tramp raises a
	false error.

2004-08-29  Michael Albinus  <michael.albinus@gmx.de>

	Adding URL syntax.

	* tramp.el (tramp-unified-filenames): Renamed to `tramp-syntax'.
	(tramp-prefix-format, tramp-prefix-regexp, tramp-method-regexp)
	(tramp-postfix-method-regexp, tramp-user-regexp)
	(tramp-postfix-user-format, tramp-postfix-user-regexp)
	(tramp-host-regexp, tramp-host-with-port-regexp)
	(tramp-postfix-host-format, tramp-postfix-host-regexp)
	(tramp-localname-regexp, tramp-file-name-structure)
	(tramp-file-name-regexp, tramp-completion-file-name-regexp):
	Defcustom changed to defconst.  Partly syntax clarified, e.g. no
	regexp is optional any longer.
	(tramp-postfix-single-method-format): Renamed to
	`tramp-postfix-method-format'.
	(tramp-prefix-port-format, tramp-prefix-port-regexp)
	(tramp-port-regexp, tramp-file-name-regexp-url)
	(tramp-completion-file-name-regexp-url): New defconst.
	(tramp-file-name-handler-alist): Add entry for
	`substitute-in-file-name'.
	(tramp-handle-substitute-in-file-name): New defun.
	(tramp-do-copy-or-rename-file)
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): Apply
	`tramp-host-with-port-regexp'.
	(top): Delete autoloaded handlers from file name handler alist
	before adding them.  Useful if another syntax is chosen.
	(tramp-completion-mode): Some adaptations due to URL syntax.  I'm
	not sure whether this is the final implementation.
	(tramp-completion-dissect-file-name): Some adaptations due to URL
	syntax.  Mainly because `tramp-postfix-method-regexp' matches more
	than one char in URL syntax.
	(tramp-completion-dissect-file-name1): Simplification of
	implementation.

	* tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for
	`substitute-in-file-name'.

2004-08-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-rename-file): Apply t for KEEP-DATE when
	calling `tramp-do-copy-or-rename-file'.
	(tramp-do-copy-or-rename-file-out-of-band): If KEEP-DATE is true,
	and the method doesn't provide a keep-date argument, call
	`set-file-times' after copying.

2004-08-14  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): "sftp" has nil
	`tramp-copy-keep-date-arg'.
	(tramp-do-copy-or-rename-file-out-of-band): Handle it.

2004-08-09  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.1 released.

	* tramp.el (tramp-methods): "sftp", "psftp": new external methods.
	"plink", "plink1" and "pscp": parameter for port specification is
	"-P".

2004-08-06  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-post-connection): Quote $1 and $2 of shell
	function "tramp_file_attributes".  Otherwise, file names
	containing spaces are misinterpreted.  Reported by Magnus Henoch
	<mange@freemail.hu>.

2004-08-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-truename): FILENAME must be expanded
	first.  Otherwise, parameters like "/ssh:deego@gnufans.net:~" will
	return obscure results.  Reported by D. Goel <deego@gnufans.org>.

2004-08-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Change custom definition of log-args
	to the new syntax.
	(tramp-wrong-passwd-regexp): Add "Tramp connection closed" string.
	(tramp-maybe-open-connection): Add "echo \"Tramp connection
	closed\"" to connection command.  By this, we will see easily when
	a connection has failed.

2004-08-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Add "(-p" "%p)" in login-args where
	applicable for the port kludge.  Arrange login-args as list of
	lists, in order to discard a sublist when the corresponding
	parameter is not set (like user name, port number).  Adapt
	docstring.
	(tramp-maybe-open-connection): Change evaluation of login-args
	according the the changes above.
	(tramp-make-tramp-file-name): Use "%l" as placeholder for the
	localname part.  "%p" is used for port numbers now, and we want to
	avoid headaches.

2004-08-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-method-alist)
	(tramp-default-proxies-alist): Correcting doc string.
	(tramp-default-user, tramp-default-user-alist)
	(tramp-default-host): New defcustom.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-expand-file-name, tramp-action-login)
	(tramp-buffer-name, tramp-debug-buffer-name)
	(tramp-maybe-open-connection)
	(tramp-read-passwd, tramp-clear-passwd): Apply `tramp-find-user'
	and `tramp-find-host'.
	(tramp-find-default-method): Allow nil regexps.
	(tramp-find-default-user, tramp-find-user)
	(tramp-find-default-host, tramp-find-host): New defun.

	* tramp-smb.el (top): Add empty (anonymous) user to
	`tramp-default-user-alist' for smb method.

2004-07-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): Foreign and out-of-band
	methods are not supported for multi-hops.

2004-07-30  Michael Albinus  <michael.albinus@gmx.de>

	* trampver.el.in (top): Check for (X)Emacs version.  Code is from
	macro AC_EMACS_INFO of aclocal.m4.

	* tramp.el (top): Remove (X)Emacs version check.
	(tramp-maybe-open-connection): Handle nil values in
	`tramp-default-proxies-alist'.

2004-07-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): Set
	`coding-system-for-read'.  It was lost last patch.

	* tramp-smb.el (all): Don't load "cl-seq", Emacs 19 is out of
	scope.  Remove `with-parsed-tramp-file-name' kludge.  Debugging
	spec set in tramp.el is sufficient.  Remove multi-method parameter
	from `tramp-message-for-buffer' calls.
	(tramp-smb-open-connection): Set `coding-system-for-read' to nil.
	Check for Emacs 20 is not necessary any longer.

	* tramp-ftp.el (top): Don't load "cl-seq", Emacs 19 is out of
	scope.

2004-07-26  Michael Albinus  <michael.albinus@gmx.de>

	Removing multi-hop methods.  Incorporating proxies.

	* tramp.el (all): Check for (X)Emacs version.  Remove (X)Emacs
	20.x or 19.x kludges.  Pacify byte-compiler where possible.
	Remove all MULTI-METHOD parameters.
	(tramp-multi-sh-program, tramp-multi-methods)
	(tramp-multi-connection-function-alist)
	(tramp-postfix-multi-method-format)
	(tramp-postfix-multi-method-regexp)
	(tramp-postfix-multi-hop-format, tramp-postfix-multi-hop-regexp)
	(tramp-multi-file-name-structure)
	(tramp-multi-file-name-hop-structure)
	(tramp-make-multi-tramp-file-format, tramp-multi-actions)
	(tramp-current-multi-method, tramp-dos-coding-system)
	(tramp-buffer-name-multi-method, tramp-multi-action-login)
	(tramp-multi-action-password, tramp-multi-action-succeed)
	(tramp-multi-action-permission-denied)
	(tramp-multi-action-process-alive, tramp-process-one-multi-action)
	(tramp-process-multi-actions, tramp-open-connection-telnet)
	(tramp-open-connection-rsh, tramp-open-connection-su)
	(tramp-open-connection-multi, tramp-multi-connect-telnet)
	(tramp-multi-connect-rlogin, tramp-multi-connect-su)
	(tramp-dissect-multi-file-name, tramp-make-tramp-multi-file-name):
	Removed.
	(tramp-methods): Remove all `tramp-connection-function'
	parameters.  Expand `tramp-login-args' parameters instead of.
	Remove "multi" method.
	(tramp-default-proxies-alist): New defcustom.
	(tramp-maybe-open-connection): Completely rewritten.
	(tramp-bug): `tramp-current-multi-method',
	`tramp-multi-file-name-structure',
	`tramp-multi-file-name-hop-structure', `tramp-multi-methods',
	`tramp-multi-connection-function-alist' and `tramp-multi-actions'
	removed.  `tramp-default-method-alist' and
	`tramp-default-proxies-alist' added.

	* tramp-efs.el (all): Remove all MULTI-METHOD parameters.

	* tramp-ftp.el (all): Remove all MULTI-METHOD parameters.

	* tramp-smb.el (all): Remove all MULTI-METHOD parameters.

	* tramp-vc.el (all): Remove all MULTI-METHOD parameters.

2004-07-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-verify-visited-file-modtime): If file
	does not exist, say it is not modified if and only if that agrees
	with the buffer's record.
	(tramp-handle-write-region): Pass modtime explicitely to
	`set-visited-file-modtime', because filename can be different
	from (buffer-file-name) if `file-precious-flag' is set.
	All changes suggested by Luc Teirlinck <teirllm@auburn.edu>.

2004-07-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-set-visited-file-modtime): If `time-list'
	is not nil, don't apply the whole body.  If the file doesn't
	exist, set modtime to '(-1 65535).
	(tramp-handle-verify-visited-file-modtime): Check whether a file
	is visiting the buffer, or the buffer has no recorded last
	modification time.  Return t in case the visiting file doesn't
	exists.
	(tramp-handle-write-region): `set-visited-file-modtime' must be
	called always when `visit' is t or a string.
	All changes suggested by Luc Teirlinck <teirllm@auburn.edu>.

2004-07-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-write-region): `set-visited-file-modtime'
	must be called always if `visit' is non-nil. Emacs Lisp
	documentation is not clear in this point, `write-region'
	implementation clarifies.

2004-07-17  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-handle-verify-visited-file-modtime): Remove
	outdated comment.
	(tramp-handle-verify-visited-file-modtime): New docstring.  From
	Luc Teirlinck.

2004-07-14  Luc Teirlinck  <teirllm@auburn.edu>

	* tramp.el (tramp-handle-verify-visited-file-modtime):
	`visited-file-modtime' now returns a list of two integers, instead
	of a cons.

2004-07-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-open-connection-rsh): If a port is given, the
	Tramp buffer name must still contain the port number.  Otherwise,
	we have two Tramp buffers, with all the confusion.  Reported by
	Myron Selby <myron@xytech.com> and Rolf Dubitzky
	<Dubitzky@physi.uni-heidelberg.de>.

2004-06-26  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-handle-file-remote-p): New implementation to
	agree with new return value of `file-remote-p'.

2004-06-13  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-find-backup-file-name): `copy-tree' is
	available since Emacs 21.4 only (XEmacs has it).  Implementation
	rewritten in order to avoid this function.
	(tramp-handle-write-region): Set current buffer.  If connection
	wasn't open, `file-modes' has changed it accidently.  Reported by
	David Kastrup <dak@gnu.org>.

2004-06-09  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-sh-file-name-handler): Leaving this function,
	`tramp-locked' must be reset to the same value as during entering.

2004-06-06  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-enter-password, tramp-read-passwd): New
	arguments USER and HOST.
	(tramp-action-password, tramp-multi-action-password): Apply it.

	* tramp-smb.el (tramp-smb-open-connection): Apply USER and HOST to
	`tramp-enter-passwd'.

2004-06-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (all): Code cleanup.  Change all `tramp-handle-xxx'
	calls to respective `xxx` calls.

	* tramp-vc.el (all): Code cleanup.  Change all `tramp-handle-xxx'
	calls to respective `xxx` calls.

2004-06-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-alive-regexp): Precise doc string.
	(tramp-multi-action-process-alive): New defun.
	(tramp-multi-actions): Use it.

2004-05-30  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-locked, tramp-locker): New variables for
	implementing a global lock.
	(tramp-sh-file-name-handler): Use them to implement the global
	lock.
	(tramp-let-maybe): ReportReverse args of `get'.
	(tramp-let-maybe): Move to an earlier spot in the file.  Patch by
	Andreas Schwab.
	(tramp-handle-file-local-copy-hook): New hook.
	(tramp-handle-file-local-copy): Run it.
	(tramp-handle-write-region-hook): New hook.
	(tramp-handle-write-region): Run it.

2004-05-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist)
	(tramp-file-name-for-operation): Add entry for `file-remote-p'.
	(tramp-handle-file-remote-p): New defun.
	(top): Remove setting of `file-remote-p'.  Don't set
	`inhibit-file-name-handlers' and `inhibit-file-name-operation'.

	* tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for
	`file-remote-p'.

2004-05-28  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp-smb.el (tramp-smb-open-connection): Use
	tramp-set-process-query-on-exit-flag compat function.

	* tramp.el (tramp-set-process-query-on-exit-flag): New compat function.
	(tramp-open-connection-multi, tramp-open-connection-su)
	(tramp-open-connection-rsh, tramp-open-connection-telnet)
	(tramp-do-copy-or-rename-file-out-of-band): Use it.
	(tramp-let-maybe): New macro, let-binds a variable only if it
	isn't obsolete.
	(tramp-check-ls-commands, tramp-handle-expand-file-name)
	(tramp-handle-file-truename): Use it.

2004-05-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Add `tramp-completion-file-name-handler' to
	`inhibit-file-name-handlers', and `file-local-copy' to
	`inhibit-file-name-operation'.  Needed for proper working of
	`file-remote-p'.

2004-05-20  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-out-of-band-prompt-regexp): Renamed to
	`tramp-process-alive-regexp', because its usage is widen.
	(tramp-actions-copy-out-of-band): Apply it.
	(tramp-actions-before-shell, tramp-multi-actions): Add
	`tramp-action-process-alive' action.
	(tramp-action-process-alive): New defun.
	(tramp-process-one-action, tramp-process-one-multi-action): Remove
	check for process status.  Will be performed by the respective
	action now.  Reported by Ted Stern <stern+tramp-devel@cray.com>.

2004-05-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-uu.el (tramp-uuencode-region): Padding characters aren't
	counted for (last) line.  Reported by Aaron Ucko
	<ucko@ncbi.nlm.nih.gov>.

	* Makefile.in (TODO): New item, inspired by Kai's change.

2004-05-16  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-completion-file-name-regexp-unified): Avoid
	matching filenames starting with "/:" -- those are reserved for
	file-name-non-special.

2004-05-13  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-one-action)
	(tramp-process-one-multi-action, tramp-wait-for-regexp)
	(tramp-wait-for-output): Throw away if process has died. Reported
	by Luc Teirlinck <teirllm@dms.auburn.edu>.

2004-05-12  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-initial-commands): Add "unset HISTFILE"; this is
	not really necessary but seems to keep the shell history smaller
	in some cases.  It is no substitute for setting HISTFILE and
	HISTSIZE from tramp-open-connection-setup-interactive-shell,
	though.  Suggested by Luc Teirlinck.
	(tramp-open-connection-setup-interactive-shell): Export variables
	HISTFILE and HISTSIZE, do not just set them.  From Luc Teirlinck.

2004-05-02  Kai Grossjohann  <kgrossjo@eu.uu.net>

	Version 2.0.40 released.

2004-05-01  Michael Albinus  <michael.albinus@gmx.de>

	Suppress byte-compiler warnings were possible.

	* tramp.el (toplevel): Call of `byte-compiler-options' pacified.
	`directory-sep-char' set to not obsolete (we need it for XEmacs).
	Define `last-coding-system-used' in XEmacs case.  Pacify
	declarations of `backup-directory-alist',
	`bkup-backup-directory-info' and
	`tramp-save-PC-expand-many-files'.
	(tramp-feature-write-region-fix): Pacify funcall of
	`find-operation-coding-system'.
	(tramp-line-end-position): Pacify funcall of `line-end-position'
	and `point-at-eol'.
	(tramp-handle-dired-compress-file): Pacify funcall of
	`dired-remove-file'.
	(tramp-handle-find-backup-file-name): Pacify access to
	`tramp-backup-directory-alist' and
	`tramp-bkup-backup-directory-info'.
	(tramp-touch): `error' needs just one parameter if there is no
	string substitution.
	(tramp-bug): `tramp-backup-directory-alist',
	`tramp-bkup-backup-directory-info', `backup-directory-alist' and
	`bkup-backup-directory-info' must be quoted as symbols.

	* tramp-efs.el (toplevel): Suppress byte-compiler warnings.

	* tramp-smb.el (toplevel): Suppress byte-compiler warnings.
	Define `last-coding-system-used' in XEmacs case.

	* tramp-vc.el (toplevel): Suppress byte-compiler warnings.
	(tramp-vc-do-command-new): Pacify funcall of `vc-setup-buffer' and
	`vc-exec-after'.
	(tramp-vc-workfile-unchanged-p): Pacify funcall of
	`vc-default-workfile-unchanged-p'.
	(tramp-handle-vc-user-login-name): Pacify funcall of
	`subr-arity'. `let' must be `let*' because of `file'.

2004-04-29  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-read-passwd): Construct the key for the password
	cache in a way that works for multi methods, too.
	(tramp-bug): Add backup-directory-alist and
	bkup-backup-directory-info to bug reports, with Tramp
	counterparts.

2004-04-25  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-backup-directory-alist)
	(tramp-bkup-backup-directory-info): New defcustoms.
	(tramp-file-name-handler-alist): Add entry for
	`find-backup-file-name'.
	(tramp-handle-find-backup-file-name): New function.  Implements
	Tramp's find-backup-file-name.

	* tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for
	`find-backup-file-name'.

2004-04-09  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-do-copy-or-rename-file-via-buffer): Set
	permissions of the new file.
	(tramp-handle-file-local-copy, tramp-handle-write-region): The
	permissions of the temporary file are set if filename exists.
	Reported by Ted Stern <stern@cray.com>.

2004-04-07  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-open-connection-setup-interactive-shell):
	Revert weird EOL setting for first stty command (change from
	2004-03-30).

2004-04-02  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-handle-insert-directory): Properly quote file
	name also if not full-directory-p.  Handle wildcard case.
	Reported by Andreas Schwab <schwab@suse.de>.

2004-03-30  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-open-connection-setup-interactive-shell):
	First stty command needs weird EOL setting -- it is for setting
	EOL setting...  Due to the weird EOL, we might receive garbage
	from the remote end which b0rks the next command.  So we add a
	placeholder command for this.

2004-03-28  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-process-initial-commands): Avoid liveness check
	on shell -- we know that it must be alive since we're opening a
	connection at this moment.
	(tramp-last-cmd): New internal variable.
	(tramp-process-echoes): New tunable.
	(tramp-send-command): Set tramp-last-cmd.
	(tramp-wait-for-output): Delete echo, if applicable.

2004-03-21  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-touch): FILE can be a local file, too.
	(TODO): Remove items done.

2004-03-14  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in: New environment variables $(CONTRIB_FILES) and
	$(INSTALL_FILES).  Don't check for $(USE_CONTRIB) any longer.
	(all): Depends on $(CONTRIB_FILES), too.
	(install): Copy $(INSTALL_FILES) but $?.
	(distclean): Remove also $(CONTRIB_FILES).

2004-03-13  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-do-copy-or-rename-file-via-buffer): Renamed
	from tramp-do-copy-or-rename-via-buffer (without `file'), to make
	it consistent with the other tramp-do-* functions.
	(tramp-do-copy-or-rename-file): Calls adjusted.

2004-03-08  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-out-of-band-prompt-regexp)
	(tramp-actions-copy-out-of-band): New defcustoms.
	(tramp-do-copy-or-rename-file-out-of-band): Asynchronous process
	used instead of a synchronous one.  Allows password entering.
	(tramp-action-out-of-band): New defun.
	(tramp-open-connection-rsh, tramp-method-out-of-band-p): Remove
	restriction with password from doc string.
	(tramp-bug): Add variables `tramp-terminal-prompt-regexp',
	`tramp-out-of-band-prompt-regexp',
	`tramp-actions-copy-out-of-band', `password-cache' and
	`password-cache-expiry'.
	(toplevel): Remove todo item wrt ssh-agent.  Obsolete due to
	password caching.

2004-03-05  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in (.PHONY): Remove unused targets.
	(install): Depends on "all".

	* tramp-vc.el (tramp-vc-workfile-unchanged-p): Correct typo
	("file" -> "filename").  Reported by Kim F. Storm <storm@cua.dk>.

2004-03-02  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* tramp.el (tramp-completion-mode, tramp-md5-function): Use
	symbol-function to invoke functions only known on some Emacs
	flavors.  This avoids byte-compiler warnings.  Reported by Kevin
	Scaldeferri <kevin@scaldeferri.com>.

2004-02-29  Kai Grossjohann  <kgrossjo@eu.uu.net>

	* Makefile.in (install-ftp, site-lisp): Remove unused targets.

	Version 2.0.39 released.

2004-02-29  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (top-level): Require password.el if visible.  Should be
	mandatory once No Gnus has found its way into (X)Emacs.
	(tramp-read-passwd): Invoke `password-read' if available,
	`read-passwd' otherwise. `ange-ftp-read-passwd' isn't used as
	fallback any longer.
	(tramp-clear-passwd): New function.
	(tramp-process-actions, tramp-process-multi-actions): Clear
	password cache if login has failed.

	* tramp-smb.el (tramp-smb-open-connection): Clear password cache
	if login has failed.

2004-02-23  Kai Grossjohann  <kai@emptydomain.de>

	* tramp.el (tramp-handle-write-region): Say which function is used
	when encoding.

2004-02-16  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-async-proc): New variable.
	(tramp-handle-shell-command): Adding asynchronous processes.  They
	are far from being perfect, but it works at least for
	`find-grep-dired' and `find-name-dired' in Emacs 21.4.

2004-02-09  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-handle-dired-compress-file): Added XEmacs
	implementation.
	(tramp-handle-dired-compress-file-for-emacs)
	(tramp-handle-dired-compress-file-for-xemacs): Not needed
	anymore.  Implementation not so different as expected.

2004-02-08  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-file-name-handler-alist): Add
	`dired-compress-file' entry.
	(tramp-handle-dired-compress-file)
	(tramp-handle-dired-compress-file-for-emacs)
	(tramp-handle-dired-compress-file-for-xemacs): New functions.
	`tramp-handle-dired-compress-file-for-xemacs' not implemented yet.

2004-01-24  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el (tramp-ftp-file-name-handler): Unset
	`ange-ftp-ftp-name-arg' and `ange-ftp-ftp-name-res'.  There could
	be incorrect values from previous calls in case the "ftp" method
	is used in the Tramp file name.  Reported by Katsumi Yamaoka
	<yamaoka@jpl.org>.

2004-01-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-function-alist-ssh): Add
	`tramp-parse-shostkeys' and `tramp-parse-sknownhosts'.
	(tramp-completion-function-alist): It's a defvar now, because we
	want to apply the optimized `tramp-set-completion-function'
	instead of a static list.
	(tramp-set-completion-function): Implementation tuned.  Avoid
	double entries, and entries where the function or the
	file/directory doesn't exist.
	(tramp-parse-shostkeys, tramp-parse-sknownhosts): New functions
	for SSH2.

2004-01-18  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-do-copy-or-rename-file): Handle out-of-band
	methods.  Call `tramp-do-copy-or-rename-file-out-of-band' this
	case.
	(tramp-do-copy-or-rename-file-out-of-band): Renamed from
	`tramp-do-copy-or-rename-file-one-local', because it handles also
	the case both files use the same out-of-band method.
	Implementation added.
	(tramp-handle-file-local-copy, tramp-handle-write-region):
	Out-of-band handling removed.  `copy-file' called instead, which
	calls `tramp-do-copy-or-rename-file-out-of-band'.
	(tramp-action-password): Check for out-of-band method removed.
	This function is used for 'login-program.
	(tramp-post-connection): Use `tramp-method-out-of-band-p' when
	appropriate.

2004-01-18  Kai Grossjohann  <kai@slowfox.dyndns.org>

	* tramp.el (tramp-do-copy-or-rename-via-buffer): Handle KEEP-DATE
	arg, if possible.
	(tramp-touch): Set last-modified time of a remote file.

2004-01-10  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-get-file-entries): In case of XEmacs,
	apply a short sleep-for.  Otherwise it returns an empty list.
	No idea what happens.

2004-01-08  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-buffer-name): Buffer name must contain the user
	if exists.  Reported by Adrian Phillips <a.phillips@met.no>.

2004-01-06  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-mode): Make test for XEmacs
	explicitely.  `event-to-character' can exists in Emacs packages
	too.  Reported by Matt Swift <swift@alum.mit.edu>.

2004-01-05  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-maybe-open-connection): Use
	`tramp-process-connection-type'.

2004-01-03  Kai Grossjohann  <kai@slowfox.dyndns.org>

	* tramp.el (tramp-process-connection-type): New variable.
	(tramp-maybe-open-connection): Use it.

2004-01-03  Kai Grossjohann  <kai@emptydomain.de>

	* tramp.el (tramp-handle-file-local-copy)
	(tramp-handle-write-region, tramp-open-connection-rsh): Variable
	name typo.  Small change.  From Patrick Tullmann
	<tullmann@flux.utah.edu>.

2003-12-27  Michael Albinus <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-mode): Add XEmacs input
	events. Until now it was not necessary, because they are
	evaluated in case of unified filenames only.

	* tramp-efs.el (top): Add all XEmacs download sites to
	`tramp-default-method-alist'.  The existing settings should be
	sufficient already, but it's better to make it explicitely.
	(tramp-efs-method-given, tramp-efs-method-regexp): New variables.
	(tramp-efs-path-regexp, tramp-efs-path-format-string)
	(tramp-efs-path-format-without-user)
	(tramp-efs-path-user-at-host-format)
	(tramp-efs-path-host-format, tramp-efs-path-root-regexp): Changed
	to a function.  Their values depend on the existence of the method
	tag in filename.
	(tramp-efs-file-name-handler): Check first whether the method tag
	is given in a filename.
	(tramp-efs-file-name-p): A syntax check must be performed first,
	otherwise `tramp-dissect-file-name' returns with an error.

	* tramp-ftp.el (Commentary): Removing pointer to EFS.  It has its
	own module.

	* tramp-smb.el (top): Setting default value in
	`tramp-default-method-alist' corrected.  Order of USER and HOST
	have been wrong.  Nobody claimed for months ...

2003-12-25  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-mode) Don't check for 'xemacs but
	`tramp-unified-filenames'.

2003-12-21  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-errors): Add "NT_STATUS_WRONG_PASSWORD"
	and "NT_STATUS_NETWORK_ACCESS_DENIED".
	(tramp-smb-maybe-open-connection): Set `process-connection-type'
	to 'pty.  Suggested by Piet van Oostrum <piet@cs.uu.nl>.

2003-12-19  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-process-running): Removed.  Since we
	acknowledge the virtual prompt for shares, there's no need for
	distinction of reading shares (process ends afterwards) and
	interactive mode of smblient.
	(tramp-smb-open-connection): Setting process sentinel removed.
	(tramp-smb-wait-for-output): Algorithm simplified, again.  Hope it
	is more robust, too.

2003-12-14  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-prompt): Add virtual prompt from
	listing shares, too.
	(tramp-smb-errors): Add "NT_STATUS_ACCOUNT_LOCKED_OUT".
	(tramp-smb-wait-for-output): Optimize algorithm getting pending
	output.  If it was received chunkwise, there have been problems.
	Remove the "prompt not found" error message; it is obvious.

2003-12-06  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-handle-file-writable-p): Handle the case
	of non-existing filename, too.  Reported by Christoph Bauer
	<c_bauer@informatik.uni-kl.de>.
	(tramp-smb-get-file-entries): The directory in question should
	have permissions "drwxrwxrwx".  Just virtual, because we don't
	know the real permissions.  Don't we know?

2003-11-30  Kai Grossjohann  <kai.grossjohann@gmx.net>

	Version 2.0.38 released.

2003-11-30  Kai Grossjohann  <kai.grossjohann@gmx.net>

	* tramp-ftp.el, tramp-smb.el, tramp-util.el, tramp-uu.el:
	* tramp-vc.el, tramp.el, trampver.el.in: Add arch tagline.

2003-11-29  Kai Grossjohann  <kai.grossjohann@gmx.net>

	Version 2.0.37 released.

2003-11-25  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el: Add new optional parameter ID-FORMAT to
	`file-attributes'.  Calls of `file-attributes' won't use this
	parameter for backward compatibility reasons.
	(tramp-perl-file-attributes): Add a new parameter to Perl script
	in order to handle uid/gid as strings, if desired.
	(tramp-handle-file-truename, tramp-handle-file-symlink-p): Apply
	`file-attributes' instead of `tramp-handle-file-attributes' in
	order to make the function more general.
	(tramp-handle-file-attributes): Replace proprietary optional
	parameter NONNUMERIC by the recently (Emacs 21.4) introduced
	ID-FORMAT.
	(tramp-handle-file-attributes-with-perl): Handle parameter
	NONNUMERIC if set. This wasn't done in the past.
	(tramp-post-connection): Apply second parameter "$2" if
	`tramp-remote-perl' is called.

	* tramp-smb.el (tramp-smb-handle-delete-file): Correct cut'n'waste
	error (`filename' instead of `directory').
	(tramp-smb-handle-directory-files-and-attributes)
	(tramp-smb-handle-file-attributes): Add recently (Emacs 21.4)
	introduced parameter ID-FORMAT.
	(tramp-smb-handle-make-directory-internal): Correct cut'n'waste
	error (`directory' instead of `ldir').

	* tramp-vc.el (tramp-handle-vc-user-login-name): Check if
	`file-attributes' has a second parameter.  If yes, apply it with
	value "'integer".  Otherwise, don't use that parameter (default
	is integer format).

2003-11-02  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el, tramp.el: Add new Todo item.

2003-08-09  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-get-connection-function, tramp-get-remote-sh)
	(tramp-get-login-program, tramp-get-login-args)
	(tramp-get-copy-program, tramp-get-copy-args)
	(tramp-get-copy-keep-date-arg, tramp-get-password-end-of-line):
	Functions removed.  Use `tramp-get-method-parameter' instead.
	(tramp-get-method-parameter): New function to retrieve a method
	parameter.  This allows for omission of method parameters.
	(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-enter-password)
	(tramp-open-connection-setup-interactive-shell)
	(tramp-post-connection, tramp-maybe-open-connection)
	(tramp-method-out-of-band-p): Use new function
	`tramp-get-method-parameter'.

2003-08-08  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-multi-connection-function-alist): Add ssht
	entry which adds "-e none -t -t" to the list of ssh args.
	Suggested by Adrian Aichner.

2003-07-30  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-chunksize): Extend docstring.  Suggested by
	Charles Curley <charlescurley@charlescurley.com>.

2003-07-26  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in (.PHONY): Add `xemacs'.

2003-07-26  Kai Grojohann  <kai.grossjohann@gmx.net>

	* Makefile.in (xemacs): New target to copy files to XEmacs
	working dir.  (For use by Kai only.)

2003-07-20  Kai Grojohann  <kai.grossjohann@gmx.net>
	Version 2.0.36 released.

	* tramp.el (tramp-default-password-end-of-line): Renamed from
	tramp-password-end-of-line.
	(tramp-password-end-of-line): New method parameter.
	(tramp-get-password-end-of-line): Function to access method
	parameter `tramp-password-end-of-line', or variable
	`tramp-default-password-end-of-line' (default value).
	(tramp-methods): Add entries for new parameter
	tramp-password-end-of-line.
	(tramp-enter-password): Use new function
	`tramp-get-password-end-of-line'.

2003-07-15  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in (LISP_FILES): tramp-ftp.el is conditional, too.
	(install): Install only files belonging to the respective Emacs
	flavour.

2003-07-14  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in (LISP_FILES): New variable.  Used to distinguish
	collection of *.el files for Emacs and XEmacs.
	Reported by Sven Utcke <utcke@informatik.uni-hamburg.de>.
	(EM): Use `-vanilla' option for XEmacs call.
	(all): Depends on $(LISP_FILES).

2003-07-14  Kai Grojohann  <kai.grossjohann@gmx.net>

	* Makefile.in (MKDIR): New variable.
	(install): Create installation directory, if necessary.

2003-07-03  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-handle-insert-file-contents): Do not
	unconditionally inhibit the file operation file-local-copy, only
	do that when the inhibit-file-name-operation is currently
	insert-file-contents.  This fixes finding remote CVS-controlled
	files.  (It would barf on inserting the CVS/Entries file
	literally, because the file-local-copy handler wasn't called.)
	(tramp-handle-shell-command): Support optional third arg
	ERROR-BUFFER.

	* tramp-vc.el (vc-workfile-unchanged-p): Add comment.

2003-06-30  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-sh-extra-args): Test whether widget type
	`alist' is available (instead of testing (featurep 'xemacs)).

2003-06-27  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-sh-extra-args): Adapt defcustom type to XEmacs.

2003-06-24  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-initial-commands): New variable.
	(tramp-process-initial-commands): New function, using the variable.
	(tramp-open-connection-setup-interactive-shell): Call the new
	function.
	(tramp-buffer-name, tramp-debug-buffer-name): Always put the
	method into the buffer name, never use nil.  Reported by Hanak
	David <dhanak@inf.bme.hu>.
	(tramp-open-connection-setup-interactive-shell): Erase buffer
	before sending "stty -onlcr".  Maybe this leads to just one
	prompt on a line.

2003-06-17  Kai Grojohann  <kai.grossjohann@gmx.net>
	Version 2.0.35 released.

	* tramp.el (tramp-shell-prompt-pattern): Allow space after escape
	sequence.

2003-06-16  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-shell-prompt-pattern): Allow multiple escape
	sequences.

	* tramp-uu.el:
	* tramp-util.el:
	* tramp-efs.el: Use iso-2022-7bit encoding with coding cookie for
	XEmacs compatibility.

2003-06-12  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-handle-copy-file): Set file modes of target
	file.
	(tramp-handle-file-local-copy)
	(tramp-do-copy-or-rename-via-buffer): Use binary coding system,
	instead of no-conversion.  They are the same on Emacs but
	different on XEmacs.

2003-06-08  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-handle-file-newer-than-file-p):
	`tramp-time-diff' returns integer, not list.  Do not apply `car'
	to the return value of `tramp-time-diff'.  Reported by David
	D. Smith <ultrasoul@ultrasoul.com>.
	(tramp-time-diff): Convert return value of subtract-time to a
	number of seconds in a correct manner, by applying float-time or
	time-to-seconds.  Also correct compat code accordingly.  The
	XEmacs branch for itimer-time-difference didn't need correction,
	it returned a float already.  Reported by David D. Smith
	<ultrasoul@ultrasoul.com>.
	(tramp-handle-insert-file-contents): When calling
	`file-local-copy', let-bind `inhibit-file-name-operation'
	accordingly.  This makes sure that jka-compr is not called when
	`insert-file-contents-literally' is invoked.  From Katsumi Yamaoka
	<yamaoka@jpl.org>.
	(tramp-do-copy-or-rename-via-buffer): Avoid calling jka-compr when
	writing the target file.
	(tramp-foreign-file-name-handler-alist): Add comment about default
	value having to come last.
	(tramp-handle-file-local-copy, tramp-handle-write-region): Add the
	"-p" hack.

2003-06-08  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-find-foreign-file-name-handler): Return after
	first match is found.  From Francis Litterio <franl@world.std.com>.

2003-05-31  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el: Factor out the `regular' file name handling via a
	remote shell of some sort into a specific function.  Intent is to
	later put that part of Tramp into a special file, so that the
	Tramp `core' is just a dispatcher that dispatches to various
	handlers.
	(tramp-sh-file-name-handler): New function.
	(tramp-foreign-file-name-handler-alist): New default value.  Call
	tramp-sh-file-name-handler as default case.
	(tramp-file-name-handler): Do not invoke the old remote-shell
	handler.

2003-05-24  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile.in (EM): Use `--no-site-file' option for Emacs call, in
	order to avoid loading of Tramp in site specific init files.
	Reported by Harry Putnam <reader@newsguy.com>.
	(.PHONY): New target.
	(all): "trampver.el" and "tramp.el" must be handled first due to
	dependencies.

	* tramp.el (tramp-completion-function-alist): Add completion
	function for "remcp", "remsh" and "plink1".

2003-05-24  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-password-end-of-line): Use "xy" with plink.

2003-05-21  Kai Grojohann  <kai.grossjohann@gmx.net>

	Version 2.0.34 released.

	* tramp.el (tramp-shell-prompt-pattern): Allow ANSI escapes at
	end of prompt.  (ANSI escapes elsewhere in the prompt are
	recognized properly already.)

2003-05-18  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-methods): New method plink1.  Like plink but
	pass "-1" to force protocol version 1.

2003-05-14  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-completion-file-name-handler): Add safe-magic
	property.

2003-05-06  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-default-method): Use plink as the default on
	machines where the plink program is present.

2003-05-03  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-methods): Unify tramp-rsh-program,
	tramp-telnet-program, tramp-su-program into tramp-login-program.
	Likewise with tramp-login-args, tramp-copy-program,
	tramp-copy-args, tramp-copy-keep-date-arg.
	Users changed.

2003-05-03  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-methods): Old entries "rsh" and "rcp"
	unconditionally invoke rsh now.  New entries "remsh" and "remcp"
	unconditionally invoke remsh now.
	(tramp-real-rsh-program): Remove.
	(tramp-multi-connection-function-alist): Old entry "rsh"
	unconditionally invokes rsh now.  New entry "remsh" invokes remsh.

2003-04-27  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el (tramp-real-rsh-program): Explain strategy for
	choosing default value.

2003-04-25  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-real-rsh-program): "remsh" is used on Cray
	machines, too.  Suggested by Ted Stern
	<stern+tramp-devel@cray.com>.
	(tramp-methods, tramp-multi-connection-function-alist): The list
	must be backquoted, because the value of `tramp-real-rsh-program'
	is needed.  No trailing space needed in the password argument of
	sudo `tramp-su-args'.  Reported by my friendly supervisor Kai
	Grojohann <kai.grossjohann@gmx.net>.

2003-04-24  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-real-rsh-program): New constant.  On HP-UX, the
	"rsh" program is called "remsh".
	(tramp-methods, tramp-multi-connection-function-alist): Apply
	`tramp-real-rsh-program'.  Use "-p Password:\ " for "sudo" method,
	because password prompt might be changed by either passprompt
	option in /etc/sudoers, or SUDO_PROMPT environment variable.
	Suggested by Peter Oliver <peter.oliver@aquila-networks.co.uk>.

2003-04-18  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp-efs.el: New file.

	* tramp.el (tramp-handle-expand-file-name): Make default method
	explicit in file name.
	(tramp-unified-filenames): Move to an earlier spot in the file.
	(top-level): If tramp-unified-filenames is set and we're running
	on XEmacs, load tramp-efs.
	(tramp-wait-for-shell-prompt, tramp-barf-if-no-shell-prompt): New
	functions, used by tramp-send-command-internal.
	(tramp-open-connection-setup-interactive-shell): Simplify using
	`tramp-send-command-internal'.
	(tramp-send-command-internal): New function.

2003-04-14  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-handle-file-truename): `sym' shouldn't be quoted.

2003-04-08  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-handle-file-symlink-p): If target of symlink is
	absolute, return a Tramp filename.  (Ie, return
	"/user@host:/target" instead of "/target".)
	(tramp-handle-file-truename): Deal with new return value from
	`file-symlink-p'.

2003-04-08  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	Version 2.0.33 released.
	Version 2.0.32 released.

2003-04-04  Andreas Schwab  <schwab@suse.de>

	* tramp.el (tramp-send-string): Handle empty string.

2003-04-04  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el (tramp-ftp-file-name-handler):
	'ange-ftp-file-directory-p` calls 'file-directory-p` as
	well.  Disabling of file-name-handler not appropriate, too.

2003-04-02  Kai Grojohann  <kai.grossjohann@gmx.net>

	* tramp.el: Change actual encoding of file to match coding cookie.

2003-04-02  Steve Youngs  <youngs@xemacs.org>

	* tramp.el: Change coding cookie to 'iso-2022-7bit' to get around
	a bug in non-Mule XEmacs 21.5.

2003-03-30  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el (tramp-ftp-file-name-handler): In
	'ange-ftp-file-exists-p`, 'file-exists-p` is called in case of
	symlinks.  So we cannot disable the file-name-handler this case.

2003-03-29  Kai Grojohann  <kai.grossjohann@gmx.net>

	Version 2.0.31 released.

	* tramp.el (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.

2003-03-13  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-handle-insert-directory): Comment out XEmacs
	kludge.  Suggested by Katsumi Yamaoka <yamaoka@jpl.org>.

2003-03-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* .cvsignore (Makefile, trampver.el): Added.

	* Makefile.in: New file.  Derived from Makefile, which will be
	generated now.
	(EMACS, prefix, datadir, lispdir, CLEAN_FILES: Generated by configure.
	(all): Depends on wildcard.
	(install-ftp): Renamed from install.
	(install, distclean): New targets.
	(prepversion): Removed.

	* Makefile: Removed from CVS.

	* trampver.el.in: New file.  Provides `tramp-version' and
	`tramp-bug-report-address', which are generated by configure.

	* tramp.el (tramp-version, tramp-bug-report-address): Moved to
	trampver.el, which is required now.

2003-03-06  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-read-file-entry): Make reading size of a
	listing entry more robust.  Ranges from 10 chars (Samba 1) to 7-9
	chars (Samba 2).

2003-03-02  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-chunksize): Type can be nil as well.  Reported
	by Markus Rost <rost@math.ohio-state.edu>.

2003-02-28  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-version): Bump.
	(tramp-handle-expand-file-name): Protect against short localnames
	when comparing with "/../".

2003-02-27  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-handle-expand-file-name): Allow ".." to cross
	host boundaries.

2003-02-20  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (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.

2003-02-16  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el: Replace term `path' with `localname' unless it is
	used for a search path.  In GNU, the word `path' is reserved for
	search paths.

	* tramp.el (tramp-send-linewise, tramp-send-region): Removed.
	(tramp-send-string): New function.  Takes over the role of the
	functions above, in order to have a unique place handling
	`tramp-chunksize'.  Same implementation as `tramp-send-region'.

2003-02-15  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp-vc.el, tramp.el: Replace term `path' with `localname'
	unless it is used for a search path.  In GNU, the word `path' is
	reserved for search paths.

	* tramp.el (tramp-do-copy-or-rename-file-one-local): New
	function.  Not implemented.  Not used.  Should invoke rcp or scp
	directly to keep the time.

2003-02-09  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-chunksize): It's now a defcustom.  Set to 500 on
	systems only known to have a buggy `process-send-string'
	implementation.  First black-listed constellation is GNU Emacs/
	hpux.
	(tramp-send-region): Correct debug message.
	(tramp-bug): Add `tramp-chunksize'.

2003-02-05  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	Version 2.0.29 released.

	* tramp.el (tramp-send-region): Protect against tramp-chunksize
	being nil.

2003-02-04  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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-completion-handle-file-name-all-completions'.
	(tramp-send-region): Handle the case `tramp-chunksize' is equal
	0.  I did it accidently.  Infinite loop ...

	* 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.

	* 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 Grojohann  <kai.grossjohann@uni-duisburg.de>

	* 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>

	* tramp.el (tramp-get-device): `tramp-make-tramp-file-name' must
	not be called with NIL path.  It fails in case of multi-method.

2003-01-27  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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>

	* 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.

	* 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>

	* 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>

	* tramp.el (tramp-completion-handle-expand-file-name): Apply
	`tramp-drop-volume-letter'.  Otherwise, there are problems on W32
	systems.

2003-01-21  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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 Grojohann  <kai.grossjohann@uni-duisburg.de>

	* 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>

	* 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>

	* 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>

	* tramp-ftp.el (top-level): Defaults for
	`tramp-default-method-alist' must be a list.

	* tramp-smb.el (top-level): Defaults for
	`tramp-default-method-alist' must be a list.

2003-01-02  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* 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
	stuff.

2002-12-23  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	Version 2.0.28 released.

2002-12-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (top-level): Discard tramp-smb.el also for Cygwin.  No
	"smbclient" available there.
	(tramp-completion-dissect-file-name):
	`tramp-completion-file-name-structure1',
	`tramp-completion-file-name-structure2',
	`tramp-completion-file-name-structure3' and
	`tramp-completion-file-name-structure4' changed from "defconst" to
	"let*", because they are function local (but nevertheless
	constants).  Suggested by David Kastrup
	<David.Kastrup@t-online.de> and Kai Grojohann
	<kai.grossjohann@uni-duisburg.de>.  The value "9" has changed to
	"nil" (meaning there's nothing to match), because Emacs 21.3 seems
	to be more sensible on `match-string'.
	(tramp-completion-dissect-file-name1): In case of a "nil" position
	don't call `match-string'.

	* tramp-smb.el (tramp-smb-file-name-handler-alist):
	`add-name-to-file' is handled by `tramp-smb-handle-copy-file',
	because there are no hardlinks under Windows.

2002-12-21  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-default-method-alist): Defaults setting for FTP
	method has moved to tramp-smb.el.  The remaining default for the
	SU method is available for both Emacs and XEmacs now.

	* tramp-ftp.el (top-level): Set defaults for
	`tramp-default-method-alist'.  Taken over from tramp.el.

	* tramp-smb.el (top-level): Set default for
	`tramp-default-method-alist'.  If the user name contains a domain
	(visible via the "%" char), it must be the SMB method.
	(tramp-smb-wait-for-output): Use `tramp-smb-process-running' where
	appropriate.  Last time I've changed this function I forgot one
	place.

2002-12-05  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	Version 2.0.27 released.

2002-12-05  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-process-running) New buffer local
	variable.  Flag whether a corresponding process is still running.
	(tramp-smb-open-connection): Set a process sentinel.  It disables
	`tramp-smb-process-running'.
	(tramp-smb-wait-for-output): Use `tramp-smb-process-running' for
	several checks.

2002-12-05  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-run-real-handler)
	(tramp-completion-run-real-handler): Disable cygwin-mount, too.
	All files handled by Tramp are on Unix systems, where
	cygwin-mount is not useful.  (Ie, remote Cygwin systems are not
	supported.)

	* tramp-vc.el (tramp-vc-do-command): Ensure that `okstatus' is an
	integer before using `<' on it.
	(tramp-vc-do-command-new): Pass relative filename as arg to remote
	process.  This helps with CVS.  Suggested by Francis Litterio.

2002-11-30  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-end-of-output): Do not use directory listing as
	input to `md5' function.  The current time is deemed to be good
	enough.

	* tramp-vc.el (tramp-vc-do-command-new): `okstatus' can be async.
	From Francis Litterio <franl@world.std.com>.
	(tramp-vc-simple-command): Comment on potential `okstatus'
	problem with it being `async'.  No code change.

2002-11-28  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	Version 2.0.26 released.

	* tramp.el (tramp-version): Bump.

2002-11-28  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (top-level): Require tramp-smb.el only if local
	Operating System is not MS Windows.  There's no need for the SMB
	method there, because those Emacsen support UNC file names.
	(tramp-handle-file-modes): Use Emacs file name primitives instead
	of calling tramp-handle-* equivalents directly.  Needed for
	tramp-smb.

	* tramp-smb.el (tramp-smb-errors): List of error strings extended.
	(tramp-smb-not-handled-yet): Function removed.  All I/O primitives
	are handled now.  All places where used updated accordingly.
	(tramp-smb-handle-copy-file, tramp-smb-handle-delete-file)
	(tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region, tramp-smb-open-connection): Error
	handling improved.
	(tramp-smb-handle-delete-directory)
	(tramp-smb-handle-directory-files)
	(tramp-smb-handle-directory-files-and-attributes)
	(tramp-smb-handle-make-directory)
	(tramp-smb-handle-make-directory-internal): New file name
	primitive functions implemented.
	(tramp-smb-handle-insert-directory): In case parameter is not a
	directory, the result of "dir filename*" will return too many
	results.  They are filtered out now.
	(tramp-smb-send-command): Returns nil if there has been an error
	message from smbclient.  Used for improved error handling
	mentioned above.
	(tramp-smb-wait-for-output): Timeouts removed.  Too much trouble
	with.
	(tramp-smb-time-less-p, tramp-smb-time-subtract): Handle the case
	when T1 or T2 is nil.  It shouldn't happen ever, but it did once.

2002-11-27  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp-uu.el (tramp-uu-b64-char-to-byte, tramp-uuencode-region):
	Abstain from `incf'.

2002-11-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-handle-substitute-in-file-name):
	Removed.  The default handler is good enough for us now.
	(tramp-smb-advice-PC-do-completion): Advice for
	`PC-do-completion'.  Corrects the inconvenient usage of
	`substitute-in-file-name' there.

2002-11-21  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-use-smb): Remove variable.  "smb" method is
	active now; beta test can start.
	(tramp-smb-handle-file-newer-than-file-p): Apply
	`tramp-smb-time-less-p' but `tramp-time-diff'.  Seems to be more
	general.
	(tramp-smb-handle-insert-directory): Use SWITCHES in order to
	decide how to sort (but obscure dired variables).  Don't apply
	`save-excursion'; the cursor must be at the end of the buffer
	after insertion.  I should have it done from the beginning ...
	(tramp-smb-handle-write-region): Remove unused variable
	`trampbuf'.  Thanx to XEmacs compiler warning.
	(tramp-smb-read-file-entry): Simplify handling of the dont-know
	mtime value.
	(tramp-smb-maybe-open-connection): Remove unused variable
	`last-cmd-time'.  Thanx to XEmacs compiler warning.

2002-11-20  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (top-level): Autoload of "time-date" removed.
	Needed functions snarfed from there.
	(tramp-smb-handle-insert-directory): Dummy user renamed to
	"nobody".
	(tramp-smb-read-file-entry): Return list shortened; just MTIME is
	used for all time strings and calculations.
	(tramp-smb-open-connection): Test of anonymous USER introduced.
	Also an empty HOST is tested, but does it makes sense?
	(tramp-smb-half-a-year): New constant, in order to decide whether
	to display time or year in dired buffers.
	(tramp-smb-parse-time-months ): Snarfed from "time-date".  Alist
	mapping month names to integers.
	(tramp-smb-time-less-p): Snarfed from "time-date".  Replaces
	`time-less-p'.
	(tramp-smb-time-subtract): Snarfed from "time-date".  Replaces
	`tramp-time-diff', which returns just an integer only.

2002-11-19  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (top-level): Autoload "time-date".  Just a
	work-around, until I have replaced the corresponding functions by
	own implementation.
	(tramp-smb-errors): List of error strings extended.
	(tramp-smb-share-cache): New buffer local variable.  Holds the
	share names of the respective host.
	(tramp-smb-file-name-handler-alist): `vc-registered' changed to be
	not-handled.  If default handler is used, there are problems with
	version control files of shares themselves ...
	(tramp-smb-handle-copy-file): Error handling improved, check for
	shares is performed.
	(tramp-smb-handle-file-attributes)
	(tramp-smb-handle-file-directory-p)
	(tramp-smb-handle-file-directory-p)
	(tramp-smb-handle-file-exists-p)
	(tramp-smb-handle-file-name-all-completions)
	(tramp-smb-handle-file-writable-p)
	(tramp-smb-handle-insert-directory): `tramp-smb-get-file-entries'
	used instead of own scenario.
	(tramp-smb-get-share): Replace nil in case the share name isn't
	completed.
	(tramp-smb-get-path): Handling for "$" and "$$" added.  But I
	still have the feeling it isn't trustworthy yet.  Too complex.
	(tramp-smb-get-file-entries): New function.  Replaces
	`tramp-smb-get-file-entry'.
	(tramp-smb-read-file-entry): Reads share names as well now.
	(tramp-smb-send-command): Erases always buffer.
	(tramp-smb-maybe-open-connection): Check for being alive is
	removed.  Instead of, `process-status' is applied.  Erasing the
	buffer is removed, because it disturbs exited processes if just
	the share names should be retrieved.
	(tramp-open-connection-smb): Renamed to
	`tramp-smb-open-connection' for uniqueness.  Acknowledges now
	domains in user names ("USER%DOMAIN"), and port numbers in host
	names ("HOST#PORT").  Erasing the buffer is removed, because it
	disturbs exited processes if just the share names should be
	retrieved.
	(tramp-smb-wait-for-output): Handling for exited processes
	incorporated.
	(tramp-smb-check-shares): Removed.  Functionality moved to
	`tramp-smb-open-connection' and `tramp-smb-get-file-entries',
	respectively.


2002-11-10  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-handle-file-name-completion): Use Emacs file
	name primitives instead of calling tramp-handle-* equivalents
	directly.  Needed for tramp-smb.

	* tramp-smb.el (tramp-smb-errors): List of error strings extended.
	(tramp-smb-not-handled, tramp-smb-not-handled-yet):
	`tramp-smb-not-handled' renamed to `tramp-smb-not-handled-yet'.
	The new `tramp-smb-not-handled' returns nil for als primitives
	which don't make sense for SMB servers.  All callers adapted.
	(tramp-smb-handle-copy-file)
	(tramp-smb-handle-file-name-all-completions)
	(tramp-smb-handle-file-newer-than-file-p)
	(tramp-smb-handle-rename-file)
	(tramp-smb-handle-substitute-in-file-name)
	(tramp-smb-handle-write-region): New file name primitive functions
	implemented.
	(tramp-smb-handle-delete-file): In the `let' clause, `path' must
	be declared but `share'.  Found during compilation.
	(tramp-smb-handle-file-symlink-p)
	(tramp-smb-handle-set-visited-file-modtime)
	(tramp-smb-handle-verify-visited-file-modtime): Replaced by
	`tramp-smb-not-handled'.
	(tramp-smb-handle-insert-directory): Handling of copyied files
	added.
	(tramp-smb-maybe-open-connection): Are-you-alive command changed
	from "help" to "dir .".
	(tramp-smb-wait-for-output): In case of finished process return
	immediately.
	(tramp-smb-check-shares): New function.  Reads share names.

2002-11-05  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-errors): List of error strings extended.
	(tramp-smb-share): New buffer local variable.  Holds the share
	name associated with the buffer process.
	(tramp-smb-handle-delete-file, tramp-smb-handle-file-attributes)
	(tramp-smb-handle-set-visited-file-modtime)
	(tramp-smb-handle-verify-visited-file-modtime):
	New file name primitive functions implemented.  The latter two do
	nothing (yet).
	(tramp-smb-handle-file-local-copy): `save-excursion' added.  I'm
	not fully sure if it's needed here, but it is better in case of.
	(tramp-smb-handle-insert-directory): Mode string adapted.
	(tramp-smb-read-file-entry): Block introduced for better return
	handling.  Return list values changed.  Callers	adapted.


2002-11-04  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-smb.el (tramp-smb-line): Defconst deleted.  Useless due to
	nature of smbclient output.  More sophisticated handling in
	`tramp-smb-read-file-entry'.
	(tramp-smb-errors): List of error strings extended.
	(tramp-smb-get-path): Additional parameter CONVERT for conversion
	of "/" path separator into "\\".
	(tramp-smb-get-file-entry): Top directory handling included.
	(tramp-smb-read-file-entry): Reimplemented.  No chance to handle
	smbclient output lines by a single regexp.
	(tramp-smb-send-command): Parameters of commands enclosed in
	\"...\".

2002-11-03  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-handle-insert-file-contents): Use Emacs file
	name primitives instead of calling tramp-handle-* equivalents
	directly.  Needed for tramp-smb.

	* tramp-smb.el: First useful version.  Directory traversing and
	file displaying work.

2002-11-03  Kai Grossjohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-end-of-output): Fix last change.

2002-11-02  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-md5-function): New variable.
	(tramp-end-of-output): Use it.

2002-10-27  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el (top-level): Require some basic packages in order
	to pacify byte-compiler.

	* tramp-smb.el (top-level): Ditto.

2002-10-27  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (top-level): Load tramp-smb.el.  Remove autoload of
	`tramp-ftp-file-name-p'; not needed anymore.
	(tramp-foreign-file-name-handler-alist): New variable.  Foreign
	methods shall plug in.
	(tramp-file-name-for-operation): Relative file names are checked
	via `expand-file-name'.  If no absolute file name is given,
	default directory of current-buffer is used.
	(tramp-find-foreign-file-name-handler): New function.  Parses
	`tramp-foreign-file-name-handler-alist' in order to find foreign
	file name handlers.
	(tramp-file-name-handler): Apply
	`tramp-find-foreign-file-name-handler' instead of simply looking
	for FTP foreign method.

	* tramp-ftp.el (top-level): Plug into
	`tramp-foreign-file-name-handler-alist'.

	* tramp-smb.el: New file.  Functionality disabled by
	`tramp-use-smb' during development.

	* Makefile (tramp): Add tramp-smb.elc.

2002-10-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-file-name-for-operation): Even more file
	primitives.  Sort them alphabetically.

2002-10-22  Kai Grojohann  <kai.grossjohann@uni-duisburg.de>

	* tramp.el (tramp-action-yn): Erase the buffer when the user has
	said yes, don't erase it when they said no.

2002-10-20  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-file-name-for-operation): Complete file
	primitives.  Lots of undocumented found.

2002-10-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-sh-extra-args): Use "-norc -noprofile" instead
	of "--norc" for bash.  The single dash is for old versions, and
	the additional option might help more.  Suggested by Tim Connors
	<tconnors@astro.swin.edu.au>.

2002-10-15  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-end-of-output): Emulate
	directory-files-and-attributes if it does not exist.  (It does
	not exist on XEmacs.)

2002-10-14  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-dissect-file-name): Check for multi-method
	syntax before raising an error.
	(tramp-primitive-file-name): Renamed to
	`tramp-file-name-for-operation'.  Docstring enhanced.  List of
	file primitives completed in order to be signalled when a new one
	appears.  All changes suggested by Kai.
	(tramp-file-name-handler): `save-match-data' global.

2002-10-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-end-of-output): Use a random value which
	includes "///".  The "///" makes sure that the string can't occur
	during normal operation, the random value makes it unlikely that
	it occurs in random shell-command output.

2002-10-13  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-advice-find-file-name-handler): Remove defadvice
	because it might be not a good idea to hook into Emacs built-in
	subroutiones.  Suggested by RMS.
	(tramp-primitive-file-name): Handle all primitives now.
	(tramp-file-name-handler): Allow call of
	`tramp-ftp-file-name-handler' only for functions defined in
	`tramp-file-name-handler-alist'.  Strange.

2002-10-12  Michael Albinus  <Michael.Albinus@alcatel.de>

	* Makefile (tramp): Add tramp-uu.elc and tramp-ftp.elc.

	* tramp.el (top-level): Require `tramp-ftp' after load in order to
	avoid infloop. Autoload `tramp-ftp-file-name-p' for compiler
	satisfaction.
	(tramp-primitive-file-name): Add handling of `expand-file-name'
	and `file-newer-than-file-p'.
	(tramp-file-name-handler): Call `tramp-primitive-file-name' via
	`apply'.

	* tramp-ftp.el (top-level): Require `tramp'.


2002-10-11  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp-ftp.el: New file.

	* tramp.el (tramp-default-method): Adapt doc string.
	(tramp-ftp-method, tramp-completion-function-alist-ftp)
	(tramp-disable-ange-ftp, tramp-invoke-ange-ftp)
	(tramp-ange-ftp-file-name-p, tramp-make-ange-ftp-file-name): Moved
	to tramp-ftp.el or removed (if not needed any longer).  Callers
	adapted.
	(tramp-completion-function-alist): "ftp" entry removed.  Will be
	added from within tramp-ftp.el.
	(tramp-set-completion-function ): Allow setting of methods not
	defined yet.
	(tramp-run-real-handler, tramp-completion-run-real-handler):
	Remove `ange-ftp-hook-function' handling.  Make
	`inhibit-file-name-handlers' a cons but a list.
	(tramp-advice-find-file-name-handler): Advice for
	`find-file-name-handler'.  Check for Ange-FTP file names,
	applicable for NON built-in primitives only.
	(tramp-primitive-file-name): New function.  Returns filename for
	some built-in primitives.
	(tramp-file-name-handler): Check for Ange-FTP file names (built-in
	primitives only).  Forward to Ange-FTP in case of.
	(tramp-completion-file-name-handler): Remove catch for
	`tramp-forward-to-ange-ftp'.  Not necessary any longer.
	(tramp-flatten-list): Remove function.  Never used.
	(tramp-completion-mode, tramp-get-completion-methods): Special
	handling of `tramp-ftp-method' removed.  It's part of
	`tramp-methods' now (as foreign method).

2002-10-11  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-shell-command): Don't switch to the
	output buffer, just display it.  From Francis Litterio
	<franl@world.std.com>.

2002-10-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-newer-than-file-p): Use
	tramp-time-diff instead of subtract-time.  Reported by Angus Lees.

2002-10-06  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.25 released.

2002-10-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): If it's a directory,
	append slash only if result doesn't end in a slash already.

2002-10-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Restructure logic.  If
	list of steps is nil, return "/" as the real name.

2002-10-03  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-mode): Add "\\(" and
	"\\)". Otherwise, `match-string' doesn't make sense.
	(tramp-host-with-port-regexp): New defcustom. Equal to previous
	`tramp-host-regexp'.
	(tramp-host-regexp): Taken off hashes in host names. Otherwise,
	scanning files like .rhosts would take comments as host names.
	(tramp-file-name-structure, tramp-multi-file-name-hop-structure):
	Replace `tramp-host-regexp' by `tramp-host-with-port-regexp'.

2002-10-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-action-terminal): New function.
	(tramp-terminal-prompt-regexp): New variable, matches "tset"
	prompts.
	(tramp-actions-before-shell): Use them.

2002-09-30  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-shell-command): Logic error.  From Ivan
	Zakharyaschev <imz@altlinux.org>.

2002-09-29  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.24 released.

	* tramp.el (tramp-host-regexp): Allow hashes in host names (for
	the "#port" feature).

2002-09-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (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.

2002-09-27  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-methods, tramp-completion-function-alist):
	Rename "scp1-old", "scp2-old", "ssh1-old", "ssh2-old" to
	"*_old". There have been problems in method name completion,
	because "-" is a word delimeter for partial completion mode.
	(tramp-completion-function-alist): Set
	`tramp-completion-function-alist-ssh' as completion function for
	"fcp".

2002-09-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.23 released.

2002-09-26  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (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.

2002-09-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-action-password): Protect against clobbered
	match data.
	(tramp-maybe-open-connection): Don't send "are you awake" if
	process has died.

2002-09-24  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Eliminate unused
	variable.
	(tramp-version): Bump.

2002-09-24  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el (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
	command.
	(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.

2002-09-23  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-unified-filenames): Autoload cookie.  Reported
	by Vin Shelton <acs@xemacs.org>.

2002-09-22  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	Version 2.0.22 released.

2002-09-22  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (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
	"ftp".

2002-09-22  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.21 released.

	* tramp.el (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-open-connection-setup-interactive-shell)
	(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.

2002-09-22  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	Version 2.0.20 released.

2002-09-20  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-method-out-of-band-p): Add missing ")".
	* tramp.el (tramp-method-out-of-band-p): Remove superfluous ")".

2002-09-20  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* 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-completion-handle-file-name-all-completions)
	(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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-insert-directory): Handle "--dired" in
	SWITCHES (by removing it).

2002-09-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-handler): Add `file-remote-p'
	property.

2002-09-17  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (top-level): Maybe autoload uudecode-decode-region.

2002-09-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug): Add tramp-methods.

2002-09-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.19 released.

	* tramp-uu.el: New file.

	* tramp.el (tramp-coding-commands): Use `tramp-uuencode-region'
	as local encoder for the uuencode based entries.

2002-09-13  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-write-region): Wrong parens.

2002-09-13  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.18 released.

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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>

	* tramp.el (tramp-completion-handle-file-name-all-completions):
	Define `result1'.
	(tramp-parse-hosts-group): Discard IPv6 entries.

2002-09-11  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el: Next todo item. The list shall decrease, but it
	doesn't :(

2002-09-11  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: New todo item.

2002-09-11  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-post-connection): Only send Perl
	mime-encode/decode implementations when using inline method.
	(tramp-handle-file-local-copy)
	(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
	host.
	(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 functions.
	(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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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>

	* tramp.el (tramp-handle-write-region): Added missing `)'. Hope
	it's the right place.

2002-09-09  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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
	argument.
	(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>

	* tramp.el (tramp-methods): Remove `tramp-completion-function'
	entries. They are handled now by `tramp-completion-function-alist'.
	(tramp-completion-function): Defvar removed. I've never used
	it. Hmm.
	(tramp-get-completion-function)
	(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-rsh)
	(tramp-completion-function-alist-ssh)
	(tramp-completion-function-alist-telnet)
	(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-set-completion-function)
	(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-completion-function-alist'.
	(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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 code.

2002-09-06  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-get-completion-methods): Algorithm slightly
	tuned.
	(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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (file-expand-wildcards): Corrected check to see if
	advising is necessary.

2002-09-05  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-postfix-single-method-format)
	(tramp-postfix-multi-method-format)
	(tramp-postfix-multi-hop-format)
	(tramp-postfix-user-format): New format strings.
	(tramp-postfix-single-method-regexp)
	(tramp-postfix-multi-method-regexp)
	(tramp-postfix-multi-hop-regexp)
	(tramp-postfix-user-regexp)
	(tramp-make-multi-tramp-file-format)
	(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>

	* tramp.el (tramp-prefix-format)
	(tramp-postfix-host-format): New format strings.
	(tramp-prefix-regexp, tramp-method-regexp)
	(tramp-postfix-single-method-regexp)
	(tramp-postfix-multi-method-regexp)
	(tramp-postfix-multi-hop-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-file-name-structure)
	(tramp-multi-file-name-structure)
	(tramp-multi-file-name-hop-structure)
	(tramp-make-multi-tramp-file-format)
	(tramp-completion-mode)
	(tramp-completion-dissect-file-name)
	(tramp-parse-rhosts-group)
	(tramp-parse-shosts-group)
	(tramp-parse-hosts-group)
	(tramp-parse-passwd-group): Apply these expressions.
	(tramp-file-name-structure-unified)
	(tramp-file-name-structure-separate)
	(tramp-make-tramp-file-format-unified)
	(tramp-make-tramp-file-format-separate)
	(tramp-make-tramp-file-format)
	(tramp-make-tramp-file-user-nil-format-unified)
	(tramp-make-tramp-file-user-nil-format-separate)
	(tramp-make-tramp-file-user-nil-format)
	(tramp-multi-file-name-structure-unified)
	(tramp-multi-file-name-structure-separate)
	(tramp-multi-file-name-hop-structure-unified)
	(tramp-multi-file-name-hop-structure-separate)
	(tramp-make-multi-tramp-file-format-unified)
	(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-methods)
	(tramp-get-completion-user-host): Apply
	`tramp-make-tramp-file-name'.
	(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>

	* tramp.el (tramp-methods): Add `tramp-completion-function' for
	"su" and "sudo".
	(tramp-get-completion-telnet): Implement it.
	(tramp-parse-hosts)
	(tramp-parse-hosts-group)
	(tramp-get-completion-su)
	(tramp-parse-passwd)
	(tramp-parse-passwd-group): New functions.

2002-08-31  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-mode): Check for `last-input-char'.
	(tramp-completion-file-name-handler-alist): Add handler
	for `file-exists-p.
	(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-rsh)
	(tramp-get-completion-ssh): Apply it.

2002-08-29  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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>

	* tramp.el (tramp-completion-mode): New function.
	(tramp-completion-handle-file-name-directory)
	(tramp-completion-handle-file-name-all-completions): Apply it.
	(tramp-methods): Remove double definition of `ssh1-old' and
	`ssh2-old'.
	(tramp-point-at-eol): New defalias.
	(tramp-parse-rhosts-group)
	(tramp-parse-shosts-group):: Apply it.

2002-08-25  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-get-completion-methods)
	(tramp-get-completion-rsh)
	(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-handle-file-name-directory)
	(tramp-completion-handle-file-name-nondirectory)
	(tramp-completion-run-real-handler): New functions.
	(tramp-completion-file-name-handler)
	(tramp-completion-handle-file-name-all-completions): Apply
	`tramp-completion-run-real-handler'.
	(tramp-parse-rhosts)
	(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>

	* tramp.el (tramp-completion-file-name-regexp)
	(tramp-completion-file-name-handler-alist)
	(tramp-flatten-list)
	(tramp-completion-dissect-file-name)
	(tramp-get-completion-rsh)
	(tramp-parse-rhosts)
	(tramp-parse-rhosts-group)
	(tramp-get-completion-ssh): Doc string tuned.
	(tramp-methods): Doc string and custom type extended for
	`tramp-completion-function'.
	(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
	`file-name-completion'.
	(tramp-completion-handle-file-name-completion): New function.

2002-08-20  Michael Albinus  <Michael.Albinus@alcatel.de>

	Branch "completion" created. Version named (temporarily)
	"2.0.completion".

2002-08-18  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-parse-rhosts)
	(tramp-parse-rhosts-group)
	(tramp-parse-shosts)
	(tramp-parse-shosts-group): New functions.

2002-08-17  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-completion-dissect-file-name)
	(tramp-completion-dissect-file-name1): New functions.

2002-08-16  Michael Albinus  <Michael.Albinus@alcatel.de>

	* tramp.el (tramp-get-completion-function)
	(tramp-get-completion-rsh)
	(tramp-get-completion-ssh)
	(tramp-get-completion-telnet): New functions.
	(tramp-methods): Add `tramp-completion-function' for
	all methods.

2002-08-15  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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>

	* tramp.el (tramp-completion-file-name-regexp-unified)
	(tramp-completion-file-name-regexp-separate)
	(tramp-completion-file-name-regexp)
	(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-all-completions)
	(tramp-completion-handle-file-name-completion): New functions.

2002-08-12  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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>

	* 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
	`tramp-handle-dired-call-process'.

2002-09-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* 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 Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Remove duplicate definition of
	ssh1-old and ssh2-old.

2002-09-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.15 released.

	* tramp.el (require 'base64): Add explanatory comment to Steve's
	change.
	(tramp-feature-write-region-fix): Make sure that variable is
	always defined, even on XEmacs (where it is nil).

2002-08-31  Steve Youngs  <youngs@xemacs.org>

	* tramp.el (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.
	(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)).

2002-08-29  Michael Albinus  <Michael.Albinus@alcatel.de>

	* 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'.

2002-08-22  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-su): Use user name "root" if no
	user name is given.

2002-08-22  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.14 released.

	* tramp.el (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.

2002-08-21  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.13 released.

	* tramp.el (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.

2002-08-17  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-yn-prompt-regexp): New variable.
	(tramp-action-yn): New function, using it.

2002-08-08  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-feature-write-region-fix): New internal
	variable.  Not yet used.  Should be used in
	`tramp-handle-write-region'.

2002-08-07  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.12 released.

	* tramp.el (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.

2002-08-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.11 released.

	* tramp.el (tramp-invoke-ange-ftp): Avoid infloop by Ange-FTP
	calling Tramp again: use tramp-run-real-handler to invoke
	Ange-FTP.
	(tramp-post-connection): Erase buffer after finding a remote
	shell.
	(tramp-find-file-exists-command): Try "test -e" and its variants
	before "ls -d".
	(tramp-bug): Report `tramp-terminal-type'.

2002-08-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.10 released.

	* tramp.el (tramp-perl-encode-with-module,
	tramp-perl-decode-with-module)
	(tramp-perl-encode, tramp-perl-decode): Doc fix.  From Andreas
	Schwab.
	(tramp-bug): New variables to report.
	(tramp-post-connection): After finding shell, wait a bit.  I have
	no idea why it is necessary, but Daniel also thinks it's
	necessary.
	(tramp-uudecode): New variable.  Shell function `tramp_uudecode'
	for decoding to standard output for those Unices that don't have
	it.
	(tramp-post-connection): Install the function on the remote host.
	(tramp-coding-commands): Add an alternative for using the
	`tramp_uudecode' shell function.
	(tramp-perl-file-attributes): Print uid and gid as signed
	integers, not unsigned ones.

2002-08-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.9 released.

	* tramp.el (tramp-bug): Add wording about additional info to
	include in bug report.
	(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.

2002-08-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.8 released.

	* tramp.el (tramp-perl-encode, tramp-perl-encode): Double the
	backslashes in the string.

2002-08-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.6 released.

	* tramp.el (tramp-handle-make-directory): save-excursion.
	(tramp-default-method): Change to "ssh".
	(tramp-perl-encode, tramp-perl-decode): New (faster) versions.
	From Juanma Barranquero <lektu@terra.es>.
	(tramp-perl-encode-with-module, tramp-perl-decode-with-module)
	(tramp-perl-encode, tramp-perl-encode): Strings are passwd
	through `format', so double all percent characters and document.

2002-07-31  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-wrong-passwd-regexp): Restructure.  Add
	additional alternative.
	(tramp-action-permission-denied): Show *tramp/foo* buffer so that
	the user knows why.
	(tramp-su-program): Add defvar for this method parameter.  From
	Juanma Barranquero <lektu@terra.es>.
	(tramp-perl-encode-with-module): Rename from tramp-perl-encode.
	(tramp-perl-decode-with-module): Rename from tramp-perl-decode.
	(tramp-perl-encode, tramp-perl-decode): New implementations that
	do not use any Perl modules.  From Juanma Barranquero
	<lektu@terra.es>.
	(tramp-post-connection): Create shell functions tramp_encode,
	tramp_decode, tramp_encode_with_module, tramp_decode_with_module
	for the new Perl snippets.
	(tramp-coding-commands): Add entries for the two
	implementations (one with module, one without module).
	(tramp-handle-file-truename): Invoke Ange-FTP properly.
	(tramp-handle-expand-many-files): Don't try to invoke Ange-FTP
	twice.

2002-07-30  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-attributes): Restructure logic.
	(tramp-handle-file-attributes-with-ls)
	(tramp-handle-file-attributes-with-perl): Debugging output.
	(tramp-coding-commands): Provide base64 encoding with recode.

2002-07-29  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* Makefile (prepversion): Edit tramp.el instead of creating new
	file tramp-version.el.
	(clean): Don't remove tramp-version.el, the file doesn't exist
	anymore.

	* tramp.el (tramp-perl-encode, tramp-perl-decode): Very simple
	implementations requiring the Perl module MIME::Base64.
	(tramp-coding-commands): Use them.
	(tramp-version): Move back here from tramp-version.el.  The
	variable is automatically edited from the Makefile.
	(tramp-login-prompt-regexp, tramp-password-prompt-regexp)
	(tramp-wrong-passwd-regexp): Remove "$" from regexp, it must match
	at end of buffer anyway.
	(tramp-action-login, tramp-action-succeed)
	(tramp-action-permission-denied, tramp-multi-action-login)
	(tramp-multi-action-succeed)
	(tramp-multi-action-permission-denied): Erase buffer when
	finished.
	(tramp-process-one-action, tramp-process-one-multi-action):
	Always search from point-min.
	(tramp-enter-password): Erase buffer.
	(tramp-action-yesno): New function.
	(tramp-yesno-prompt-regexp): New variable.
	(tramp-actions-before-shell): Use them.

2002-07-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-actions): New variable, like
	tramp-actions-before-shell, but for multi-hop connections.
	(tramp-perl-encode, tramp-perl-decode): New variables.  Contain
	Perl code for uuencode, uudecode.
	(tramp-post-connection): Use new Perl encode/decode implementation.
	(tramp-coding-commands): Ditto.
	(tramp-perl-mime-encode, tramp-perl-mime-decode): Remove.  This
	code does not work.
	(tramp-invoke-ange-ftp): Require ange-ftp to avoid binding
	ange-ftp-name-format when it is unbound.
	(tramp-coding-commands): Remove Perl alternative.  Fix doc.

2002-07-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-insert-directory): Expand file name.
	(tramp-actions-before-shell): New variable of actions to perform
	before we get a shell prompt.
	(tramp-action-login, tramp-action-password, tramp-action-succeed)
	(tramp-action-permission-denied): New functions, used in above
	variable.
	(tramp-process-one-action, tramp-process-actions): Process the
	actions.
	(tramp-open-connection-telnet, tramp-open-connection-rsh): Use new
	action mechanism, call tramp-process-actions.
	(tramp-methods): Replace a lot of methods because of autodetection
	of mimencode/uuencode.  The new names are a bit longer but more
	mnemonic.
	(tramp-maybe-open-connection): Look to see if process is really
	still alive.
	(tramp-handle-file-attributes): Make sure to call Ange-FTP in all
	cases, not only for existing files.  Make sure not to call
	tramp-handle-file-exists-p on an Ange-FTP filename.

2002-07-26  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-local-copy)
	(tramp-handle-write-region): Call
	`tramp-get-{de,en}coding-{function,command}' with four args.
	(tramp-post-connection): Always send Perl implementation of
	mimencode and mimedecode when Perl is available.
	(tramp-get-encoding-command, tramp-get-decoding-command)
	(tramp-get-encoding-function, tramp-get-decoding-function): New
	implementation, uses auto-detected connection properties.

2002-07-26  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-coding-commands): New variable.
	(tramp-find-inline-encoding): New function.
	(tramp-handle-make-directory, tramp-handle-delete-directory)
	(tramp-handle-delete-file): Do expand-file-name on arg.

2002-07-24  Steve Youngs  <youngs@xemacs.org>

	* Makefile (prepversion): New target to create tramp-version.el.
	(all): Use it.
	(clean): Add tramp-version.el.

	* tramp.el (tramp-version): Removed, we create it on the fly from
	the Makefile.

2002-07-23  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Release 2.0.3.

	* tramp.el (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):
	Correct alist for `format-spec', use (a . b) instead of (a b).
	(tramp-handle-directory-files): Handle fifth, XEmacs-specific,
	arg FILES-ONLY.
	(tramp-version): Bump version to 2.0.3.

2002-07-21  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (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.

2002-07-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (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
	files.

2002-07-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-sh-program): New variable.
	(tramp-open-connection-multi): Use it.
	Bump version to 2.0.2.

2002-07-19  Steve Youngs  <youngs@xemacs.org>

	* tramp.el: Revert my previous patch.  It's better to work around
	the colour prompt problem outside of Tramp, eg in ~/.bashrc or
	similar.

2002-07-19  Steve Youngs  <youngs@xemacs.org>

	* tramp.el (tramp-find-shell): Remove "\\'" from regexp so we can
	deal with shell prompts that have colour control characters in
	them.
	(tramp-open-connection-telnet): Ditto.
	(tramp-open-connection-rsh): Ditto.
	(tramp-open-connection-su): Ditto.
	(tramp-open-connection-multi): Ditto.
	(tramp-multi-connect-telnet): Ditto.
	(tramp-multi-connect-rlogin): Ditto.
	(tramp-multi-connect-su): Ditto.
	(tramp-open-connection-setup-interactive-shell): Ditto.

2002-07-18  Steve Youngs  <youngs@xemacs.org>

	* tramp.el (tramp-multi-file-name-structure-separate): Typo, it's
	name was set to 'tramp-file-name-structure-separate'.


2002-07-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Rename methods invoking "ssh1" or
	"ssh2" to longer names.  Use old names sm1, sm2, su1, su2 and so
	on for methods invoking "ssh -1" or "ssh -2".

2002-07-13  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-file-name-structure-unified): Add missing
	initial slash.  Colon is moved from start to end of hop regexp,
	adjust this regexp accordingly.
	(tramp-file-name-structure-separate): Bug fix.
	(tramp-multi-file-name-hop-structure-unified): Move colon from
	beginning to end.

2002-07-11  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-make-symbolic-link): Complete implementation.

2002-07-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure): Add missing paren.
	(tramp-file-name-regexp-unified, tramp-file-name-regexp-separate):
	Add autoload cookies.
	(tramp-default-method): New default value "sm" for all Emacsen.
	(tramp-default-method-alist): Invoke Ange-FTP for some user/host
	combinations on Emacs.

2002-07-09  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-name-directory): Don't return "/"
	for the root directory on a remote host.
	(tramp-file-name-structure-unified)
	(tramp-file-name-structure-separate)
	(tramp-file-name-regexp-unified)
	(tramp-make-tramp-file-format-unified)
	(tramp-make-tramp-file-format-separate)
	(tramp-make-tramp-file-user-nil-format-unified)
	(tramp-make-tramp-file-user-nil-format-separate)
	(tramp-multi-file-name-structure-unified)
	(tramp-multi-file-name-structure-separate)
	(tramp-file-name-structure-unified)
	(tramp-file-name-structure-separate)
	(tramp-multi-file-name-hop-structure-unified)
	(tramp-multi-file-name-hop-structure-separate)
	(tramp-make-multi-tramp-file-format-unified)
	(tramp-make-multi-tramp-file-format-separate): New constants.
	(tramp-file-name-structure, tramp-file-name-regexp)
	(tramp-make-tramp-file-format)
	(tramp-make-tramp-file-user-nil-format)
	(tramp-multi-file-name-structure)
	(tramp-file-name-structure)
	(tramp-multi-file-name-hop-structure)
	(tramp-make-multi-tramp-file-format): Use them as default values.
	On Emacs, use the *-unified variants, on XEmacs, use the
	*-separate variants.  Tramp and Ange-FTP share a common filename
	syntax on Emacs, but Tramp and EFS use separate filename syntaxes
	on XEmacs.
	(tramp-handle-ange-ftp): Removed.
	(tramp-disable-ange-ftp): New function to disable Ange-FTP if
	enabled.  Unconditionally call it at top level when file is
	loaded.  This should be safe since XEmacs uses EFS.
	(tramp-default-method): New default value "ftp" on Emacs, "sm" on
	XEmacs.

2002-07-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-ange-ftp): Move interactive spec after
	docstring.  From Andreas Schwab.

2002-07-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-eof): Doc string typo.
	(tramp-kill-process): Likewise.
	From Juanma Barranquero <lektu@terra.es>.

2002-07-02  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-ange-ftp): Add todo items for handling
	EFS, too.

2002-06-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-ange-ftp): New function to set up Tramp
	configuration suitable for replacing Ange-FTP.
	(tramp-repair-jka-compr): Factor out some previously top-level
	code into an extra function.  Also call it at top-level.

2002-06-26  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure, tramp-file-name-regexp)
	(tramp-make-tramp-file-format)
	(tramp-make-tramp-file-user-nil-format)
	(tramp-multi-file-name-structure)
	(tramp-multi-file-name-hop-structure)
	(tramp-make-multi-tramp-file-format): Change to an Ange-FTP-like
	filename syntax.
	(tramp-handle-ange-ftp, toplevel): Remove Ange-FTP from filename
	handler alist if tramp-handle-ange-ftp is non-nil.
	(tramp-handle-delete-file)
	(tramp-handle-verify-visited-file-modtime)
	(tramp-handle-make-symbolic-link): Fix typos.
	(tramp-wait-for-regexp, tramp-wait-for-output): Convert int to
	string before passing it to `insert'.

2002-06-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-rsh): Provide a hack for a "-p"
	argument to specify a port number.

	Version 2.0.1 released.

	* lisp/tramp.el (tramp-version): New version 2.0.1.

2002-06-24  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Don't invoke Ange-FTP.
	(tramp-invoke-ange-ftp): Remove superfluous IDX-LIST argument.
	Callers changed.

2002-06-24  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-ftp-method): New user option.
	(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-directory)
	(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-invoke-ange-ftp'.
	(tramp-invoke-ange-ftp): New function to forward calls to
	Ange-FTP.

2002-06-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-default-method-alist): New user option.
	(tramp-find-default-method): Use it.

2002-06-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-sh-extra-args): New variable.
	(tramp-find-shell): Use it.

2002-06-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: New todo item.

2002-06-15  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Lower numchase-limit
	(max number of symlink traversals) from 30 to 20.

2002-06-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug-report-address): Change bug reporting
	address to Savannah.

2002-06-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): New method "fcp".  Suggested by
	graydon@redhat.com.

2002-06-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Allow nil where strings are allowed.
	(tramp-handle-file-truename): Decrease limit on chasing symlinks
	to provide earlier error message in case of failure.  People might
	think that Emacs is hanging.

2002-05-22  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-find-shell, tramp-open-connection-telnet)
	(tramp-open-connection-rsh, tramp-open-connection-su)
	(tramp-open-connection-multi, tramp-multi-connect-telnet)
	(tramp-multi-connect-rlogin)
	(tramp-open-connection-setup-interactive-shell): Shell prompt
	must match at end of buffer.

2002-05-21  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-linewise): Use sleep-for instead of sit-for
	to wait 0.1s.  sit-for does not wait if the user types ahead.

2002-05-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-linewise): Wait 0.1s instead of 0.001s.

2002-05-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-linewise): New function.
	(tramp-post-connection): Use it for sending long strings.

2002-04-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-shell-quote-argument): Todo item: don't use
	`shell-quote-argument'.

2002-04-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): New method "pscp".  Suggestion from
	lawrence mitchell.

2002-04-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (file-expand-wildcards): Advise it even on Emacs 21.
	(tramp-methods): New methods "plinku" and "plinkm".
	"plinku" was suggested by Adam Przepirkowski.

2002-04-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-shell-quote-argument): When calling
	shell-quote-argument internally, make sure it uses Unix-like
	behavior, not Windows-like behavior.  (This is done by binding
	system-type, which is certainly not the right way to do it!)

2002-03-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-add-name-to-file): Use "ln" connection
	property instead of literal "ln" in command.
	(tramp-post-connection): Only set "ln" connection property if that
	program could be found.  Erase buffer when done.
	(tramp-handle-expand-file-name): Erase buffer before and after
	expanding tilde.

2002-03-12  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Make sure to leave an empty
	connection buffer on exit.

2002-03-06  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-make-symbolic-link)
	(tramp-handle-directory-files)
	(tramp-handle-file-name-all-completions)
	(tramp-handle-dired-call-process, tramp-handle-insert-directory)
	(tramp-handle-expand-file-name, tramp-handle-shell-command): Make
	sure to "cd" back to the home dir.  Otherwise, previous commands
	could affect future commands because of the wrong cwd.
	(tramp-shell-quote-argument): Don't invoke substring on short
	strings.

2002-03-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-shell-quote-argument): If the argument starts
	with "~", don't quote that.  Reported by Martin Guertler.

2002-03-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (top-level): Require cl when compiling.  This
	fixes problems with byte-compiling under Emacs 20.  Reported by
	Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>.

2002-03-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Issue message when checking
	encoding/decoding commands is finished.

2002-02-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (file-expand-wildcards): Make sure that the return
	value is always a list.

2002-02-12  Steve Youngs  <youngs@xemacs.org>

	* tramp.el (tramp-handle-insert-directory): Change "#'identity" to
	"'identity" it was causing a invalid read syntax error that edebug
	brought to the surface.
	Add a "." after directory name so that symlinked directories
	display properly on platforms that have breakage on symlinks like
	Solaris.

2002-02-08  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (file-expand-wildcards): Improve the kludge by looking
	if the path name part of the filename contains wildcard
	characters at all.  If this is not the case, we avoid calling the
	original function at all.

2002-02-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-verify-visited-file-modtime): When the
	file does not exist, it is not modified.

2002-01-31  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-verify-visited-file-modtime): Don't use
	modtime from `file-attributes' if it is nil.

2002-01-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* Makefile: Define a flag USE_CONTRIB which adds the local contrib
	directory to the load-path if set.  Use suffix rules.  From
	Norbert Koch <nk@LF.net>.

2002-01-22  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-set-visited-file-modtime): Save
	`last-coding-system-used' in a way that works even if the
	variable is not defined.
	(tramp-handle-insert-file-contents): Use
	tramp-message-for-buffer, not tramp-message.
	(tramp-message): Prefix all messages with "tramp:".
	(tramp-handle-file-local-copy): Use tramp-message-for-buffer, not
	tramp-message.
	(tramp-handle-insert-file-contents): Remove debug message
	referring to `last-coding-system-used' -- it does not exist on
	all Emacsen.
	(toplevel): New todo item.
	(tramp-kill-process): New function.
	(tramp-post-connection): Kill connection process if something
	goes wrong.

2002-01-21  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (top-level, tramp-run-real-handler, efs-ftp-path):
	Disable special handling for ange-ftp and EFS.  This was only
	needed when Tramp names also matched the ange-ftp filename regexp.
	This experimental change only comments out the relevant sections.

2002-01-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: Remove some todo items which are done.
	(tramp-methods): Use doubled `-t -t' for `scpx' and `smx'
	methods.

2002-01-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-write-region): When calling
	`write-region' to write the temp file, pass `no-message' for
	VISIT.  If our own VISIT arg is true, we explicitly call
	`set-visited-file-modtime' later on.  If we pass VISIT=t when
	writing the temp file, the visited-file-modtime information of
	the buffer is clobbered by a local time, which will bite us when
	the local and remote times are out of sync.
	(tramp-handle-write-region): Make sure to set
	`last-coding-system-used' at the very end of the function.  In
	particular, don't allow `set-visited-file-modtime' to clobber it.
	(tramp-handle-set-visited-file-modtime): Take care to not clobber
	`last-coding-system-used' -- it would confuse jka-compr.

2002-01-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (clear-visited-file-modtime): Advise this function; it
	does not support filename handlers.  Set the Lisp variable that
	we use for emulating modtime back to nil.
	(tramp-handle-set-visited-file-modtime): If time-list is
	provided, call real handler with that data.
	(tramp-handle-verify-visited-file-modtime): Allow 1 sec
	difference between times.
	(tramp-time-diff): `itimer-time-difference' expects three-element
	lists; pad short lists when calling that function.  Reported by
	Skip Montanaro <skip@pobox.com>.
	Also swap preference order of `itimer-time-difference' and
	`subtract-time': prefer the latter.

2002-01-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-expand-file-name): Bind
	directory-sep-char to "/" so that XEmacs on Windows does the
	right thing.
	(tramp-handle-file-truename): Return trailing "/" if input had
	trailing "/".

2002-01-06  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Use
	`tramp-method-for-buffer' to make sure that log messages end up
	in the right buffer.  Correct braino in symlink handling.

2002-01-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-split-string): New compat function.
	(tramp-handle-file-truename): Use it.

2002-01-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-find-shell): If starting bash for tilde
	expansion, provide `--norc' argument.
	(tramp-handle-file-truename): More debugging output.  More Obiwan
	errors.

2002-01-03  Steve Youngs  <youngs@xemacs.org>

	* tramp.el (tramp-find-shell): Change order for choice of shell,
	put bash first.

2002-01-02  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Another Obiwan error.
	For relative symlinks "/a/b" pointing to "c/d", the "b" part
	should not be part of the truename.

2002-01-01  Kai Grossjohann  <kai@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-handle-file-truename): Obiwan error.
	(tramp-process-actions): New function.  Doesn't do anything yet.

2001-12-30  Kai Grojohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* base64.el: Moved to contrib directory.
	* format-spec.el: Ditto.

2001-12-30  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Use parens around "test / -nt
	/" command to find out if `test' supports the `-nt' switch.
	Without the parens, /bin/sh as of BSD/OS 4.x crashes.
	Reported by Jason Mastaler.
	(tramp-remote-path): Add /usr/contrib/bin.
	Reported by Jason Mastaler.

2001-12-29  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* Makefile (tramp.elc): Remove superfluous dependencies.

	* tramp-vc.el (tramp-vc-workfile-unchanged-p): Supply two args to
	vc-default-workfile-unchanged-p.

	* tramp-util.el (tramp): Require tramp.

	* tramp.el (tramp-check-ls-command): Return status of command to
	check if ls supports the `-n' option should be zero, not non-nil.
	(tramp-find-ls-command): Look for `gls' in addition to `ls' and
	`gnuls' binaries.

2001-12-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Move comment.  Check to see if
	decoding and encoding commands work, if given in method
	definition.

2001-12-28  Kai Grossjohann  <kai@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-file-name-handler-alist): New entry for
	`file-truename'.
	(tramp-handle-file-truename): New function.

2001-12-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (toplevel): Don't barf if jka-compr is already loaded.
	Instead, make sure that jka-compr comes first in
	file-name-handler-alist.
	(tramp-handle-set-visited-file-modtime): More error checking.  If
	`file-attributes' returns modtime (0 0), then assume modtime isn't
	known and revert to using `ls -ild'.  Previously, we checked if
	Perl was available.
	(tramp-handle-verify-visited-file-modtime): Check for modtime
	being (0 0), rather than Perl being available.
	(tramp-handle-write-region): Some sanity checking: make sure that
	current buffer isn't changed while the function runs.  (Maybe this
	is not necessary now?)  Only set-visited-file-modtime if VISIT is
	t (used to check for non-nil).
	(tramp-make-auto-save-file-name): Construct a local filename, then
	run `make-auto-save-file-name' on it.  This makes sure that no
	filename handlers will be run on that file.  (Specifically, this
	avoids jka-compr -- we want auto-save files to be saved quickly.
	This fixes the change from 2001-12-07 which aimed at doing the
	same thing, but failed.)

2001-12-26  Kai Grossjohann  <kai@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-buffer-file-attributes): Doc string fix.
	(tramp-handle-set-visited-file-modtime): Don't barf if called
	without arguments.  Use output of "ls -ild", not return value of
	file-attributes, for tramp-buffer-file-attributes.
	(tramp-handle-verify-visited-file-modtime): Use output of "ls
	-ild", not return value of file-attributes, for
	tramp-buffer-file-attributes.
	(tramp-handle-insert-file-contents): Call set-visited-file-modtime
	without args.
	(tramp-handle-insert-file-contents): Ditto.
	(tramp-handle-write-region): Pass VISIT arg on to call of real
	handler.  (The old code of passing the `no-message' symbol instead
	was a little strange -- an XEmacsism?)
	(tramp-handle-write-region): Call set-visited-file-modtime, if
	VISIT.
	Remove some todo items.

2001-12-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-buffer-file-attributes): New variable.
	(tramp-handle-set-visited-file-modtime): Use it in case the
	remote end does not give us the right modtime.
	(tramp-handle-verify-visited-file-modtime): Implementation.

2001-12-07  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-make-auto-save-file-name): Append "~" to
	auto-save file name; this avoids jka-compr when auto-saving.

2001-11-30  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-name-all-completions): Return nil
	if filename contains a slash.
	(tramp-handle-directory-file-name): New implementation.  From
	Philippe Troin <phil@fifi.org>.

2001-11-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (toplevel): Emit an error message if jka-compr is
	already loaded.

2001-11-08  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (tramp-compile): Use
	`tramp-handle-shell-command', not `shell-command'.

2001-11-07  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (tramp-compile): Make sure default-directory is
	set correctly.

	* tramp.el (tramp-post-connection): Don't send Perl `mime-encode'
	and `mime-decode' implementations unless really needed.

2001-11-02  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (file-expand-wildcards): Advise this function to work
	around a problem in Emacs 20.x.  This is just a kludge!

2001-10-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-su): Make sure that user name is
	given.

2001-10-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-name-directory): Return "/" if
	`path' component is empty.

2001-10-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure): Allow dot in host names.

2001-09-29  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure): Make regexp less
	restrictive to allow multi-hop filenames.

2001-09-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug): Report more info about multi-hop methods.

2001-09-24  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (tramp-compile): require compile.

2001-09-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug-report-address): Update to reflect move to
	SourceForge.

2001-09-09  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (Module): Add a todo item.

2001-08-31  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp2.el (tramp2-setup-coding-system): Find a good coding
	system in extra function so it can be customized via
	tramp2-setup-functions.
	(tramp2-execute-local): Set TERM to dumb, just to be on the safe
	side.

2001-08-12  Kai Grossjohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el: Default file name format changed again.  This time,
	it's like /[method/user@host]/path/to/file.  The user@ part is
	optional.  Multihop files are like
	/[multiu/telnet:user@host/ssh:user2@host2]/path/to/file.

2001-08-05  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: Default file name format changed!  File names with
	default method have changed from /r:user@host:/path/to/file to
	/./user@host:/path/to/file.  Files with explicitly specified
	method have changed from /r@meth:user@host:/path/to/file to
	/./@meth:user@host:/path/to/file.  (Note one more colon for method
	spec!)

2001-07-31  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-barf-unless-okay): Add new arg `signal' and
	signal that signal rather than calling `error'.

2001-07-11  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-file-name-hop-structure): Allow digits and
	underscore in name of hop connection method.  Suggested by Alan
	D. Salewski.
	(tramp-multi-connect-su): Thinko in logic.  Reported by Alan
	D. Salewski.

2001-06-03  Kai Grossjohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp2.el (tramp2-execute-local): Set TERM environment variable
	to dumb.

2001-06-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-eof): Always send a literal Ctrl-D, even if
	client is Windows.
	(tramp-find-executable): Remove superfluous newline.
	(tramp-handle-write-region): Remove superfluous `echo hello'
	command which clobbers the exit status.
	(tramp-handle-delete-file): Signal file error if deletion failed.
	This depends on `rm -f' on the remote end to set the exit status
	correctly.  This does not provide a meaningful message.  How do we
	extract the error message from `rm -f' from the buffer?
	(tramp-handle-write-region): Use "<<EOF" style of sending file
	contents on standard input.  It seems the old way of omitting
	"<<EOF" from the command, then using process-send-eof to indicate
	end of file, sent an `exit' command to the shell.  This also
	happens when sending an explicit Ctrl-D character.  This appears
	to be needed for the `suu' method (while it is not needed for the
	`sm' method).  Go figure.

2001-05-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-telnet): `tramp-read-passwd'
	called with result of `tramp-wait-for-regexp'.  But the return
	value of the latter changed, so adjust call of former accordingly.
	(tramp-open-connection-su): Ditto.

2001-05-28  Mark A. Hershberger  <mah@everybody.org>

	*tramp.el (tramp-methods): Add new entry for smp method.
	(tramp-perl-mime-encode): New variable to implement mime-encode.
	(tramp-perl-mime-decode): New variable to implement mime-decode.
	(tramp-post-connection): Send perl mime-{encode,decode} implementation.

2001-05-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Do
	`stty kill ^U' in case some system sets it to `@'.  Remove the
	`stty erase ^?' from yesterday.
	(tramp-open-connection-telnet): `tramp-wait-for-regexp' returns
	list of strings, not just one string.  Adjust call of
	`tramp-read-passwd' accordingly.
	(tramp-open-connection-su): Ditto.

2001-05-27  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Do
	`stty erase ^?' in case some system sets it to `@'.  Suggested by
	Stefan Monnier.

2001-05-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-command-and-check): Add a space in the
	shell command.  Suggested by Yuji Yamao.  (I don't really
	understand this.)
	New todo item.

2001-05-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug): Typo in variables list.  Only include
	backup-by-copying-when-privileged-mismatch if bound.
	(tramp-file-name-structure): Allow uppercase characters in file
	names.  [Would it have been better to bind case-fold-search?]

2001-04-24  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-do-copy-or-rename-file): When moving, be sure to
	delete the old file in all cases.

2001-04-23  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-command-and-check): `2>/dev/null'
	(tramp-check-ls-command): Don't `2>/dev/null', this is done in
	tramp-send-command-and-check.

2001-04-13  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Posix
	shells don't allow you to turn off the history, so we redirect it
	to an innocuous file and limits that file's size as much as
	possible.
	(tramp-find-executable): Be extra careful when searching for
	executables, include sentinel string to search for.

2001-04-12  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-write-region): Don't use here document,
	just send encoded file on stdin.  Suggested by Stefan Monnier.

2001-03-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-connect-su): Don't clobber `found'.

2001-03-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods, tramp-telnet-args): New method
	parameter `tramp-telnet-args'.
	(tramp-get-telnet-args): New function.
	(tramp-open-connection-telnet): Use it.

2001-03-07  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-line-end-position): New implementation, moved to
	beginning of file.
	(tramp-multi-connect-rlogin): Unused variable `pw' deleted.
	(tramp-discard-garbage-erase-buffer): More args.
	(tramp-open-connection-setup-interactive-shell): Pass more args.
	(tramp-wait-for-output): Unused variable `result' deleted.
	(tramp-wait-for-output): Wrong variable.
	(tramp-octal-to-decimal): Use `x'.
	(tramp-get-rcp-args): Error message typo.
	(tramp-temporary-file-directory): Pacify byte-compiler, use funcall.

2001-03-04  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-directory-p): Use `test -d' rather
	than `cd' to check if a file is a directory.  Suggested by Stefan
	Monnier.
	(tramp-get-rcp-args): Typo in error message.  This should be
	`didn't specify rcp args' rather than `didn't specify tramp
	args'...  A relic of the Great Renaming from RCP to Tramp, no
	doubt.

2001-03-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-find-shell): Allow `$ ' as shell prompt after
	starting a shell for tilde expansion.
	(tramp-methods): Expand documentation for `tramp-methods'.
	(tramp-methods): New method `smx' which is like `sm' but
	unconditionally starts /bin/sh on the remote end.  This might
	avoid shell startup overhead.  Patch by Michael Kifer.
	(tramp-verbose): New default value `10', it seems most people need
	to set it to this value, anyway, to see what's happening.
	Suggested by Michael Kifer.

2001-02-28  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-rsh): Doc bug.  Reported by Tom
	Roche.

2001-02-25  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-run-test2): Allow user1 and user2 to be nil.
	Reported by Michael Kifer.

2001-02-23  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el:  Patch by Francesco Potort, slightly modified.
	(tramp-discard-garbage): New variable.  When non-nil,
	expect that remote shell sends some garbage on startup, and delete
	it.
	(tramp-discard-garbage-erase-buffer): New function.
	(tramp-open-connection-setup-interactive-shell): Use it.
	(tramp-methods): New method for Kerberos and mimencode.
	(tramp-find-executable): Avoid mentioning all directories on the
	command line, instead send directory names on stdin.  Reported by
	Paul Stevenson.

2001-02-21  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Wait a
	bit at the very beginning, in case the remote end feels like
	sending some junk.  Reported by Francesco Potort.

2001-02-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Also
	`unset CDPATH' for the ksh users.  Reported by Jim Greer.

2001-02-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-wait-for-output): Clearer message when prompt is
	not found.  Suggestion from Francesco Potort.
	(tramp-wait-for-regexp): Clearer message when regexp is not
	found.  Suggestion from Francesco Potort.

2001-02-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-find-executable): Use "test -x $f -a -f $f" to
	find out whether it's an executable.  Suggestion from Francesco
	Potort.

2001-02-17  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-vc.el: Require vc-rcs for `vc-rcs-release' if necessary.
	(tramp-vc-workfile-unchanged-p): Compatibility with old and new VC.
	(vc-checkout): Avoid byte-compiler warning.

	* tramp.el (tramp-find-executable): Make sure that file is not a
	directory.  Reported by Ed Sabol.
	(tramp-open-connection-telnet): Remote login default to local
	login, but only when actually sending the login name.  The other
	functions (for buffer name and stuff) continue to pass `nil' for
	the user.

2001-02-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: New todo item.
	(tramp-terminal-type): Don't hardwire $TERM value when
	opening a connection to the remote host.  Suggestion from rand at
	meridian-enviro dot com.
	(tramp-find-executable): Use a shell-based implementation for
	tramp-find-executable.  Suggestion from Francesco Potort.
	(tramp-buffer-name, tramp-buffer-name-multi-method,
	tramp-debug-buffer-name): Better buffer name format for omitted
	user names.

2001-01-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-load): Call `load' on local copy with
	fewer args for XEmacs compatibility.

2001-01-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-telnet,
	tramp-open-connection-rsh, tramp-open-connection-su,
	tramp-open-connection-multi): Locally bind TERM env var to "dumb"
	before starting the login on the remote host.

2001-01-13  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-name-all-completions): Local
	variable `dirs' not necessary anymore.  Kudos to Bruce Ingalls for
	pointing this out.

2001-01-10  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): `unset
	HISTFILE' rather than `set -o history' to turn off the history.
	Pete Forman says this works on bash1 and bash2, but not for ksh or
	a Posix sh.  He also says there's no way to turn history off for
	ksh and Posix shells, except by invoking non-interactively.  I
	won't do that, though, because I need the prompts.

2001-01-03  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* base64.el: New version from Oort Gnus as of today.

2000-12-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Search for a shell before
	finding a command to check if a file exists.

2000-11-18  Daniel Pittman  <daniel@rimspace.net>

	* tramp-vc.el (tramp-handle-vc-user-login-name): Support the case
	where the user name is `nil'

2000-11-17  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-command-and-check): Send command and "echo
	$?" as two separate commands.

2000-11-15  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-shell-command): Return exit status.

	* tramp-vc.el (tramp-vc-do-command): Return exit status.
	(tramp-vc-do-command-new): For the new VC that comes with Emacs
	21.
	(tramp-handle-vc-user-login-name): User part of a Tramp file name
	structure might be empty.
	(vc-user-login-name): Protect against `file' unbound.  (Assumes
	local call in this case!)  Kudos to Hannu Koivisto for reporting
	this.

2000-11-09  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Change tramp-remote-sh to "/bin/sh"
	from "" for the sudu and sudm methods.

2000-11-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-dos-coding-system): New variable.
	(tramp-open-connection-telnet, tramp-open-connection-rsh,
	tramp-open-connection-su, tramp-open-connection-multi): Use it.
	(tramp-coding-system-change-eol-conversion): New compat function.
	(tramp-open-connection-setup-interactive-shell): Use it.

2000-10-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-telnet): Missed occurrences of
	match-string.
	(tramp-open-connection-rsh): Dito.
	(tramp-open-connection-su): Dito.
	(tramp-multi-connect-telnet): Dito.
	(tramp-multi-connect-rlogin): Dito.
	(tramp-multi-connect-su): Dito.

2000-10-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-telnet): Don't bind
	`coding-system-for-read' on Emacs 21.
	(tramp-open-connection-rsh): Dito.
	(tramp-open-connection-su): Dito.
	(tramp-open-connection-multi): Dito.

2000-10-20  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-wait-for-regexp): Return list of match-strings.
	This way, communication with callers isn't done via global state.
	(tramp-open-connection-telnet): Use it.
	(tramp-open-connection-rsh): Dito.
	(tramp-open-connection-su): Dito.
	(tramp-multi-connect-telnet): Dito.
	(tramp-multi-connect-rlogin): Dito.
	(tramp-multi-connect-su): Dito.
	(tramp-wait-for-output): From match data, compute list of
	match-strings.  Used by tramp-wait-for-regexp.

2000-10-06  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-load): Tentative first implementation.

2000-09-26  Henrik Holm  <henrik@ece.umn.edu>

	* tramp.el (tramp-make-tramp-file-user-nil-format): New variable.
	(tramp-open-connection-telnet): Work when USER is nil.
	(tramp-open-connection-rsh): dito.
	(tramp-open-connection-su): dito.
	(tramp-multi-connect-telnet): dito.
	(tramp-multi-connect-rlogin): dito.
	(tramp-multi-connect-su): dito.
	(tramp-make-rcp-program-file-name): dito.
	(tramp-open-connection-multi): Don't grok default USER.
	(tramp-pre-connection): Not changed.  tramp-current-user will be
	set to nil when no user is given in the file name.
	(tramp-dissect-multi-file-name): dito.
	(tramp-dissect-file-name): Return nil when no user is given in
	file name.

2000-09-25  Henrik Holm  <henrik@ece.umn.edu>

	* tramp.el: `An rcp file' --> `a tramp file', in various places.
	(tramp-buffer-name): Correct typo.

2000-09-17  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-exists-command): New Variable.
	(tramp-handle-file-exists-p): Use it.
	(tramp-find-file-exists-command): New function to initialize new
	variable.
	(tramp-post-connection): Use it.
	(tramp-get-file-exists-command): Access variable.
	(tramp-bug): Report a few more variable settings.

2000-09-16  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-setup-interactive-shell): Set
	TERM=dumb as suggested by V. Balaji <vb@gfdl.gov>.

2000-09-14  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Method `scpx' was missing a setting
	for `tramp-remote-sh'.

2000-09-09  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-insert-directory): Try to improve the
	logic as to what exactly is displayed.  The `/.' idea was snarfed
	from the standard `insert-directory'.

2000-09-01  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure): Move `-' to beginning of
	[...].  Is this really necessary?  Well, it won't hurt.

2000-08-31  Hilko Bengen  <bengen@vdst-ka.inka.de>

	* tramp.el (tramp-file-name-structure): Allow `-' in user names.

2000-08-29  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* Makefile (tramp.elc): Wrap long line.
	(tramp-vc.elc): Frob load-path for byte-compilation because of
	required libraries.

	* tramp-vc.el: Move `provide' to end of file.
	Require some needed libraries to avoid byte-compiler errors.

	* tramp.el (tramp-handle-file-name-all-completions): Expand
	DIRECTORY so that this also works with abbreviated file names.
	(tramp-handle-file-newer-than-file-p): Bug with `signal'.
	(tramp-handle-make-symbolic-link): Check that method, user, and
	host are the same when making symlinks.
	(tramp-bug): Report on more variables, change intro msg.

2000-08-25  Yuji Yamano <yyamano@kt.rim.or.jp>

	* tramp.el (tramp-perl-file-attributes): Use 0170000 as the right
	value of Bitwise And instead of 0120000 and 040000. It works fine
	with block devices and sockets now.

2000-08-25  Yuji Yamano <yyamano@kt.rim.or.jp>

	* tramp.el (tramp-remote-path): Add "/usr/pkg/bin" to
	tramp-remote-path for the NetBSD packages.

2000-08-19  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-connect-su): Defer (erase-buffer) until
	after the buffer contents are used.

2000-08-18  Paul D. Smith  <pausmith@nortelnetworks.com>

	* tramp.el (tramp-pre-connection): Locally (to the connection
	buffer) set inhibit-eol-conversion to nil.

2000-08-18  KOIE Hidetaka  <hide@koie.org>

	* tramp.el (tramp-handle-insert-file-contents): Don't use
	`no-conversion' coding system on the local copy.

2000-08-18  Kai Grojohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-exists-p): Use `test -e', not `ls
	-d'.
	(tramp-open-connection-setup-interactive-shell)
	(tramp-open-connection-telnet)
	(tramp-open-connection-rsh)
	(tramp-open-connection-su)
	(tramp-open-connection-multi)
	(tramp-multi-connect-telnet)
	(tramp-multi-connect-telnet)
	(tramp-multi-connect-rlogin)
	(tramp-multi-connect-su): Erase buffer before sending next
	command.
	(tramp-handle-make-directory): Correct order of arguments for
	tramp-barf-unless-okay.  Maybe I should be using keyword arguments
	in this case...
	(tramp-handle-insert-directory): Make it work with wildcards, too.
