1. 06 Dec, 2018 1 commit
    • Michael Albinus's avatar
      Rework Tramp wrt string-match-p, looking-at-p, save-match-data · 66b49fc1
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-find-method, tramp-find-user)
      (tramp-find-host, tramp-dissect-file-name, tramp-make-tramp-file-name)
      (tramp-completion-make-tramp-file-name, tramp-debug-message)
      (tramp-message, tramp-progress-reporter-update)
      (tramp-set-completion-function)
      (tramp-rfn-eshadow-update-overlay)
      (tramp-find-file-name-coding-system-alist)
      (tramp-file-name-for-operation)
      (tramp-use-absolute-autoload-file-names)
      (tramp-get-completion-methods, tramp-get-completion-user-host)
      (tramp-handle-directory-files)
      (tramp-handle-file-name-case-insensitive-p)
      (tramp-handle-file-name-completion, tramp-handle-file-truename)
      (tramp-handle-insert-directory, tramp-handle-load)
      (tramp-handle-shell-command, tramp-action-yesno)
      (tramp-action-yn, tramp-process-actions)
      (tramp-mode-string-to-int, tramp-get-local-locale)
      (tramp-local-host-p):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info)
      (tramp-adb-handle-directory-files-and-attributes)
      (tramp-adb--gnu-switches-to-ash, tramp-adb-sh-fix-ls-output)
      (tramp-adb-handle-file-name-all-completions)
      (tramp-adb-handle-shell-command)
      (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
      * lisp/net/tramp-cache.el (tramp-get-hash-table)
      (tramp-flush-directory-properties, tramp-flush-file-function):
      * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
      (tramp-append-tramp-buffers):
      * lisp/net/tramp-compat.el (tramp-compat-process-running-p):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-get-file-attributes)
      (tramp-gvfs-handle-file-attributes)
      (tramp-gvfs-monitor-process-filter)
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec-entry)
      (tramp-gvfs-mount-spec, tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-do-file-attributes-with-stat)
      (tramp-sh-handle-file-selinux-context)
      (tramp-sh-handle-directory-files-and-attributes)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-file-name-all-completions)
      (tramp-sh-handle-dired-compress-file)
      (tramp-sh-handle-insert-directory)
      (tramp-sh-handle-expand-file-name)
      (tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-sh-handle-write-region)
      (tramp-sh-handle-file-notify-add-watch)
      (tramp-sh-gio-monitor-process-filter)
      (tramp-sh-gvfs-monitor-dir-process-filter)
      (tramp-sh-inotifywait-process-filter)
      (tramp-sh-handle-file-system-info, tramp-maybe-send-script)
      (tramp-find-executable, tramp-open-shell, tramp-find-shell)
      (tramp-open-connection-setup-interactive-shell)
      (tramp-find-inline-encoding, tramp-call-local-coding-command)
      (tramp-compute-multi-hops, tramp-maybe-open-connection)
      (tramp-convert-file-attributes)
      (tramp-make-copy-program-file-name, tramp-get-remote-locale)
      (tramp-get-test-nt-command, tramp-get-remote-stat)
      (tramp-get-inline-coding):
      * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files)
      (tramp-smb-action-get-acl, tramp-smb-handle-file-attributes)
      (tramp-smb-handle-file-name-all-completions)
      (tramp-smb-handle-file-system-info)
      (tramp-smb-handle-file-writable-p)
      (tramp-smb-handle-insert-directory)
      (tramp-smb-handle-make-directory)
      (tramp-smb-handle-make-directory-internal)
      (tramp-smb-handle-start-file-process, tramp-smb-get-localname)
      (tramp-smb-read-file-entry): Use `string-match-p' and
      `looking-at-p'.  Remove superfluous `save-match-data'.  Apply
      `eval-when-compile' on constant concat data.
      
      * lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p-p):
      Use `string-prefix-p'.
      (tramp-compat-file-name-unquote): Do not use match data.
      66b49fc1
  2. 28 Nov, 2018 2 commits
    • Michael Albinus's avatar
      ; Fix an oversight in tramp-smb.el · febdedfa
      Michael Albinus authored
      febdedfa
    • Michael Albinus's avatar
      Tramp cleanup · 9b9c70b7
      Michael Albinus authored
      * lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions)
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions):
      * lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
      Use `string-match-p'.
      
      * lisp/net/tramp-rclone.el (tramp-rclone-maybe-open-connection):
      Set file properties more robust.
      
      * lisp/net/tramp-sh.el (tramp-stat-marker)
      (tramp-convert-file-attributes): Add tramp-autoload cookie.
      9b9c70b7
  3. 24 Nov, 2018 1 commit
  4. 22 Nov, 2018 1 commit
    • Michael Albinus's avatar
      Some minor Tramp cleanups · a344d993
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-file-name-p):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-p):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-p): Make it more robust.
      
      * lisp/net/tramp.el (tramp-handle-file-truename): Cache only the
      localname.
      a344d993
  5. 29 Sep, 2018 1 commit
    • Michael Albinus's avatar
      Rework time-* functions in Tramp · ce0da8a4
      Michael Albinus authored
      * doc/misc/emacs-mime.texi (time-date): Add time-equal-p.
      
      * lisp/net/tramp-compat.el (tramp-compat-time-equal-p): New defsubst.
      
      * lisp/net/tramp.el (tramp-file-name-handler): Remove `debug'
      error handler.
      (tramp-half-a-year): Remove.
      (tramp-time-dont-know, tramp-time-doesnt-exist): New defconst.
      (tramp-time-diff): Remove compat code.
      (tramp-handle-set-visited-file-modtime)
      (tramp-handle-verify-visited-file-modtime):
      * lisp/net/tramp-adb.el (tramp-do-parse-file-attributes-with-ls)
      (tramp-adb-handle-set-file-times):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-sh-handle-set-visited-file-modtime)
      (tramp-sh-handle-verify-visited-file-modtime)
      (tramp-sh-handle-set-file-times)
      (tramp-sh-handle-file-newer-than-file-p):
      Use `tramp-time-dont-know', `tramp-time-doesnt-exist' and
      `tramp-compat-time-equal-p'.
      (tramp-sh-handle-verify-visited-file-modtime): Simplify check.
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-attributes)
      (tramp-smb-read-file-entry): Use `tramp-time-dont-know'.
      (tramp-smb-handle-insert-directory): Adapt half-a-year check.
      
      * src/editfns.c (Ftime_equal_p): Adapt docstring.
      
      * test/lisp/net/tramp-tests.el
      (tramp-test19-directory-files-and-attributes)
      (tramp-test22-file-times): Use `tramp-compat-time-equal-p' and
      `tramp-time-dont-know'.
      (tramp-test23-visited-file-modtime): Extend test.
      ce0da8a4
  6. 28 Aug, 2018 1 commit
    • Michael Albinus's avatar
      Add bignum support in Tramp · adcf904b
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-system-info):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-stat)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-file-system-info):
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-system-info): Do
      not add "e0" to integers.
      
      * lisp/net/tramp-sh.el (tramp-perl-file-attributes)
      (tramp-convert-file-attributes): Do not use a consp for the inode
      if there is bignum support.
      adcf904b
  7. 27 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.3.4. Do not merge with master · 1f503792
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.3.4".
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
      Check, that the directory has been removed indeed.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Adapt test.
      (tramp--test-emacs25-p): New defun.
      (tramp-test34-vc-registered): Use it.
      1f503792
  8. 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
  9. 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
  10. 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
  11. 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
  12. 02 May, 2018 1 commit
    • Michael Albinus's avatar
      Fix some edge cases of tramp-smb · 8ae7c424
      Michael Albinus authored
      * lisp/net/tramp-smb.el (tramp-smb-errors):
      Add "NT_STATUS_REVISION_MISMATCH".
      (tramp-smb-handle-delete-directory): Check, that the directory
      has been removed indeed.
      (tramp-smb-get-localname): Add further checks on filename syntax.
      
      * lisp/net/tramp.el (tramp-localname-regexp): Do not allow linefeeds.
      
      * test/lisp/net/tramp-tests.el (tramp-smb-get-localname): Declare.
      (auth-source-save-behavior): Set it to nil.
      (tramp-test01-file-name-syntax): Extend, checking for linefeeds.
      (tramp-test03-file-name-host-rules, tramp--test-utf8): Refine tests.
      (tramp-test03-file-name-method-rules): New test.
      (tramp--test-ignore-add-name-to-file-error): New defmacro.
      (tramp-test21-file-links): Use it.
      8ae7c424
  13. 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
  14. 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
  15. 19 Jan, 2018 1 commit
  16. 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
  17. 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
  18. 01 Jan, 2018 1 commit
  19. 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
  20. 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
  21. 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
  22. 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
  23. 29 Nov, 2017 1 commit
    • Michael Albinus's avatar
      Some minor Tramp corrections · 3dd25aee
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-handle-directory-file-name):
      Handle several trailing slashes correctly.
      (tramp-handle-file-selinux-context): New defun.
      
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
      Use `tramp-handle-file-selinux-context'.
      
      * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
      Extend test.
      (tramp-test17-insert-directory): Make check more robust.
      (tramp-test42-auto-load): Combine several let forms.
      (tramp-test42-delay-load, tramp-test42-recursive-load)
      (tramp-test42-remote-load-path, tramp-test43-unload): Rename.
      3dd25aee
  24. 16 Oct, 2017 1 commit
  25. 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
  26. 25 Sep, 2017 1 commit
  27. 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
  28. 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
  29. 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
  30. 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
  31. 28 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Further fixes in tramp-smb.el · 3a19e6ec
      Michael Albinus authored
      * lisp/net/tramp-smb.el (tramp-smb-handle-file-truename): New defun.
      (tramp-smb-file-name-handler-alist): Use it.
      (tramp-smb-handle-make-symbolic-link): Unquote target.
      
      * test/lisp/net/tramp-tests.el
      (tramp--test-ignore-make-symbolic-link-error): New defmacro.
      (tramp-test18-file-attributes, tramp-test21-file-links)
      (tramp--test-check-files): Use it.
      3a19e6ec
  32. 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
  33. 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
  34. 12 Aug, 2017 1 commit
    • Michael Albinus's avatar
      Implement EXCL of write-region for Tramp · ec5cfaa4
      Michael Albinus authored
      * lisp/net/ange-ftp.el (ange-ftp-write-region):
      * 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):
      Implement MUSTBENEW.
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file)
      * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
      (tramp-sh-handle-add-name-to-file)
      (tramp-do-copy-or-rename-file)
      * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
      Adapt error message for `file-already-exists'.
      
      * src/lisp.h:
      * src/eval.c (call8): New function.
      
      * src/fileio.c (write_region): Pass also lockname and
      mustbenew to the file name handler.
      
      * test/lisp/net/tramp-tests.el (tramp-test10-write-region):
      Add tests for MUSTBENEW.
      ec5cfaa4
  35. 12 Jun, 2017 1 commit
    • Michael Albinus's avatar
      Handle port and domain in Tramp's password cache · 7dfc8353
      Michael Albinus authored
      * doc/misc/tramp.texi (Password handling): Explain port and
      domain handling in authinfo.
      
      * lisp/net/tramp.el (tramp-process-actions, tramp-clear-passwd):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-askpassword):
      * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
      (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): Handle also domain and port.
      7dfc8353
  36. 26 May, 2017 1 commit
    • Michael Albinus's avatar
      Remove Emacs 23 compat code from Tramp · b3032988
      Michael Albinus authored
      * doc/misc/tramp.texi (Remote processes): Don't mention
      Emacs 24 explicitely.
      (Frequently Asked Questions): Remove Emacs 23 from
      compatibility list.
      
      * lisp/net/tramp.el:
      * lisp/net/tramp-adb.el:
      * lisp/net/tramp-cache.el:
      * lisp/net/tramp-gvfs.el:
      * lisp/net/tramp-sh.el:
      * lisp/net/tramp-smb.el: Replace compat function calls.
      
      * lisp/net/tramp-compat.el (remote-file-name-inhibit-cache)
      (tramp-compat-condition-case-unless-debug)
      (tramp-compat-copy-file, tramp-compat-copy-directory)
      (tramp-compat-delete-file, tramp-compat-delete-directory)
      (tramp-compat-process-live-p): Remove them.
      
      * lisp/net/trampver.el: Make version check fit for Emacs 24.
      b3032988
  37. 25 May, 2017 1 commit
    • Michael Albinus's avatar
      Switch Tramp to cl-lib · 1a9ce7c5
      Michael Albinus authored
      * lisp/net/tramp-compat.el (cl-lib): Require it rather than cl.
      
      * lisp/net/tramp-ftp.el: Don't require cl.
      
      * lisp/net/tramp-gvfs.el: Don't require cl.
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-connection-mounted-p): Use `cl-*' macros.
      
      * lisp/net/tramp-sh.el: Don't require cl.
      (tramp-set-file-uid-gid): Use `shell-quote-argument'.
      (tramp-sh-gvfs-monitor-dir-process-filter)
      (tramp-sh-inotifywait-process-filter): Use `cl-*' macros.
      
      * lisp/net/tramp-smb.el: Don't require cl.
      (tramp-smb-read-file-entry): Use `cl-*' macros.
      
      * lisp/net/tramp.el (cl-lib): Require it rather than cl.
      (tramp-parse-file, tramp-parse-shostkeys-sknownhosts)
      (tramp-parse-passwd, tramp-parse-etc-group)
      (tramp-parse-putty): Use `cl-*' macros.
      1a9ce7c5
  38. 24 May, 2017 1 commit
    • Michael Albinus's avatar
      Introduce a defstruct `tramp-file-name' as central data structure. · dca22e86
      Michael Albinus authored
      This solves also Bug#27009.
      
      * lisp/net/tramp.el (tramp-current-domain)
      (tramp-current-port): New defvars.
      (tramp-file-name): New defstruct.
      (tramp-file-name-user-domain, tramp-file-name-host-port)
      (tramp-file-name-equal-p): New defuns.
      (tramp-file-name-p, tramp-file-name-method)
      (tramp-file-name-user, tramp-file-name-host)
      (tramp-file-name-localname, tramp-file-name-hop)
      (tramp-file-name-real-user, tramp-file-name-domain)
      (tramp-file-name-real-host, tramp-file-name-port):
      Remove defuns.  They are provided by the defstruct, or not
      needed anymore.
      (tramp-dissect-file-name, tramp-buffer-name)
      (tramp-make-tramp-file-name, tramp-get-buffer)
      (tramp-set-connection-local-variables)
      (tramp-debug-buffer-name, tramp-message)
      (tramp-error-with-buffer, with-parsed-tramp-file-name)
      (tramp-completion-dissect-file-name1)
      (tramp-handle-file-name-as-directory)
      (tramp-handle-file-name-directory)
      (tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
      (tramp-handle-find-backup-file-name)
      (tramp-handle-insert-file-contents, tramp-process-actions)
      (tramp-check-cached-permissions, tramp-local-host-p)
      (tramp-get-remote-tmpdir, tramp-call-process)
      (tramp-call-process-region, tramp-read-passwd)
      (tramp-clear-passwd):
      * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
      (tramp-adb-handle-expand-file-name)
      (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file)
      (tramp-adb-handle-process-file)
      (tramp-adb-maybe-open-connection):
      * lisp/net/tramp-cache.el (tramp-get-hash-table)
      (tramp-get-file-property, tramp-set-file-property)
      (tramp-flush-file-property, tramp-flush-directory-property)
      (tramp-get-connection-property)
      (tramp-set-connection-property, tramp-connection-property-p)
      (tramp-flush-connection-property, tramp-cache-print)
      (tramp-list-connections, tramp-dump-connection-properties)
      (tramp-parse-connection-properties):
      * lisp/net/tramp-cmds.el (tramp-cleanup-connection):
      * lisp/net/tramp-ftp.el (tramp-ftp-file-name-handler):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-url-file-name, tramp-gvfs-handler-askpassword)
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-mount-spec, 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-do-copy-or-rename-file-out-of-band)
      (tramp-sh-handle-expand-file-name)
      (tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-compute-multi-hops)
      (tramp-maybe-open-connection)
      (tramp-make-copy-program-file-name, tramp-get-remote-path)
      (tramp-get-inline-coding):
      * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
      (tramp-smb-handle-expand-file-name)
      (tramp-smb-handle-file-acl, tramp-smb-handle-process-file)
      (tramp-smb-handle-set-file-acl)
      (tramp-smb-maybe-open-connection): Adapt according to defstruct.
      dca22e86