> Enter your bug report in this message,
> [...]
> Another useful thing to do is to put (setq tramp-debug-buffer t)
I did a "C-x C-e" ("... runs the command eval-last-sexp") right here,
is that alright?
Pls don't be angry with me ;-)
> in the ~/.emacs file and to repeat the bug.
> Then, include the contents of the *tramp/foo* buffer
> and the *debug tramp/foo* buffer
> in your bug report.
Pls find them attached!
--bug report follows this line--
1.) why is scp not used,
although it's available:
/usr/bin/scp
2.) Why is the perl-ish mime-encode being transmitted and used,
although there is the "true" mimencode:
/app/idsp22/cronus1/usr/local/bin/mimencode
And it's located in the same directory,
where tramp finds "GNU ls" through tramp-remote-path.
info> These methods depend on the existence of a suitable encoding and
info> decoding command on remote machine. Locally, @tramp{} may be able to use
info> features of Emacs to decode and encode the files or it may require
info> access to external commands to perform that task.
info> @cindex uuencode
info> @cindex mimencode
info> @cindex base-64 encoding
info> @tramp{} checks the availability and usability of commands like
info> @command{mimencode} (part of the @command{metamail} package) or
info> @command{uuencode} on the remote host. The first reliable command
info> will be used. The search path can be customized, see @ref{Remote
info> Programs}.
Emacs : GNU Emacs 21.2.1 (i586-suse-linux, X toolkit, Xaw3d scroll bars)
of 2002-09-11 on amdsimb
Package: tramp (2.0.29)
current state:
==============
(setq
tramp-ls-command nil
tramp-test-groks-nt nil
tramp-file-exists-command nil
tramp-current-multi-method nil
tramp-current-method nil
tramp-current-user nil
tramp-current-host nil
tramp-auto-save-directory nil
tramp-default-method "scp"
tramp-rsh-end-of-line "\n"
tramp-password-end-of-line "\n"
tramp-remote-path '("/app/idsp22/cronus1/usr/local/bin" "/bin" "/usr/bin" "/usr/sbin"
"/usr/local/bin" "/usr/ccs/bin" "/local/bin" "/local/freeware/bin" "/local/gnu/bin"
"/usr/freeware/bin" "/usr/pkg/bin" "/usr/contrib/bin")
tramp-login-prompt-regexp ".*ogin: *"
tramp-password-prompt-regexp "^.*\\([pP]assword\\|passphrase.*\\): ? *"
tramp-wrong-passwd-regexp "^.*\\(Connection \\(?:\\(?:clo\\|refu\\)sed\\)\\|Host key
verification failed\\.\\|Login \\(?:[Ii]ncorrect\\)\\|Name or service not
known\\|\\(?:Permission denied\\|Sorry, try again\\)\\.\\).*\\|^.*\\(Received signal
[0-9]+\\).*"
tramp-yesno-prompt-regexp "\\(Are you sure you want to continue connecting
(yes/no)\\?\\)\\s-*"
tramp-yn-prompt-regexp "\\(Store key in cache\\? (y/n)\\)\\s-*"
tramp-temp-name-prefix "tramp."
tramp-file-name-structure '("^/\\(\\([a-zA-Z_0-9-]+\\):\\)?\\(\\([^:@/
]*\\)@\\)?\\([a-zA-Z0-9_.#-]*\\):\\(.*$\\)" 2 4 5 6)
tramp-file-name-regexp "\\`/[^/:]+:"
tramp-multi-file-name-structure
'("^/\\(\\([a-zA-Z_0-9-]+\\)\\)?\\(\\(:%s\\)+\\)?:\\(.*$\\)" 2 3 -1)
tramp-multi-file-name-hop-structure '("\\([a-zA-Z_0-9-]+\\):\\([^:@/
]*\\)@\\([a-zA-Z0-9_.#-]*\\)" 1 2 3)
tramp-multi-methods '("multi" "multiu")
tramp-multi-connection-function-alist '(("telnet" tramp-multi-connect-telnet "telnet
%h%n") ("rsh" tramp-multi-connect-rlogin "rsh %h -l %u%n")
("ssh" tramp-multi-connect-rlogin "ssh %h -l
%u%n") ("su" tramp-multi-connect-su "su - %u%n")
("sudo" tramp-multi-connect-su "sudo -u %u
-s%n"))
tramp-methods '(("smb") ("ftp")
("rcp" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "rsh") (tramp-rcp-program "rcp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg "-p")
(tramp-su-program nil) (tramp-su-args nil) (tramp-telnet-program nil)
(tramp-telnet-args nil))
("scp" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program "scp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("scp1" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program "scp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-1" "-e" "none")) (tramp-rcp-args ("-1"))
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("scp2" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program "scp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-2" "-e" "none")) (tramp-rcp-args ("-2"))
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("scp1_old" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh1") (tramp-rcp-program "scp1") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("scp2_old" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh2") (tramp-rcp-program "scp2") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("rsync" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program "rsync") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args ("-e" "ssh"))
(tramp-rcp-keep-date-arg "-t") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("rsh" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "rsh") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program
nil) (tramp-su-args nil) (tramp-telnet-program nil) (tramp-telnet-args nil))
("ssh" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("ssh1" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-1" "-e" "none")) (tramp-rcp-args ("-1"))
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("ssh2" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-2" "-e" "none")) (tramp-rcp-args ("-2"))
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("ssh1_old" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh1") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("ssh2_old" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh2") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("telnet" (tramp-connection-function tramp-open-connection-telnet)
(tramp-rsh-program nil) (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program
nil) (tramp-su-args nil) (tramp-telnet-program "telnet") (tramp-telnet-args nil))
("su" (tramp-connection-function tramp-open-connection-su)
(tramp-rsh-program nil) (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program
"su") (tramp-su-args ("-" "%u")) (tramp-telnet-program nil) (tramp-telnet-args nil))
("sudo" (tramp-connection-function tramp-open-connection-su)
(tramp-rsh-program nil) (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program
"sudo") (tramp-su-args ("-u" "%u" "-s")) (tramp-telnet-program nil) (tramp-telnet-args
nil))
("multi" (tramp-connection-function tramp-open-connection-multi)
(tramp-rsh-program nil) (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args nil)
(tramp-rcp-args nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program
nil) (tramp-su-args nil) (tramp-telnet-program nil) (tramp-telnet-args nil))
("scpx" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program "scp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none" "-t" "-t" "/bin/sh")) (tramp-rcp-args
nil) (tramp-rcp-keep-date-arg "-p") (tramp-telnet-program nil) (tramp-telnet-args nil))
("sshx" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "ssh") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-e" "none" "-t" "-t" "/bin/sh")) (tramp-rcp-args
nil) (tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil) (tramp-telnet-args nil))
("krlogin" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "krlogin") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-x")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("plink" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "plink") (tramp-rcp-program nil) (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-ssh")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg nil) (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("pscp" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "plink") (tramp-rcp-program "pscp") (tramp-remote-sh "/bin/sh")
(tramp-rsh-args ("-ssh")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
("fcp" (tramp-connection-function tramp-open-connection-rsh)
(tramp-rsh-program "fsh") (tramp-rcp-program "fcp") (tramp-remote-sh "/bin/sh -i")
(tramp-rsh-args ("sh" "-i")) (tramp-rcp-args nil)
(tramp-rcp-keep-date-arg "-p") (tramp-su-program nil) (tramp-su-args nil)
(tramp-telnet-program nil)
(tramp-telnet-args nil))
)
tramp-end-of-output "///2f893233073d914e69e021d99eda3d08"
tramp-coding-commands '(("mimencode -b" "mimencode -u -b" base64-encode-region
base64-decode-region) ("mmencode -b" "mmencode -u -b" base64-encode-region
base64-decode-region)
("recode data..base64" "recode base64..data"
base64-encode-region base64-decode-region)
("uuencode xxx" "uudecode -o -" tramp-uuencode-region
uudecode-decode-region) ("uuencode xxx" "uudecode -p" tramp-uuencode-region
uudecode-decode-region)
("uuencode xxx" "tramp_uudecode" tramp-uuencode-region
uudecode-decode-region)
("tramp_encode_with_module" "tramp_decode_with_module"
base64-encode-region base64-decode-region)
("tramp_encode" "tramp_decode" base64-encode-region
base64-decode-region))
tramp-actions-before-shell '((tramp-password-prompt-regexp tramp-action-password)
(tramp-login-prompt-regexp tramp-action-login) (shell-prompt-pattern
tramp-action-succeed)
(tramp-shell-prompt-pattern tramp-action-succeed)
(tramp-wrong-passwd-regexp tramp-action-permission-denied)
(tramp-yesno-prompt-regexp tramp-action-yesno)
(tramp-yn-prompt-regexp tramp-action-yn) (tramp-terminal-prompt-regexp
tramp-action-terminal))
tramp-multi-actions '((tramp-password-prompt-regexp tramp-multi-action-password)
(tramp-login-prompt-regexp tramp-multi-action-login)
(shell-prompt-pattern tramp-multi-action-succeed)
(tramp-shell-prompt-pattern tramp-multi-action-succeed)
(tramp-wrong-passwd-regexp
tramp-multi-action-permission-denied))
tramp-terminal-type "dumb"
tramp-shell-prompt-pattern "^[^#$%>\n]*[#$%>] *"
shell-prompt-pattern "^[^#$%>\n]*[#$%>] *"
backup-by-copying nil
backup-by-copying-when-linked nil
backup-by-copying-when-mismatch nil
backup-by-copying-when-privileged-mismatch 200
file-name-handler-alist '(("^/[^/]*$" . tramp-completion-file-name-handler)
("\\`/[^/:]+:" . tramp-file-name-handler) ("\\`/:" . file-name-non-special))
)
(t 3 42288 132 (15946 15590) (15945 22576) (15945 22576) 512 16877 t (82 . 51200) -1)
# Opening connection for [EMAIL PROTECTED] using nil...
# Waiting for prompts from remote shell
# Waiting 60s for prompt from remote shell
# Found remote shell prompt.
# Initializing remote shell
$ exec env PS1='$ ' /bin/sh
# Waiting 30s for remote `/bin/sh' to come up...
couldn't set locale correctly
$ # Setting up remote shell environment
$ $ # Determining coding system
foo
bar
$ # Waiting 30s for `HISTFILE=$HOME/.tramp_history; HISTSIZE=1'
$ # Waiting 30s for `set +o vi +o emacs'
$ # Waiting 30s for `unset MAIL MAILCHECK MAILPATH'
$ # Waiting 30s for `unset CDPATH'
$ # Setting shell prompt
$ PS1='
///2f893233073d914e69e021d99eda3d08
'; PS2=''; PS3=''
$ echo ~root
~root
$ while read d; do if test -x $d/bash -a -f $d/bash; then echo tramp_executable
$d/bash; break; fi; done <<'EOF'
$ /app/idsp22/cronus1/usr/local/bin
$ /bin
$ /usr/bin
$ /usr/sbin
$ /usr/local/bin
$ /usr/ccs/bin
$ /local/bin
$ /local/freeware/bin
$ /local/gnu/bin
$ /usr/freeware/bin
$ /usr/pkg/bin
$ /usr/contrib/bin
$ EOF
tramp_executable /bin/bash
# Starting remote shell `/bin/bash -norc -noprofile' for tilde expansion...
$ PS1='$ ' exec /bin/bash -norc -noprofile
$ # Setting remote shell prompt...
# Setting remote shell prompt...done
# Finding command to check if file exists
$ test -e / 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ test -e /\ this\ file\ does\ not\ exist\ 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
# Finding a suitable `ls' command
# Checking remote `/app/idsp22/cronus1/usr/local/bin/ls' command for `-n' option
$ test -x /app/idsp22/cronus1/usr/local/bin/ls 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
# Testing remote command `/app/idsp22/cronus1/usr/local/bin/ls' for -n...
$ /app/idsp22/cronus1/usr/local/bin/ls -lnd / >/dev/null 2>/dev/null; echo
tramp_exit_status $?
tramp_exit_status 0
# Testing remote command `/app/idsp22/cronus1/usr/local/bin/ls' for -n...okay
# Using remote command `/app/idsp22/cronus1/usr/local/bin/ls' for getting directory
listings
$ tramp_set_exit_status () {
return $1
}
$ test -e /app/idsp22/cronus1/usr/local/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /app/idsp22/cronus1/usr/local/bin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /bin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /usr/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /usr/bin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /usr/sbin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /usr/sbin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /usr/local/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /usr/local/bin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /usr/ccs/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 0
$ ( test -d /usr/ccs/bin 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
$ test -e /local/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /local/freeware/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /local/gnu/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /usr/freeware/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /usr/pkg/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$ test -e /usr/contrib/bin 2>/dev/null; echo tramp_exit_status $?
tramp_exit_status 1
$
PATH=/app/idsp22/cronus1/usr/local/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/ccs/bin;
export PATH
$ LC_TIME=C; export LC_TIME; echo huhu
huhu
$ mesg n; echo huhu
huhu
$ biff n ; echo huhu
bash: biff: command not found
huhu
$ unalias ls; echo huhu
bash: unalias: `ls': not an alias
huhu
$ ( test / -nt / )
$ tramp_test_nt () {
test -n "`find $1 -prune -newer $2 -print`"
}
$ tramp_uudecode () {
(echo begin 600 /tmp/tramp.$$; tail +2) | uudecode
cat /tmp/tramp.$$
rm -f /tmp/tramp.$$
}
$ while read d; do if test -x $d/perl5 -a -f $d/perl5; then echo tramp_executable
$d/perl5; break; fi; done <<'EOF'
$ /app/idsp22/cronus1/usr/local/bin
$ /bin
$ /usr/bin
$ /usr/sbin
$ /usr/local/bin
$ /usr/ccs/bin
$ /local/bin
$ /local/freeware/bin
$ /local/gnu/bin
$ /usr/freeware/bin
$ /usr/pkg/bin
$ /usr/contrib/bin
$ EOF
$ while read d; do if test -x $d/perl -a -f $d/perl; then echo tramp_executable
$d/perl; break; fi; done <<'EOF'
$ /app/idsp22/cronus1/usr/local/bin
$ /bin
$ /usr/bin
$ /usr/sbin
$ /usr/local/bin
$ /usr/ccs/bin
$ /local/bin
$ /local/freeware/bin
$ /local/gnu/bin
$ /usr/freeware/bin
$ /usr/pkg/bin
$ /usr/contrib/bin
$ EOF
tramp_executable /app/idsp22/cronus1/usr/local/bin/perl
# Sending the Perl `file-attributes' implementation.
$ tramp_file_attributes () {
/app/idsp22/cronus1/usr/local/bin/perl -e '$f = $ARGV[0];
@s = lstat($f);
if (($s[2] & 0170000) == 0120000) { $l = readlink($f); $l = "\"$l\""; }
elsif (($s[2] & 0170000) == 040000) { $l = "t"; }
else { $l = "nil" };
printf("(%s %u %d %d (%u %u) (%u %u) (%u %u) %u %u t (%u . %u) -1)\n",
$l, $s[3], $s[4], $s[5], $s[8] >> 16 & 0xffff, $s[8] & 0xffff,
$s[9] >> 16 & 0xffff, $s[9] & 0xffff, $s[10] >> 16 & 0xffff, $s[10] & 0xffff,
$s[7], $s[2], $s[1] >> 16 & 0xffff, $s[1] & 0xffff);' $1 2>/dev/null
}
# Sending the Perl `mime-encode' implementations.
$ tramp_encode () {
/app/idsp22/cronus1/usr/local/bin/perl -e '
# This script contributed by Juanma Barranquero <[EMAIL PROTECTED]>.
# Copyright (C) 2002 Free Software Foundation, Inc.
use strict;
my %trans = do {
my $i = 0;
map {(substr(unpack(q(B8), chr $i++), 2, 6), $_)}
split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/);
};
binmode(\*STDIN);
# We read in chunks of 54 bytes, to generate output lines
# of 72 chars (plus end of line)
$/ = \54;
while (my $data = <STDIN>) {
my $pad = q();
# Only for the last chunk, and only if did not fill the last three-byte packet
if (eof) {
my $mod = length($data) % 3;
$pad = q(=) x (3 - $mod) if $mod;
}
# Not the fastest method, but it is simple: unpack to binary string, split
# by groups of 6 bits and convert back from binary to byte; then map into
# the translation table
print
join q(),
map($trans{$_},
(substr(unpack(q(B*), $data) . q(00000), 0, 432) =~ /....../g)),
$pad,
qq(\n);
}
' 2>/dev/null
}
$ tramp_encode_with_module () {
perl -MMIME::Base64 -0777 -ne 'print encode_base64($_)' 2>/dev/null
}
# Sending the Perl `mime-decode' implementations.
$ tramp_decode () {
/app/idsp22/cronus1/usr/local/bin/perl -e '
# This script contributed by Juanma Barranquero <[EMAIL PROTECTED]>.
# Copyright (C) 2002 Free Software Foundation, Inc.
use strict;
my %trans = do {
my $i = 0;
map {($_, substr(unpack(q(B8), chr $i++), 2, 6))}
split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/)
};
my %bytes = map {(unpack(q(B8), chr $_), chr $_)} 0 .. 255;
binmode(\*STDOUT);
# We are going to accumulate into $pending to accept any line length
# (we do not check they are <= 76 chars as the RFC says)
my $pending = q();
while (my $data = <STDIN>) {
chomp $data;
# If we find one or two =, we have reached the end and
# any following data is to be discarded
my $finished = $data =~ s/(==?).*/$1/;
$pending .= $data;
my $len = length($pending);
my $chunk = substr($pending, 0, $len & ~3);
# Easy method: translate from chars to (pregenerated) six-bit packets, join,
# split in 8-bit chunks and convert back to char.
print join q(),
map $bytes{$_},
((join q(), map {$trans{$_} || q()} split //, $chunk) =~ /......../g);
last if $finished;
}
' 2>/dev/null
}
$ tramp_decode_with_module () {
perl -MMIME::Base64 -0777 -ne 'print decode_base64($_)' 2>/dev/null
}
$ while read d; do if test -x $d/ln -a -f $d/ln; then echo tramp_executable $d/ln;
break; fi; done <<'EOF'
$ /app/idsp22/cronus1/usr/local/bin
$ /bin
$ /usr/bin
$ /usr/sbin
$ /usr/local/bin
$ /usr/ccs/bin
$ /local/bin
$ /local/freeware/bin
$ /local/gnu/bin
$ /usr/freeware/bin
$ /usr/pkg/bin
$ /usr/contrib/bin
$ EOF
tramp_executable /app/idsp22/cronus1/usr/local/bin/ln
# Checking remote encoding command `mimencode -b' for sanity
$ ( mimencode -b </dev/null 2>/dev/null; echo tramp_exit_status $? )
tramp_exit_status 0
# Checking remote decoding command `mimencode -u -b' for sanity
$ ( echo xyzzy | mimencode -b | mimencode -u -b 2>/dev/null; echo tramp_exit_status $?
)
xyzzy
tramp_exit_status 0
# Checking to see if encoding/decoding commands work on remote host...
$ echo xyzzy | mimencode -b | mimencode -u -b
xyzzy
# Checking to see if encoding/decoding commands work on remote host...done
$ /app/idsp22/cronus1/usr/local/bin/ls -al
/app/idse22/cronus/usr/local/cronus/etc/bloomberg-bulk-COMMON/.
total 69
drwxr-xr-x+ 3 cronus cronus 512 Feb 11 21:08 .
drwxr-xr-x+ 30 cronus cronus 1536 Jan 30 18:57 ..
-rw-r--r-- 1 cronus cronus 6905 Oct 2 15:03 0
drwxr-xr-x+ 2 cronus cronus 512 Feb 10 23:37 RCS
-r--r--r-- 1 cronus cronus 450 Jan 30 19:02 TOC
-rw-r--r-- 1 cronus cronus 279 Jan 30 19:00 TOC.~1~
-rw-r--r-- 1 gaa7325 allianz 7759 Feb 6 23:36 corp_acts__fame2oracle.cfg
-rwxr--r-- 1 gaa7325 allianz 11188 Feb 11 16:29 corp_acts__fame2oracle.pl
-rwxr-xr-x 1 gaa7325 allianz 411 Feb 11 21:08 corp_acts__fame2oracle.sh
-rwxr-xr-x 1 gaa7325 allianz 407 Feb 11 16:14 corp_acts__fame2oracle.sh.~1~
-r-xr-xr-x 1 cronus cronus 521 Oct 2 20:00 data_range__print.sh
-r-xr-xr-x 1 cronus cronus 3435 Oct 2 23:54 gen_headers.sh
-r-xr-xr-x 1 cronus cronus 4457 Jan 31 11:22
load-files--region-parallelized--no-basename.sh
-r-xr-xr-x 1 cronus cronus 4853 Jan 31 11:22
load-files--region-parallelized.sh
-r-xr-xr-x 1 cronus cronus 5541 Feb 10 23:37 load-files.sh
-r-xr-xr-x 1 cronus cronus 2445 Jan 30 17:47 search-string-in-column.sh
-rwxr-xr-x 1 cronus cronus 10951 Oct 3 14:55
utility_treating_identical_headers.sh
$ cd
$ test -e /app/idse22/cronus/usr/local/cronus/etc/bloomberg-bulk-COMMON/ 2>/dev/null;
echo tramp_exit_status $?
tramp_exit_status 0
$ tramp_file_attributes /app/idse22/cronus/usr/local/cronus/etc/bloomberg-bulk-COMMON/
(t 3 42288 132 (15946 15590) (15945 22576) (15945 22576) 512 16877 t (82 . 51200) -1)
_______________________________________________
Tramp-devel mailing list
[EMAIL PROTECTED]
http://mail.nongnu.org/mailman/listinfo/tramp-devel