GNU bug report logs -
#35639
27.0.50; tramp fails to use ssh on LibreCMC (no base64 encoder available, and not mentioned in tramp manual)
Previous Next
Reported by: Jeronimo Pellegrini <j_p <at> aleph0.info>
Date: Wed, 8 May 2019 16:39:02 UTC
Severity: normal
Tags: patch
Merged with 35473
Found in version 27.0.50
Fixed in version 27.2
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Jeronimo Pellegrini <j_p <at> aleph0.info> writes:
> Hello Michael,
Hi Jeronimo,
>> > +(defconst tramp-hexdump-awk-coding-test
>> > + "test -c /dev/zero && \
>> > +busybox hexdump -v -e '16/1 \" %02x\" \"\\n\"' < /dev/null && \
>>
>> This must be "hexdump", not "busybox hexdump".
>
> The original tramp-awk-encode uses "busybux awk". Is there a particular
> reason for that, or could it also be changed to "awk"?
I don't remember exactly, but I believe there was a reason. Likely, a
simple "awk" didn't work, but "busybox awk" did. On whatever test machine.
> and so on, so if busybox is called and argv[0] is "awk" it knows
> the user's intention. So, using "busybox awk" and "busybox hexdump"
> would guarantee that this encoding scheme works on devices where the
> symlinks are not available (I've never seen one actually); on the other
> hand, it would break the encoding method for computers which do have
> awk and hexdump, but no busybox... What do we do? Duplicate the
> functions again?
The awk methods are intended for very leightweighted machines, like
routers or NAS devices. It is expected that they have installed busybox.
According to <https://busybox.net/downloads/BusyBox.html>, "awk",
"hexdump" and "od" are subcommands of busybox. Unfortunately, not all
busybox installations have all subcommands compiled in. For example, on
my NAS device "awk" and "hexdump" are part of busybox, "od" isn't.
--8<---------------cut here---------------start------------->8---
[~] # busybox --help
BusyBox v1.01 (2019.03.22-03:18+0000) multi-call binary
Usage: busybox [function] [arguments]...
or: [function] [arguments]...
BusyBox is a multi-call binary that combines many common Unix
utilities into a single executable. Most people will create a
link to busybox for each function they wish to use and BusyBox
will act like whatever it was invoked as!
Currently defined functions:
[, addgroup, adduser, ash, awk, basename, bunzip2, busybox,
bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp,
cp, crond, crontab, cut, date, dc, dd, deallocvt, delgroup,
deluser, df, dirname, dmesg, dos2unix, du, echo, egrep, env,
expr, false, fdisk, fgrep, find, free, getty, grep, gunzip,
gzip, halt, head, hexdump, hostname, hwclock, id, ifconfig,
init, insmod, install, ip, kill, killall, klogd, linuxrc, ln,
logger, login, ls, lsmod, md5sum, mkdir, mknod, mktemp, modprobe,
more, mount, mv, nameif, netstat, nslookup, openvt, passwd,
pidof, ping, ping6, pivot_root, poweroff, ps, pwd, rdate, readlink,
reboot, renice, reset, rm, rmdir, rmmod, route, sed, sh, sha1sum,
sleep, sort, strings, swapoff, swapon, switch_root, sync, sysctl,
syslogd, tail, tar, tee, telnet, test, tftp, time, top, touch,
tr, traceroute, true, tty, umount, uname, uniq, unix2dos, unzip,
uptime, usleep, vi, wc, wget, which, whoami, xargs, yes, zcat
--8<---------------cut here---------------end--------------->8---
Maybe, we shall use just a template for the encoding/decoding functions,
and for all busybox subcommands we need a test, whether they can be
invoked via "busybox command" or "command". There will be sevaeral
combinations to test.
> tramp-busybox-od-awk-encode
> tramp-busybox-hexdump-awk-encode
> tramp-busybox-awk-decode
>
> tramp-od-awk-encode
> tramp-hexdump-awk-encode
> tramp-awk-decode
>
> I feel like that would be a too large amount of duplicated code...
> Or is that ok?
No, too much duplicated code. As said above, provide
tramp-od-awk-encode, tramp-hexdump-awk-encode and tramp-awk-decode, and
make intelleigent tests whether "awk", "hexdump" and "od" need to be
prefixed by "busybox".
> Thank you for your patience!
> J.
Best regards, Michael.
This bug report was last modified 5 years and 122 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.