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

	Version 2.1.19 released.

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

	* tramp.el (tramp-handle-make-symbolic-link): Flush file
	properties.
	(tramp-handle-process-file): Call the program in a subshell, in
	order to preserve working directory.
	(tramp-action-password): Hide password prompt before next run.
	(tramp-process-actions): Widen connection buffer for the trace.

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

	* tramp.el (tramp-vc-registered-read-file-names): Read input as
	here-document, otherwise the command could exceed maximum length
	of command line.
	(tramp-handle-vc-registered): Call script accordingly.  Reported
	by Toru TSUNEYOSHI <t_tuneyosi@hotmail.com>.

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

	* tramp.el (tramp-handle-start-file-process ): Set connection
	property "vec".
	(tramp-process-sentinel): Use it for flushing the cache.  We
	cannot do it via the process buffer, the buffer could be deleted
	already when running the sentinel.

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

	* tramp.el (tramp-handle-dired-uncache): Flush directory cache,
	not only file cache.
	(tramp-process-sentinel): New defun.
	(tramp-handle-start-file-process): Use it, in order to invalidate
	file caches.

2010-07-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-start-file-process): Check only for
	`remote-tty' process property.
	(tramp-open-shell): Don't check for tty.
	(tramp-open-connection-setup-interactive-shell): Set `remote-tty'
	process property.

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

	* tramp.el (tramp-methods): Move hostname to the end in all ssh
	`tramp-login-args'.
	(tramp-verbose): Describe verbose level 9.
	(tramp-open-shell): Check for tty if `tramp-verbose' >= 9.
	(tramp-open-connection-setup-interactive-shell): Trace stty
	settings if `tramp-verbose' >= 9.
	(tramp-handle-start-file-process): Implement tty setting.
	(Bug#4604, Bug#6360)

	* tramp-cmds.el (tramp-bug): Recommend setting of `tramp-verbose'
	to 9.

2010-07-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Move hostname to the end in all plink
	`tramp-login-args'.
	(tramp-file-name-regexp-unified)
	(tramp-completion-file-name-regexp-unified): On W32 systems, do
	not regard the volume letter as remote filename.  (Bug#5447)
	(tramp-open-shell): New defun.
	(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
	Use it.

2010-07-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-ls-command)
	(tramp-get-ls-command-with-dired): Run tests on "/dev/null"
	instead of "/".

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

	* tramp.el (tramp-file-name-handler): Trace 'quit.
	(tramp-open-connection-setup-interactive-shell): Apply
	workaround for IRIX64 bug.  Move argument of last
	`tramp-send-command' where it belongs to.

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

	* tramp.el (tramp-perl-file-attributes)
	(tramp-perl-directory-files-and-attributes): Don't pass "$3".
	(tramp-maybe-open-connection): Use `async-args' and `gw-args' in
	front of `login-args'.

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

	* tramp.el (tramp-get-ls-command-with-dired): Make test for
	"--dired" stronger.

2010-07-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-shell-command): Don't use hard-wired
	"/bin/sh" but `tramp-remote-sh' from `tramp-methods'.
	(tramp-find-shell): Simplify setting connection property.
	(tramp-get-ls-command): Make test for "--color=never" stronger.

2010-07-11  Magnus Henoch  <magnus.henoch@gmail.com>

	* tramp-gvfs.el (tramp-gvfs-handle-copy-file): Do not pass empty
	argument to gvfs-copy.

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

	* tramp.el (tramp-remote-process-environment): Protect version
	string by apostroph.
	(tramp-shell-prompt-pattern): Do not use a shy group in case of
	XEmacs.
	(tramp-file-name-for-operation): Add `call-process-region'.
	(tramp-set-process-query-on-exit-flag): Fix wrong parentheses.

	* tramp-compat.el (top): Do not autoload
	`tramp-handle-file-remote-p'.  Load tramp-util.el and tramp-vc.el
	only when `start-file-process' is not bound.
	(tramp-advice-file-expand-wildcards): Do not use
	`tramp-handle-file-remote-p'.
	(tramp-compat-make-temp-file): Handle the case, that
	`make-temp-file' has no third argument EXTENSION.

	* tramp-util.el (top): Apply advices only when there are no file
	name handlers for `start-file-process' and `process-file'.

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

	* tramp-gvfs.el (tramp-gvfs-handle-expand-file-name): Expand "~/".
	(tramp-gvfs-handler-mounted-unmounted)
	(tramp-gvfs-connection-mounted-p): Handle default-location.

	* tramp-smb.el (tramp-smb-handle-delete-directory): Don't try to
	move files to trash.

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

	* tramp-gvfs.el (top): Require url-util.
	(tramp-gvfs-mount-point): Removed.
	(tramp-gvfs-stringify-dbus-message, tramp-gvfs-send-command): New
	defuns.
	(with-tramp-dbus-call-method): Format trace message.
	(tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file):
	Implement backup call, when operation on local files fails.  Use
	progress reporter.  Flush properties of changed files.
	(tramp-gvfs-handle-make-directory): Make more traces.
	(tramp-gvfs-url-file-name): Hexify file name in url.
	(tramp-gvfs-fuse-file-name): Take also prefix (like dav shares)
	into account for the resulting file name.
	(tramp-gvfs-handler-askquestion): Return dummy mountpoint, when
	the answer is "no".  See `tramp-gvfs-maybe-open-connection'.
	(tramp-gvfs-handler-mounted-unmounted)
	(tramp-gvfs-connection-mounted-p): Test also for new mountspec
	attribute "default_location".  Set "prefix" property.
	(tramp-gvfs-mount-spec): Return both prefix and mountspec.
	(tramp-gvfs-maybe-open-connection): Test, whether mountpoint
	exists.  Raise an error, if not (due to a corresponding answer
	"no" in interactive questions, for example).

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

	* tramp.el (tramp-debug-message): Add `tramp-compat-funcall' to
	ignored backtrace functions.
	(with-progress-reporter): Expand docstring.
	(tramp-handle-delete-file): Implement TRASH argument.
	(tramp-get-remote-trash): New defun.

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

	* tramp-compat.el (tramp-compat-delete-file): Use `symbol-value'
	for backward compatibility.

	* tramp.el (tramp-handle-make-symbolic-link, tramp-handle-load)
	(tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-process-file, tramp-handle-call-process-region)
	(tramp-handle-shell-command, tramp-handle-file-local-copy)
	(tramp-handle-insert-file-contents, tramp-handle-write-region)
	(tramp-delete-temp-file-function): Use `delete-file' instead
	of `tramp-compat-delete-file'.

	* tramp-fish.el (tramp-fish-handle-delete-directory)
	(tramp-fish-handle-make-symbolic-link)
	(tramp-fish-handle-process-file): Use `delete-file' instead
	of `tramp-compat-delete-file'.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Use `delete-file'
	instead of `tramp-compat-delete-file'.

	* tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg.
	(tramp-gvfs-handle-write-region): Use `delete-file' instead of
	`tramp-compat-delete-file'.

	* tramp-imap.el (tramp-imap-do-copy-or-rename-file): Use
	`delete-file' instead of `tramp-compat-delete-file'.

	* tramp-smb.el (tramp-smb-handle-copy-file)
	(tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region): Use `delete-file' instead of
	`tramp-compat-delete-file'.
	(tramp-smb-handle-delete-directory): Use 'trash as arg.

	* tramp-vc.el (tramp-vc-user-login-name): Use `delete-file'
	instead of `tramp-compat-delete-file'.

2010-05-27  Chong Yidong  <cyd@stupidchicken.com>

	* tramp-compat.el (tramp-compat-delete-file): Rewrite to handle
	new TRASH arg of `delete-file'.

	* tramp.el (tramp-handle-delete-file): Change FORCE arg to TRASH.
	(tramp-handle-make-symbolic-link, tramp-handle-load)
	(tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-process-file, tramp-handle-call-process-region)
	(tramp-handle-shell-command, tramp-handle-file-local-copy)
	(tramp-handle-insert-file-contents, tramp-handle-write-region)
	(tramp-delete-temp-file-function): Use null TRASH arg in
	tramp-compat-delete-file call.

	* tramp-fish.el (tramp-fish-handle-delete-directory)
	(tramp-fish-handle-delete-file)
	(tramp-fish-handle-make-symbolic-link)
	(tramp-fish-handle-process-file): Use null TRASH arg in
	`tramp-compat-delete-file' call.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Use null TRASH arg
	in `tramp-compat-delete-file' call.

	* tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg.
	(tramp-gvfs-handle-write-region): Use null TRASH arg in
	`tramp-compat-delete-file' call.

	* tramp-imap.el (tramp-imap-handle-delete-file): Rename arg.
	(tramp-imap-do-copy-or-rename-file): Use null TRASH arg in
	`tramp-compat-delete-file' call.

	* tramp-smb.el (tramp-smb-handle-copy-file)
	(tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region): Use null TRASH arg in
	tramp-compat-delete-file call.
	(tramp-smb-handle-delete-directory): Use tramp-compat-delete-file.
	(tramp-smb-handle-delete-file): Rename arg.

2010-05-25  Christian Lynbech  <christian.lynbech@tieto.com>  (tiny change)

	* tramp.el (tramp-handle-insert-directory): Don't use
	`forward-word', it's default syntax could be changed.

