Commit Briefs
kamiftp: deprecate -c
it's useless as -C already implies it and -C must be use when connecting with TLS. To be definitely removed after 0.3.
kamiftp: print diognistic messages to stderr
excluding the one from cmd_*
kamiftp: automatic cd or fetch on the given path
before the given path was used for Tattach. Turns out at least u9fs doesn't seem to use that field for the initial directory (not sure if it should). kamiftp now always issues a Tattach with aname="/" and then does a Twalk on the path: if it names a directory, it becomes the remote working directory like a `cd' was issued, if it names a file it is fetched and kamiftp quits.
kamiftp: use the [user@]host[:port][/path] syntax
instead of taking the path as a separate argument. For some time the old style will be supported.
endian.h is not universally available
FreeBSD and NetBSD have sys/endian.h, on MacOS we need to use the functions from libkern/OSByteOrder.h see github issue #1
refactor kamiftp internals
use a FILE (constructed either via fdopen over a socket or funopen over libtls) for remote I/O
include compat for reallocarray too
reported by @Et7f3 in github issue #1, thanks!
work around macos lack of accept4(2), SOCK_CLOEXEC and NONBLOCK
I always forget that they're not available on darwin; reported by @Et7f3 in github issue #1