mirror of
http://galexander.org/git/simplesshd.git
synced 2024-12-28 17:08:08 +00:00
musings about scp
This commit is contained in:
parent
93760bfb7b
commit
3fae66e571
30
NOTES
30
NOTES
@ -72,6 +72,36 @@ it uses select(), I'm not sure how I would honor Thread.interrupt() or
|
|||||||
whatever. It's not guaranteed to interrupt select(), and I'm not keen on
|
whatever. It's not guaranteed to interrupt select(), and I'm not keen on
|
||||||
adding an arbitrary timeout/polling feature to it.
|
adding an arbitrary timeout/polling feature to it.
|
||||||
|
|
||||||
|
|
||||||
|
December 20, 2014.
|
||||||
|
|
||||||
|
So, I added a builtin scp endpoint. It was pretty straight forward,
|
||||||
|
except dropbear defaults to vfork(), which blocks the parent until the
|
||||||
|
child runs execve()!!
|
||||||
|
|
||||||
|
Anyways, I noticed that scp doesn't quote it's arguments to the remote
|
||||||
|
scp. That means youcan't conveniently copy a remote file with a space in
|
||||||
|
its name (it becomes two files). But the upside is that this is where
|
||||||
|
wildcards are handled -- by the shell!
|
||||||
|
|
||||||
|
So I need to either run it as a separate executable launched through the
|
||||||
|
shell, or make my own implementation of wildcards.
|
||||||
|
|
||||||
|
It is easy, using a $(BUILD_EXECUTABLE) script, to get ndk to build an
|
||||||
|
executable. But it is only packaged up if it is named "gdbserver" (and
|
||||||
|
debug apk), or "libfoo.so". The good news is that libfoo.so can be
|
||||||
|
executed in /data/data/org.galexander.sshd/lib/libfoo.so, so that is a
|
||||||
|
viable option.
|
||||||
|
|
||||||
|
Doing the expansion myself is not necessarily hard either, though. I
|
||||||
|
need a library function called glob(), which is apparently not part of
|
||||||
|
bionic. But I have the idea some cut and paste would resolve that with
|
||||||
|
very little extra work on my part.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
XXX - fix scp "protocol error"
|
||||||
|
XXX - honor scp wildcards somehow
|
||||||
XXX - zlib
|
XXX - zlib
|
||||||
XXX - rsync
|
XXX - rsync
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user