2010-05-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-progress-reporter-update): New defun.
	(with-progress-reporter): Use it.
	(tramp-process-actions):
	* tramp-gvfs.el (tramp-gvfs-handler-askquestion): Preserve current
	message, in order to let progress reporter continue
	afterwards.  (Bug#6257)

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

	* tramp.el (tramp-do-copy-or-rename-file)
	(tramp-handle-file-local-copy, tramp-maybe-open-connection): Tune
	`with-progress-reporter' messages.
	(tramp-handle-vc-registered):
	* tramp-fish.el (tramp-fish-handle-file-local-copy)
	(tramp-fish-handle-insert-file-contents)
	(tramp-fish-maybe-open-connection):
	* tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
	* tramp-imap.el (tramp-imap-do-copy-or-rename-file)
	(tramp-imap-handle-insert-file-contents)
	(tramp-imap-handle-file-local-copy): Use `with-progress-reporter'.

2010-05-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Add `tramp-async-args' attribute where
	appropriate.
	(tramp-maybe-open-connection): Use it.

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

	* tramp.el (with-progress-reporter): Create reporter object only
	when the message would be displayed.  Handle nested calls.
	(tramp-handle-load, tramp-handle-file-local-copy)
	(tramp-handle-insert-file-contents, tramp-handle-write-region)
	(tramp-maybe-send-script, tramp-find-shell): Use
	`with-progress-reporter'.
	(tramp-handle-dired-compress-file, tramp-maybe-open-connection):
	Fix message text.

	* tramp-smb.el (tramp-smb-handle-copy-file)
	(tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
	(tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
	Use `with-progress-reporter'.

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

	* tramp.el (tramp-do-file-attributes-with-stat): Add space in
	format string, in order to work around a bug in pdksh.  Reported
	by Gilles Pion <gpion@lfdj.com>.
	(tramp-handle-verify-visited-file-modtime): Do not send a command
	when the connection is not established.
	(tramp-handle-set-file-times): Simplify the check for utc.

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

	* tramp-compat.el (byte-compile-not-obsolete-vars): Define if not
	bound.
	(tramp-compat-copy-file): Add PRESERVE-SELINUX-CONTEXT.
	(tramp-compat-funcall): New defmacro.
	(tramp-compat-line-beginning-position)
	(tramp-compat-line-end-position)
	(tramp-compat-temporary-file-directory)
	(tramp-compat-make-temp-file, tramp-compat-file-attributes)
	(tramp-compat-copy-file, tramp-compat-copy-directory)
	(tramp-compat-delete-file, tramp-compat-delete-directory)
	(tramp-compat-number-sequence, tramp-compat-process-running-p)
	* tramp.el (top, with-progress-reporter)
	(tramp-rfn-eshadow-setup-minibuffer)
	(tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times)
	(tramp-handle-dired-compress-file, tramp-handle-shell-command)
	(tramp-completion-mode-p, tramp-check-for-regexp)
	(tramp-open-connection-setup-interactive-shell)
	(tramp-compute-multi-hops, tramp-read-passwd, tramp-clear-passwd)
	(tramp-time-diff, tramp-coding-system-change-eol-conversion)
	(tramp-set-process-query-on-exit-flag, tramp-unload-tramp)
	* tramp-cmds.el (tramp-cleanup-all-connections)
	(tramp-reporter-dump-variable, tramp-load-report-modules)
	(tramp-append-tramp-buffers)
	* tramp-gvfs.el (tramp-gvfs-handle-file-selinux-context)
	* tramp-util.el (tramp-gud-file-name): Use it.

	* tramp-imap.el (top): Autoload `epg-make-context'.

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

	* tramp.el (top, with-progress-reporter): Use `symbol-function'
	inside `funcall'.

	* tramp-compat.el (tramp-compat-file-attributes)
	(tramp-compat-delete-file, tramp-compat-delete-directory): Handle
	only `wrong-number-of-arguments' error.

	* tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo.
	(tramp-gvfs-handle-file-selinux-context): Use `symbol-function'
	inside `funcall'.

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

	Add FORCE argument to `delete-file'.

	* tramp-compat.el (tramp-compat-delete-file): New defun.

	* tramp.el (tramp-handle-delete-file): Add FORCE arg.
	(tramp-handle-make-symbolic-link, tramp-handle-load)
	(tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-process-file, tramp-handle-call-process-region)
	(tramp-handle-shell-command, tramp-handle-file-local-copy)
	(tramp-handle-insert-file-contents, tramp-handle-write-region)
	(tramp-delete-temp-file-function): Use `tramp-compat-delete-file'.

	* tramp-fish.el (tramp-fish-handle-delete-file): Add FORCE arg.
	(tramp-fish-handle-make-symbolic-link)
	(tramp-fish-handle-process-file): Use `tramp-compat-delete-file'.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Use
	`tramp-compat-delete-file'.

	* tramp-gvfs.el (tramp-gvfs-handle-delete-file): Add FORCE arg.
	(tramp-gvfs-handle-write-region): Use `tramp-compat-delete-file'.

	* tramp-imap.el (tramp-imap-handle-delete-file): Add FORCE arg.
	(tramp-imap-do-copy-or-rename-file): Use `tramp-compat-delete-file'.

	* tramp-smb.el (tramp-smb-handle-delete-file): Add FORCE arg.
	(tramp-smb-handle-copy-file, tramp-smb-handle-file-local-copy)
	(tramp-smb-handle-rename-file, tramp-smb-handle-write-region): Use
	`tramp-compat-delete-file'.

	* tramp-vc.el (tramp-vc-user-login-name): Use
	`tramp-compat-delete-file'.

2010-05-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Remove "-q" from `tramp-login-args' in
	order to see error messages for failed logins.

2010-05-01  Toru TSUNEYOSHI  <t_tuneyosi@hotmail.com>
	    Michael Albinus  <michael.albinus@gmx.de>

	Implement compression for inline methods.

	* tramp.el (tramp-inline-compress-start-size): New defcustom.
	(tramp-copy-size-limit): Allow also nil.
	(tramp-inline-compress-commands): New defconst.
	(tramp-find-inline-compress, tramp-get-inline-compress)
	(tramp-get-inline-coding): New defuns.
	(tramp-get-remote-coding, tramp-get-local-coding): Removed,
	replaced by `tramp-get-inline-coding'.
	(tramp-handle-file-local-copy, tramp-handle-write-region)
	(tramp-method-out-of-band-p): Use `tramp-get-inline-coding'.

2010-04-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-selinux-p): New defun.
	(tramp-handle-file-selinux-context)
	(tramp-handle-set-file-selinux-context): Use it.

2010-04-23  Michael Albinus  <michael.albinus@gmx.de>

	Implement SELINUX backends.

	* tramp.el (tramp-file-name-handler-alist): Add
	`file-selinux-context' and `set-file-selinux-context'.
	(tramp-handle-file-selinux-context)
	(tramp-handle-set-file-selinux-context): New defuns.
	(tramp-handle-copy-file, tramp-do-copy-or-rename-file): Handle
	PRESERVE-SELINUX-CONTEXT.

	* tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add
	`file-selinux-context' and `set-file-selinux-context'.
	(tramp-gvfs-handle-file-selinux-context)
	(tramp-gvfs-handle-set-file-selinux-context): New defuns.
	(tramp-gvfs-handle-copy-file): Handle PRESERVE-SELINUX-CONTEXT.

	* tramp-fish.el (tramp-fish-handle-copy-file):
	* tramp-imap.el (tramp-imap-handle-copy-file):
	* tramp-smb.el (tramp-smb-handle-copy-file): Add
	PRESERVE-SELINUX-CONTEXT.

2010-04-22  Noah Lavine  <noah549@gmail.com>  (tiny change)

	Detect ssh 'ControlMaster' argument automatically in some cases.

	* tramp.el (tramp-detect-ssh-controlmaster): New defun.
	(tramp-default-method): Use it.

2010-04-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-error-with-buffer): Don't show the connection
	buffer when we are in completion mode.
	(with-connection-property, tramp-completion-mode-p)
	(tramp-action-process-alive, tramp-action-out-of-band)
	(tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote)
	(tramp-exists-file-name-handler): Fix docstring.
	(with-progress-reporter): New defmacro.
	(tramp-do-copy-or-rename-file, tramp-handle-dired-compress-file)
	(tramp-maybe-open-connection): Use it.
	(tramp-handle-copy-file): Add new optional parameter
	`preserve-selinux-context'.
	(tramp-file-name-for-operation): Add `set-file-selinux-context'.
	(tramp-connectable-p): New defun.
	(tramp-handle-expand-file-name)
	(tramp-completion-handle-file-name-all-completions)
	(tramp-completion-handle-file-name-completion): Use it.
	(tramp-file-name-handler): Catch the error for some operations
	when we are in completion mode.  This gives the user the chance to
	correct the file name in the minibuffer.
	(tramp-completion-mode-p): Use `non-essential'.

2010-04-21  Karel Klíč  <kklic@redhat.com>

	* tramp.el (tramp-file-name-for-operation):
	Add file-selinux-context.

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

	* tramp.el (tramp-do-copy-or-rename-file): Add progress reporter.

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

	Discard GNU Emacs 21 compatibility.

	* tramp.el (tramp-handle-directory-files-and-attributes)
	(tramp-get-remote-path): Use `copy-tree'.
	(tramp-set-auto-save-file-modes): Adapt version check.

	* tramp-compat.el (tramp-advice-file-expand-wildcards): No need to
	protect `featurep' call anymore.
	(tramp-compat-make-temp-file): Simplify fallback implementation.
	(tramp-compat-copy-tree): Remove function.

	* tramp-fish.el (tramp-fish-handle-directory-files-and-attributes):
	Use `tramp-compat-file-attributes'.

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

2010-03-18  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band)
	(tramp-compute-multi-hops, tramp-maybe-open-connection): Use
	`format-spec-make'.
	(tramp-debug-outline-regexp): New defconst.
	(tramp-get-debug-buffer): Use it.

2010-03-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Use
	`tramp-compat-delete-directory'.

	* tramp-compat.el (tramp-compat-delete-directory): Provide
	implementation for older Emacsen.

2010-03-14  Chong Yidong  <cyd@stupidchicken.com>

	* tramp.el (tramp): Put in comm group.

	* tramp-imap.el (tramp-imap): Put in tramp group.

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

	Version 2.1.18 released.

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Make call
	of `delete-directory' backwards compatible.

2010-03-13  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-find-executable): Use
	`tramp-get-connection-buffer'.  Make the regexp for checking
	output of "wc -l" more robust.
	(tramp-find-shell): Use another shell but /bin/sh on OpenSolaris.
	(tramp-open-connection-setup-interactive-shell): Remove workaround
	for OpenSolaris bug, it is not needed anymore.

2010-03-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix an
	error when FILENAME and NEWNAME are existing remote directories.

	* tramp-compat.el (tramp-compat-make-temp-file): Add optional
	parameter DIR-FLAG.

2010-02-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-write-region): START can be a string.
	Take care in the checks.  Reported by Dan Davison
	<davison@stats.ox.ac.uk>.

2010-02-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Protect
	setting the modes by `ignore-errors'.  It might fail, for example
	if the file is not owned by the user but the group.
	(tramp-handle-write-region): Ensure, that `tmpfile' is always readable.

2010-02-18  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-directory-files): When FULL, do not
	expand "." and "..".  Reported by Thierry Volpiatto
	<thierry.volpiatto@gmail.com>.

2010-02-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-insert-file-contents): Set always the
	permissions of the temporary file to "0600".  In case the remote
	file has no read permissions for the owner, there might be
	problems otherwise.  Reported by Ole Laursen <olau@iola.dk>.

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

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix errors
	in copying directories.
	(tramp-handle-add-name-to-file, tramp-handle-copy-directory)
	(tramp-do-copy-or-rename-file, tramp-handle-delete-directory)
	(tramp-handle-delete-file)
	(tramp-handle-dired-recursive-delete-directory)
	(tramp-handle-write-region): Flush also the cache for the upper
	directory.

2010-02-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-actions, tramp-read-passwd):
	* tramp-gvfs.el (tramp-gvfs-maybe-open-connection): Use VEC
	instead of PROC for caching "first-password-request".  Otherwise,
	new processes would not profit from passwords already entered.

	* tramp-cache.el (tramp-dump-connection-properties): Don't save
	"first-password-request" property.

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

	* tramp-imap.el (tramp-imap-handle-insert-directory):
	* tramp-smb.el (tramp-smb-handle-insert-directory):
	Handle also directories.  (Bug#5478)

2010-02-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-dired-uncache): When DIR is not a
	directory, handle its directory component.
	(tramp-handle-file-remote-p): Let-bind `tramp-verbose' to 3; this
	function is called permanently and creates noise, otherwise.

	* tramp-imap.el (tramp-imap-handle-insert-directory):
	* tramp-smb.el (tramp-smb-handle-insert-directory):
	Handle the case, FILENAME is not in `default-directory'.  (Bug#5478)

2010-01-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-insert-directory): Handle also symlinks,
	when FILENAME is not in `default-directory'.

2010-01-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-insert-directory): Handle the case,
	FILENAME is not in `default-directory'.  (Bug#5478)
	(tramp-register-file-name-handlers): Add safe-magic property.

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

	* tramp.el (tramp-remote-process-environment): Use `format'
	instead of `concat'.
	(tramp-check-for-regexp): Use (forward-line 1).
	(tramp-open-connection-setup-interactive-shell): Handle "=" in
	variable values properly.
	(tramp-find-inline-encoding): Raise an error, when no encoding is
	found.
	(tramp-wait-for-output): Remove spurious " ^H" sequences, sent by
	busybox.
	(tramp-get-ls-command): Suppress coloring, if possible.

2010-01-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-function-alist)
	(tramp-file-name-regexp, tramp-chunksize)
	(tramp-local-coding-commands, tramp-remote-coding-commands):
	Fix docstring.
	(tramp-do-copy-or-rename-file-directly): Do not use
	`tramp-handle-file-remote-p'.
	(tramp-find-foreign-file-name-handler)
	(tramp-advice-make-auto-save-file-name)
	(tramp-set-auto-save-file-modes): Remove superfluous check for
	`stringp'.  This is done inside `tramp-tramp-file-p'.
	(tramp-find-foreign-file-name-handler)
	(tramp-advice-make-auto-save-file-name)
	(tramp-set-auto-save-file-modes): Remove superfluous check for
	`stringp'.  This is done inside `tramp-tramp-file-p'.


	* tramp-fish.el (tramp-fish-handle-directory-files-and-attributes):
	Do not use `tramp-fish-handle-file-attributes.

	* tramp-smb.el (tramp-smb-conf): New defcustom.
	(tramp-smb-maybe-open-connection): Use it.

2010-01-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-imap.el (top): Autoload needed packages.  (Bug#5448)

2010-01-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-wrong-passwd-regexp): Add "Timeout, server not
	responding." string.

2010-01-18  Juanma Barranquero  <lekktu@gmail.com>

	* tramp.el (tramp-remote-coding-commands): Fix typo in docstring.

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

	* tramp.el (tramp-perl-encode, tramp-perl-decode):
	Update copyrights for 2010.
	(tramp-handle-insert-directory): Simplify handling of SWITCHES.
	(tramp-wait-for-output): Check, whether PROC buffer is available.

	* tramp-compat.el (tramp-advice-file-expand-wildcards): Wrap call
	of `featurep' for 2nd argument.

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

	* tramp.el (tramp-handle-insert-directory): Quote "'" in the
	switches.
	(tramp-open-connection-setup-interactive-shell): Dump stty
	settings.  Enable "neveropen" arg for all `tramp-send-command' calls.

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

	* tramp.el (tramp-handle-file-name-all-completions): Backward/
	XEmacs compatibility: Use `completion-ignore-case' if
	`read-file-name-completion-ignore-case' does not exist.
	(tramp-handle-dired-uncache): Add optional parameter DIR-P for
	XEmacs compatibility.  Reported by Pete Forman
	<petef4+usenet@gmail.com>.
	(tramp-handle-insert-directory): Check also for //SUBDIRED// line.

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

	* tramp.el (tramp-handle-file-remote-p): Expand file name only if
	there is already an established connection.
	(tramp-advice-file-expand-wildcards): Remove it.

	* tramp-compat.el (top): Autoload `tramp-handle-file-remote-p'.
	(tramp-advice-file-expand-wildcards): Moved from tramp.el.
	Activate advice for older GNU Emacs versions.  (Bug#5237)

2009-12-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-echo-mark-marker-length): New defconst.
	(tramp-echo-mark, tramp-echoed-echo-mark-regexp): Use it.
	(tramp-check-for-regexp): Check also, when an echoing shell stops
	to echo sent commands.

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

	* tramp.el (tramp-handle-insert-directory): Suppress error messages.

2009-12-07  Michael Albinus  <michael.albinus@gmx.de>

	Handle prompt rules of ksh in OpenBSD 4.5.  Reported by Raphaël
	Berbain <raphael.berbain@gmail.com>.

	* tramp.el (tramp-end-of-output): Move up.  Use `#' and `$'
	characters.
	(tramp-initial-end-of-output): New defconst.
	(tramp-methods, tramp-find-shell)
	(tramp-open-connection-setup-interactive-shell)
	(tramp-maybe-open-connection): Use it.
	(tramp-shell-prompt-pattern, tramp-wait-for-output): Handle
	existence of `#' and `$'.

	* tramp-fish.el (tramp-fish-maybe-open-connection): Use
	`tramp-initial-end-of-output'.

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

	* tramp.el (tramp-handle-file-remote-p): Expand FILENAME for the
	benefit of returning an expanded localname.
	(tramp-tramp-file-p): Handle the case NAME is not a string.

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

	* tramp.el (tramp-maybe-open-connection): Open the remote shell
	with "exec" when possible.  This prevents trailing prompts in
	`start-file-process'.

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

	* tramp.el (tramp-eshell-directory-change): New defun.  Add it to
	`eshell-directory-change-hook'.

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

	* tramp.el (tramp-shell-prompt-pattern): Use \r for carriage
	return.
	(tramp-handle-make-symbolic-link)
	(tramp-handle-dired-compress-file, tramp-handle-expand-file-name):
	Quote file names.
	(tramp-send-command-and-check): New argument DONT-SUPPRESS-ERR.
	(tramp-handle-process-file): Use it.

2009-11-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file-out-of-band): Set
	variables for computing the prompt for reading password.

2009-11-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-advice-file-expand-wildcards): Simplify.  Don't
	set `ad-return-value' if `ad-do-it' doesn't.

	* tramp-gvfs.el (tramp-gvfs-handle-write-region): Set file
	modification time.

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

	* tramp-gvfs.el (tramp-gvfs-dbus-event-error): Raise only an error
	when `tramp-gvfs-dbus-event-vector' is set.
	(tramp-gvfs-maybe-open-connection): Loop over `read-event'.

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

	* tramp.el (tramp-advice-minibuffer-electric-separator)
	(tramp-advice-minibuffer-electric-tilde): Unload advices via
	`tramp-unload'.
	(tramp-advice-make-auto-save-file-name)
	(tramp-advice-file-expand-wildcards): Apply also `ad-activate'
	after removing the advice.

