diff options
| author | Kai Großjohann | 2003-06-17 14:03:58 +0000 |
|---|---|---|
| committer | Kai Großjohann | 2003-06-17 14:03:58 +0000 |
| commit | ea9d14432848d8985f743abe68306d535cb29031 (patch) | |
| tree | 7c177200bf8133116856a9ef32b7bb454fad805c | |
| parent | b5d2c6219692c4d5b12a1bb3db7e52a335fdbf1e (diff) | |
| download | emacs-ea9d14432848d8985f743abe68306d535cb29031.tar.gz emacs-ea9d14432848d8985f743abe68306d535cb29031.zip | |
Version 2.0.35 of Tramp released.
* net/tramp.el (tramp-password-end-of-line): Use "xy" with plink.
(tramp-completion-function-alist): Add completion function for
"remcp", "remsh" and "plink1".
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.
(tramp-find-foreign-file-name-handler): Return after first match
is found. From Francis Litterio <franl@world.std.com>.
(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.
(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.
(tramp-shell-prompt-pattern): Allow multiple escape
sequences (each with optional trailing space).
* net/tramp-uu.el:
* net/tramp-util.el:
* net/tramp-efs.el: Use iso-2022-7bit encoding with coding cookie
for XEmacs compatibility.
| -rw-r--r-- | lisp/ChangeLog | 52 | ||||
| -rw-r--r-- | lisp/net/tramp-util.el | 3 | ||||
| -rw-r--r-- | lisp/net/tramp-uu.el | 3 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 154 | ||||
| -rw-r--r-- | lisp/net/trampver.el | 2 |
5 files changed, 162 insertions, 52 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index cf4c24bdd2a..92c33e1311c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,55 @@ | |||
| 1 | 2003-06-17 Kai Gro,A_(Bjohann <kai.grossjohann@gmx.net> | ||
| 2 | |||
| 3 | Version 2.0.35 of Tramp released. | ||
| 4 | |||
| 5 | * net/tramp.el (tramp-password-end-of-line): Use "xy" with plink. | ||
| 6 | (tramp-completion-function-alist): Add completion function for | ||
| 7 | "remcp", "remsh" and "plink1". | ||
| 8 | Factor out the `regular' file name handling via a remote shell of | ||
| 9 | some sort into a specific function. Intent is to later put that | ||
| 10 | part of Tramp into a special file, so that the Tramp `core' is | ||
| 11 | just a dispatcher that dispatches to various handlers. | ||
| 12 | (tramp-sh-file-name-handler): New function. | ||
| 13 | (tramp-foreign-file-name-handler-alist): New default value. Call | ||
| 14 | tramp-sh-file-name-handler as default case. | ||
| 15 | (tramp-file-name-handler): Do not invoke the old remote-shell | ||
| 16 | handler. | ||
| 17 | (tramp-find-foreign-file-name-handler): Return after first match | ||
| 18 | is found. From Francis Litterio <franl@world.std.com>. | ||
| 19 | (tramp-handle-file-newer-than-file-p): `tramp-time-diff' returns | ||
| 20 | integer, not list. Do not apply `car' to the return value of | ||
| 21 | `tramp-time-diff'. Reported by David D. Smith | ||
| 22 | <ultrasoul@ultrasoul.com>. | ||
| 23 | (tramp-time-diff): Convert return value of subtract-time to a | ||
| 24 | number of seconds in a correct manner, by applying float-time or | ||
| 25 | time-to-seconds. Also correct compat code accordingly. The | ||
| 26 | XEmacs branch for itimer-time-difference didn't need correction, | ||
| 27 | it returned a float already. Reported by David D. Smith | ||
| 28 | <ultrasoul@ultrasoul.com>. | ||
| 29 | (tramp-handle-insert-file-contents): When calling | ||
| 30 | `file-local-copy', let-bind `inhibit-file-name-operation' | ||
| 31 | accordingly. This makes sure that jka-compr is not called when | ||
| 32 | `insert-file-contents-literally' is invoked. From Katsumi Yamaoka | ||
| 33 | <yamaoka@jpl.org>. | ||
| 34 | (tramp-do-copy-or-rename-via-buffer): Avoid calling jka-compr when | ||
| 35 | writing the target file. | ||
| 36 | (tramp-foreign-file-name-handler-alist): Add comment about default | ||
| 37 | value having to come last. | ||
| 38 | (tramp-handle-file-local-copy, tramp-handle-write-region): Add the | ||
| 39 | "-p" hack. | ||
| 40 | (tramp-handle-copy-file): Set file modes of target file. | ||
| 41 | (tramp-handle-file-local-copy) | ||
| 42 | (tramp-do-copy-or-rename-via-buffer): Use binary coding system, | ||
| 43 | instead of no-conversion. They are the same on Emacs but | ||
| 44 | different on XEmacs. | ||
| 45 | (tramp-shell-prompt-pattern): Allow multiple escape | ||
| 46 | sequences (each with optional trailing space). | ||
| 47 | |||
| 48 | * net/tramp-uu.el: | ||
| 49 | * net/tramp-util.el: | ||
| 50 | * net/tramp-efs.el: Use iso-2022-7bit encoding with coding cookie | ||
| 51 | for XEmacs compatibility. | ||
| 52 | |||
| 1 | 2003-06-17 Kenichi Handa <handa@m17n.org> | 53 | 2003-06-17 Kenichi Handa <handa@m17n.org> |
| 2 | 54 | ||
| 3 | * term/x-win.el (x-select-request-type): New variable. | 55 | * term/x-win.el (x-select-request-type): New variable. |
diff --git a/lisp/net/tramp-util.el b/lisp/net/tramp-util.el index 7dd1f97339a..44a24ca3ab7 100644 --- a/lisp/net/tramp-util.el +++ b/lisp/net/tramp-util.el | |||
| @@ -1,8 +1,9 @@ | |||
| 1 | ;;; -*- coding: iso-2022-7bit; -*- | ||
| 1 | ;;; tramp-util.el --- Misc utility functions to use with Tramp | 2 | ;;; tramp-util.el --- Misc utility functions to use with Tramp |
| 2 | 3 | ||
| 3 | ;; Copyright (C) 2001 Free Software Foundation, Inc. | 4 | ;; Copyright (C) 2001 Free Software Foundation, Inc. |
| 4 | 5 | ||
| 5 | ;; Author: Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> | 6 | ;; Author: Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> |
| 6 | ;; Keywords: comm, extensions, processes | 7 | ;; Keywords: comm, extensions, processes |
| 7 | 8 | ||
| 8 | ;; This file is free software; you can redistribute it and/or modify | 9 | ;; This file is free software; you can redistribute it and/or modify |
diff --git a/lisp/net/tramp-uu.el b/lisp/net/tramp-uu.el index 01ede56ca7d..e307febc6fc 100644 --- a/lisp/net/tramp-uu.el +++ b/lisp/net/tramp-uu.el | |||
| @@ -1,8 +1,9 @@ | |||
| 1 | ;;; -*- coding: iso-2022-7bit; -*- | ||
| 1 | ;;; tramp-uu.el --- uuencode in Lisp | 2 | ;;; tramp-uu.el --- uuencode in Lisp |
| 2 | 3 | ||
| 3 | ;; Copyright (C) 2002 Free Software Foundation, Inc. | 4 | ;; Copyright (C) 2002 Free Software Foundation, Inc. |
| 4 | 5 | ||
| 5 | ;; Author: Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> | 6 | ;; Author: Kai Gro,A_(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> |
| 6 | ;; Keywords: comm, terminals | 7 | ;; Keywords: comm, terminals |
| 7 | 8 | ||
| 8 | ;; This file is free software; you can redistribute it and/or modify | 9 | ;; This file is free software; you can redistribute it and/or modify |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index b88c73ebce8..50cd8056fde 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -238,28 +238,28 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 238 | (tramp-remote-sh "/bin/sh") | 238 | (tramp-remote-sh "/bin/sh") |
| 239 | (tramp-login-args nil) | 239 | (tramp-login-args nil) |
| 240 | (tramp-copy-args nil) | 240 | (tramp-copy-args nil) |
| 241 | (tramp-copy-keep-date-arg "-p")) | 241 | (tramp-copy-keep-date-arg "-p")) |
| 242 | ("scp" (tramp-connection-function tramp-open-connection-rsh) | 242 | ("scp" (tramp-connection-function tramp-open-connection-rsh) |
| 243 | (tramp-login-program "ssh") | 243 | (tramp-login-program "ssh") |
| 244 | (tramp-copy-program "scp") | 244 | (tramp-copy-program "scp") |
| 245 | (tramp-remote-sh "/bin/sh") | 245 | (tramp-remote-sh "/bin/sh") |
| 246 | (tramp-login-args ("-e" "none")) | 246 | (tramp-login-args ("-e" "none")) |
| 247 | (tramp-copy-args nil) | 247 | (tramp-copy-args nil) |
| 248 | (tramp-copy-keep-date-arg "-p")) | 248 | (tramp-copy-keep-date-arg "-p")) |
| 249 | ("scp1" (tramp-connection-function tramp-open-connection-rsh) | 249 | ("scp1" (tramp-connection-function tramp-open-connection-rsh) |
| 250 | (tramp-login-program "ssh") | 250 | (tramp-login-program "ssh") |
| 251 | (tramp-copy-program "scp") | 251 | (tramp-copy-program "scp") |
| 252 | (tramp-remote-sh "/bin/sh") | 252 | (tramp-remote-sh "/bin/sh") |
| 253 | (tramp-login-args ("-1" "-e" "none")) | 253 | (tramp-login-args ("-1" "-e" "none")) |
| 254 | (tramp-copy-args ("-1")) | 254 | (tramp-copy-args ("-1")) |
| 255 | (tramp-copy-keep-date-arg "-p")) | 255 | (tramp-copy-keep-date-arg "-p")) |
| 256 | ("scp2" (tramp-connection-function tramp-open-connection-rsh) | 256 | ("scp2" (tramp-connection-function tramp-open-connection-rsh) |
| 257 | (tramp-login-program "ssh") | 257 | (tramp-login-program "ssh") |
| 258 | (tramp-copy-program "scp") | 258 | (tramp-copy-program "scp") |
| 259 | (tramp-remote-sh "/bin/sh") | 259 | (tramp-remote-sh "/bin/sh") |
| 260 | (tramp-login-args ("-2" "-e" "none")) | 260 | (tramp-login-args ("-2" "-e" "none")) |
| 261 | (tramp-copy-args ("-2")) | 261 | (tramp-copy-args ("-2")) |
| 262 | (tramp-copy-keep-date-arg "-p")) | 262 | (tramp-copy-keep-date-arg "-p")) |
| 263 | ("scp1_old" | 263 | ("scp1_old" |
| 264 | (tramp-connection-function tramp-open-connection-rsh) | 264 | (tramp-connection-function tramp-open-connection-rsh) |
| 265 | (tramp-login-program "ssh1") | 265 | (tramp-login-program "ssh1") |
| @@ -267,7 +267,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 267 | (tramp-remote-sh "/bin/sh") | 267 | (tramp-remote-sh "/bin/sh") |
| 268 | (tramp-login-args ("-e" "none")) | 268 | (tramp-login-args ("-e" "none")) |
| 269 | (tramp-copy-args nil) | 269 | (tramp-copy-args nil) |
| 270 | (tramp-copy-keep-date-arg "-p")) | 270 | (tramp-copy-keep-date-arg "-p")) |
| 271 | ("scp2_old" | 271 | ("scp2_old" |
| 272 | (tramp-connection-function tramp-open-connection-rsh) | 272 | (tramp-connection-function tramp-open-connection-rsh) |
| 273 | (tramp-login-program "ssh2") | 273 | (tramp-login-program "ssh2") |
| @@ -275,49 +275,49 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 275 | (tramp-remote-sh "/bin/sh") | 275 | (tramp-remote-sh "/bin/sh") |
| 276 | (tramp-login-args ("-e" "none")) | 276 | (tramp-login-args ("-e" "none")) |
| 277 | (tramp-copy-args nil) | 277 | (tramp-copy-args nil) |
| 278 | (tramp-copy-keep-date-arg "-p")) | 278 | (tramp-copy-keep-date-arg "-p")) |
| 279 | ("rsync" (tramp-connection-function tramp-open-connection-rsh) | 279 | ("rsync" (tramp-connection-function tramp-open-connection-rsh) |
| 280 | (tramp-login-program "ssh") | 280 | (tramp-login-program "ssh") |
| 281 | (tramp-copy-program "rsync") | 281 | (tramp-copy-program "rsync") |
| 282 | (tramp-remote-sh "/bin/sh") | 282 | (tramp-remote-sh "/bin/sh") |
| 283 | (tramp-login-args ("-e" "none")) | 283 | (tramp-login-args ("-e" "none")) |
| 284 | (tramp-copy-args ("-e" "ssh")) | 284 | (tramp-copy-args ("-e" "ssh")) |
| 285 | (tramp-copy-keep-date-arg "-t")) | 285 | (tramp-copy-keep-date-arg "-t")) |
| 286 | ("remcp" (tramp-connection-function tramp-open-connection-rsh) | 286 | ("remcp" (tramp-connection-function tramp-open-connection-rsh) |
| 287 | (tramp-login-program "remsh") | 287 | (tramp-login-program "remsh") |
| 288 | (tramp-copy-program "rcp") | 288 | (tramp-copy-program "rcp") |
| 289 | (tramp-remote-sh "/bin/sh") | 289 | (tramp-remote-sh "/bin/sh") |
| 290 | (tramp-login-args nil) | 290 | (tramp-login-args nil) |
| 291 | (tramp-copy-args nil) | 291 | (tramp-copy-args nil) |
| 292 | (tramp-copy-keep-date-arg "-p")) | 292 | (tramp-copy-keep-date-arg "-p")) |
| 293 | ("rsh" (tramp-connection-function tramp-open-connection-rsh) | 293 | ("rsh" (tramp-connection-function tramp-open-connection-rsh) |
| 294 | (tramp-login-program "rsh") | 294 | (tramp-login-program "rsh") |
| 295 | (tramp-copy-program nil) | 295 | (tramp-copy-program nil) |
| 296 | (tramp-remote-sh "/bin/sh") | 296 | (tramp-remote-sh "/bin/sh") |
| 297 | (tramp-login-args nil) | 297 | (tramp-login-args nil) |
| 298 | (tramp-copy-args nil) | 298 | (tramp-copy-args nil) |
| 299 | (tramp-copy-keep-date-arg nil)) | 299 | (tramp-copy-keep-date-arg nil)) |
| 300 | ("ssh" (tramp-connection-function tramp-open-connection-rsh) | 300 | ("ssh" (tramp-connection-function tramp-open-connection-rsh) |
| 301 | (tramp-login-program "ssh") | 301 | (tramp-login-program "ssh") |
| 302 | (tramp-copy-program nil) | 302 | (tramp-copy-program nil) |
| 303 | (tramp-remote-sh "/bin/sh") | 303 | (tramp-remote-sh "/bin/sh") |
| 304 | (tramp-login-args ("-e" "none")) | 304 | (tramp-login-args ("-e" "none")) |
| 305 | (tramp-copy-args nil) | 305 | (tramp-copy-args nil) |
| 306 | (tramp-copy-keep-date-arg nil)) | 306 | (tramp-copy-keep-date-arg nil)) |
| 307 | ("ssh1" (tramp-connection-function tramp-open-connection-rsh) | 307 | ("ssh1" (tramp-connection-function tramp-open-connection-rsh) |
| 308 | (tramp-login-program "ssh") | 308 | (tramp-login-program "ssh") |
| 309 | (tramp-copy-program nil) | 309 | (tramp-copy-program nil) |
| 310 | (tramp-remote-sh "/bin/sh") | 310 | (tramp-remote-sh "/bin/sh") |
| 311 | (tramp-login-args ("-1" "-e" "none")) | 311 | (tramp-login-args ("-1" "-e" "none")) |
| 312 | (tramp-copy-args ("-1")) | 312 | (tramp-copy-args ("-1")) |
| 313 | (tramp-copy-keep-date-arg nil)) | 313 | (tramp-copy-keep-date-arg nil)) |
| 314 | ("ssh2" (tramp-connection-function tramp-open-connection-rsh) | 314 | ("ssh2" (tramp-connection-function tramp-open-connection-rsh) |
| 315 | (tramp-login-program "ssh") | 315 | (tramp-login-program "ssh") |
| 316 | (tramp-copy-program nil) | 316 | (tramp-copy-program nil) |
| 317 | (tramp-remote-sh "/bin/sh") | 317 | (tramp-remote-sh "/bin/sh") |
| 318 | (tramp-login-args ("-2" "-e" "none")) | 318 | (tramp-login-args ("-2" "-e" "none")) |
| 319 | (tramp-copy-args ("-2")) | 319 | (tramp-copy-args ("-2")) |
| 320 | (tramp-copy-keep-date-arg nil)) | 320 | (tramp-copy-keep-date-arg nil)) |
| 321 | ("ssh1_old" | 321 | ("ssh1_old" |
| 322 | (tramp-connection-function tramp-open-connection-rsh) | 322 | (tramp-connection-function tramp-open-connection-rsh) |
| 323 | (tramp-login-program "ssh1") | 323 | (tramp-login-program "ssh1") |
| @@ -325,7 +325,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 325 | (tramp-remote-sh "/bin/sh") | 325 | (tramp-remote-sh "/bin/sh") |
| 326 | (tramp-login-args ("-e" "none")) | 326 | (tramp-login-args ("-e" "none")) |
| 327 | (tramp-copy-args nil) | 327 | (tramp-copy-args nil) |
| 328 | (tramp-copy-keep-date-arg nil)) | 328 | (tramp-copy-keep-date-arg nil)) |
| 329 | ("ssh2_old" | 329 | ("ssh2_old" |
| 330 | (tramp-connection-function tramp-open-connection-rsh) | 330 | (tramp-connection-function tramp-open-connection-rsh) |
| 331 | (tramp-login-program "ssh2") | 331 | (tramp-login-program "ssh2") |
| @@ -333,14 +333,14 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 333 | (tramp-remote-sh "/bin/sh") | 333 | (tramp-remote-sh "/bin/sh") |
| 334 | (tramp-login-args ("-e" "none")) | 334 | (tramp-login-args ("-e" "none")) |
| 335 | (tramp-copy-args nil) | 335 | (tramp-copy-args nil) |
| 336 | (tramp-copy-keep-date-arg nil)) | 336 | (tramp-copy-keep-date-arg nil)) |
| 337 | ("remsh" (tramp-connection-function tramp-open-connection-rsh) | 337 | ("remsh" (tramp-connection-function tramp-open-connection-rsh) |
| 338 | (tramp-login-program "remsh") | 338 | (tramp-login-program "remsh") |
| 339 | (tramp-copy-program nil) | 339 | (tramp-copy-program nil) |
| 340 | (tramp-remote-sh "/bin/sh") | 340 | (tramp-remote-sh "/bin/sh") |
| 341 | (tramp-login-args nil) | 341 | (tramp-login-args nil) |
| 342 | (tramp-copy-args nil) | 342 | (tramp-copy-args nil) |
| 343 | (tramp-copy-keep-date-arg nil)) | 343 | (tramp-copy-keep-date-arg nil)) |
| 344 | ("telnet" | 344 | ("telnet" |
| 345 | (tramp-connection-function tramp-open-connection-telnet) | 345 | (tramp-connection-function tramp-open-connection-telnet) |
| 346 | (tramp-login-program "telnet") | 346 | (tramp-login-program "telnet") |
| @@ -348,14 +348,14 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 348 | (tramp-remote-sh "/bin/sh") | 348 | (tramp-remote-sh "/bin/sh") |
| 349 | (tramp-login-args nil) | 349 | (tramp-login-args nil) |
| 350 | (tramp-copy-args nil) | 350 | (tramp-copy-args nil) |
| 351 | (tramp-copy-keep-date-arg nil)) | 351 | (tramp-copy-keep-date-arg nil)) |
| 352 | ("su" (tramp-connection-function tramp-open-connection-su) | 352 | ("su" (tramp-connection-function tramp-open-connection-su) |
| 353 | (tramp-login-program "su") | 353 | (tramp-login-program "su") |
| 354 | (tramp-copy-program nil) | 354 | (tramp-copy-program nil) |
| 355 | (tramp-remote-sh "/bin/sh") | 355 | (tramp-remote-sh "/bin/sh") |
| 356 | (tramp-login-args ("-" "%u")) | 356 | (tramp-login-args ("-" "%u")) |
| 357 | (tramp-copy-args nil) | 357 | (tramp-copy-args nil) |
| 358 | (tramp-copy-keep-date-arg nil)) | 358 | (tramp-copy-keep-date-arg nil)) |
| 359 | ("sudo" (tramp-connection-function tramp-open-connection-su) | 359 | ("sudo" (tramp-connection-function tramp-open-connection-su) |
| 360 | (tramp-login-program "sudo") | 360 | (tramp-login-program "sudo") |
| 361 | (tramp-copy-program nil) | 361 | (tramp-copy-program nil) |
| @@ -363,28 +363,28 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 363 | (tramp-login-args ("-u" "%u" "-s" | 363 | (tramp-login-args ("-u" "%u" "-s" |
| 364 | "-p" "Password:")) | 364 | "-p" "Password:")) |
| 365 | (tramp-copy-args nil) | 365 | (tramp-copy-args nil) |
| 366 | (tramp-copy-keep-date-arg nil)) | 366 | (tramp-copy-keep-date-arg nil)) |
| 367 | ("multi" (tramp-connection-function tramp-open-connection-multi) | 367 | ("multi" (tramp-connection-function tramp-open-connection-multi) |
| 368 | (tramp-login-program nil) | 368 | (tramp-login-program nil) |
| 369 | (tramp-copy-program nil) | 369 | (tramp-copy-program nil) |
| 370 | (tramp-remote-sh "/bin/sh") | 370 | (tramp-remote-sh "/bin/sh") |
| 371 | (tramp-login-args nil) | 371 | (tramp-login-args nil) |
| 372 | (tramp-copy-args nil) | 372 | (tramp-copy-args nil) |
| 373 | (tramp-copy-keep-date-arg nil)) | 373 | (tramp-copy-keep-date-arg nil)) |
| 374 | ("scpx" (tramp-connection-function tramp-open-connection-rsh) | 374 | ("scpx" (tramp-connection-function tramp-open-connection-rsh) |
| 375 | (tramp-login-program "ssh") | 375 | (tramp-login-program "ssh") |
| 376 | (tramp-copy-program "scp") | 376 | (tramp-copy-program "scp") |
| 377 | (tramp-remote-sh "/bin/sh") | 377 | (tramp-remote-sh "/bin/sh") |
| 378 | (tramp-login-args ("-e" "none" "-t" "-t" "/bin/sh")) | 378 | (tramp-login-args ("-e" "none" "-t" "-t" "/bin/sh")) |
| 379 | (tramp-copy-args nil) | 379 | (tramp-copy-args nil) |
| 380 | (tramp-copy-keep-date-arg "-p")) | 380 | (tramp-copy-keep-date-arg "-p")) |
| 381 | ("sshx" (tramp-connection-function tramp-open-connection-rsh) | 381 | ("sshx" (tramp-connection-function tramp-open-connection-rsh) |
| 382 | (tramp-login-program "ssh") | 382 | (tramp-login-program "ssh") |
| 383 | (tramp-copy-program nil) | 383 | (tramp-copy-program nil) |
| 384 | (tramp-remote-sh "/bin/sh") | 384 | (tramp-remote-sh "/bin/sh") |
| 385 | (tramp-login-args ("-e" "none" "-t" "-t" "/bin/sh")) | 385 | (tramp-login-args ("-e" "none" "-t" "-t" "/bin/sh")) |
| 386 | (tramp-copy-args nil) | 386 | (tramp-copy-args nil) |
| 387 | (tramp-copy-keep-date-arg nil)) | 387 | (tramp-copy-keep-date-arg nil)) |
| 388 | ("krlogin" | 388 | ("krlogin" |
| 389 | (tramp-connection-function tramp-open-connection-rsh) | 389 | (tramp-connection-function tramp-open-connection-rsh) |
| 390 | (tramp-login-program "krlogin") | 390 | (tramp-login-program "krlogin") |
| @@ -392,7 +392,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 392 | (tramp-remote-sh "/bin/sh") | 392 | (tramp-remote-sh "/bin/sh") |
| 393 | (tramp-login-args ("-x")) | 393 | (tramp-login-args ("-x")) |
| 394 | (tramp-copy-args nil) | 394 | (tramp-copy-args nil) |
| 395 | (tramp-copy-keep-date-arg nil)) | 395 | (tramp-copy-keep-date-arg nil)) |
| 396 | ("plink" | 396 | ("plink" |
| 397 | (tramp-connection-function tramp-open-connection-rsh) | 397 | (tramp-connection-function tramp-open-connection-rsh) |
| 398 | (tramp-login-program "plink") | 398 | (tramp-login-program "plink") |
| @@ -400,7 +400,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 400 | (tramp-remote-sh "/bin/sh") | 400 | (tramp-remote-sh "/bin/sh") |
| 401 | (tramp-login-args ("-ssh")) ;optionally add "-v" | 401 | (tramp-login-args ("-ssh")) ;optionally add "-v" |
| 402 | (tramp-copy-args nil) | 402 | (tramp-copy-args nil) |
| 403 | (tramp-copy-keep-date-arg nil)) | 403 | (tramp-copy-keep-date-arg nil)) |
| 404 | ("plink1" | 404 | ("plink1" |
| 405 | (tramp-connection-function tramp-open-connection-rsh) | 405 | (tramp-connection-function tramp-open-connection-rsh) |
| 406 | (tramp-login-program "plink") | 406 | (tramp-login-program "plink") |
| @@ -408,7 +408,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 408 | (tramp-remote-sh "/bin/sh") | 408 | (tramp-remote-sh "/bin/sh") |
| 409 | (tramp-login-args ("-1" "-ssh")) ;optionally add "-v" | 409 | (tramp-login-args ("-1" "-ssh")) ;optionally add "-v" |
| 410 | (tramp-copy-args nil) | 410 | (tramp-copy-args nil) |
| 411 | (tramp-copy-keep-date-arg nil)) | 411 | (tramp-copy-keep-date-arg nil)) |
| 412 | ("pscp" | 412 | ("pscp" |
| 413 | (tramp-connection-function tramp-open-connection-rsh) | 413 | (tramp-connection-function tramp-open-connection-rsh) |
| 414 | (tramp-login-program "plink") | 414 | (tramp-login-program "plink") |
| @@ -416,7 +416,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 416 | (tramp-remote-sh "/bin/sh") | 416 | (tramp-remote-sh "/bin/sh") |
| 417 | (tramp-login-args ("-ssh")) | 417 | (tramp-login-args ("-ssh")) |
| 418 | (tramp-copy-args nil) | 418 | (tramp-copy-args nil) |
| 419 | (tramp-copy-keep-date-arg "-p")) | 419 | (tramp-copy-keep-date-arg "-p")) |
| 420 | ("fcp" | 420 | ("fcp" |
| 421 | (tramp-connection-function tramp-open-connection-rsh) | 421 | (tramp-connection-function tramp-open-connection-rsh) |
| 422 | (tramp-login-program "fsh") | 422 | (tramp-login-program "fsh") |
| @@ -424,7 +424,7 @@ This variable defaults to the value of `tramp-encoding-shell'." | |||
| 424 | (tramp-remote-sh "/bin/sh -i") | 424 | (tramp-remote-sh "/bin/sh -i") |
| 425 | (tramp-login-args ("sh" "-i")) | 425 | (tramp-login-args ("sh" "-i")) |
| 426 | (tramp-copy-args nil) | 426 | (tramp-copy-args nil) |
| 427 | (tramp-copy-keep-date-arg "-p")) | 427 | (tramp-copy-keep-date-arg "-p")) |
| 428 | ) | 428 | ) |
| 429 | "*Alist of methods for remote files. | 429 | "*Alist of methods for remote files. |
| 430 | This is a list of entries of the form (NAME PARAM1 PARAM2 ...). | 430 | This is a list of entries of the form (NAME PARAM1 PARAM2 ...). |
| @@ -620,12 +620,14 @@ See `tramp-methods' for a list of possibilities for METHOD." | |||
| 620 | (cons "scp1_old" tramp-completion-function-alist-ssh) | 620 | (cons "scp1_old" tramp-completion-function-alist-ssh) |
| 621 | (cons "scp2_old" tramp-completion-function-alist-ssh) | 621 | (cons "scp2_old" tramp-completion-function-alist-ssh) |
| 622 | (cons "rsync" tramp-completion-function-alist-rsh) | 622 | (cons "rsync" tramp-completion-function-alist-rsh) |
| 623 | (cons "remcp" tramp-completion-function-alist-rsh) | ||
| 623 | (cons "rsh" tramp-completion-function-alist-rsh) | 624 | (cons "rsh" tramp-completion-function-alist-rsh) |
| 624 | (cons "ssh" tramp-completion-function-alist-ssh) | 625 | (cons "ssh" tramp-completion-function-alist-ssh) |
| 625 | (cons "ssh1" tramp-completion-function-alist-ssh) | 626 | (cons "ssh1" tramp-completion-function-alist-ssh) |
| 626 | (cons "ssh2" tramp-completion-function-alist-ssh) | 627 | (cons "ssh2" tramp-completion-function-alist-ssh) |
| 627 | (cons "ssh1_old" tramp-completion-function-alist-ssh) | 628 | (cons "ssh1_old" tramp-completion-function-alist-ssh) |
| 628 | (cons "ssh2_old" tramp-completion-function-alist-ssh) | 629 | (cons "ssh2_old" tramp-completion-function-alist-ssh) |
| 630 | (cons "remsh" tramp-completion-function-alist-rsh) | ||
| 629 | (cons "telnet" tramp-completion-function-alist-telnet) | 631 | (cons "telnet" tramp-completion-function-alist-telnet) |
| 630 | (cons "su" tramp-completion-function-alist-su) | 632 | (cons "su" tramp-completion-function-alist-su) |
| 631 | (cons "sudo" tramp-completion-function-alist-su) | 633 | (cons "sudo" tramp-completion-function-alist-su) |
| @@ -634,6 +636,7 @@ See `tramp-methods' for a list of possibilities for METHOD." | |||
| 634 | (cons "sshx" tramp-completion-function-alist-ssh) | 636 | (cons "sshx" tramp-completion-function-alist-ssh) |
| 635 | (cons "krlogin" tramp-completion-function-alist-rsh) | 637 | (cons "krlogin" tramp-completion-function-alist-rsh) |
| 636 | (cons "plink" tramp-completion-function-alist-ssh) | 638 | (cons "plink" tramp-completion-function-alist-ssh) |
| 639 | (cons "plink1" tramp-completion-function-alist-ssh) | ||
| 637 | (cons "pscp" tramp-completion-function-alist-ssh) | 640 | (cons "pscp" tramp-completion-function-alist-ssh) |
| 638 | (cons "fcp" tramp-completion-function-alist-ssh) | 641 | (cons "fcp" tramp-completion-function-alist-ssh) |
| 639 | ) | 642 | ) |
| @@ -665,7 +668,12 @@ Also see `tramp-password-end-of-line'." | |||
| 665 | :group 'tramp | 668 | :group 'tramp |
| 666 | :type 'string) | 669 | :type 'string) |
| 667 | 670 | ||
| 668 | (defcustom tramp-password-end-of-line tramp-rsh-end-of-line | 671 | (defcustom tramp-password-end-of-line |
| 672 | (if (string-match "plink" tramp-default-method) | ||
| 673 | ;; Any two characters will do for plink! Doesn't have to be | ||
| 674 | ;; newline characters. | ||
| 675 | "xy" | ||
| 676 | tramp-rsh-end-of-line) | ||
| 669 | "*String used for end of line after sending a password. | 677 | "*String used for end of line after sending a password. |
| 670 | It seems that people using plink under Windows need to send | 678 | It seems that people using plink under Windows need to send |
| 671 | \"\\r\\n\" (carriage-return, then newline) after a password, but just | 679 | \"\\r\\n\" (carriage-return, then newline) after a password, but just |
| @@ -696,7 +704,7 @@ The regexp should match at end of buffer." | |||
| 696 | :type 'regexp) | 704 | :type 'regexp) |
| 697 | 705 | ||
| 698 | (defcustom tramp-shell-prompt-pattern | 706 | (defcustom tramp-shell-prompt-pattern |
| 699 | "^[^#$%>\n]*[#$%>] *\\(\e\\[[0-9;]*[a-zA-Z]\\)?" | 707 | "^[^#$%>\n]*[#$%>] *\\(\e\\[[0-9;]*[a-zA-Z] *\\)*" |
| 700 | "Regexp to match prompts from remote shell. | 708 | "Regexp to match prompts from remote shell. |
| 701 | Normally, Tramp expects you to configure `shell-prompt-pattern' | 709 | Normally, Tramp expects you to configure `shell-prompt-pattern' |
| 702 | correctly, but sometimes it happens that you are connecting to a | 710 | correctly, but sometimes it happens that you are connecting to a |
| @@ -1580,7 +1588,10 @@ mentioned here will be handled by `tramp-file-name-handler-alist' or the | |||
| 1580 | normal Emacs functions.") | 1588 | normal Emacs functions.") |
| 1581 | 1589 | ||
| 1582 | ;; Handlers for foreign methods, like FTP or SMB, shall be plugged here. | 1590 | ;; Handlers for foreign methods, like FTP or SMB, shall be plugged here. |
| 1583 | (defvar tramp-foreign-file-name-handler-alist nil | 1591 | (defvar tramp-foreign-file-name-handler-alist |
| 1592 | ;; (identity . tramp-sh-file-name-handler) should always be the last | ||
| 1593 | ;; entry, since `identity' always matches. | ||
| 1594 | '((identity . tramp-sh-file-name-handler)) | ||
| 1584 | "Alist of elements (FUNCTION . HANDLER) for foreign methods handled specially. | 1595 | "Alist of elements (FUNCTION . HANDLER) for foreign methods handled specially. |
| 1585 | If (FUNCTION FILENAME) returns non-nil, then all I/O on that file is done by | 1596 | If (FUNCTION FILENAME) returns non-nil, then all I/O on that file is done by |
| 1586 | calling HANDLER.") | 1597 | calling HANDLER.") |
| @@ -2168,7 +2179,7 @@ if the remote host can't provide the modtime." | |||
| 2168 | (fa2 (file-attributes file2))) | 2179 | (fa2 (file-attributes file2))) |
| 2169 | (if (and (not (equal (nth 5 fa1) '(0 0))) | 2180 | (if (and (not (equal (nth 5 fa1) '(0 0))) |
| 2170 | (not (equal (nth 5 fa2) '(0 0)))) | 2181 | (not (equal (nth 5 fa2) '(0 0)))) |
| 2171 | (> 0 (car (tramp-time-diff (nth 5 fa1) (nth 5 fa2)))) | 2182 | (> 0 (tramp-time-diff (nth 5 fa1) (nth 5 fa2))) |
| 2172 | ;; If one of them is the dont-know value, then we can | 2183 | ;; If one of them is the dont-know value, then we can |
| 2173 | ;; still try to run a shell command on the remote host. | 2184 | ;; still try to run a shell command on the remote host. |
| 2174 | ;; However, this only works if both files are Tramp | 2185 | ;; However, this only works if both files are Tramp |
| @@ -2458,8 +2469,10 @@ if the remote host can't provide the modtime." | |||
| 2458 | ;; At least one file a tramp file? | 2469 | ;; At least one file a tramp file? |
| 2459 | (if (or (tramp-tramp-file-p filename) | 2470 | (if (or (tramp-tramp-file-p filename) |
| 2460 | (tramp-tramp-file-p newname)) | 2471 | (tramp-tramp-file-p newname)) |
| 2461 | (tramp-do-copy-or-rename-file | 2472 | (let ((modes (file-modes filename))) |
| 2462 | 'copy filename newname ok-if-already-exists keep-date) | 2473 | (tramp-do-copy-or-rename-file |
| 2474 | 'copy filename newname ok-if-already-exists keep-date) | ||
| 2475 | (set-file-modes newname modes)) | ||
| 2463 | (tramp-run-real-handler | 2476 | (tramp-run-real-handler |
| 2464 | 'copy-file | 2477 | 'copy-file |
| 2465 | (list filename newname ok-if-already-exists keep-date)))) | 2478 | (list filename newname ok-if-already-exists keep-date)))) |
| @@ -2555,7 +2568,10 @@ KEEP-DATE is non-nil if NEWNAME should have the same timestamp as FILENAME." | |||
| 2555 | (save-excursion | 2568 | (save-excursion |
| 2556 | (set-buffer trampbuf) (erase-buffer) | 2569 | (set-buffer trampbuf) (erase-buffer) |
| 2557 | (insert-file-contents-literally filename) | 2570 | (insert-file-contents-literally filename) |
| 2558 | (let ((coding-system-for-write 'no-conversion)) | 2571 | ;; We don't want the target file to be compressed, so we let-bind |
| 2572 | ;; `jka-compr-inhibit' to t. | ||
| 2573 | (let ((coding-system-for-write 'binary) | ||
| 2574 | (jka-compr-inhibit t)) | ||
| 2559 | (write-region (point-min) (point-max) newname))) | 2575 | (write-region (point-min) (point-max) newname))) |
| 2560 | ;; If the operation was `rename', delete the original file. | 2576 | ;; If the operation was `rename', delete the original file. |
| 2561 | (unless (eq op 'copy) | 2577 | (unless (eq op 'copy) |
| @@ -2961,6 +2977,12 @@ This will break if COMMAND prints a newline, followed by the value of | |||
| 2961 | filename)) | 2977 | filename)) |
| 2962 | (setq tmpfil (tramp-make-temp-file)) | 2978 | (setq tmpfil (tramp-make-temp-file)) |
| 2963 | (cond (copy-program | 2979 | (cond (copy-program |
| 2980 | ;; The following should be changed. We need a more general | ||
| 2981 | ;; mechanism to parse extra host args. | ||
| 2982 | (when (string-match "\\([^#]*\\)#\\(.*\\)" host) | ||
| 2983 | (setq copy-args (cons "-p" (cons (match-string 2 host) | ||
| 2984 | rsh-args))) | ||
| 2985 | (setq host (match-string 1 host))) | ||
| 2964 | ;; Use rcp-like program for file transfer. | 2986 | ;; Use rcp-like program for file transfer. |
| 2965 | (tramp-message-for-buffer | 2987 | (tramp-message-for-buffer |
| 2966 | multi-method method user host | 2988 | multi-method method user host |
| @@ -3021,7 +3043,7 @@ This will break if COMMAND prints a newline, followed by the value of | |||
| 3021 | ;; line from the output here. Go to point-max, | 3043 | ;; line from the output here. Go to point-max, |
| 3022 | ;; search backward for tramp_exit_status, delete | 3044 | ;; search backward for tramp_exit_status, delete |
| 3023 | ;; between point and point-max if found. | 3045 | ;; between point and point-max if found. |
| 3024 | (let ((coding-system-for-write 'no-conversion)) | 3046 | (let ((coding-system-for-write 'binary)) |
| 3025 | (funcall loc-dec (point-min) (point-max)) | 3047 | (funcall loc-dec (point-min) (point-max)) |
| 3026 | (write-region (point-min) (point-max) tmpfil)) | 3048 | (write-region (point-min) (point-max) tmpfil)) |
| 3027 | (kill-buffer tmpbuf)) | 3049 | (kill-buffer tmpbuf)) |
| @@ -3058,7 +3080,12 @@ This will break if COMMAND prints a newline, followed by the value of | |||
| 3058 | (signal 'file-error | 3080 | (signal 'file-error |
| 3059 | (format "File `%s' not found on remote host" filename)) | 3081 | (format "File `%s' not found on remote host" filename)) |
| 3060 | (list (expand-file-name filename) 0)) | 3082 | (list (expand-file-name filename) 0)) |
| 3061 | (let ((local-copy (file-local-copy filename)) | 3083 | ;; `insert-file-contents-literally' takes care to avoid calling |
| 3084 | ;; jka-compr. By let-binding inhibit-file-name-operation, we | ||
| 3085 | ;; propagate that care to the file-local-copy operation. | ||
| 3086 | (let ((local-copy | ||
| 3087 | (let ((inhibit-file-name-operation 'file-local-copy)) | ||
| 3088 | (file-local-copy filename))) | ||
| 3062 | (coding-system-used nil) | 3089 | (coding-system-used nil) |
| 3063 | (result nil)) | 3090 | (result nil)) |
| 3064 | (when visit | 3091 | (when visit |
| @@ -3148,6 +3175,13 @@ This will break if COMMAND prints a newline, followed by the value of | |||
| 3148 | ;; _also_ specifies an encoding function, then that is used for | 3175 | ;; _also_ specifies an encoding function, then that is used for |
| 3149 | ;; encoding the contents of the tmp file. | 3176 | ;; encoding the contents of the tmp file. |
| 3150 | (cond (copy-program | 3177 | (cond (copy-program |
| 3178 | ;; The following should be changed. We need a more general | ||
| 3179 | ;; mechanism to parse extra host args. | ||
| 3180 | (when (string-match "\\([^#]*\\)#\\(.*\\)" host) | ||
| 3181 | (setq copy-args (cons "-p" (cons (match-string 2 host) | ||
| 3182 | rsh-args))) | ||
| 3183 | (setq host (match-string 1 host))) | ||
| 3184 | |||
| 3151 | ;; use rcp-like program for file transfer | 3185 | ;; use rcp-like program for file transfer |
| 3152 | (let ((argl (append copy-args | 3186 | (let ((argl (append copy-args |
| 3153 | (list | 3187 | (list |
| @@ -3411,29 +3445,41 @@ ARGS are the arguments OPERATION has been called with." | |||
| 3411 | (defun tramp-find-foreign-file-name-handler (filename) | 3445 | (defun tramp-find-foreign-file-name-handler (filename) |
| 3412 | "Return foreign file name handler if exists." | 3446 | "Return foreign file name handler if exists." |
| 3413 | (when (tramp-tramp-file-p filename) | 3447 | (when (tramp-tramp-file-p filename) |
| 3414 | (let (elt res) | 3448 | (let (elt |
| 3415 | (dolist (elt tramp-foreign-file-name-handler-alist res) | 3449 | res |
| 3450 | (handler-alist tramp-foreign-file-name-handler-alist)) | ||
| 3451 | (while handler-alist | ||
| 3452 | (setq elt (car handler-alist) | ||
| 3453 | handler-alist (cdr handler-alist)) | ||
| 3416 | (when (funcall (car elt) filename) | 3454 | (when (funcall (car elt) filename) |
| 3455 | (setq handler-alist nil) | ||
| 3417 | (setq res (cdr elt)))) | 3456 | (setq res (cdr elt)))) |
| 3418 | res))) | 3457 | res))) |
| 3419 | 3458 | ||
| 3420 | ;; Main function. | 3459 | ;; Main function. |
| 3421 | ;;;###autoload | 3460 | ;;;###autoload |
| 3422 | (defun tramp-file-name-handler (operation &rest args) | 3461 | (defun tramp-file-name-handler (operation &rest args) |
| 3423 | "Invoke tramp file name handler. | 3462 | "Invoke Tramp file name handler. |
| 3424 | Falls back to normal file name handler if no tramp file name handler exists." | 3463 | Falls back to normal file name handler if no tramp file name handler exists." |
| 3425 | (save-match-data | 3464 | (save-match-data |
| 3426 | (let* ((fn (assoc operation tramp-file-name-handler-alist)) | 3465 | (let* ((filename (apply 'tramp-file-name-for-operation operation args)) |
| 3427 | (filename (apply 'tramp-file-name-for-operation operation args)) | ||
| 3428 | (foreign (tramp-find-foreign-file-name-handler filename))) | 3466 | (foreign (tramp-find-foreign-file-name-handler filename))) |
| 3429 | (cond | 3467 | (cond |
| 3430 | (foreign (apply foreign operation args)) | 3468 | (foreign (apply foreign operation args)) |
| 3431 | (fn (apply (cdr fn) args)) | ||
| 3432 | (t (tramp-run-real-handler operation args)))))) | 3469 | (t (tramp-run-real-handler operation args)))))) |
| 3433 | 3470 | ||
| 3434 | ;;;###autoload | 3471 | ;;;###autoload |
| 3435 | (put 'tramp-file-name-handler 'file-remote-p t) ;for file-remote-p | 3472 | (put 'tramp-file-name-handler 'file-remote-p t) ;for file-remote-p |
| 3436 | 3473 | ||
| 3474 | (defun tramp-sh-file-name-handler (operation &rest args) | ||
| 3475 | "Invoke remote-shell Tramp file name handler. | ||
| 3476 | Fall back to normal file name handler if no Tramp handler exists." | ||
| 3477 | (save-match-data | ||
| 3478 | (let ((fn (assoc operation tramp-file-name-handler-alist))) | ||
| 3479 | (if fn | ||
| 3480 | (apply (cdr fn) args) | ||
| 3481 | (tramp-run-real-handler operation args))))) | ||
| 3482 | |||
| 3437 | ;;;###autoload | 3483 | ;;;###autoload |
| 3438 | (defun tramp-completion-file-name-handler (operation &rest args) | 3484 | (defun tramp-completion-file-name-handler (operation &rest args) |
| 3439 | "Invoke tramp file name completion handler. | 3485 | "Invoke tramp file name completion handler. |
| @@ -6097,18 +6143,28 @@ T1 and T2 are time values (as returned by `current-time' for example). | |||
| 6097 | NOTE: This function will fail if the time difference is too large to | 6143 | NOTE: This function will fail if the time difference is too large to |
| 6098 | fit in an integer." | 6144 | fit in an integer." |
| 6099 | ;; Pacify byte-compiler with `symbol-function'. | 6145 | ;; Pacify byte-compiler with `symbol-function'. |
| 6100 | (cond ((fboundp 'subtract-time) | 6146 | (cond ((and (fboundp 'subtract-time) |
| 6101 | (cadr (funcall (symbol-function 'subtract-time) t1 t2))) | 6147 | (fboundp 'float-time)) |
| 6148 | (funcall (symbol-function 'float-time) | ||
| 6149 | (funcall (symbol-function 'subtract-time) t1 t2))) | ||
| 6150 | ((and (fboundp 'subtract-time) | ||
| 6151 | (fboundp 'time-to-seconds)) | ||
| 6152 | (funcall (symbol-function 'time-to-seconds) | ||
| 6153 | (funcall (symbol-function 'subtract-time) t1 t2))) | ||
| 6102 | ((fboundp 'itimer-time-difference) | 6154 | ((fboundp 'itimer-time-difference) |
| 6103 | (floor (funcall | 6155 | (floor (funcall |
| 6104 | (symbol-function 'itimer-time-difference) | 6156 | (symbol-function 'itimer-time-difference) |
| 6105 | (if (< (length t1) 3) (append t1 '(0)) t1) | 6157 | (if (< (length t1) 3) (append t1 '(0)) t1) |
| 6106 | (if (< (length t2) 3) (append t2 '(0)) t2)))) | 6158 | (if (< (length t2) 3) (append t2 '(0)) t2)))) |
| 6107 | (t | 6159 | (t |
| 6108 | ;; snarfed from Emacs 21 time-date.el | 6160 | ;; snarfed from Emacs 21 time-date.el; combining |
| 6109 | (cadr (let ((borrow (< (cadr t1) (cadr t2)))) | 6161 | ;; time-to-seconds and subtract-time |
| 6162 | (let ((time (let ((borrow (< (cadr t1) (cadr t2)))) | ||
| 6110 | (list (- (car t1) (car t2) (if borrow 1 0)) | 6163 | (list (- (car t1) (car t2) (if borrow 1 0)) |
| 6111 | (- (+ (if borrow 65536 0) (cadr t1)) (cadr t2)))))))) | 6164 | (- (+ (if borrow 65536 0) (cadr t1)) (cadr t2)))))) |
| 6165 | (+ (* (car time) 65536.0) | ||
| 6166 | (cadr time) | ||
| 6167 | (/ (or (nth 2 time) 0) 1000000.0)))))) | ||
| 6112 | 6168 | ||
| 6113 | (defun tramp-coding-system-change-eol-conversion (coding-system eol-type) | 6169 | (defun tramp-coding-system-change-eol-conversion (coding-system eol-type) |
| 6114 | "Return a coding system like CODING-SYSTEM but with given EOL-TYPE. | 6170 | "Return a coding system like CODING-SYSTEM but with given EOL-TYPE. |
diff --git a/lisp/net/trampver.el b/lisp/net/trampver.el index b8175946c23..91c4cbb9b5e 100644 --- a/lisp/net/trampver.el +++ b/lisp/net/trampver.el | |||
| @@ -30,7 +30,7 @@ | |||
| 30 | ;; are auto-frobbed from configure.ac, so you should edit that file and run | 30 | ;; are auto-frobbed from configure.ac, so you should edit that file and run |
| 31 | ;; "autoconf && ./configure" to change them. | 31 | ;; "autoconf && ./configure" to change them. |
| 32 | 32 | ||
| 33 | (defconst tramp-version "2.0.34" | 33 | (defconst tramp-version "2.0.35" |
| 34 | "This version of Tramp.") | 34 | "This version of Tramp.") |
| 35 | 35 | ||
| 36 | (defconst tramp-bug-report-address "tramp-devel@mail.freesoftware.fsf.org" | 36 | (defconst tramp-bug-report-address "tramp-devel@mail.freesoftware.fsf.org" |