1. For the client agent command line option, add the flag to the flag string.
2. Update PostSignRequest() to support all flavors of ECDSA and to
switch out code for missing algorithms.
3. Hide function SendRequestIdentities().
1. If RSA is disabled in the wolfCrypt build, the RSA related code
in wolfSSH shall be disabled.
2. Examples will force themselves to use ECC if RSA is disabled.
1. A couple places weren't passing the correct heap pointer to free.
Normally this was ignored in the build because the WMALLOC macro left
them out. Found using wolfCrypt memory logging.
2. Replaced the call to strdup() with wstrdup() that takes a heap and
type parameter so sit may allocate a buffer with WMALLOC() and be
freed correctly by WFREE().
3. Tweaked the client to use a preallocated buffer for the private key
rather than letting ReadKey allocate one. (Another WFREE() heap/type
issue.)
1. Add function to request the channel ID for the last message received.
2. Changed the send channel functions to use the self channel ID rather
than the peer's channel ID.
3. Modified client and echoserver to use the channel ID for the agent
to send messages.
4. Modify client to receive the entire message from the agent before
trying to relay it to the peer.
1. Cleanup redundant includes.
2. Add comments to the Read Key function pair.
3. Remove my name as an example user.
4. Change ECC sig build arrays to use macro for size rather than
bare number.
5. Remove empty if state for agent.
6. Added a couple needed NULL checks on allocs for the agent.
7. If unable to create an agent object on connect, disable agent use.
1. Added option to client to load a public key.
2. Added function ReadKey to load a key from a buffer or from a file
and store it. Utility for the client.
1. Example client should check the authType passed into the function,
not the type stored in the authData.
2. Restore the hansel keys to example client.
3. Add user ECC option to the example client for selecting
hansel's RSA or ECC key.
4. Restore the ordering of public key and password in
SendUserAuthRequest().
1. Added the agent support to the configure.ac script.
2. Updated the gitignore file to ignore any stamp-h file.
3. Changed to use the parsing functions and to make the parsing functions
local.
4. Updates to multichannel.
5. Add -lutil only if needed.
6. Add configure checks for some headers that change based on target OS.
7. Bump version.
8. Test doesn't have real account or real key so agent doesn't test well.
Also includes some bug fixes.
1. Add a function that returns a pointer to a session's username string.
2. Add a function to set a "raw" username copied from an incoming packet.
3. Add tests for 1 and 2.
4. Server saves a copy of the username on successful authentication.
5. Fix bug with GetString() where it would choke on a 0 length string.
6. Clean up the termios macros and mode creation.
7. Add some options for when WOLFSSL_VXWORKS is set.
1. Cleanup some debug printouts.
2. Add option to the echoserver and wolfSFTP client to use ECC keys or RSA
keys for user authentication.
3. Add option to the echoserver to use ECC keys for peer authentication.
Note, the user authentication type is still hardcoded in the library as
password. To use public key, need to update the authId in
SendUserAuthFailure().
1. Refactor of the RSA public key and password user auth code.
2. In the userauth code remove some usused variable names or use some orphaned variables.
3. Fix the sizes used for calculating the buffer size for ECC public keys.
4. Add in the length of the ECDSA signature wrapping the set r,s.
5. Return the public key rejected error code from DoUserAuthRequestPublicKey when the callback returns invalid public key.
update client example remote command execute for Windows
add wolfSSH_stream_peek and console translation
improvements to console translation and add client side psuedo terminal
windows client -c fix, clang build, sanity check on side for exec
fix for warnings with VS 2010 build
cast return value of WSTRLEN
update termios guard and fix for scan-build check
advance extended data buffer index on read
fix for error.h after rebase
The public key check callback hook is given a pointer to the public key, the size of the key, and the application-specific context data.
1. Added a callback function hook for checking the public key sent to the client by the server. It defaults to accepting the key.
2. Added accessors for the public key check callback function and context data.
3. Added a dummy callback to all the example tools.
1. Add a wrapper to the key-gen code that checks for wolfCrypt's keygen flag and errors if keygen isn't available.
2. The main loops around wolfSSH_stream_read() for the example client and server needed to check the error register for WANT_READ or WANT_WRITE, not the return code.
1. Added a non-blocking socket option to the client.
2. Added a non-blocking socket option to the server.
3. Added support for select to the test header.
4. Updated the usage strings so they are formatted the same.
1. Add an automated test suite.
2. Refactor the existing test and example code to be better components for the test suite.
3. Rename some of the internal functions used by the examples and test suite.
4. Echoserver now only handles one connection at a time, has option to exit after single connection.
5. Echoserver can do the port zero trick for the test suite.
6. Some whitespace changes.
7. Added a `(void)` to a variable to hush an unused assignment warning.
1. Added support to the library for clients.
2. Added example client.
3. Added VS solutions for building client example.
4. Added ECC client keys. Renamed existing keys.
5. Since defunct server is copy of echoserver, updated it.