2009-11-08  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-advice-make-auto-save-file-name)
	(tramp-advice-file-expand-wildcards): Unload via
	`ad-remove-advice'.

2009-11-08  Kevin Ryde <user42@zip.com.au>

	* tramp.el (tramp-advice-file-expand-wildcards): Don't rely on
	`ad-do-it'.

2009-11-08  Andr <m00naticus@gmail.com>  (tiny change)

	* tramp.el (tramp-handle-write-region): Copy but rename temp file,
	in order to keep context in SELinux.

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

	Version 2.1.17 released.

	* tramp.el (tramp-handle-copy-directory): Don't use
	`file-remote-p' (due to compatibility).

	* tramp-compat.el (tramp-compat-copy-directory)
	(tramp-compat-delete-directory): New defuns.

	* tramp-fish.el (tramp-fish-handle-delete-directory):
	* tramp-gvfs.el (tramp-gvfs-handle-delete-directory): Use
	`tramp-compat-delete-directory'.

	* tramp-smb.el (tramp-smb-handle-copy-directory)
	(tramp-smb-handle-delete-directory ): Use
	`tramp-compat-copy-directory' and `tramp-compat-delete-directory'.

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

	* tramp-imap.el (top): Add `X-Size' to `imap-hash-headers'.
	(tramp-imap-do-copy-or-rename-file): Don't use the inode, when
	calling `tramp-imap-put-file'.  Add file size to the call.
	(tramp-imap-get-file-entries): Compute also user name, file size,
	and date.
	(tramp-imap-handle-insert-directory): Insert uid and gid.
	(tramp-imap-handle-file-attributes): Transform uid and gid
	according to `id-format'.
	(tramp-imap-put-file): New optional parameter SIZE.  Encode file
	size in header X-Size.

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

	* tramp.el (tramp-handle-write-region): In case of APPEND, reuse
	the tmpfile name.

	* tramp-imap.el (tramp-imap-file-name-handler-alist): Ignore
	`dired-call-process'.
	(tramp-imap-make-iht): Use `user' and `ssl' with `imap-hash-make'.

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

	* tramp.el (top): Remove `tramp-rfn-eshadow-update-overlay' from
	`rfn-eshadow-update-overlay-hook' when unloading.
	(tramp-methods): Add `tramp-copy-keep-tmpfile' for "rsync" and
	"rsyncc".  Adjust doc string.
	(tramp-temp-buffer-file-name) New buffer-local defvar.
	(tramp-handle-insert-file-contents, tramp-handle-write-region):
	Keep temporary file when indicated by method ("rsync" and
	"rsyncc").
	(tramp-handle-write-region): Handle APPEND.
	(tramp-delete-temp-file-function): New defun.  Added to
	`kill-buffer-hook'.

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

	* tramp-smb.el (tramp-smb-get-stat-capability): New defun.
	(tramp-smb-handle-file-attributes): Use it.
	(tramp-smb-do-file-attributes-with-stat): Don't raise an error.
	(tramp-smb-handle-insert-directory): Use `mapc' rather than
	`mapcar'.  Use `tramp-smb-get-stat-capability'.  Add
	`dired-filename' text properties.
	(tramp-smb-get-cifs-capabilities): Apply `save-match-data'.
	(tramp-smb-maybe-open-connection): Simplify check for smbclient
	version.

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

	* tramp-smb.el (tramp-smb-version): New defvar.
	(tramp-smb-maybe-open-connection): Use it, in order to avoid
	repeated checks.

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

	* tramp.el (tramp-replace-environment-variables): Do not fail if
	the environment variable does not exist.

	* tramp-smb.el (tramp-smb-errors): Add error messages.
	(tramp-smb-get-share, tramp-smb-get-localname): Use only VEC as
	parameter.
	(tramp-smb-handle-add-name-to-file)
	(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
	(tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
	(tramp-smb-handle-file-attributes)
	(tramp-smb-do-file-attributes-with-stat)
	(tramp-smb-handle-file-local-copy)
	(tramp-smb-handle-insert-directory)
	(tramp-smb-handle-make-directory)
	(tramp-smb-handle-make-directory-internal)
	(tramp-smb-handle-make-symbolic-link)
	(tramp-smb-handle-rename-file, tramp-smb-handle-set-file-modes)
	(tramp-smb-handle-write-region, tramp-smb-get-file-entries)
	(tramp-smb-maybe-open-connection): Apply the changed parameters.
	(tramp-smb-read-file-entry): Read Disk names in compressed format.
	Handle long file names.
	(tramp-smb-get-cifs-capabilities): Check, whether the connection
	process is running.
	(tramp-smb-maybe-open-connection): Trace "smbclient -V" command.
	Read share names with "-g" option.

2009-10-12  Glenn Morris  <rgm@gnu.org>

	* tramp-smb.el (tramp-smb-do-file-attributes-with-stat): Let-bind
	`size'.

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

	* tramp.el (tramp-local-host-p): Function shall return nil for
	connection methods like smb.

	* tramp-cache.el (tramp-flush-connection-property): The hash can
	be empty.

	* tramp-smb.el (tramp-smb-errors): Add error messages.
	(tramp-smb-file-name-handler-alist): Add handlers for
	`add-name-to-file', `make-symbolic-link'.
	(tramp-smb-handle-add-name-to-file)
	(tramp-smb-do-file-attributes-with-stat)
	(tramp-smb-handle-make-symbolic-link)
	(tramp-smb-get-cifs-capabilities): New defuns.
	(tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
	(tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
	(tramp-smb-handle-file-local-copy)
	(tramp-smb-handle-make-directory-internal)
	(tramp-smb-handle-rename-file, tramp-smb-handle-write-region): The
	file name syntax depends on cifs capabilities.
	(tramp-smb-handle-file-attributes); Call
	`tramp-smb-do-file-attributes-with-stat' if possible.
	(tramp-smb-handle-insert-directory): Use posix attributes if
	possible.
	(tramp-smb-handle-set-file-modes): It is applicable for posix
	only.

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

	* tramp.el (tramp-file-name-real-user, tramp-file-name-domain)
	(tramp-file-name-real-host, tramp-file-name-port): Apply
	`save-match-data'.

	* tramp-smb.el (tramp-smb-handle-copy-directory): Handle the case
	both directories are remote.
	(tramp-smb-handle-expand-file-name): Implement "~" expansion.
	(tramp-smb-maybe-open-connection): Flush the cache only if
	necessary.

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

	* tramp-cache.el (tramp-flush-connection-property): Add trace
	message.

	* tramp-smb.el (tramp-smb-errors): Add error messages.
	(tramp-smb-file-name-handler-alist): Add handler for
	`copy-directory', `expand-file-name', `set-file-modes'.
	(tramp-smb-handle-copy-directory)
	(tramp-smb-handle-expand-file-name)
	(tramp-smb-handle-set-file-modes): New defuns.
	(tramp-smb-handle-copy-file): Handle KEEP-DATE.
	(tramp-smb-handle-file-attributes): Simplify check for retrieving
	entry.
	(tramp-smb-handle-insert-directory): Don't flush the cache.
	(tramp-smb-maybe-open-connection): Check for samba client and
	server versions.

2009-10-06  Sam Steingold  <sds@gnu.org>

	* tramp-compat.el (tramp-compat-process-running-p): Check that the
	comm attribute is present before calling regexp-quote.

2009-10-06  Glenn Morris  <rgm@gnu.org>

	* tramp.el (tramp-handle-start-file-process): Move tramp-error
	call inside with-parsed...  macro so that `v' is defined.

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

	* tramp.el (tramp-verbose): Fix docstring.
	(tramp-default-method): Check also for
	`auth-source-user-or-password'.
	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
	Add handler for `copy-directory'.  Remove handler for
	`dired-copy-file-recursive'.
	(tramp-handle-copy-directory): New defun.
	(tramp-do-copy-or-rename-file-out-of-band): Handle directory case.
	(tramp-handle-dired-copy-file-recursive): Remove function.
	(tramp-handle-start-file-process): Raise an error when PROGRAM is
	nil.  Optimize sent command.

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

	* tramp-ftp.el (tramp-ftp-file-name-handler): Disable
	`file-name-handler-alist' when loading 'ange-ftp.  Otherwise,
	there could be recursive loading when `default-directory' is a
	remote file name.  (Bug#4614)

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

	* tramp-smb.el (tramp-smb-handle-make-directory-internal): Flush
	file properties of created directory.

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

	* tramp.el (tramp-file-name-handler-alist)
	(tramp-file-name-for-operation): Remove
	`dired-delete-file-recursive'.
	(tramp-handle-make-directory): Flush upper directory's file
	properties.
	(tramp-handle-delete-directory): Handle optional parameter
	RECURSIVE.
	(tramp-handle-dired-delete-file-recursive): Delete.

	* tramp-fish.el (tramp-fish-handle-delete-directory): Handle
	optional parameter RECURSIVE.

	* tramp-gvfs.el (tramp-gvfs-handle-delete-directory): Handle
	optional parameter RECURSIVE.

	* tramp-smb.el (tramp-smb-errors): Add error message for
	connection timeout.
	(tramp-smb-handle-delete-directory): Handle optional parameter
	RECURSIVE.

2009-09-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-handler-alist)
	(tramp-file-name-for-operation): Add entry for
	`dired-delete-file-recursive'.
	(tramp-handle-dired-delete-file-recursive): New defalias.
	(tramp-handle-dired-recursive-delete-directory): Flush directory
	properties after the remove command only.

2009-09-29  Glenn Morris  <rgm@gnu.org>

	* tramp-smb.el (tramp-smb-handle-directory-files-and-attributes):
	Use tramp-compat-file-attributes rather than nonexistent
	tramp-compat-handle-file-attributes.

2009-09-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-imap.el (tramp-imap-file-name-handler-alist): Add handlers
	for `directory-files-and-attributes' and `file-local-copy'.
	(tramp-imap-handle-directory-files-and-attributes)
	(tramp-imap-handle-file-local-copy): New defuns.

	* tramp-smb.el (tramp-smb-handle-directory-files-and-attributes):
	Use `tramp-compat-handle-file-attributes'.

2009-09-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-imap.el (top): Require 'assoc.
	(tramp-imap-file-name-handler-alist): Add handlers for
	`copy-file', `insert-directory' and `rename-file'.  Fix change for
	`file-local-copy'.
	(tramp-imap-handle-copy-file, tramp-imap-handle-rename-file)
	(tramp-imap-do-copy-or-rename-file)
	(tramp-imap-handle-insert-directory): New defuns.
	(tramp-imap-get-file-entries): Compute device info with
	`tramp-get-device'.
	(tramp-imap-handle-file-directory-p)
	(tramp-imap-handle-file-writable-p): Improve implementation.
	(tramp-imap-put-file, tramp-imap-get-file): New optional parameter
	ENCODE or DECODE, respectively.  Adapt calls accordingly.

2009-09-27  Teodor Zlatanov  <tzz@lifelogs.com>

	* tramp-imap.el (tramp-imap-file-name-handler-alist): Remove
	file-local-copy handler.

2009-09-24  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in: Add tramp-imap.el

	* tramp.el (top): Require tramp-imap.
	(tramp-methods): Add recursive option to `tramp-copy-args'.  Add
	`tramp-copy-recursive'.  Valid for "rcp", "scp", "scp1", "scp2",
	"scp1_old", "scp2_old", "rsync", "rsyncc".
	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
	Add entry for `dired-copy-file-recursive'.
	(tramp-handle-dired-copy-file-recursive): New defun.

2009-09-24  Teodor Zlatanov  <tzz@lifelogs.com>

	* tramp-imap.el: New package.

2009-09-16  Glenn Morris  <rgm@gnu.org>

	* tramp-compat.el (byte-compile-not-obsolete-vars): Set if bound.

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

	* tramp.el (tramp-handle-file-truename, tramp-get-remote-perl):
	Check also for "perl-file-spec" and "perl-cwd-realpath"
	properties.

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

	* tramp.el (tramp-handle-insert-directory): Handle "--dired" also
	when adding a new directory.

	* tramp-compat.el (tramp-compat-line-beginning-position): New defun.

2009-09-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-name-all-completions): Use
	`tramp-compat-number-sequence' instead of `number-sequence' and
	symbol value of `read-file-name-completion-ignore-case'.  Both
	symbols do not exist in Emacs 21.
	(tramp-handle-insert-directory): Use "?\ " for compatibility
	reasons.
	(tramp-handle-vc-registered): Check, whether the first run did
	return files to be tested.

	* tramp-compat.el (tramp-compat-number-sequence): New defun.

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

	* tramp.el (tramp-handle-file-attributes-with-ls)
	(tramp-do-file-attributes-with-perl)
	(tramp-do-file-attributes-with-stat): Rename from
	`tramp-handle-file-attributes-with-*'.
	(tramp-handle-file-attributes): Use them.
	(tramp-do-directory-files-and-attributes-with-perl)
	(tramp-do-directory-files-and-attributes-with-stat): Rename from
	`tramp-handle-directory-files-and-attributes-with-*'.
	(tramp-handle-directory-files-and-attributes): Use them.
	(tramp-method-out-of-band-p): Additional parameter SIZE.
	(tramp-do-copy-or-rename-file, tramp-handle-file-local-copy)
	(tramp-handle-write-region): Use it.
	(tramp-advice-make-auto-save-file-name): Do not call directly
	`tramp-handle-make-auto-save-file-name', because this would bypass
	the locking mechanism.

	* tramp-compat.el (top): Autoload used functions from tramp.el.
	(file-remote-p, process-file, start-file-process, set-file-times)
	(tramp-compat-file-attributes): Compatibility functions shall not
	call directly `tramp-handle-*', because this would bypass the
	locking mechanism.

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

	* tramp.el (all): Replace "'(lambda" by "(lambda".
	(tramp-handle-file-local-copy): Unset `file-name-handler-alist'
	when writing the temp file.  Otherwise, epa-file gets confused.
	(tramp-register-file-name-handlers): Make it a defun.  Move also
	`epa-file-handler' to the front of `file-name-handler-alist'.

2009-08-28  Stefan Monnier  <monnier@iro.umontreal.ca>

	* tramp.el (tramp-shell-prompt-pattern): Allow a prompt to start
	right after a ^M.
	(tramp-root-regexp, tramp-completion-file-name-regexp-unified)
	(tramp-completion-file-name-regexp-separate)
	(tramp-completion-file-name-regexp-url): Use \\` and \\'.
	(tramp-handle-file-attributes, tramp-set-file-uid-gid): Don't
	modify last-coding-system-used by accident.
	(tramp-completion-file-name-handler): Apply the checks here,
	instead during registration.
	(tramp-register-file-name-handlers) Renamed from
	`tramp-register-file-name-handler'.  Register both
	`tramp-file-name-handler' and `tramp-completion-file-name-handler'.
	(tramp-register-completion-file-name-handler): Removed.  (Bug#4260)

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Extend check
	for direct remote copying.

	* tramp-gvfs.el (top): Replace ping by checking for running
	service for bluez and zeroconf.  (Bug#4239)

2009-08-19  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-handle-process-file): Merge three remote ops
	into one.  Do not flush all caches when
	`process-file-side-effects' is set.
	(tramp-vc-registered): Unset `process-file-side-effects'.

2009-08-18  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-check-cached-permissions) New defun.
	(tramp-handle-file-readable-p): Use it.
	(tramp-handle-file-writable-p): Likewise.
	(tramp-handle-file-executable-p): Likewise.

2009-08-18  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-file-name-all-completions): Use `mapc'
	instead of `mapcar'.
	(tramp-do-copy-or-rename-file-out-of-band): Declare `copy-env'.

2009-08-18  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-perl-file-name-all-completions): New defconst.
	(tramp-handle-file-name-all-completions): Try using Perl to get
	partial completions.  When perl not available, combine `cd' and
	`ls' into single remote operation and use shell expansion to get
	partial remote directory contents.  Set `file-exists-p' cache for
	directory and any files returned by ls.  Change cache handling to
	support partial directory contents.  Use error message emitted by
	remote `cd' or Perl code for local tramp-error.

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

	* tramp.el (tramp-methods): New method "rsyncc".
	(top): Add completion function for "rsyncc".
	(tramp-do-copy-or-rename-file-out-of-band): Handle new
	`tramp-methods' entry `copy-env' of "rsyncc".
	(tramp-register-completion-file-name-handler): Check also
	for (member 'partial-completion completion-styles).

2009-08-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-cache.el (top): Autoload `tramp-time-less-p'.

2009-08-16  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-perl-file-attributes): Print "nil" when lstat
	fails.
	(tramp-handle-file-attributes): Removed `file-exists-p' call.
	(tramp-handle-file-attributes-with-ls): Check for file existence
	at remote end.
	(tramp-handle-file-attributes-with-stat): Likewise.
	(tramp-handle-file-readable-p): Don't use file attribute cache
	when file is a symlink.
	(tramp-handle-file-writable-p): Likewise.
	(tramp-handle-vc-registered): Use `tramp-get-file-exists-command'
	instead of `tramp-find-file-exists-command'.
	(tramp-convert-file-attributes): Return nil when attr is nil.

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

	* tramp.el (tramp-handle-vc-registered): Embed the code in
	`with-parsed-tramp-file-name'.  Don't use `caddr', we havent't
	required 'cl.

2009-08-15  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-handle-file-exists-p): Check file-attributes
	cache, assume file exists if cache value present.
	(tramp-handle-file-readable-p): Examine file-attributes cache to
	see if request can be satisfied without remote operation.
	(tramp-handle-file-writable-p): Likewise.
	(tramp-do-copy-or-rename-file-directly): Avoid separate
	tramp-send-command-and-check call.
	(tramp-handle-write-region): Avoid tramp-set-file-uid-gid if
	file-attributes shows uid/gid to be set already.

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

	* tramp.el (tramp-message-show-message): New defvar.
	(tramp-message, tramp-error): Use it.

2009-08-14  Julian Scheid  <julians37@gmail.com>

	* tramp.el (tramp-handle-file-truename): Use readlink
	--canonicalize-missing instead of --canonicalize.
	(tramp-get-remote-readlink) Check for --canonicalize-missing
	instead of --canonicalize.
	(tramp-perl-file-truename) Updated to support non-existing paths.

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

	* tramp.el (tramp-get-ls-command-with-dired): New defun.
	(tramp-handle-insert-directory): Handle "--dired".  (Bug#4075)
	(tramp-get-ls-command, tramp-get-test-command)
	(tramp-get-file-exists-command, tramp-get-remote-ln)
	(tramp-get-remote-perl, tramp-get-remote-stat)
	(tramp-get-remote-readlink, tramp-get-remote-id): Remove
	superfluous `with-current-buffer'.

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

	* tramp.el (tramp-perl-file-truename): New defconst.  Perl code
	contributed by yary <not.com@gmail.com> (tiny change).
	(tramp-handle-file-truename): Use it.

2009-08-06  Julian Scheid <julians37@googlemail.com>

	* tramp.el (tramp-get-remote-readlink): New defun.
	(tramp-handle-file-truename): Use it.

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

	* tramp.el (tramp-vc-registered-read-file-names): New defconst.
	(tramp-handle-vc-registered): Use it.
	(tramp-vc-file-name-handler): Remember `localname' but `filename'.

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

	* tramp.el (tramp-vc-registered-file-names): New defvar.
	(tramp-vc-file-name-handler): New defun.
	(tramp-run-real-handler): Add `tramp-vc-file-name-handler'.
	(tramp-handle-vc-registered): Implement optimization strategy.
	Suggested by Julian Scheid <julians37@googlemail.com>.

	* tramp-cache.el (tramp-cache-inhibit-cache): Extend doc string.
	It allows also timestamps.
	(tramp-get-file-property): Check for timestamps in
	`tramp-cache-inhibit-cache'.
	(tramp-set-file-property): Write timestamp.

2009-08-04  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Make check for tramp-gvfs loading more
	robust.  (Bug#3977)

	* tramp-gvfs.el (top): Remove superfluous message when loading
	fails.

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

	* tramp.el (tramp-rfn-eshadow-update-overlay-regexp) New defconst.
	(tramp-rfn-eshadow-update-overlay): Use it.  (Bug#4004)
	(tramp-handle-insert-file-contents): `unwind-protect' must be
	inside `with-parsed-tramp-file-name'.

2009-08-02  Julian Scheid <julians37@googlemail.com>  (tiny change)

	* tramp.el (tramp-debug-message): Print also microseconds.

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

	* tramp.el (tramp-handle-insert-file-contents): Optimize, when BEG
	or END is non-nil.
	(tramp-handle-vc-registered): Use `tramp-cache-inhibit-cache'.
	(tramp-get-debug-buffer): Change `outline-regexp' according to new
	format.

	* tramp-cache.el (tramp-cache-inhibit-cache ): New defvar.
	(tramp-get-file-property): Use it.

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

	* tramp.el (tramp-do-copy-or-rename-file): Add messages.  Simplify
	check for out-of-band methods.
	(tramp-do-copy-or-rename-file-out-of-band): Allow both files to be
	remote.  Remove messages which are in `tramp-do-copy-or-rename-file'.

2009-07-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-wait-for-output): Handle the case when commands
	do not return a newline but a null byte before the shell
	prompt.  (Bug#3858)

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

	* tramp.el (tramp-set-file-uid-gid): Handle the case the remote
	user is root, on the local host.
	(tramp-local-host-p): Either the local user or the remote user
	must be root.  (Bug#3771)

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

	* tramp.el (tramp-handle-write-region): Flush file properties in
	case of short track.

2009-07-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-gvfs.el (tramp-gvfs-methods, tramp-gvfs-zeroconf-domain)
	(tramp-bluez-discover-devices-timeout): Add version flag.
	(tramp-gvfs-handler-mounted-unmounted)
	(tramp-gvfs-connection-mounted-p): Polish handling of
	incompatibilities between GVFS 0.2 and 1.0.

2009-07-02  Juri Linkov  <juri@jurta.org>

	* tramp-gvfs.el (tramp-gvfs-connection-mounted-p): Use `elt'
	instead of `mount-info'.

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

	* tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
	(tramp-gvfs-connection-mounted-p): Handle changed mount-info
	interface.

2009-07-01  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Add handler
	for `process-file', `shell-command' and `start-file-process'.
	(tramp-gvfs-handle-shell-command)
	(tramp-gvfs-handle-start-file-process)
	(tramp-gvfs-handle-process-file): New defuns.
	(tramp-synce-list-devices): Simplify check for existence of
	property.

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Handle also
	the 'rename case, when setting file modes.  (Bug#3712)
	(tramp-default-file-modes) Remove execute permissions.

	* tramp-gvfs.el (tramp-gvfs-methods): Add "synce" method.
	(top): Add a default for "synce" in `tramp-default-user-alist'.
	Add completion function for "synce" method.
	(tramp-hal-service, tramp-hal-path-manager)
	(tramp-hal-interface-manager, tramp-hal-interface-device): New
	defconst.
	(tramp-gvfs-connection-mounted-p): Handle empty user name for
	synce.
	(tramp-synce-list-devices, tramp-synce-parse-device-names): New
	defuns.

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Set file modes
	mandatory.  (Bug#3712)

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

	* tramp-gvfs.el (top): Declare used Lisp symbols from `dbusbind'.
	Require 'cl and 'custom when byte-compiling.
	(tramp-gvfs-handle-make-directory): Use `dir' but `filename'.
	Reported by Glenn Morris <rgm@gnu.org>.

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

	Version 2.1.16 released.

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

	* tramp.el (tramp-debug-message): Insert header line in debug buffer.

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

	* tramp.el (tramp-handle-insert-file-contents): Improve error
	handling.

	* tramp-smb.el (tramp-smb-handle-file-local-copy): Cleanup in case
	of error.

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

	* tramp-gvfs.el (tramp-gvfs-handler-askpassword): Handle USER
	correctly.

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

	* tramp.el
	(tramp-handle-directory-files-and-attributes-with-stat): Care
	about filenames with spaces, or starting with "-".  Reported by
	Alexey Lebedeff <binarin@binarin.ru>.

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Make direct
	copy more robust, especially when "chown" is not applicable.

	* tramp-cmds.el (tramp-bug): Recommend
	`tramp-cleanup-all-connections' in the bug mail.

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

	* tramp.el (top): Improve check for tramp-gvfs loading.
	(all): Replace all calls of `split-string' and
	`tramp-split-string' by `tramp-compat-split-string'.
	(tramp-default-method): Use `tramp-compat-process-running-p'.
	(tramp-file-name-handler-alist): Add handler for `dired-uncache'.
	(tramp-handle-dired-uncache): New defun.
	(tramp-handle-insert-directory): Don't flush the directory from
	cache, this is handled by `dired-uncache' now.
	(tramp-action-password): Improve trace message.
	(tramp-open-connection-setup-interactive-shell): Apply
	workaround for OpenSolaris bug.
	(tramp-split-string): Remove function.  It is handled in
	tramp-compat now.

	* tramp-compat.el (tramp-compat-split-string)
	(tramp-compat-process-running-p): New defuns.

	* tramp-fish.el (tramp-fish-file-name-handler-alist):
	* tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
	* tramp-smb.el (tramp-smb-file-name-handler-alist): Add handler
	for `dired-uncache'.

2009-04-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-handle-file-name-all-completions): Revert patch from
	2009-04-21.  It is "-b", which does not work on OpenBSD.

2009-04-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-domain-regexp): Allow also "-", "_" and ".".
	Suggested by Simo Melenius <simo.melenius@iki.fi>.

2009-04-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-proxies-alist): Allow also Lisp forms.
	(tramp-compute-multi-hops): Eval cons cells of
	`tramp-default-proxies-alist'.
	(tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-handle-file-name-all-completions): Don't use "-a" as ls
	arg.  It does not work on OpenBSD.  Reported by Taylor Venable
	<taylor@metasyntax.net>.

2009-04-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Completion function for "rsync" is
	`tramp-completion-function-alist-ssh'.

2009-04-14  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-dired-recursive-delete-directory):
	Fix an error in flushing cache data.
	(tramp-handle-process-file): Flush all file cache values for the
	connection, because the remote process could have changed them.
	Suggested by Stefan Monnier <monnier@iro.umontreal.ca>.
	Handle QUIT.

	* tramp-cmds.el (tramp-cleanup-connection): Flush cache data of
	directory "".

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Overwrite
	always the tmpfile.  (Bug#2962).

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

	* tramp.el (tramp-file-name-handler-alist): Add `vc-registered'.
	(tramp-handle-vc-registered ): New defun.  (Bug#1741).

	* tramp-cache.el (tramp-flush-directory-property): Use the
	localname of KEY for check.

2009-04-05  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-default-file-modes) New defun.  Replace all
	calls of `file-modes' by this.
	(tramp-handle-find-backup-file-name): Use `symbol-value' instead
	of `boundp'.

	* tramp-fish.el (tramp-fish-do-copy-or-rename-file-directly): Use
	`tramp-default-file-modes'.

2009-03-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-find-shell)
	(tramp-open-connection-setup-interactive-shell): Don't use quotes
	for `tramp-end-of-output'.
	(tramp-open-connection-setup-interactive-shell): Trace coding system.

2009-03-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Catch `tramp-loading', when a loading of a
	package fails.
	(tramp-end-of-output): Remove newlines, and add "$" at the end.
	(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
	Quote `tramp-end-of-output'.
	(tramp-wait-for-output): Remove handling of newlines.

	* tramp-gvfs.el (top): Add methods to `tramp-methods' after
	loading only.  Throw `tramp-loading', when GVFS daemon does not run.

2009-03-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-path): Add choice "Private Directories".
	(tramp-check-for-regexp): Both echoes must be present, before
	removing.
	(tramp-get-remote-path): Handle also `tramp-own-remote-path'.

2009-03-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-wrong-passwd-regexp): Remove "Tramp connection
	closed" option.
	(tramp-maybe-open-connection): Use the same command pattern for
	first hop and further hops.

2009-02-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-coding-commands): Add "base64".  (Bug#2463)

2009-02-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Require tramp-gvfs.
	(tramp-handle-process-file): Handle QUIT.

	* tramp-gvfs.el (tramp-gvfs-handle-write-region): Fix scoping error.

2009-02-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-gvfs.el (tramp-gvfs-zeroconf-domain): New defcustom.
	(top): Use it for zeroconf initialization.
	(tramp-gvfs-handle-make-directory): Use GVFS utilities in error
	case.
	(tramp-gvfs-handle-set-file-modes): Surround with
	`with-tramp-gvfs-error-message filename'.
	(tramp-gvfs-handle-write-region): Add trace messages.

2009-02-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-gvfs.el (top): Require also 'url-parse and 'zeroconf.  Add
	completion function for "dav" and "davs" methods.
	(tramp-gvfs-url-file-name)
	(tramp-zeroconf-parse-workstation-device-names)
	(tramp-zeroconf-parse-webdav-device-names): New defuns.
	(with-tramp-gvfs-error-message): New defmacro.
	(tramp-gvfs-handle-make-directory): Use it.
	(tramp-gvfs-handle-insert-file-contents): Protect setting
	`buffer-file-name' with `unwind-protect'.
	(tramp-gvfs-handle-write-region): Use GVFS utilities in error
	case.
	(tramp-gvfs-handler-mounted-unmounted): Ignore errors.

2009-02-11  Michael Albinus  <michael.albinus@gmx.de>

	* tramp-gvfs.el (top): Don't raise an error, when "org.bluez" is
	not answering.  Add completion function only when "org.bluez" is
	reachable.
	(tramp-gvfs-maybe-open-connection): Set "started" property.

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

	* Makefile.in: Add tramp-gvfs.el

	* tramp-gvfs.el: New package.

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

	Version 2.1.15 released.

	* tramp.el (tramp-read-passwd): Cached passwords shall still be
	used.

	* tramp-cache.el (top): Autoload `tramp-run-real-handler'.

2009-01-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-actions, tramp-read-passwd): Allow
	correction of passwords.

2009-01-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-ipv6-regexp): The regexp shall cover also IPv4
	mapped IPv6 addresses.

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

	* tramp.el (tramp-do-copy-or-rename-file-directly)
	(tramp-handle-file-local-copy, tramp-handle-write-region)
	* tramp-smb.el (tramp-smb-handle-copy-file)
	(tramp-smb-handle-rename-file): Delete temporary file in case of
	quit.

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

	* tramp.el (tramp-handle-load)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-handle-file-local-copy, tramp-handle-insert-file-contents)
	(tramp-handle-write-region)
	* tramp-smb.el (tramp-smb-handle-copy-file)
	(tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
	Delete temporary file in case of error.

2009-01-05  Glenn Morris  <rgm@gnu.org>

	* tramp.el (tramp-perl-encode, tramp-perl-decode):
	Update copyrights for 2009.

2009-01-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-local-host-regexp, tramp-prefix-domain-format)
	(tramp-prefix-domain-regexp, tramp-domain-regexp)
	(tramp-user-with-domain-regexp, tramp-prefix-ipv6-format)
	(tramp-prefix-ipv6-regexp, tramp-ipv6-regexp)
	(tramp-postfix-ipv6-format, tramp-postfix-ipv6-regexp): New
	defconst.
	(tramp-file-name-structure, tramp-file-name-regexp-unified)
	(tramp-completion-dissect-file-name, tramp-parse-hosts-group)
	(tramp-dissect-file-name, tramp-make-tramp-file-name)
	(tramp-completion-make-tramp-file-name): Handle IPv6 addresses.
	(tramp-handle-insert-file-contents): Fix setting of
	`buffer-read-only'.
	(tramp-compute-multi-hops, tramp-local-host-p): Use
	`tramp-local-host-regexp'.
	(tramp-file-name-real-user, tramp-file-name-domain): Use
	`tramp-user-with-domain-regexp'.

	* tramp-smb.el (top): Use `tramp-prefix-domain-regexp'.
	(tramp-smb-maybe-open-connection): Use `tramp-file-name-*'
	methods.

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

	* tramp.el (tramp-rfn-eshadow-update-overlay): Move overlay to
	end, before updating.
	(tramp-convert-file-attributes): Add "l" indicator to file modes.
	(tramp-file-name-real-user, tramp-file-name-domain): New defuns.

2008-12-10  Juanma Barranquero  <lekktu@gmail.com>

	* tramp.el (top): Don't fail if there is no current message.

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

	* tramp.el (top): Write a message, when loading Tramp.

	* tramp-cache.el (tramp-dump-connection-properties): Polish the
	check, whether to dump the data.

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

	* tramp-cache.el (tramp-cache-data-changed): New defvar.
	(tramp-set-connection-property, tramp-flush-connection-property)
	(tramp-dump-connection-properties): Use it.

2008-11-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-write-region): Improve the check for
	calling direct copy.
	(tramp-find-inline-encoding): Don't raise an error but a warning,
	when no inline encoding is found.
	(tramp-get-remote-coding): Check for a symbol.  The negative check
	for a string fails, when there is an empty string.

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

	* tramp.el (tramp-handle-file-name-as-directory): New defun.
	(tramp-file-name-handler-alist): Handle `file-name-as-directory'.

	* tramp-fish.el (tramp-fish-file-name-handler-alist)
	* tramp-smb.el (tramp-smb-file-name-handler-alist): Handle
	`file-name-as-directory'.

2008-11-14  Juanma Barranquero  <lekktu@gmail.com>

	* tramp.el (tramp-set-completion-function): Fix typo in docstring.

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

	* tramp.el (tramp-process-one-action): Embed regexp in
	parentheses, before adding end-of-buffer construct.  Suggested by
	Markus Triska <markus.triska@gmx.at>.

2008-09-04  Juanma Barranquero  <lekktu@gmail.com>

	* tramp-cache.el (tramp-flush-file-function): Fix typo in docstring.
	(tramp-parse-connection-properties): Reflow docstring.

2008-08-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-process-environment): Add "EMACS=t" and
	"INSIDE_EMACS=...".  Reported by Tassilo Horn
	<tassilo@member.fsf.org>.

2008-08-13  Andreas Schwab  <schwab@suse.de>

	* tramp.el (tramp-handle-shell-command): Handle output going to
	current buffer like shell-command.  Don't disable undo.

2008-07-27  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.14 released.

	* tramp.el (tramp-perl-directory-files-and-attributes)
	(tramp-get-device): Make device number a cons cell.
	(tramp-convert-file-attributes): Make inode a cons cell.

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

	* tramp.el (tramp-handle-start-file-process): Set query-on-exit
	flag. Kill temporary buffer.
	(tramp-process-sentinel): Remove defun.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): Don't call it.

	* tramp-fish.el (tramp-fish-maybe-open-connection): Don't call
	`tramp-process-sentinel'.

	* tramp-smb.el (tramp-smb-maybe-open-connection): Don't call
	`tramp-process-sentinel'.

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

	* tramp.el (tramp-handle-start-file-process): Make NAME a unique
	process name.  Reported by Markus Triska <markus.triska@gmx.at>.

