1. 22 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Improve backward compatibility of Tramp · e6476c91
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path):
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): Use ´file-remote-p'.
      (tramp-get-ls-command-with): Handle busybox specially.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): Check for
      `fboundp'.  Use `file-remote-p'.  Hide compiler warning for older
      Emacsen.
      e6476c91
  2. 20 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Implement command completion in remote shells. (Bug#31704) · 6f649e77
      Michael Albinus authored
      * doc/lispref/files.texi (Locating Files): Describe optional
      argument REMOTE of `executable-find'.
      (Magic File Names): Add `exec-path'.
      
      * doc/lispref/processes.texi (Subprocess Creation): Describe
      function `exec-path'.
      
      * doc/misc/tramp.texi (Remote programs): Explain refresh of search
      paths by `tramp-cleanup-this-connection'.
      
      * etc/NEWS: Mention 'exec-path' and 'executable-find'.
      
      * lisp/files.el (exec-path): New defun.
      (executable-find): Add optional argument REMOTE.
      
      * lisp/shell.el (shell-completion-vars): Set `comint-file-name-prefix'.
      (shell--command-completion-data): Use `(exec-path)'.  (Bug#31704)
      
      * lisp/net/ange-ftp.el (exec-path):
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
      <exec-path>: Add handler.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path): New defun.
      (tramp-adb-maybe-open-connection): Do not set "remote-path"
      connection property.
      
      * lisp/net/tramp-compat.el (tramp-compat-exec-path): New defun.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): New defun.
      
      * lisp/net/tramp.el (tramp-eshell-directory-change): Use it.
      
      * test/lisp/net/tramp-archive-tests.el
      (tramp-archive-test38-make-nearby-temp-file)
      (tramp-archive-test41-file-system-info)
      (tramp-archive-test43-auto-load)
      (tramp-archive-test43-delay-load): Rename.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): New test.
      (tramp-test36-make-auto-save-file-name)
      (tramp-test37-find-backup-file-name)
      (tramp-test38-make-nearby-temp-file)
      (tramp-test39-special-characters)
      (tramp-test39-special-characters-with-stat)
      (tramp-test39-special-characters-with-perl)
      (tramp-test39-special-characters-with-ls, tramp-test40-utf8)
      (tramp-test40-utf8-with-stat, tramp-test40-utf8-with-perl)
      (tramp-test40-utf8-with-ls, tramp-test41-file-system-info)
      (tramp-test42-asynchronous-requests, tramp-test43-auto-load)
      (tramp-test43-delay-load, tramp-test43-recursive-load)
      (tramp-test43-remote-load-path, tramp-test44-unload): Rename.
      6f649e77
  3. 29 May, 2018 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.3.4-pre · e8912d5b
      Michael Albinus authored
      * doc/misc/trampver.texi: Change version to "2.3.4-pre
      
      * lisp/net/tramp.el (tramp-mode, tramp-verbose)
      (tramp-backup-directory-alist, tramp-auto-save-directory)
      (tramp-encoding-shell, tramp-encoding-command-switch)
      (tramp-encoding-command-interactive, tramp-default-method)
      (tramp-default-method-alist, tramp-default-user)
      (tramp-default-user-alist, tramp-default-host)
      (tramp-default-host-alist, tramp-default-proxies-alist)
      (tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
      (tramp-local-end-of-line, tramp-rsh-end-of-line)
      (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
      (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
      (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
      (tramp-terminal-prompt-regexp)
      (tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
      (tramp-process-alive-regexp, tramp-chunksize)
      (tramp-process-connection-type, tramp-connection-timeout)
      (tramp-connection-min-time-diff)
      (tramp-completion-reread-directory-timeout):
      * lisp/net/tramp-adb.el (tramp-adb-program)
      (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
      * lisp/net/tramp-cache.el (tramp-connection-properties)
      (tramp-persistency-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
      (tramp-gvfs-zeroconf-domain, tramp-bluez-discover-devices-timeout):
      * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
      (tramp-copy-size-limit, tramp-terminal-type)
      (tramp-histfile-override, tramp-use-ssh-controlmaster-options)
      (tramp-remote-path, tramp-remote-process-environment)
      (tramp-sh-extra-args):
      * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
      (tramp-smb-conf, tramp-smb-winexe-program)
      (tramp-smb-winexe-shell-command)
      (tramp-smb-winexe-shell-command-switch):
      Dont't require 'tramp.  (Bug#31558)
      
      * lisp/net/tramp.el (tramp-accept-process-output):
      * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-start-file-process): Suppress timers.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
      * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
      Write proper message.
      
      * lisp/net/tramp-cmds.el (tramp-change-syntax):
      Use `customize-set-variable'.
      
      * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
      Ensure proper EOL handling for Darwin.
      (tramp-find-inline-compress): Improve command quoting for w32.
      Reported by Chris Zheng <chriszheng99@gmail.com>.
      (tramp-open-connection-setup-interactive-shell): Wrap both echo
      calls in parentheses, in order to avoid double prompt.
      
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_RESOURCE_NAME_NOT_FOUND".
      
      * lisp/net/tramp.el (tramp-default-user-alist)
      (tramp-default-host-alist): Fix docstring.
      (tramp-dissect-file-name): Adapt docstring.  (Bug#30904)
      (tramp-make-tramp-file-name): Check, that method is
      not empty.  (Bug#30038)
      (tramp-message-show-message): Change default.
      
      * lisp/net/trampver.el: Change version to "2.3.4-pre".
      
      * test/lisp/net/tramp-tests.el (ert-x): Require it.
      (tramp-test10-write-region): Extend test.
      (tramp--test-emacs27-p, tramp--test-windows-nt): New defuns.
      (tramp-test11-copy-file, tramp-test12-rename-file)
      (tramp-test21-file-links, tramp-test24-file-acl)
      (tramp-test25-file-selinux, tramp--test-check-files): Use them.
      (tramp-test21-file-links): Do not call `make-symbolic-link' on w32.
      Fix file name quoting test.
      (tramp-test32-environment-variables-and-port-numbers):
      Adapt check for systems which do not support "echo -n".  (Bug#29712)
      (tramp-test36-find-backup-file-name): Call also
      `convert-standard-filename' due to w32.
      (tramp-test41-asynchronous-requests):
      Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
      (tramp-test42-auto-load, tramp-test42-delay-load)
      (tramp-test42-recursive-load, tramp-test42-remote-load-path):
      Quote command due to w32.
      e8912d5b
  4. 26 May, 2018 1 commit
    • Michael Albinus's avatar
      Make `tramp-make-tramp-file-name' calls consistent. · 8083c2de
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-get-buffer)
      (tramp-handle-file-name-as-directory)
      (tramp-handle-file-name-directory, tramp-handle-file-remote-p)
      (tramp-handle-file-truename, tramp-handle-find-backup-file-name)
      (tramp-handle-insert-file-contents):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid)
      (tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
      (tramp-sh-handle-expand-file-name, )
      (tramp-sh-handle-process-file, tramp-get-remote-path):
      * lisp/net/tramp-smb.el (tramp-smb-handle-expand-file-name)
      (tramp-smb-handle-process-file): Make `tramp-make-tramp-file-name'
      calls consistent.
      8083c2de
  5. 24 May, 2018 1 commit
    • Michael Albinus's avatar
      Fix Bug#31558 · 5444cb5f
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-mode, tramp-verbose)
      (tramp-backup-directory-alist, tramp-auto-save-directory)
      (tramp-encoding-shell, tramp-encoding-command-switch)
      (tramp-encoding-command-interactive, tramp-default-method)
      (tramp-default-method-alist, tramp-default-user)
      (tramp-default-user-alist, tramp-default-host)
      (tramp-default-host-alist, tramp-default-proxies-alist)
      (tramp-save-ad-hoc-proxies, tramp-restricted-shell-hosts-alist)
      (tramp-local-host-regexp, tramp-local-end-of-line)
      (tramp-rsh-end-of-line, tramp-login-prompt-regexp)
      (tramp-shell-prompt-pattern, tramp-password-prompt-regexp)
      (tramp-wrong-passwd-regexp, tramp-yesno-prompt-regexp)
      (tramp-yn-prompt-regexp, tramp-terminal-prompt-regexp)
      (tramp-operation-not-permitted-regexp, tramp-copy-failed-regexp)
      (tramp-process-alive-regexp, tramp-ignored-file-name-regexp)
      (tramp-chunksize, tramp-process-connection-type)
      (tramp-connection-timeout, tramp-connection-min-time-diff)
      (tramp-completion-reread-directory-timeout)
      * lisp/net/tramp-adb.el (tramp-adb-program)
      (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
      * lisp/net/tramp-cache.el (tramp-connection-properties)
      (tramp-persistency-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
      (tramp-gvfs-zeroconf-domain)
      (tramp-bluez-discover-devices-timeout):
      * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
      (tramp-copy-size-limit, tramp-terminal-type)
      (tramp-histfile-override, tramp-use-ssh-controlmaster-options)
      (tramp-remote-path, tramp-remote-process-environment)
      (tramp-sh-extra-args):
      * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
      (tramp-smb-conf, tramp-smb-winexe-program)
      (tramp-smb-winexe-shell-command)
      (tramp-smb-winexe-shell-command-switch):
      Dont't require 'tramp.  (Bug#31558)
      
      * lisp/net/tramp.el (tramp-ignored-file-name-regexp): Use type regexp.
      5444cb5f
  6. 06 May, 2018 1 commit
    • Michael Albinus's avatar
      Fix Bug#31272 · 6464a8d7
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-insert-directory): Use "--show-control-chars".
      (tramp-convert-file-attributes): Decode multibyte strings,
      produced by "stat".  (Bug#31272)
      
      * test/lisp/net/tramp-tests.el (tramp--test-utf8): Extend test.
      6464a8d7
  7. 23 Apr, 2018 1 commit
  8. 19 Apr, 2018 1 commit
    • Michael Albinus's avatar
      Handle chrooted environments in Tramp · 4e464fa9
      Michael Albinus authored
      * doc/misc/tramp.texi (Frequently Asked Questions): New item, chrooted
      environments.
      
      * lisp/net/tramp.el (tramp-local-host-regexp): Make it a defcustom.
      Allow nil.
      (tramp-local-host-p):
      * lisp/net/tramp-sh.el (tramp-compute-multi-hops): Handle this.
      4e464fa9
  9. 11 Apr, 2018 1 commit
    • Michael Albinus's avatar
      Some minor Tramp changes · e243da25
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-get-ls-command-with):
      New defun, replacing ...
      (tramp-get-ls-command-with-dired)
      (tramp-get-ls-command-with-quoting-style)
      (tramp-get-ls-command-with-w-option): Removed.
      (tramp-do-file-attributes-with-ls)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-insert-directory): Adapt callees.
      
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_CONNECTION_RESET".
      e243da25
  10. 29 Mar, 2018 1 commit
    • Michael Albinus's avatar
      Fix Bug#30946 · b9340aad
      Michael Albinus authored
      * doc/misc/tramp.texi (Multi-hops): Mention host name checks.
      
      * lisp/net/tramp.el (tramp-set-syntax, tramp-dissect-file-name)
      (tramp-debug-message, tramp-handle-shell-command):
      * lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler)
      (tramp-archive-dissect-file-name):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler): Adapt callees.
      
      * lisp/net/tramp-compat.el (tramp-compat-user-error): Move defsubst ---
      
      * lisp/net/tramp-sh.el (tramp-compute-multi-hops): Check for proper
      host names in multi-hop.  (Bug#30946)
      
      * lisp/net/tramp.el (tramp-user-error): ... here.  Make it a defun.
      
      * test/lisp/net/tramp-tests.el (tramp-test03-file-name-host-rules):
      New test.
      b9340aad
  11. 26 Mar, 2018 1 commit
    • Michael Albinus's avatar
      Fix problem with trailing slash in Tramp · f5834c9b
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-file-truename):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename):
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
      Fix problem with trailing slash.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Test also quoted directories.
      f5834c9b
  12. 17 Mar, 2018 1 commit
    • Glenn Morris's avatar
      Explicitly require cl-lib where needed · 1c7db8aa
      Glenn Morris authored
      Rather than relying on the byte-compiler happening to use it.
      * lisp/completion.el, lisp/ffap.el, lisp/loadhist.el:
      * lisp/userlock.el, lisp/emacs-lisp/debug.el, lisp/emacs-lisp/rx.el:
      * lisp/emacs-lisp/testcover.el, lisp/mail/rfc2231.el:
      * lisp/net/newst-treeview.el, lisp/net/puny.el:
      * lisp/net/tramp-archive.el, lisp/net/tramp-gvfs.el:
      * lisp/net/tramp-sh.el, lisp/net/tramp-smb.el, lisp/org/org-ctags.el:
      * lisp/org/org-macs.el, lisp/progmodes/grep.el:
      * lisp/progmodes/perl-mode.el, lisp/progmodes/ruby-mode.el:
      * lisp/textmodes/dns-mode.el, lisp/textmodes/mhtml-mode.el:
      * lisp/vc/pcvs-parse.el: Explicitly require cl-lib as needed.
      1c7db8aa
  13. 15 Mar, 2018 1 commit
  14. 28 Feb, 2018 1 commit
    • Michael Albinus's avatar
      Some minor Tramp tweaks · 51537b9e
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-get-ls-command): Fix docstring.
      
      * lisp/net/tramp-sh.el (tramp-vc-registered-read-file-names):
      Quote file.
      
      * lisp/net/tramp.el (tramp-handle-substitute-in-file-name):
      Make it more robust.
      51537b9e
  15. 11 Feb, 2018 1 commit
    • Michael Albinus's avatar
      Fix handling of file notifications in tramp-gvfs.el · 13f4b518
      Michael Albinus authored
      * lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
      Fix docstring.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
      Use consequently "gio monitor".
      (tramp-gvfs-monitor-process-filter): Rename from
      `tramp-gvfs-monitor-file-process-filter'.  Adapt implementation.
      
      * lisp/net/tramp-sh.el (tramp-gio-events): Move this ...
      * lisp/net/tramp.el (tramp-gio-events): ... here.
      13f4b518
  16. 10 Feb, 2018 1 commit
    • Michael Albinus's avatar
      Handle "gio monitor" in tramp-sh.el · 2c980ea6
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-gio-events): New defconst.
      (tramp-sh-handle-file-notify-add-watch): Handle "gio monitor" extra.
      (tramp-sh-gio-monitor-process-filter)
      (tramp-get-remote-gio-monitor): New defuns.
      (tramp-sh-gvfs-monitor-dir-process-filter)
      (tramp-get-remote-gvfs-monitor-dir): Do not check for gio anymore.
      2c980ea6
  17. 02 Feb, 2018 1 commit
  18. 22 Jan, 2018 1 commit
    • Michael Albinus's avatar
      Fix byte-compiler warning in tramp-sh.el · c42959cc
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
      Use `set-process-coding-system' rather than interactive
      `set-buffer-process-coding-system'.
      
      * lisp/net/tramp.el (tramp-default-user-alist)
      (tramp-default-host-alist): Fix docstring.
      c42959cc
  19. 13 Jan, 2018 1 commit
    • Michael Albinus's avatar
      Improve Tramp robustness · 1a5293e7
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-message, tramp-process-actions)
      (tramp-read-passwd, tramp-interrupt-process):
      * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch)
      (tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-process-sentinel)
      (tramp-sh-handle-file-notify-add-watch)
      (tramp-barf-if-no-shell-prompt, tramp-maybe-open-connection)
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Use process property rather
      than connection property "vector".
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
      Fix scoping error.  Let error traces use process buffer.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
      Move "inotifywait" up.  GVFS based monitoring is not stable.
      Let error traces use process buffer.
      (tramp-sh-gvfs-monitor-dir-process-filter): Check more error
      messages.
      (tramp-get-remote-gvfs-monitor-dir): Search also for "gio".
      
      * lisp/net/tramp.el (tramp-get-debug-buffer):
      Use `special-mode-map' as parent map in debug buffer.
      (tramp-message): Ensure, that proper process buffer is dumped
      in error case.
      1a5293e7
  20. 04 Jan, 2018 1 commit
    • Michael Albinus's avatar
      Write proper `write-region' message in Tramp backends · 13d38482
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-write-region):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region):
      * lisp/net/tramp-sh.el (tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (tramp-smb-handle-write-region):
      Write proper message.
      
      * lisp/net/tramp.el (tramp-message-show-message): Change default.
      
      * test/lisp/net/tramp-tests.el (ert-x): Require it.
      (tramp-test10-write-region): Extend test.
      13d38482
  21. 01 Jan, 2018 2 commits
  22. 25 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Fix Bug#29822 · 53a32e66
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
      Fix handling of restricted shells.  (Bug#29822)
      53a32e66
  23. 16 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Suppress timers in Tramp operations · f63d9f86
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-accept-process-output):
      * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-start-file-process): Suppress timers.
      
      * test/lisp/net/tramp-tests.el (tramp-test41-asynchronous-requests):
      Use $REMOTE_PARALLEL_PROCESSES.  Flush cache prior file operations.
      Add instrumentation messages.
      f63d9f86
  24. 12 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Extend tramp-cache.el interface · 95a2a74d
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-add-name-to-file)
      (tramp-handle-dired-uncache):
      * lisp/net/tramp-adb.el (tramp-adb-handle-make-directory)
      (tramp-adb-handle-delete-directory, tramp-adb-handle-delete-file)
      (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
      (tramp-adb-handle-set-file-times, tramp-adb-handle-copy-file)
      (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
      (tramp-adb-handle-start-file-process, tramp-adb-get-device)
      (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-cache.el (tramp-flush-file-properties)
      (tramp-flush-directory-properties, tramp-flush-file-function):
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
      (tramp-gvfs-handle-delete-directory, tramp-gvfs-handle-delete-file)
      (tramp-gvfs-handle-file-system-info, tramp-gvfs-handle-make-directory)
      (tramp-gvfs-handle-write-region, tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-send-command):
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
      (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
      (tramp-sh-handle-set-file-selinux-context, tramp-sh-handle-set-file-acl)
      (tramp-sh-handle-add-name-to-file, tramp-sh-handle-copy-directory)
      (tramp-do-copy-or-rename-file, tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-make-directory, tramp-sh-handle-delete-directory)
      (tramp-sh-handle-delete-file, tramp-sh-handle-dired-compress-file)
      (tramp-process-sentinel, tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-sh-handle-write-region):
      * lisp/net/tramp-smb.el (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-acl, tramp-smb-handle-make-directory-internal)
      (tramp-smb-handle-make-symbolic-link, tramp-smb-handle-process-file)
      (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
      (tramp-smb-handle-set-file-modes, tramp-smb-handle-start-file-process)
      (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
      Use them.
      
      * lisp/net/tramp-cache.el (tramp-flush-file-properties)
      (tramp-flush-directory-properties, tramp-flush-connection-properties):
      Rename from `tramp-flush-file-property',`tramp-flush-directory-property'
      and `tramp-flush-connection-property', respectively.
      (tramp-flush-file-property, tramp-flush-connection-property):
      New defuns.
      95a2a74d
  25. 09 Dec, 2017 2 commits
    • Michael Albinus's avatar
      Sync with Tramp 2.4.0-pre · 34bedf5d
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.4.0-pre".
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-file-directory-p'.
      (tramp-adb-parse-device-names)
      (tramp-adb-handle-expand-file-name)
      (tramp-adb-handle-file-truename, tramp-adb-handle-process-file):
      Adapt `tramp-make-tramp-file-name' call.
      (tramp-adb-handle-file-directory-p): Remove.
      (tramp-adb-maybe-open-connection): Do not set
      tramp-current-*.
      
      * lisp/net/tramp-cache.el (tramp-get-hash-table):
      Adapt `tramp-make-tramp-file-name' call.
      
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Do not set
      tramp-current-*.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      Use `tramp-handle-file-directory-p'.
      (tramp-gvfs-dbus-event-error): Trace with verbosity 6.
      (tramp-gvfs-do-copy-or-rename-file): Use `file-truename'.
      (tramp-gvfs-handle-file-directory-p): Remove.
      (tramp-gvfs-handler-askpassword): Do not set tramp-current-*.
      
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-start-file-process)
      (tramp-maybe-open-connection, tramp-get-remote-path): Do not
      set tramp-current-*.
      (tramp-maybe-open-connection): Set "password-vector" property.
      
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Use `tramp-handle-file-accessible-directory-p' and
      `tramp-handle-file-directory-p'.
      (tramp-smb-handle-copy-directory, tramp-smb-handle-file-acl)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Do not set tramp-current-*.
      (tramp-smb-handle-file-directory-p): Remove.
      (tramp-smb-handle-make-symbolic-link):
      Use `tramp-get-connection-buffer' rather than `buffer-name'.
      
      * lisp/net/tramp.el (tramp-current-method, tramp-current-user)
      (tramp-current-domain, tramp-current-host)
      (tramp-current-port): Remove.
      (tramp-dissect-file-name): No special handling of localname anymore.
      (tramp-make-tramp-file-name): Reimplemnt with new signature.
      (tramp-completion-make-tramp-file-name): Fix docstring.
      (tramp-get-buffer, tramp-handle-file-name-as-directory)
      (tramp-handle-file-name-directory)
      (tramp-check-cached-permissions, tramp-local-host-p)
      (tramp-get-remote-tmpdir, tramp-clear-passwd):
      Adapt `tramp-make-tramp-file-name' call.
      (tramp-completion-handle-file-name-all-completions)
      (tramp-action-login, tramp-read-passwd): Do not set
      tramp-current-*.
      (tramp-handle-file-directory-p): New defun.
      (tramp-handle-verify-visited-file-modtime): Remove superfluous
      `with-parsed-tramp-file-name'.
      (tramp-process-actions, tramp-read-passwd):
      Use "password-vector" property.
      (tramp-call-process, tramp-call-process-region): No special
      setting of vec.
      (tramp-read-passwd): Handle "login-as" property.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Special code for "smb".
      34bedf5d
    • Michael Albinus's avatar
      Fix Bug#29579 · 9d9cbafc
      Michael Albinus authored
      * lisp/files.el (file-name-non-special):
      Inhibit `file-name-handler-alist' only for some operations.
      Add missing operations.  (Bug#29579)
      
      * lisp/net/tramp-compat.el (tramp-compat-file-name-quote):
      Do not quote if it is quoted already.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
      Use `copy-tree' but `copy-sequence'.
      
      * lisp/net/tramp.el (tramp-handle-file-truename): Handle several
      trailing slashes correctly.
      
      * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
      (tramp-test12-rename-file, tramp-test24-file-acl)
      (tramp-test25-file-selinux, tramp--test-check-files):
      Handle also quoted file names.
      (tramp-test21-file-links): Fix file name quoting test.
      (tramp-test24-file-acl): Be more robust for "smb" method.
      (tramp-test35-make-auto-save-file-name): Enable hidden test cases.
      9d9cbafc
  26. 06 Dec, 2017 1 commit
    • Michael Albinus's avatar
      Fix Bug#29579 · a1bbc490
      Michael Albinus authored
      * lisp/files.el (file-name-non-special):
      Inhibit `file-name-handler-alist' only for some operations.
      Add missing operations.  (Bug#29579)
      
      * lisp/net/tramp-compat.el (tramp-compat-file-name-quote):
      Do not quote if it is quoted already.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
      Use `copy-tree' but `copy-sequence'.
      
      * lisp/net/tramp.el (tramp-handle-file-truename): Handle several
      trailing slashes correctly.
      
      * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
      (tramp-test12-rename-file, tramp-test24-file-acl)
      (tramp-test25-file-selinux, tramp--test-check-files):
      Handle also quoted file names.
      (tramp-test21-file-links): Fix file name quoting test.
      (tramp-test24-file-acl): Be more robust for "smb" method.
      (tramp-test35-make-auto-save-file-name): Enable hidden test cases.
      a1bbc490
  27. 14 Nov, 2017 1 commit
    • Daniel Pittman's avatar
      Fix Bug#28139 · 40d41dd4
      Daniel Pittman authored
      * tramp-sh.el: Set TERM and INSIDE_EMACS environment earlier.
      (tramp-remote-process-environment): Remove TERM and INSIDE_EMACS.
      (tramp-remote-process-environment): Document their special handling.
      (tramp-open-shell): Set TERM and INSIDE_EMACS prior to starting the
      initial remote shell, so that it is also aware of the environment
      in which it is operating.  (Bug#28139)
      40d41dd4
  28. 20 Oct, 2017 1 commit
    • Michael Albinus's avatar
      Fix Bug#28896 · b500e06f
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-rename-file):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file): Handle FILENAME
      being a directory.  (Bug#28896)
      
      * test/lisp/net/tramp-tests.el (tramp-test11-copy-file)
      (tramp-test12-rename-file): Test also FILENAME being a directory.
      b500e06f
  29. 03 Oct, 2017 1 commit
    • Michael Albinus's avatar
      Add support for `file-system-info' in Tramp · a9ac20c1
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      Add `file-system-info'.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info): New defun.
      (tramp-adb-file-name-handler-alist): Use it.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-system-attributes)
      (tramp-gvfs-file-system-attributes-regexp): New defconst.
      (tramp-gvfs-handle-file-system-info): New defun.
      (tramp-gvfs-file-name-handler-alist): Use it.
      (tramp-gvfs-get-directory-attributes): Fix property name.
      (tramp-gvfs-get-root-attributes): Support also file system attributes.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-system-info): New defun.
      (tramp-sh-file-name-handler-alist): Use it.
      (tramp-sh-handle-insert-directory): Insert size information.
      (tramp-get-remote-df): New defun.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): New defun.
      (tramp-smb-file-name-handler-alist): Use it.
      (tramp-smb-handle-insert-directory): Insert size information.
      
      * test/lisp/net/tramp-tests.el (tramp-test37-file-system-info):
      New test.
      (tramp-test38-asynchronous-requests)
      (tramp-test39-recursive-load, tramp-test40-remote-load-path)
      (tramp-test41-unload): Rename.
      a9ac20c1
  30. 19 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Work on Tramp's file-truename · 40fdbb01
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-perl-file-truename):
      Check also for symlinks.
      (tramp-sh-handle-file-truename): Move check for a symlink
      cycle to the end.  Do not blame symlinks which look like a
      remote file name.
      
      * lisp/net/tramp.el (tramp-handle-file-truename): Expand result.
      40fdbb01
  31. 17 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Fix compatibility problem in Tramp · 57249fb2
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-interrupt-process): Better error handling.
      
      * lisp/net/tramp-compat.el (default-toplevel-value): Move up.
      (top): Do not call `tramp-change-syntax' anymore.
      (tramp-compat-directory-name-p): New defalias.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
      * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-copy-file): Use it.
      
      * test/lisp/net/tramp-tests.el (tramp-test28-interrupt-process):
      Modify test.
      57249fb2
  32. 15 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Improve Tramp behaviour according to bug#27986 · 7911ebc6
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-copy-file):
      * lisp/net/tramp-sh.el (tramp-sh-handle-copy-directory):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-copy-file): Check, that NEWNAME is a
      directory name when existing.  Use `file-name-as-directory'
      where appropriate.
      7911ebc6
  33. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Prefer HTTPS to FTP and HTTP in documentation · bc511a64
      Paul Eggert authored
      Most of this change is to boilerplate commentary such as license URLs.
      This change was prompted by ftp://ftp.gnu.org's going-away party,
      planned for November.  Change these FTP URLs to https://ftp.gnu.org
      instead.  Make similar changes for URLs to other organizations moving
      away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
      fsf.org when this works, as this will further help defend against
      man-in-the-middle attacks (for this part I omitted the MS-DOS and
      MS-Windows sources and the test tarballs to keep the workload down).
      HTTPS is not fully working to lists.gnu.org so I left those URLs alone
      for now.
      bc511a64
  34. 11 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Further optimization in Tramp's file name decomposition · 70045452
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-syntax): Recompute all file name
      components.  Call `custom-set-variables' after loading.
      (tramp-build-prefix-format, tramp-build-prefix-regexp)
      (tramp-build-method-regexp)
      (tramp-build-postfix-method-format)
      (tramp-build-postfix-method-regexp)
      (tramp-build-prefix-ipv6-format)
      (tramp-build-prefix-ipv6-regexp)
      (tramp-build-postfix-ipv6-format)
      (tramp-build-postfix-ipv6-regexp)
      (tramp-build-postfix-host-format)
      (tramp-build-postfix-host-regexp)
      (tramp-build-file-name-regexp)
      (tramp-build-completion-file-name-regexp): New defuns.
      (tramp-prefix-format, tramp-prefix-regexp)
      (tramp-method-regexp, tramp-postfix-method-format)
      (tramp-postfix-method-regexp, tramp-prefix-ipv6-format)
      (tramp-prefix-ipv6-regexp, tramp-postfix-ipv6-format)
      (tramp-postfix-ipv6-regexp, tramp-postfix-host-format)
      (tramp-postfix-host-regexp)
      (tramp-remote-file-name-spec-regexp)
      (tramp-file-name-structure, tramp-file-name-regexp)
      (tramp-completion-file-name-regexp): Convert defuns into defvars.
      (tramp-prefix-regexp-alist)
      (tramp-postfix-method-regexp-alist)
      (tramp-prefix-ipv6-regexp-alist)
      (tramp-postfix-ipv6-regexp-alist)
      (tramp-postfix-host-regexp-alist)
      (tramp-remote-file-name-spec-regexp-alist): Remove.
      (tramp-build-remote-file-name-spec-regexp)
      (tramp-build-file-name-structure): Simplify.
      (tramp-completion-file-name-regexp-alist): New defconst.
      (tramp-tramp-file-p, tramp-dissect-file-name)
      (tramp-make-tramp-file-name)
      (tramp-completion-make-tramp-file-name)
      (tramp-rfn-eshadow-update-overlay-regexp)
      (tramp-register-file-name-handlers)
      (tramp-completion-handle-file-name-all-completions)
      (tramp-completion-dissect-file-name, tramp-clear-passwd):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
      * lisp/net/tramp-sh.el (tramp-sh-handle-vc-registered)
      (tramp-compute-multi-hops): Use variables but functions for
      file name components.
      
      * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
      Use variables but functions for file name components.
      70045452
  35. 04 Sep, 2017 1 commit
    • Michael Albinus's avatar
      Work on Tramp's (symbolic) links · 8a65d7a7
      Michael Albinus authored
      * doc/misc/tramp.texi (Traces and Profiles): Mention the
      backtrace when tramp-verbose is greater than or equal to 10.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      Use `tramp-handle-add-name-to-file'.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist): Use
      `tramp-handle-add-name-to-file' and `tramp-handle-file-truename'.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link): Improve.
      
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_CONNECTION_DISCONNECTED" and
      "NT_STATUS_OBJECT_PATH_SYNTAX_BAD".
      (tramp-smb-file-name-handler-alist): Use `tramp-handle-file-truename'.
      (tramp-smb-do-file-attributes-with-stat): Return non-nil only
      if one of the attributes is non-nil.
      (tramp-smb-handle-file-local-copy): Use `file-truename'.
      (tramp-smb-handle-file-truename): Move to tramp.el.
      (tramp-smb-handle-insert-directory): Show symlinks.
      (tramp-smb-handle-make-symbolic-link): Improve.
      (tramp-smb-read-file-entry): Handle extended file modes in Samba.
      
      * lisp/net/tramp.el (tramp-handle-add-name-to-file)
      (tramp-handle-file-truename): New defuns.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Extend test.
      (tramp--test-check-files): Make check for "smb".
      8a65d7a7
  36. 30 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Improve symlinks for Tramp · 9376ea3f
      Michael Albinus authored
      * lisp/files.el (files--splice-dirname-file): Quote whole file.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link):
      Do not expand TARGET, it could be remote.
      (tramp-sh-handle-file-truename): Check for cyclic symlink also
      in case of readlink.  Quote result if it looks remote.
      (tramp-sh-handle-file-local-copy): Use `file-truename'.
      
      * test/lisp/net/tramp-tests.el (tramp-test08-file-local-copy)
      (tramp-test09-insert-file-contents): Test also file missing.
      (tramp-test21-file-links): Extend test.
      9376ea3f
  37. 27 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Tramp cleanup · 79cc9445
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-sh-extra-args): Remove compat code.
      (tramp-sh-handle-make-symbolic-link): More robust check for
      TARGET remoteness.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
      Disable copying by tar temporarily, it doesn't work reliably.
      (tramp-smb-do-file-attributes-with-stat): Resolve symlink.
      (tramp-smb-handle-make-symbolic-link): Fix implementation.
      
      * lisp/net/tramp.el (tramp-handle-file-symlink-p): Simplify.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Extend test.
      79cc9445
  38. 26 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Fix Tramp part of Bug#28156 · cc7530ca
      Michael Albinus authored
      * lisp/files.el (file-name-non-special): Use `file-name-quote'
      instead prefixing "/:", the file could already be quoted.
      
      * lisp/net/tramp.el (tramp-error): Handle null arguments.
      (tramp-handle-make-symbolic-link):
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
      (tramp-sh-handle-add-name-to-file):
      * lisp/net/tramp-smb.el (tramp-smb-handle-add-name-to-file)
      (tramp-smb-handle-make-symbolic-link): Adapt implementation to
      stronger semantics in Emacs.  (Bug#28156)
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links):
      Extend test.
      cc7530ca