diff options
| author | Michael Albinus | 2010-05-19 20:56:18 +0200 |
|---|---|---|
| committer | Michael Albinus | 2010-05-19 20:56:18 +0200 |
| commit | a7723e050fc719e94af39790067cf47c5d0dceec (patch) | |
| tree | 553c95cf3e518783b5864c981baabd2429870075 | |
| parent | 3f2e77354eac82e0578242340825de48b631add5 (diff) | |
| download | emacs-a7723e050fc719e94af39790067cf47c5d0dceec.tar.gz emacs-a7723e050fc719e94af39790067cf47c5d0dceec.zip | |
* net/tramp.el (tramp-methods): Add `tramp-async-args' attribute
where appropriate.
(tramp-maybe-open-connection): Use it.
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 28 |
2 files changed, 32 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9658ccb6f15..c6c0339e150 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2010-05-19 Michael Albinus <michael.albinus@gmx.de> | ||
| 2 | |||
| 3 | * net/tramp.el (tramp-methods): Add `tramp-async-args' attribute | ||
| 4 | where appropriate. | ||
| 5 | (tramp-maybe-open-connection): Use it. | ||
| 6 | |||
| 1 | 2010-05-19 Eli Zaretskii <eliz@gnu.org> | 7 | 2010-05-19 Eli Zaretskii <eliz@gnu.org> |
| 2 | 8 | ||
| 3 | * simple.el (move-end-of-line): Make sure we are at line beginning | 9 | * simple.el (move-end-of-line): Make sure we are at line beginning |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index c5addae8e5d..9d4fa8b737d 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -334,6 +334,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 334 | ("scp" (tramp-login-program "ssh") | 334 | ("scp" (tramp-login-program "ssh") |
| 335 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 335 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 336 | ("-e" "none"))) | 336 | ("-e" "none"))) |
| 337 | (tramp-async-args (("-q"))) | ||
| 337 | (tramp-remote-sh "/bin/sh") | 338 | (tramp-remote-sh "/bin/sh") |
| 338 | (tramp-copy-program "scp") | 339 | (tramp-copy-program "scp") |
| 339 | (tramp-copy-args (("-P" "%p") ("-p" "%k") | 340 | (tramp-copy-args (("-P" "%p") ("-p" "%k") |
| @@ -349,6 +350,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 349 | ("scp1" (tramp-login-program "ssh") | 350 | ("scp1" (tramp-login-program "ssh") |
| 350 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 351 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 351 | ("-1" "-e" "none"))) | 352 | ("-1" "-e" "none"))) |
| 353 | (tramp-async-args (("-q"))) | ||
| 352 | (tramp-remote-sh "/bin/sh") | 354 | (tramp-remote-sh "/bin/sh") |
| 353 | (tramp-copy-program "scp") | 355 | (tramp-copy-program "scp") |
| 354 | (tramp-copy-args (("-1") ("-P" "%p") ("-p" "%k") | 356 | (tramp-copy-args (("-1") ("-P" "%p") ("-p" "%k") |
| @@ -364,6 +366,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 364 | ("scp2" (tramp-login-program "ssh") | 366 | ("scp2" (tramp-login-program "ssh") |
| 365 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 367 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 366 | ("-2" "-e" "none"))) | 368 | ("-2" "-e" "none"))) |
| 369 | (tramp-async-args (("-q"))) | ||
| 367 | (tramp-remote-sh "/bin/sh") | 370 | (tramp-remote-sh "/bin/sh") |
| 368 | (tramp-copy-program "scp") | 371 | (tramp-copy-program "scp") |
| 369 | (tramp-copy-args (("-2") ("-P" "%p") ("-p" "%k") | 372 | (tramp-copy-args (("-2") ("-P" "%p") ("-p" "%k") |
| @@ -399,6 +402,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 399 | ("sftp" (tramp-login-program "ssh") | 402 | ("sftp" (tramp-login-program "ssh") |
| 400 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 403 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 401 | ("-e" "none"))) | 404 | ("-e" "none"))) |
| 405 | (tramp-async-args (("-q"))) | ||
| 402 | (tramp-remote-sh "/bin/sh") | 406 | (tramp-remote-sh "/bin/sh") |
| 403 | (tramp-copy-program "sftp") | 407 | (tramp-copy-program "sftp") |
| 404 | (tramp-copy-args nil) | 408 | (tramp-copy-args nil) |
| @@ -407,6 +411,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 407 | ("rsync" (tramp-login-program "ssh") | 411 | ("rsync" (tramp-login-program "ssh") |
| 408 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 412 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 409 | ("-e" "none"))) | 413 | ("-e" "none"))) |
| 414 | (tramp-async-args (("-q"))) | ||
| 410 | (tramp-remote-sh "/bin/sh") | 415 | (tramp-remote-sh "/bin/sh") |
| 411 | (tramp-copy-program "rsync") | 416 | (tramp-copy-program "rsync") |
| 412 | (tramp-copy-args (("-e" "ssh") ("-t" "%k") ("-r"))) | 417 | (tramp-copy-args (("-e" "ssh") ("-t" "%k") ("-r"))) |
| @@ -420,6 +425,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 420 | ("-o" "ControlPath=%t.%%r@%%h:%%p") | 425 | ("-o" "ControlPath=%t.%%r@%%h:%%p") |
| 421 | ("-o" "ControlMaster=yes") | 426 | ("-o" "ControlMaster=yes") |
| 422 | ("-e" "none"))) | 427 | ("-e" "none"))) |
| 428 | (tramp-async-args (("-q"))) | ||
| 423 | (tramp-remote-sh "/bin/sh") | 429 | (tramp-remote-sh "/bin/sh") |
| 424 | (tramp-copy-program "rsync") | 430 | (tramp-copy-program "rsync") |
| 425 | (tramp-copy-args (("-t" "%k") ("-r"))) | 431 | (tramp-copy-args (("-t" "%k") ("-r"))) |
| @@ -449,6 +455,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 449 | ("ssh" (tramp-login-program "ssh") | 455 | ("ssh" (tramp-login-program "ssh") |
| 450 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 456 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 451 | ("-e" "none"))) | 457 | ("-e" "none"))) |
| 458 | (tramp-async-args (("-q"))) | ||
| 452 | (tramp-remote-sh "/bin/sh") | 459 | (tramp-remote-sh "/bin/sh") |
| 453 | (tramp-copy-program nil) | 460 | (tramp-copy-program nil) |
| 454 | (tramp-copy-args nil) | 461 | (tramp-copy-args nil) |
| @@ -462,6 +469,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 462 | ("ssh1" (tramp-login-program "ssh") | 469 | ("ssh1" (tramp-login-program "ssh") |
| 463 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 470 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 464 | ("-1" "-e" "none"))) | 471 | ("-1" "-e" "none"))) |
| 472 | (tramp-async-args (("-q"))) | ||
| 465 | (tramp-remote-sh "/bin/sh") | 473 | (tramp-remote-sh "/bin/sh") |
| 466 | (tramp-copy-program nil) | 474 | (tramp-copy-program nil) |
| 467 | (tramp-copy-args nil) | 475 | (tramp-copy-args nil) |
| @@ -475,6 +483,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 475 | ("ssh2" (tramp-login-program "ssh") | 483 | ("ssh2" (tramp-login-program "ssh") |
| 476 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 484 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 477 | ("-2" "-e" "none"))) | 485 | ("-2" "-e" "none"))) |
| 486 | (tramp-async-args (("-q"))) | ||
| 478 | (tramp-remote-sh "/bin/sh") | 487 | (tramp-remote-sh "/bin/sh") |
| 479 | (tramp-copy-program nil) | 488 | (tramp-copy-program nil) |
| 480 | (tramp-copy-args nil) | 489 | (tramp-copy-args nil) |
| @@ -489,6 +498,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 489 | (tramp-login-program "ssh1") | 498 | (tramp-login-program "ssh1") |
| 490 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 499 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 491 | ("-e" "none"))) | 500 | ("-e" "none"))) |
| 501 | (tramp-async-args (("-q"))) | ||
| 492 | (tramp-remote-sh "/bin/sh") | 502 | (tramp-remote-sh "/bin/sh") |
| 493 | (tramp-copy-program nil) | 503 | (tramp-copy-program nil) |
| 494 | (tramp-copy-args nil) | 504 | (tramp-copy-args nil) |
| @@ -539,6 +549,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 539 | ("-o" "ControlPath=%t.%%r@%%h:%%p") | 549 | ("-o" "ControlPath=%t.%%r@%%h:%%p") |
| 540 | ("-o" "ControlMaster=yes") | 550 | ("-o" "ControlMaster=yes") |
| 541 | ("-e" "none"))) | 551 | ("-e" "none"))) |
| 552 | (tramp-async-args (("-q"))) | ||
| 542 | (tramp-remote-sh "/bin/sh") | 553 | (tramp-remote-sh "/bin/sh") |
| 543 | (tramp-copy-program "scp") | 554 | (tramp-copy-program "scp") |
| 544 | (tramp-copy-args (("-P" "%p") ("-p" "%k") ("-q") | 555 | (tramp-copy-args (("-P" "%p") ("-p" "%k") ("-q") |
| @@ -554,6 +565,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 554 | ("scpx" (tramp-login-program "ssh") | 565 | ("scpx" (tramp-login-program "ssh") |
| 555 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 566 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 556 | ("-e" "none" "-t" "-t" "/bin/sh"))) | 567 | ("-e" "none" "-t" "-t" "/bin/sh"))) |
| 568 | (tramp-async-args (("-q"))) | ||
| 557 | (tramp-remote-sh "/bin/sh") | 569 | (tramp-remote-sh "/bin/sh") |
| 558 | (tramp-copy-program "scp") | 570 | (tramp-copy-program "scp") |
| 559 | (tramp-copy-args (("-p" "%k"))) | 571 | (tramp-copy-args (("-p" "%k"))) |
| @@ -567,6 +579,7 @@ detected as prompt when being sent on echoing hosts, therefore.") | |||
| 567 | ("sshx" (tramp-login-program "ssh") | 579 | ("sshx" (tramp-login-program "ssh") |
| 568 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") | 580 | (tramp-login-args (("%h") ("-l" "%u") ("-p" "%p") |
| 569 | ("-e" "none" "-t" "-t" "/bin/sh"))) | 581 | ("-e" "none" "-t" "-t" "/bin/sh"))) |
| 582 | (tramp-async-args (("-q"))) | ||
| 570 | (tramp-remote-sh "/bin/sh") | 583 | (tramp-remote-sh "/bin/sh") |
| 571 | (tramp-copy-program nil) | 584 | (tramp-copy-program nil) |
| 572 | (tramp-copy-args nil) | 585 | (tramp-copy-args nil) |
| @@ -672,6 +685,11 @@ pair of the form (KEY VALUE). The following KEYs are defined: | |||
| 672 | \"%t\" is replaced by the temporary file name produced with | 685 | \"%t\" is replaced by the temporary file name produced with |
| 673 | `tramp-make-tramp-temp-file'. \"%k\" indicates the keep-date | 686 | `tramp-make-tramp-temp-file'. \"%k\" indicates the keep-date |
| 674 | parameter of a program, if exists. | 687 | parameter of a program, if exists. |
| 688 | * `tramp-async-args' | ||
| 689 | When an asynchronous process is started, we know already that | ||
| 690 | the connection works. Therefore, we can pass additional | ||
| 691 | parameters to suppress diagnostic messages, in order not to | ||
| 692 | tamper the process output. | ||
| 675 | * `tramp-copy-program' | 693 | * `tramp-copy-program' |
| 676 | This specifies the name of the program to use for remotely copying | 694 | This specifies the name of the program to use for remotely copying |
| 677 | the file; this might be the absolute filename of rcp or the name of | 695 | the file; this might be the absolute filename of rcp or the name of |
| @@ -7380,6 +7398,7 @@ Does not do anything if a connection is already open, but re-opens the | |||
| 7380 | connection if a previous connection has died for some reason." | 7398 | connection if a previous connection has died for some reason." |
| 7381 | (catch 'uname-changed | 7399 | (catch 'uname-changed |
| 7382 | (let ((p (tramp-get-connection-process vec)) | 7400 | (let ((p (tramp-get-connection-process vec)) |
| 7401 | (process-name (tramp-get-connection-property vec "process-name" nil)) | ||
| 7383 | (process-environment (copy-sequence process-environment))) | 7402 | (process-environment (copy-sequence process-environment))) |
| 7384 | 7403 | ||
| 7385 | ;; If too much time has passed since last command was sent, look | 7404 | ;; If too much time has passed since last command was sent, look |
| @@ -7439,8 +7458,7 @@ connection if a previous connection has died for some reason." | |||
| 7439 | (p (let ((default-directory | 7458 | (p (let ((default-directory |
| 7440 | (tramp-compat-temporary-file-directory))) | 7459 | (tramp-compat-temporary-file-directory))) |
| 7441 | (start-process | 7460 | (start-process |
| 7442 | (or (tramp-get-connection-property vec "process-name" nil) | 7461 | (or process-name (tramp-buffer-name vec)) |
| 7443 | (tramp-buffer-name vec)) | ||
| 7444 | (tramp-get-connection-buffer vec) | 7462 | (tramp-get-connection-buffer vec) |
| 7445 | tramp-encoding-shell)))) | 7463 | tramp-encoding-shell)))) |
| 7446 | 7464 | ||
| @@ -7464,6 +7482,8 @@ connection if a previous connection has died for some reason." | |||
| 7464 | (tramp-get-method-parameter l-method 'tramp-login-program)) | 7482 | (tramp-get-method-parameter l-method 'tramp-login-program)) |
| 7465 | (login-args | 7483 | (login-args |
| 7466 | (tramp-get-method-parameter l-method 'tramp-login-args)) | 7484 | (tramp-get-method-parameter l-method 'tramp-login-args)) |
| 7485 | (async-args | ||
| 7486 | (tramp-get-method-parameter l-method 'tramp-async-args)) | ||
| 7467 | (gw-args | 7487 | (gw-args |
| 7468 | (tramp-get-method-parameter l-method 'tramp-gw-args)) | 7488 | (tramp-get-method-parameter l-method 'tramp-gw-args)) |
| 7469 | (gw (tramp-get-file-property hop "" "gateway" nil)) | 7489 | (gw (tramp-get-file-property hop "" "gateway" nil)) |
| @@ -7485,6 +7505,10 @@ connection if a previous connection has died for some reason." | |||
| 7485 | (tramp-compat-temporary-file-directory))))) | 7505 | (tramp-compat-temporary-file-directory))))) |
| 7486 | spec) | 7506 | spec) |
| 7487 | 7507 | ||
| 7508 | ;; Add arguments for asynchrononous processes. | ||
| 7509 | (when (and process-name async-args) | ||
| 7510 | (setq login-args (append login-args async-args))) | ||
| 7511 | |||
| 7488 | ;; Add gateway arguments if necessary. | 7512 | ;; Add gateway arguments if necessary. |
| 7489 | (when (and gw gw-args) | 7513 | (when (and gw gw-args) |
| 7490 | (setq login-args (append login-args gw-args))) | 7514 | (setq login-args (append login-args gw-args))) |