2008-07-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Add "-q" for "scp", "scp1", "scp2",
	"ssh", "ssh1", "ssh2", "scpc", "scpx", "sshx".
	(tramp-temp-buffer-name): New defconst.
	(tramp-handle-start-file-process): Use it.  Apply "exec", for the
	command.  No trailing prompt.
	(tramp-process-sentinel): Remove temporary buffer, if existing.
	Don't handle trailing prompt.
	(tramp-open-connection-setup-interactive-shell): Use
	`tramp-temp-buffer-name'.

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

	* tramp-ftp.el (tramp-ftp-file-name-handler): Revert patch from
	2008-06-28.  It does not work on W32.

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

	* tramp.el (tramp-handle-file-modes): Handle symlinks.
	(tramp-convert-file-attributes): Convert symlinks only when
	returned from `tramp-handle-file-attributes-with-stat'.

	* tramp-ftp.el (top): Delete 'ange-ftp property from
	`substitute-in-file-name' when unloading.
	(tramp-ftp-file-name-handler): Set `tramp-mode' to nil.

2008-06-21  Glenn Morris  <rgm@gnu.org>

	* tramp-smb.el: Require 'cl when compiling.

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

	* tramp.el (tramp-handle-start-file-process): Clear modification
	time of the connection buffer.
	(tramp-sh-file-name-handler): Reset `tramp-locked' in case of error.
	(tramp-open-connection-setup-interactive-shell): Flush cache, and
	restart `tramp-maybe-open-connection' when the remote system has
	been changed. Throw 'uname-changed event.
	(tramp-maybe-open-connection): Catch it.

	* tramp-cmds.el (tramp-cleanup-all-connections): Reset `tramp-locked'.

2008-05-25  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Quote feature names.  Remove
	`tramp-rfn-eshadow-setup-minibuffer' from
	`rfn-eshadow-setup-minibuffer-hook' when unloading.
	(tramp-read-passwd): There is only one call to
	`auth-source-user-or-password' needed.  Pacify byte compiler.

