The -p option of wolfssh, client, wolfscp, wolfsftp and echoserver now goes through a strtol check, so a value that is not wholly a number in range exits with an error instead of wrapping into a different port. - apps/wolfssh: ClientParsePort(), shared with ClientParseDestination(), which also rejects an empty "ssh://host:" port instead of defaulting - examples: a ClientParsePort() in examples/client/common.c; port 0 is rejected in every build, not only with a main driver - echoserver: accepts 0 to 65535, keeping 0 for the test harness - add TestClientParsePort and an empty URI port case to regress.test Issue: F-14763, F-14767, F-14768, F-12552 |
||
|---|---|---|
| .. | ||
| README.md | ||
| common.c | ||
| common.h | ||
| include.am | ||
| wolfssh.c | ||
README.md
WOLFSSH CLIENT
The wolfSSH client will connect to a server and try to open a terminal. It'll
default the username to your current username, and it will try to use your
ecdsa private key to authenticate. The key file path is hard coded to
$HOME/.ssh/id_ecdsa. It is currently far enough along I can use it. The
private keys are the ones produced by the OpenSSL command line tool, not the
ssh-keygen tool.
Phase 2 is going to bring reading the config files /etc/ssh/ssh_config and
$HOME/.ssh/config. It will handle OpenSSH style modern keys. It will also
have support for SSH-AGENT and forwarding.
Every session, terminal or command, runs its I/O on threads, so the client
needs a threaded wolfSSL. Configuring --enable-sshclient against a
single-threaded wolfSSL is an error, and --enable-all leaves the client out
rather than failing.
Command Line Options
-E logfile : Append the log to this file instead of stderr, and turn
logging on. The log is empty unless the library has
logging compiled in, with `--enable-debug` or
`--enable-sshd`.
-G : Print out the configuration as used.
-l login_name : Overrides the login name specified in the destination.
-p port : Overrides the destination port number.
-V : Print out the version.
The destination option is the only required option. It can be in the two following formats:
[user@]hostname
ssh://[user@]hostname[:port]
Anything after the destination is taken as a command to run on the server. With no command, the client opens an interactive terminal session.
The default value for user is the current user's login name. The default value for port is 22.