2008-05-17  Glenn Morris  <rgm@gnu.org>

	* tramp.el (top-level): Load auth-source when compiling.

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

	* tramp.el (tramp-handle-write-region): Fix check for short
	track.  Reported by Glenn Morris <rgm@gnu.org>.

2008-05-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-file-name-for-operation): Add `make-temp-name'.

2008-05-14  Teodor Zlatanov  <tzz@lifelogs.com>

	* tramp.el: Load auth-source library.
	(tramp-read-passwd): Use it for password, not login.

2008-05-14  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-echo-mark): Update docstring.
	(tramp-echo-mark-marker): New defconst.
	(tramp-check-for-regexp): Use it.

2008-04-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-mode): New defcustom.
	(tramp-file-name-handler, tramp-completion-file-name-handler): Use
	it.
	(tramp-replace-environment-variables): Handle "$$".

2008-04-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-make-symbolic-link)
	(tramp-handle-file-name-directory)
	(tramp-handle-file-name-nondirectory, tramp-handle-file-truename)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-handle-insert-directory, tramp-handle-expand-file-name)
	(tramp-handle-substitute-in-file-name)
	(tramp-handle-insert-file-contents, tramp-handle-write-region)
	* tramp-cache.el (tramp-get-file-property)
	(tramp-set-file-property, tramp-flush-file-property)
	(tramp-flush-directory-property)
	* tramp-compat.el (tramp-compat-make-temp-file)
	* tramp-fish.el (tramp-fish-handle-expand-file-name): Disable
	`file-name-handler-alist' when handling localname.  It could have
	a remote file syntax, like a VMS file name.

2008-04-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-replace-environment-variables): New defun.
	(tramp-handle-substitute-in-file-name, tramp-file-name-handler):
	Use it.

2008-04-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-remote-stat): Test whether stat supports %s.
	Reported by Loris Bennett <loris.bennett@fu-berlin.de>.

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

	* tramp.el (tramp-find-file-name-coding-system-alist): New defun.
	(tramp-handle-insert-file-contents, tramp-handle-write-region):
	Use it.

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

	* tramp.el (tramp-methods): Fix again tramp-copy-args of "pscp"
	and "psftp".  Reported by Gilles Pion <gpion@lfdj.com>.

2008-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* tramp.el (after-init-hook): Don't wrap a lambda around
	tramp-register-completion-file-name-handler.

2008-04-03  Glenn Morris  <rgm@gnu.org>

	* tramp.el (tramp-drop-volume-letter): Move definition before use.

2008-04-02  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-make-tramp-temp-file): Use
	`tramp-drop-volume-letter' for the local file name part.

2008-03-30  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file): Fix check for
	overwriting when NEWNAME is a local file.

2008-03-29  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.13 released.

	* tramp-ftp.el: Require 'cl when byte-compiling.

2008-03-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Fix tramp-copy-args of "pscp" and
	"psftp".

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

	* tramp.el (tramp-let-maybe): Removed.
	(tramp-drop-volume-letter): Don't use `replace-regexp-in-string'.
	It does not exist under XEmacs.
	(tramp-handle-file-truename, tramp-handle-expand-file-name)
	(tramp-completion-file-name-handler): Let-bind `directory-sep-char'.

	* tramp-fish.el (tramp-fish-handle-expand-file-name): Let-bind
	`directory-sep-char'.

2008-03-19  Glenn Morris  <rgm@gnu.org>

	* tramp.el (tramp-drop-volume-letter): Evaluate when compiling.
	(tramp-handle-shell-command): Use condition-case rather than
	ignore-errors.

2008-03-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-root-regexp): Simplify.
	(tramp-completion-file-name-regexp-separate): Don't insist on
	leading "[".  This prevents method or user or host completion.
	(tramp-let-maybe): Autoload it.
	(tramp-drop-volume-letter): Don't autoload.  When not on W32, it
	is an alias for `identity'.
	(tramp-handle-write-region): Protect `last-coding-system-used'
	over the trailing statements.
	(tramp-completion-file-name-handler-post-function): Removed.
	(tramp-completion-file-name-handler): Let-bind
	`directory-sep-char' instead of calling
	`tramp-drop-volume-letter'.

	* tramp.el (top):
	* tramp-efs.el (top):
	* tramp-util.el (top):
	* tramp-uu.el (top):
	* trampver.el.in (top): Move coding cookie at the end.

2008-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>

	* tramp.el (tramp-completion-mode-p): Don't use char-equal for
	elements which may be something else than characters.

2008-03-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-root-regexp): New defconst.
	(tramp-completion-file-name-regexp-unified)
	(tramp-completion-file-name-regexp-separate)
	(tramp-completion-file-name-regexp-url): Use it.
	(tramp-do-copy-or-rename-file-via-buffer): Set
	`enable-multibyte-characters' to nil.  Set `jka-compr-inhibit' to
	t for `insert-file-contents-literally'.
	(tramp-drop-volume-letter): Rewrite, using `tramp-root-regexp'.
	Autoload it.
	(tramp-completion-file-name-handler-post-function): New defconst.
	(tramp-completion-file-name-handler): Use it.
	(tramp-maybe-open-connection): Update calls to
	`tramp-flush-connection-property' for removed 2nd argument.

	* tramp-util.el (tramp-advice-file-remote-p): Protect by
	`save-match-data'.

2008-02-09  Michael Olson  <mwolson@gnu.org>

	* tramp.el (tramp-process-sentinel): Avoid error when process
	buffer has been killed, such as by
	`tramp-cleanup-all-connections'.

2008-02-05  Glenn Morris  <rgm@gnu.org>

	* tramp-cmds.el (tramp-cleanup-connection): Update calls to
	tramp-flush-connection-property for removed 2nd argument.

2008-02-03  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-process-sentinel): New defun.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): Use it as process sentinel.
	(tramp-handle-delete-directory): Don't use the "-f" option; it
	isn't portable.
	(tramp-handle-start-file-process): Echo `tramp-end-of-output'
	after the command.
	(tramp-handle-shell-command): Set `mode-line-process' in the
	asynchronous case.

	* tramp-cache.el (tramp-flush-connection-property): Remove EVENT.

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

2008-01-29  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Use "-H" option for "sudo".  Suggested
	by Trent W. Buck <trentbuck@gmail.com>.  Make ("%h") a single
	element in "plinkx".
	(tramp-handle-shell-command): Reuse "*Async Shell Command*" or
	"*Shell Command Output*" buffers.  Check, whether there is already
	an asynchronous process running.  Display always the buffer of the
	asynchronous process.
	(tramp-compute-multi-hops): Adapt error message.

2008-01-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-shell-command): Use "/bin/sh -c" for the
	command.

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

	* tramp.el (tramp-compute-multi-hops): In case of su(do)? methods,
	the host name must be a local host.

2008-01-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-dissect-file-name): Raise an error when Tramp
	2.0 syntax is used.  Suggested by Trent W. Buck <trentbuck@gmail.com>.

2008-01-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-do-copy-or-rename-file): Flush the cache of the
	source file in case of `rename'.  Reported by Pete Forman
	<pete.forman@westerngeco.com>.

2008-01-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-end-of-output): Add `tramp-rsh-end-of-line' into
	the regexp.
	(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
	Don't send `tramp-rsh-end-of-line' additionally, when setting the
	prompt.
	(tramp-wait-for-output): Distinguish different prompt formats.
	(tramp-get-test-nt-command): Don't check for "\n" in the prompt.
	(tramp-local-host-p): Check whether temp directory is writable.

2008-01-17  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-remote-process-environment): Set "LC_ALL=C".

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

	* tramp.el (tramp-local-host-p): Use `tramp-file-name-host'
	instead of `tramp-file-name-real-host'.

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

	Update copyrights.

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

	* tramp.el (tramp-handle-process-file): Handle the case where
	DESTINATION is a consp with t as car.
	(tramp-wait-for-output): We shall remove exactly what has been
	find by the search.

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

	* tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C".
	Reported by Pete Forman <pete.forman@westerngeco.com>.
	(tramp-perl-encode, tramp-perl-decode): Update copyrights.

2008-01-04  Glenn Morris  <rgm@gnu.org>

	* tramp-smb.el (tramp-smb-handle-insert-directory): Use mapc
	rather than mapcar.

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

	Version 2.1.12 released.

	* tramp.el: New todo item.

	* tramp-smb.el (tramp-smb-handle-insert-directory): Handle "-F"
	switch.  Reported by Mark T. Kennedy <mkennedy@diamondbackcap.com>.

2007-12-06  D. Goel  <deego3@gmail.com>

	* trampver.el.in (x): Fix buggy call to `error'.

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

	* tramp-compat.el (top): Require cl only when compiling.
	Reported by Glenn Morris <rgm@gnu.org>.

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

	* tramp.el (tramp-open-connection-setup-interactive-shell)
	(tramp-find-shell): Send only single prompt setting commands, in
	order to avoid double-prompt.

2007-12-04  Glenn Morris  <rgm@gnu.org>

	* tramp.el: Require password-cache or password.

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

	* tramp.el (tramp-open-connection-setup-interactive-shell): Still
	some tuning in case of an echoing shell.
	(tramp-send-command): Connection property "remote-echo" is not
	persistent; cache key is the process therefore.

2007-11-18  Dan Nicolaescu  <dann@ics.uci.edu>

	* tramp.el (tramp-terminal-type): Remove duplicated definition.

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

	* tramp.el (tramp-completion-reread-directory-timeout): New
	defcustom.
	(tramp-handle-file-name-all-completions): Flush directory contents
	from cache regularly.
	(tramp-set-auto-save-file-modes): Check also for
	`buffer-modified-p'.
	(tramp-open-connection-setup-interactive-shell): Call
	`tramp-cleanup-connection' via funcall.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Temp file is already
	created when copying.

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

	* tramp.el (tramp-open-connection-setup-interactive-shell): Check
	whether the output of "uname -sr" has been changed.

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

	* tramp.el (tramp-maybe-open-connection): Use a local copy of
	`process-environment'.

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

	* tramp.el (tramp-handle-substitute-in-file-name): Don't expand
	the remote connection identification.
	(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
	Set also $PS2 and $PS3 when setting $PS1.  Check for shell echoing
	before calling stty.

	* tramp-cache.el (tramp-cache-print)
	(tramp-dump-connection-properties): Fix docstring.
	(tramp-list-connections): Renamed from
	`tramp-cache-list-connections'.

	* tramp-cmds.el (tramp-cleanup-connection): Apply it.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Don't expand the
	remote connection identification when setting connection property.

	* tramp-smb.el (tramp-smb-handle-substitute-in-file-name): "//"
	substitutes only in the local filename part.

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

	* tramp.el (top): Don't autoload `tramp-cache-print'.

	* tramp-cache (tramp-cache-print): Move down.
	(tramp-cache-list-connections): New defun.

	* tramp-cmds.el (tramp-cleanup-connection): Use it.

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

	* tramp.el (tramp-wait-for-output): Ignore escape sequences in the
	prompt.

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

	* tramp.el (tramp-handle-shell-command): Call `start-file-process'
	directly.  Fix bug in deleting temp file.

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

	* tramp.el (tramp-maybe-open-connection): Set $LC_ALL to "C".

	* tramp-cache.el (tramp-flush-file-function): Check also
	`default-directory' if `buffer-file-name' does not return a
	string.  Added to `eshell-pre-command-hook'.

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

	* tramp.el (tramp-wrong-passwd-regexp): Tune regexp.
	(tramp-get-remote-tmpdir): New defun.
	(tramp-make-tramp-temp-file): Use it.
	(tramp-local-call-process): New defun.  Replace all calls of
	`call-process' by this when appropriate.
	(tramp-handle-write-region): Replace calls of `file-attributes' by
	`tramp-compat-file-attributes'.
	(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
	Make the first command a `tramp-send-command' call, with let-bind
	of `tramp-end-of-output'.
	(tramp-version, tramp-bug, tramp-reporter-dump-variable)
	(tramp-load-report-modules, tramp-append-tramp-buffers): Move to
	tramp-cmds.el.

	* tramp-fish.el (tramp-fish-handle-copy-file)
	(tramp-fish-do-copy-or-rename-file)
	(tramp-fish-do-copy-or-rename-file-directly):
	* tramp-smb.el (tramp-smb-handle-copy-file):
	Add parameter PRESERVE-UID-GID.

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

	* tramp.el (tramp-set-file-uid-gid): Protect `call-process' when
	we are local.

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

	* tramp.el (tramp-find-shell)
	(tramp-open-connection-setup-interactive-shell): Improve sending
	initial commands.
	(tramp-action-terminal): Send debug message.
	(tramp-wait-for-shell-prompt, tramp-send-command-internal): Removed.
	(tramp-barf-if-no-shell-prompt): Insert code of
	`tramp-wait-for-shell-prompt'.

	* tramp-util.el (tramp-PC-expand-many-files): New defun.
	(tramp-advice-PC-expand-many-files): Defadvice moved from tramp.el.

2007-10-22  Sean O'Rourke  <sorourke@cs.ucsd.edu>  (tiny change)

	* tramp.el (tramp-handle-expand-many-files): Remove.
	(PC-expand-many-files): Remove advice.

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

	* tramp.el (tramp-do-copy-or-rename-file-directly): Make more
	rigid checks.
	(tramp-handle-insert-file-contents): Don't raise a tramp-error but
	a signal, in order to give the callee a chance to suppress.
	(tramp-handle-write-region): Set owner also in case of short
	track.  Don't use compatibility calls for `write-region' anymore.

2007-10-18  Johan Bockgård  <bojohan@gnu.org>

	* tramp.el (tramp-rfn-eshadow-update-overlay): Save excursion.
	Use `save-restriction' rather than `widen'.

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

	* Makefile.in (LISP_FILES): Add tramp-cmds.el.

	* tramp.el (top): Put load of all tramp-* files into a dolist.
	Require tramp-cmds.el.
	(tramp-clear-passwd): Add parameter VEC.  Adapt all callees.
	(tramp-append-tramp-buffers): Apply `tramp-list-tramp-buffers'.

	* tramp-cmds.el: New file.

	* tramp-gw.el (tramp-gw-basic-authentication): Apply VEC to
	`tramp-clear-passwd'.

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

	* tramp.el (tramp-handle-file-name-all-completions): Expand
	DIRECTORY.
	(tramp-handle-dired-recursive-delete-directory): Call "rm -rf".

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

	* tramp.el (tramp-make-tramp-temp-file): We can get rid of
	DONT-CREATE.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): Use `make-temp-name'.  This is
	possible, because we don't need to create the temporary file, but
	we need a prefix for ssh, which has its own temporary file
	handling.
	(tramp-handle-delete-directory): Add "-f" to rmdir.

	* tramp-util.el (top): Check for `tramp-handle-start-file-process',
	not its symbol-function.

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

	Version 2.1.11 released.

	* tramp.el (tramp-open-connection-setup-interactive-shell): Pacify
	byte compiler.

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

	* tramp.el (tramp-find-foreign-file-name-handler): Check also
	host.
	(tramp-maybe-send-script): Apply `member' but `memq'.
	(tramp-advice-file-expand-wildcards): Simplify implementation.

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

	* tramp.el (top): Move loading of tramp-util.el and tramp-vc.el to
	tramp-compat.el.
	(tramp-make-tramp-temp-file): Complete rewrite.  Create remote
	temporary file if possible, in order to avoid a security hole.
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-maybe-open-connection): Call `tramp-make-tramp-temp-file'
	with DONT-CREATE, because the connection is not setup yet.
	(tramp-handle-process-file): Rewrite temporary file handling.
	(tramp-completion-mode): New defvar.
	(tramp-completion-mode-p): Use it.

	* tramp-compat.el (top):  Load tramp-util.el and tramp-vc.el.

	* tramp-fish.el (tramp-fish-handle-process-file): Rewrite
	temporary file handling.

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

	* tramp.el (tramp-make-temp-file): Move to tramp-compat.el.
	(tramp-do-copy-or-rename-file-directly): Handle tmpfile only in
	the cond clauses where needed.
	(tramp-handle-write-region): Rearrange code for proper handling of
	tmpfile.

	* tramp-compat.el (tramp-compat-make-temp-file): New defsubst.

	* tramp.el:
	* tramp-fish.el:
	* tramp-ftp.el:
	* tramp-smb.el: Rename `tramp-make-temp-file' to
	`tramp-compat-make-temp-file'.

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

	* tramp.el (top): Add tramp-compat to `tramp-unload-hook'.
	(tramp-file-name-handler-alist): Add
	`tramp-handle-insert-file-contents-literally'.  Needed for XEmacs.
	(tramp-make-temp-file): Use `make-temp-name'. `make-temp-file',
	used before, creates the file already, which is not desired.
	(tramp-do-copy-or-rename-file-directly): Simplify handling of
	temporary file.
	(tramp-handle-insert-file-contents): Assign the result in the
	short track case.
	(tramp-handle-insert-file-contents-literally): New defun.
	(tramp-completion-mode-p): Revert change from 2007-09-24.
	Checking for `return' etc as last character is not sufficient, for
	example in dired-mode when entering <g> (revert-buffer) or
	<s> (dired-sort).

	* tramp-compat.el (top): Add also compatibility code for loading
	appropriate timer package.
	(tramp-compat-copy-tree): Check for `subrp' and `symbol-file' in
	order to avoid autoloading problems.

	* tramp-efs-el:
	* tramp-fish.el:
	* tramp-smb.el: Move further compatibility code to
	tramp-compat.el.

	* tramp-ftp.el (tramp-ftp-file-name-handler): Handle the case
	where the second parameter of `copy-file' or `rename-file' is a
	remote file but not via ftp.

	* tramp-util.el: Remove `tramp-minor-mode' and its declarations.

2007-09-30  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in (LISP_FILES): Add tramp-compat.el.

	* tramp-compat.el: New file.

	* tramp.el:
	* tramp-fish.el:
	* tramp-smb.el:
	* tramp-uu.el:
	* tramp-vc.el:
	* trampver.el.in: Move compatibility code to tramp-compat.el.
	Apply `mapc' instead of `mapcar' when the code needs side effects
	only.  Move utf-8 coding cookie to the second line.

2007-09-28  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (with-file-property, with-connection-property):
	Highlight as keyword.
	(tramp-rfn-eshadow-setup-minibuffer)
	(tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times)
	(tramp-set-file-uid-gid, tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-directly)
	(tramp-do-copy-or-rename-file-out-of-band)
	(tramp-handle-shell-command, tramp-get-debug-buffer)
	(tramp-send-command-and-read, tramp-equal-remote)
	(tramp-get-local-gid): Pacify byte-compiler.
	(tramp-handle-file-name-directory): Result shall not be expanded.
	(tramp-find-foreign-file-name-handler): Rewrite.
	(tramp-dissect-file-name): Add optional parameter NODEFAULT.

	* tramp-cache.el (tramp-cache-print): Pacify byte-compiler.

	* tramp-fish.el (tramp-fish-handle-expand-file-name): Apply
	`tramp-completion-mode-p'.
	(tramp-fish-handle-set-file-times)
	(tramp-fish-handle-executable-find)
	(tramp-fish-handle-process-file, tramp-fish-get-file-entries)
	(tramp-fish-retrieve-data): Pacify byte-compiler.

	* tramp-gw.el (tramp-gw-basic-authentication): Call
	`tramp-read-passwd' with first parameter `nil'.

	* tramp-util.el (process-file): Add a defalias if function does
	not exist.
	(tramp-gud-file-name, gud-find-file): Pacify byte-compiler.

	* tramp-vc.el (tramp-vc-user-login-name): Apply `set-file-times'
	instead of `tramp-touch'.

	* Makefile.in (top): Handle `datarootdir'.

2007-09-27  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-maybe-open-connection): Make test for alive
	connection more robust.

2007-09-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-completion-mode-p): Rename from
	`tramp-completion-mode'. Revert logic, check `return', `newline'
	and such alike. Packages like Icicles tend to use other completion
	characters but `tab' and `space' only.

2007-09-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-rfn-eshadow-overlay): New defvar.
	(tramp-rfn-eshadow-setup-minibuffer)
	(tramp-rfn-eshadow-update-overlay): New defuns.

	* tramp-smb.el (tramp-smb-errors): Add error message for call
	timeout.

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

	* tramp.el (top): Remove declarations of `tramp-gw-*' symbols,
	they are useless with the byte compiler.
	(tramp-make-temp-file, tramp-make-tramp-temp-file): Move up.
	(tramp-do-copy-or-rename-file-directly): Rearrange let-bindings.
	(tramp-compute-multi-hops): Mask `tramp-gw-*' symbols.
	(tramp-file-name-real-host, tramp-file-name-port)
	(tramp-find-method, tramp-find-user, tramp-find-host): Make them
	defuns.

2007-09-06  Ville Skyttä  <scop@xemacs.org>  (tiny change)

	* tramp-vc.el (tramp-vc-user-login-name): Use `vc-find-version'
	instead of `process-file' to check whether we have a new enough vc
	that doesn't need the defadvice.

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

	* tramp-cache.el (top): Improve error message when
	`tramp-persistency-file-name' is corrupted.

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

	* tramp.el (tramp-handle-set-file-times): Flush the file
	properties.
	(tramp-set-file-uid-gid, tramp-get-local-uid)
	(tramp-get-local-gid): New defuns.
	(tramp-handle-copy-file): Handle new parameter PRESERVE-UID-GID.
	(tramp-do-copy-or-rename-file): New parameter PRESERVE-UID-GID.
	Improve fast track.
	(tramp-do-copy-or-rename-file-directly): Sync parameter list with
	the other tramp-do-copy-or-rename-file-* functions.  Major
	rewrite.
	(tramp-handle-file-local-copy, tramp-handle-insert-file-contents)
	(tramp-handle-write-region): Improve fast track.
	(tramp-handle-file-remote-p): IDENTIFICATION can also be
	'localname.
	(tramp-maybe-open-connection): Let `process-adaptive-read-buffering'
	be nil.

	* tramp-util.el (tramp-advice-process-file): Rename from
	`tramp-advice-call-process'.
	(tramp-advice-call-process-shell-command): Correct doc string.

2007-08-24  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-local-host-p): New defun.
	(tramp-handle-file-local-copy, tramp-handle-write-region):
	Implement fast track when being on the local host.
	(tramp-file-name-handler): Don't set "started" property.  It shall
	be reserved for the "ftp" method.
	(tramp-make-copy-program-file-name): Use `tramp-file-name-real-host'.

	* tramp-ftp.el (top): Autoload `tramp-set-connection-property'.
	(tramp-ftp-file-name-handler): Set "started" property.

2007-08-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-get-remote-path): New defun.  Replace occurences
	of `tramp-default-remote-path' by this function.
	(tramp-set-remote-path): Move most of the code to
	`tramp-get-remote-path'.
	(tramp-get-ls-command, tramp-get-remote-id): Don't check for not
	existing directories, this is done already in
	`tramp-get-remote-path'.

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

	* tramp.el (top): Require cl.el, when `copy-tree' is not available
	otherwise.

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

	* tramp.el (tramp-handle-shell-command): Handle OUTPUT-BUFFER and
	ERROR-BUFFER more robust.  Display output.

	* tramp-cache.el (top): Read persistent connection history when
	cache is empty.

2007-08-07  Nic Ferrier  <nferrier@tapsellferrier.co.uk>  (tiny change)

	* tramp.el (tramp-handle-process-file): Fix bug inserting
	resulting output.

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

	* tramp.el (tramp-file-name-handler): Add a connection property
	when we found a foreign file name handler.  This allows backends
	like ftp to profit also from usr/host name completion based on
	connection cache.

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

	* tramp.el (tramp-wrong-passwd-regexp): Make the regexp more
	global matching.
	(tramp-send-command-and-read): Search for trash after the regexp
	until eol only.  In XEmacs, there is a problem with \n.

2007-07-29  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in:
	* tramp.el:
	* tramp-efs.el:
	* tramp-util.el:
	* tramp-uu.el:
	* trampver.el.in: Use utf-8 encoding with coding cookie.

	* tramp-cache.el:
	* tramp-fish.el:
	* tramp-ftp.el:
	* tramp-gw.el:
	* tramp-smb.el: Remove coding cookie.

	* tramp.el (tramp-handle-verify-visited-file-modtime): Flush
	buffer file-name's file property.
	(tramp-handle-file-remote-p): The first parameter is FILENAME.

2007-07-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-perl-file-attributes)
	(tramp-perl-directory-files-and-attributes)
	(tramp-handle-file-attributes-with-stat)
	(tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-convert-file-attributes): Handle huge file sizes.

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

	Version 2.1.10 released.

	* tramp.el (tramp-get-ls-command): Fix typo.

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

	* tramp.el (tramp-handle-file-remote-p): Handle optional parameter
	IDENTIFICATION.

	* tramp-util.el (tramp-advice-file-remote-p): Handle optional
	parameter IDENTIFICATION.

2007-07-16  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-set-file-times): New defun.  Replaces
	`tramp-touch'.
	(tramp-file-name-handler-alist, tramp-file-name-for-operation):
	Add entry for `set-file-times'.
	(tramp-do-copy-or-rename-file-via-buffer)
	(tramp-do-copy-or-rename-file-out-of-band): Use `set-file-times'.
	(tramp-handle-unhandled-file-name-directory): Rewrite.
	(tramp-convert-file-attributes): Add error handling when inode is
	extraordinary big.
	(tramp-get-inode): Change parameter from FILE to VEC.

	* tramp-fish.el (tramp-fish-file-name-handler-alist): Add entry
	for `set-file-times'.  Rename `start-process' into
	`start-file-process'.  Remove `call-process' entry.
	(tramp-fish-handle-set-file-times): New defun.
	(tramp-fish-handle-executable-find): Use `process-file'.
	(tramp-fish-handle-process-file): New defun.  Replaces
	`tramp-fish-handle-call-process'.
	(tramp-fish-do-copy-or-rename-file-directly): Use
	`set-file-times'.
	(tramp-fish-get-file-entries): Change `tramp-get-inode' parameter.

	* tramp-smb.el (tramp-smb-handle-file-attributes): Change
	`tramp-get-inode' parameter.

	* tramp-util.el (all): Change all checks to (fboundp
	'start-file-process).
	(set-file-times): Add a defalias if function does not exist.

2007-07-15  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods, tramp-find-shell)
	(tramp-open-connection-setup-interactive-shell)
	(tramp-maybe-open-connection): Guard against $PROMPT_COMMAND shell
	var.  Reported by Steve Youngs <steve@sxemacs.org>.
	(tramp-handle-start-file-process ): Use (current-buffer) if BUFFER
	is NIL.  This is according to the specification.  Goto (point-max)
	when ready.
	(tramp-handle-shell-command): Rewrite completely, using
	`process-file' and `start-file-process'.
	(tramp-touch): Don't use variable expansion when calling
	`shell-command'.

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

	* tramp.el (tramp-handle-file-remote-p): Handle optional parameter
	CONNECTED.

	* tramp-util.el (tramp-advice-file-remote-p): Handle optional
	parameter CONNECTED.
	(all): Use `unhandled-file-name-directory' where appropriate.

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

	* Makefile.in (EMACS_UTILS): New variable.
	(LISP_FILES): Add tramp-util.el and tramp-vc.el depending on
	$EMACS_UTILS.

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

	* Makefile.in:
	* tramp-cache.el:
	* tramp-efs.el:
	* tramp-fish.el:
	* tramp-ftp.el:
	* tramp-gw.el:
	* tramp-uu.el:
	* tramp-vc.el:
	* trampver.el.in: Migrate to GPLv3 license.

	* tramp.el: Migrate to GPLv3 license.  Don't require base64.el.
	Require tramp-util.el and tramp-vc only if `start-file-process' is
	not fbound.
	(tramp-md5-function): Removed. Call `md5' directly.
	(tramp-file-name-handler-alist): Add `start-file-process'.  Remove
	`start-process' and `call-process'.
	(tramp-handle-start-file-process): Renamed from
	`tramp-handle-start-process'.
	(tramp-handle-process-file): Implementation taken from
	`tramp-handle-call-process'.
	(tramp-handle-call-process): Removed.
	(tramp-file-name-for-operation): Add `start-file-process'.
	(tramp-open-connection-setup-interactive-shell): Don't set
	"last-cmd-time" property.

	* tramp-smb.el: Migrate to GPLv3 license.
	(tramp-smb-errors): Add error message for connection timeout.
	(tramp-smb-maybe-open-connection): Check for error messages.

	* tramp-util.el: Migrate to GPLv3 license.
	(tramp-advice-start-process): Call `tramp-handle-start-file-process'.

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

	* tramp.el:
	* tramp-cache.el:
	* tramp-fish.el:
	* tramp-smb.el:
	* tramp-util.el: Use `expand-file-name' instead of `concat' where
	appropriate.

	* tramp.el (tramp-action-yesno, tramp-action-yn): Protect
	`pop-to-buffer' by `save-match-data'.

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

	* tramp.el:
	* tramp-fish.el:
	* tramp-smb.el: Unify "Tramp" in strings.

	* tramp.el (tramp-handle-substitute-in-file-name): "//" and "/~"
	substitute only in the local filename part.  Suggested by Peter
	Gordon <peter@pg-consultants.com>.
	(tramp-advice-minibuffer-electric-separator)
	(tramp-advice-minibuffer-electric-tilde): New defadvices.
	(tramp-append-tramp-buffers): Replace "sensible" by "sensitive" in
	the hint.

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

	* tramp.el (tramp-handle-insert-file-contents): VISIT must be
	handled after insertion of the local copy.  Reported by Peter
	Gordon <peter@pg-consultants.com>.

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

	* tramp-cache.el (tramp-persistency-file-name): Check also for
	`user-emacs-directory' and `user-init-directory'.

	* tramp-gw.el (tramp-gw-open-connection): Apply `vector' instead
	of `make-tramp-file-name'.

	* tramp-util.el (all): Quote the function names in
	`tramp-util-unload-hook' if they aren't symbols yet.
	(tramp-advice-before-ediff-exec-process): New defadvice.

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

	* tramp.el:
	* tramp-ftp.el:
	* tramp-smb.el:
	* tramp-util.el:
	* tramp-vc.el:
	Don't load cl.el, because that pollutes the namespace.  Replace cl
	macros by their implementations where necessary.  Requested by
	Richard Stallman <rms@gnu.org>.

	* tramp.el (tramp-file-name-p, tramp-file-name-method,
	(tramp-file-name-user, tramp-file-name-host)
	(tramp-file-name-localname): New defuns, replacing defstruct
	`tramp-file-name'.
	(tramp-completion-dissect-file-name1, tramp-compute-multi-hops)
	(tramp-dissect-file-name): Apply `vector' instead of
	`make-tramp-file-name'.
	(tramp-do-copy-or-rename-file-out-of-band): Aset 3rd index instead
	of 4th, when setting localname.
	(tramp-compute-multi-hops): Aset 2nd index instead of 3rd, when
	setting host.

	* tramp-cache.el (all): Aset 3rd index instead of 4th, when
	unifying localname.

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

	* tramp.el (tramp-handle-expand-file-name):
	* tramp-fish.el (tramp-fish-handle-expand-file-name):
	Key for home directory cache entry must distinguish different
	users.  Reported by Gilles Pion <gpion@lfdj.com>.

2007-04-23  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el: New todo items.
	(tramp-default-user): Mark the variable as obsolete in the docstring.

2007-04-22  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): "plinkx" loads a session.  No default
	port.
	(tramp-default-user-alist): No default user for "plinkx".
	(tramp-completion-function-alist-putty): New defconst.
	(tramp-completion-function-alist): Add "plinkx" completion.
	(tramp-set-completion-function): Handle also registry keys.
	(tramp-parse-putty, tramp-parse-putty-group): New defuns.
	(tramp-action-login): Trace login prompt.

2007-04-19  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): New method "plinkx".
	(tramp-default-user-alist): Add default user for "plink" methods.
	(tramp-action-login): Read user name interactively when nil.

2007-04-15  Pete Forman  <pete.forman@westerngeco.com>  (tiny change)

	* tramp.el (tramp-default-user): Fix typo in docstring.  Value can
	also be nil.

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

	* tramp.el (top): Make `set-buffer-multibyte' an alias if it
	doesn't exist.
	(tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-handle-file-attributes-with-stat): Return inode as real
	number.
	(tramp-convert-file-attributes): Convert inode into a list of two
	integers.

	Reported by Pete Forman <pete.forman@westerngeco.com>.

2007-04-08  Michael Albinus  <michael.albinus@gmx.de>

	Version 2.1.9 released.

	* tramp.el (tramp-buffer-name, tramp-debug-buffer-name): We must
	use `tramp-file-name-real-host', because for gateway methods the
	default port will be expanded later on, which would tamper the
	name.
	(tramp-completion-mode): `last-input-event' is nil when XEmacs is
	started.

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

	* tramp.el (tramp-compute-multi-hops): Fix error in setting hop.

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

	* tramp.el (tramp-message): Don't print "Error" in level 1, this
	is part of the message already.
	(tramp-error-with-buffer, tramp-action-yesno, tramp-action-yn):
	Let `enable-recursive-minibuffers' be t, in case we need
	`pop-to-buffer' during editing of the minibuffer.
	(tramp-barf-if-no-shell-prompt): Apply `tramp-error-with-buffer'.

2007-03-31  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (top): Don't require 'tramp-cache, it results in an
	endless loop.  Autoload needed functions instead of.  Declare
	needed gateway symbols, when tramp-gw cannot be loaded.
	(with-parsed-tramp-file-name): Simplify `edebug-form-spec'.
	(with-file-property, with-connection-property): New defmacros,
	moved from tramp-cache.  This was necessary, because macros cannot
	be autoloaded.
	(tramp-register-file-name-handler)
	(tramp-register-completion-file-name-handler): New defsubst,
	derived from `tramp-register-file-name-handlers'.  The split is
	necessary because Tramp's file name handlers must be registered at
	different startup places.

	* tramp-cache.el (with-file-property, with-connection-property):
	Move them to tramp.el.

2007-03-31  Joachim Schrod  <jschrod@acm.org>  (tiny change)

	* tramp.el (tramp-completion-mode): `last-input-event' may have no
	character approximation.

2007-03-26  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-expand-file-name): Don't apply
	`tramp-drop-volume-letter' for non-Tramp files.

2007-03-25  Michael Albinus  <michael.albinus@gmx.de>

	* Makefile.in: Add gateway support.

	* tramp.el (top): Require tramp-gw conditionally only.
	(tramp-methods): Add port spec to "plink", "plink1" and "pscp"
	methods.

2007-03-21  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-handle-make-auto-save-file-name): Apply
	`tramp-temporary-file-directory' for compatibility reasons.

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

	* tramp.el (tramp-handle-directory-files-and-attributes-with-stat)
	(tramp-handle-file-name-all-completions): Add "-b" to the "ls"
	command in order to handle file names with spaces.

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

	* tramp.el (tramp-methods): Extend doc string by description of
	`tramp-default-port' and `tramp-gw-args'.
	(tramp-enter-password): Remove `inhibit-trace'.  It is handled by
	description in the manual now.
	(tramp-maybe-open-connection): Fix small error in gateway handling.

2007-03-07  Michael Albinus  <michael.albinus@gmx.de>

	* tramp.el (tramp-methods): Add port spec to "telnet" method.
	(tramp-do-copy-or-rename-file-out-of-band): Complete gateway
	implementation.
	(tramp-handle-insert-directory): Check (featurep 'ls-lisp).
	(tramp-make-tramp-temp-file): Use `emacs-pid' if there is no
	running process yet.
	(tramp-compute-multi-hops): New defun.  Code extracted from
	`tramp-maybe-open-connection'.
	(tramp-maybe-open-connection): Code adapted accordingly.

	* tramp-gw.el (tramp-gw-gw-proc-sentinel): Companion process might
	not exist.
	(tramp-gw-open-network-stream, tramp-gw-basic-authentication):
	Clean password cache in error case only.

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

	* tramp.el (tramp-methods): Add gateway parameter to "scp",
	"scp1", "scp2", "scpc", "scpx", "sshx".
	(tramp-do-copy-or-rename-file-out-of-band): Start implementation
	for gateways.  It is not finished yet.
	(tramp-make-copy-program-file-name): Change parameter to VEC.
	(tramp-make-temp-file): New parameter FILENAME.  Append its
	extension to the resulting temporary file name.
	(tramp-handle-file-local-copy, tramp-handle-write-region): Apply
	it.

	* tramp-smb.el (tramp-smb-handle-file-local-copy)
	(tramp-smb-handle-write-region): Apply it.

	* tramp-fish.el (tramp-fish-handle-file-local-copy): Apply it.

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

	* tramp.el (tramp-error-with-buffer): Use `sit-for'.

	* tramp-gw.el (tramp-gw-vector, tramp-gw-gw-proc): Renamed from
	`tramp-gw-current-vector' and `tramp-gw-current-gw-proc'.
	(tramp-gw-gw-vector): New defvar.
	(tramp-gw-gw-proc-sentinel): New defun.
	(tramp-gw-open-connection): Use an independent buffer name for
	auxiliary process.  Set process sentinel for `tramp-gw-gw-proc'.

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

	* tramp.el (tramp-error-with-buffer): New defsubst.  Apply it
	wherever there is `pop-to-buffer', followed by `tramp-error'.
	(tramp-maybe-open-connection): Rename `tramp-gw-http-method' to
	`tramp-gw-tunnel-method'.

	* tramp-gw.el (tramp-gw-tunnel-method)
	(tramp-gw-default-tunnel-port): Renamed from
	`tramp-gw-http-method' and `tramp-gw-default-http-port',
	respectively.  Apply it everywhere.
	(tramp-gw-open-connection): Improve doc-string.  Use only type 5
	for `socks-server', we have our own 'http implementation.
	(tramp-gw-open-network-stream): Improve error handling.
	(tramp-gw-basic-authentication): Bind `tramp-current-*' locally
	because of password cache key.

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

	* tramp.el (tramp-methods): Add "StrictHostKeyChecking=no" to
	`tramp-gw-args' of ssh, ssh1 and ssh2 methods.
	(tramp-maybe-open-connection): Implement changed interface of
	`tramp-gw-open-connection'.
	(tramp-send-eof): Removed.
	(tramp-file-name-real-host, tramp-file-name-port): New defsubst.
	(tramp-read-passwd): New parameter PROMPT.

	* tramp-gw.el: Complete rewrite.  Use socks.el for SOCKS server;
	implement HTTP tunnels on its own.

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

	* tramp-gw.el (tramp-gw-current-gw-vector)
	(tramp-gw-current-http-buffer): New defvars.
	(tramp-advice-url-http-parse-response)
	(tramp-advice-url-http-create-request, tramp-gw-aux-proc-sentinel)
	(tramp-gw-open-connection): Make them fit for proxy authentication.

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

	* Makefile.in: Add tramp-gw.el

	* tramp-gw.el: New package.

	* tramp.el (top): Require tramp-gw.
	(tramp-methods): Add `tramp-gw-args' and `tramp-default-port' for
	ssh and telnet methods.
	(tramp-message): Catch errors.
	(tramp-action-yesno, tramp-action-yn): Trace messages.
	(tramp-maybe-open-connection): Handle gateways.
	(tramp-read-passwd): New parameter PROC. Used in order to improve
	password prompt. Adapt callees.

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

	* tramp-cache.el (tramp-flush-file-function): Renamed from
	`tramp-cache-before-revert-function'.  Added to
	`kill-buffer-hook'.

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

	* tramp-smb.el (tramp-smb-handle-insert-directory)
	* tramp.el (tramp-handle-insert-directory): Fix wildcard case.

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

	* tramp-util.el (top): Add defadvices for `browse-url-*'.

2007-01-21  Glenn Morris  <rgm@gnu.org>

	* tramp.el (tramp-perl-encode, tramp-perl-decode):
	Update copyrights.

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

	* tramp.el (with-parsed-tramp-file-name): Protect debug spec
	during compilation.
	(tramp-handle-expand-file-name, tramp-find-method)
	(tramp-find-user, tramp-find-host): Don't check for
	`tramp-completion-mode'.
	(tramp-find-foreign-file-name-handler): Check also for
	`tramp-completion-mode' and `tramp-completion-file-name-regexp'.
	(tramp-completion-mode): Variable removed.  Also all occurencies.
	(tramp-completion-handle-file-name-all-completions): Don't call
	`tramp-run-real-handler'.
	(tramp-make-tramp-file-name): It must return always a well-formed
	Tramp file name.
	(tramp-completion-make-tramp-file-name): New defun.
	(tramp-get-completion-methods, tramp-get-completion-user-host):
	Apply it.

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

	* tramp.el (tramp-handle-start-process): BUFFER can be nil.

	* tramp-util.el (top): Add defadvice for `ispell-start-process'.

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

	Version 2.1.8 released.

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

	* 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.
	(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-cache.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 Förste
	<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 Frédéric 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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <kai.grossjohann@gmx.net>

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

2003-07-03  Kai Großjohann  <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 Großjohann  <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 Großjohann  <kai.grossjohann@gmx.net>

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

2003-06-24  Kai Großjohann  <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 Großjohann  <kai.grossjohann@gmx.net>
	Version 2.0.35 released.

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

2003-06-16  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <kai.grossjohann@gmx.net>

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

2003-05-21  Kai Großjohann  <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 Großjohann  <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 Großjohann  <kai.grossjohann@gmx.net>

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

2003-05-06  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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
	Großjohann <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <kai.grossjohann@uni-duisburg.de>

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

2003-02-20  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann
	<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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.25 released.

2002-10-05  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-shell-command): Logic error.  From Ivan
	Zakharyaschev <imz@altlinux.org>.

2002-09-29  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	Version 2.0.23 released.

2002-09-26  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-truename): Eliminate unused
	variable.
	(tramp-version): Bump.

2002-09-24  Kai Großjohann  <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 Großjohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* tramp.el (tramp-unified-filenames): Autoload cookie.  Reported
	by Vin Shelton <acs@xemacs.org>.

2002-09-22  Kai Großjohann  <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 Großjohann  <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 Großjohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	Version 2.0.20 released.

2002-09-20  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-insert-directory): Handle "--dired" in
	SWITCHES (by removing it).

2002-09-18  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-handler): Add `file-remote-p'
	property.

2002-09-17  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (top-level): Maybe autoload uudecode-decode-region.

2002-09-16  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug): Add tramp-methods.

2002-09-16  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-write-region): Wrong parens.

2002-09-13  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: New todo item.

2002-09-11  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Remove duplicate definition of
	ssh1-old and ssh2-old.

2002-09-01  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-make-symbolic-link): Complete implementation.

2002-07-10  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-ange-ftp): Move interactive spec after
	docstring.  From Andreas Schwab.

2002-07-03  Kai Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-ange-ftp): Add todo items for handling
	EFS, too.

2002-06-27  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-sh-extra-args): New variable.
	(tramp-find-shell): Use it.

2002-06-16  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el: New todo item.

2002-06-15  Kai Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug-report-address): Change bug reporting
	address to Savannah.

2002-06-10  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): New method "fcp".  Suggested by
	graydon@redhat.com.

2002-06-04  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-send-linewise): Wait 0.1s instead of 0.001s.

2002-05-19  Kai Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-shell-quote-argument): Todo item: don't use
	`shell-quote-argument'.

2002-04-14  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): New method "pscp".  Suggestion from
	lawrence mitchell.

2002-04-14  Kai Großjohann  <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 Przepiórkowski.

2002-04-10  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-post-connection): Issue message when checking
	encoding/decoding commands is finished.

2002-02-18  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-split-string): New compat function.
	(tramp-handle-file-truename): Use it.

2002-01-04  Kai Großjohann  <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 Großjohann  <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 Großjohann  <grossjoh@ls6.informatik.uni-dortmund.de>

	* base64.el: Moved to contrib directory.
	* format-spec.el: Ditto.

2001-12-30  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (toplevel): Emit an error message if jka-compr is
	already loaded.

2001-11-08  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (tramp-compile): Use
	`tramp-handle-shell-command', not `shell-command'.

2001-11-07  Kai Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-su): Make sure that user name is
	given.

2001-10-10  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-handle-file-name-directory): Return "/" if
	`path' component is empty.

2001-10-01  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-file-name-structure): Allow dot in host names.

2001-09-29  Kai Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug): Report more info about multi-hop methods.

2001-09-24  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp-util.el (tramp-compile): require compile.

2001-09-20  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-bug-report-address): Update to reflect move to
	SourceForge.

2001-09-09  Kai Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (Module): Add a todo item.

2001-08-31  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-multi-connect-su): Don't clobber `found'.

2001-03-14  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-open-connection-rsh): Doc bug.  Reported by Tom
	Roche.

2001-02-25  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* base64.el: New version from Oort Gnus as of today.

2000-12-16  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

	* tramp.el (tramp-methods): Method `scpx' was missing a setting
	for `tramp-remote-sh'.

2000-09-09  Kai Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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 Großjohann  <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.

;; Local Variables:
;; coding: utf-8
;; add-log-time-zone-rule: t
;; End:
