1. Change kyber test to use the cache naming in the other test.
2. Remove moving wolfSSL to another directory. Clears a bunch of
warnings.
3. Build liboqs to install in the same directory as wolfSSL.
1. Update the guards around the strings used to make the
cannedKeyAlgoNames. If any algorithm is disabled, leave it out of the
list. (I'm looking at you Ed25519!)
2. Added comments to those guards.
3. Reflow the alignment.
Make wolfSSH_SFTPNAME_readdir defining SFTP_Name_readdir. It has to be
defined as a macro, but it can be defined to expand to its own name if
also a function with the same name is defined.
What matters is that it takes 3 arguments:
1) the filesystem context as first argument;
2) WDIR* as second argument;
3) WS_SFTPNAME* as third argument
On successful execution, it returns WS_SUCCESS and the WS_SFTPNAME
structure pointed by the third argument will be filled with the
relevant info, otherwise a WS_* error code is returned.
For Zephyr, we allocate memory for a thread's stack from the heap.
Recently a thread's stack size was changed from 24k to 48k. wolfSSH
needed the size of the libc memory arena to be increased a bit to
account for this change.
1. Add an error code for Ed25519 signing or verify issues.
2. Add Ed25519 key support to ReadKey.
3. Add client side support for Ed25519.
4. Update some key usage log strings to be more descriptive.
1. Add testing key for user barney.
2. Remove some instances of the incorrect macro guard WOLFSSH_NO_ECC. We
deal in ECDSA or ECDHE separately only.
3. Add WIP function for decoding the OpenSSH format Ed25519 key.
1. Remove some redundant (and incorrect) scaffolding for a couple
algorithms.
2. Whitespace fixes and add some braces to if-else blocks.
3. Fix allocating an ed25519 key, instead of using an ecc_key for it.
4. Replace a crypto failure error with an invalid algo error.
1. Added support for Ed25519 private keys.
2. Added more define guards for ED25519
3. The userAuthResultCb must be invoked only in the case the pubkey has
a signature.
4. Define WOLFSSH_NO_ED25519 if the ssh-ed25519 pubkey support must not
be compiled for lack of prerequisites.
1. Add a parameter to the client key agree functions for the hashId.
It's only really used for EcdhKyber1, but it keeps the functions
parallel.
2. Add and update some top-of-function comments for the key agree
functions.
3. Renamed the X25519 key agreement functions to Curve25519 to match the
naming in the RFC.
4. Removed the temporary hashId local in the client EcdhKyber1
function.
5. Messed around with some variable declarations in a few of the
functions.
6. Fix a couple breaks for small stack build.
7. Fix where GEX-SHA2 key exchange wasn't allowed to work.
8. Disable EcdhKyber1 is ECDH-NISTP256 is disabled.
1. In SendKexDhReply(), break down the key agreement actions for the
various supported key types into their own functions. Remove
the redundant variables.
2. In DoKexDhInit(), add flags for the various key agreement types, and
set them as appropriate when checking the selected kexId. The flags
are always present no matter the build options.
3. Simplify some of the flag checks for optional options.
1. In the key signature block, add flag for Ecc, and for the key
allocation.
2. Add FreePubKey() to delete the pub key stored in the key signature
block.
3. In DoKexDhReply(), break down the key agreement actions for the
various supported key types into their own functions. Remove the
redundant variables.
4. Using flags that are always present, reduce some of the complicated
flag checks.
5. Fix a compile guard where the ECDH private key used by the client is
disabled by ECDSA.
1. Fix a couple spots where a flag to use kyber wasn't getting set
correctly.
2. Changed a check to kyber back to the original source, a local
variable.
1. In the echoserver, change the names of the defines for the
static memory values.
2. Modify the client common functions for keys and certs to take a heap
value for their allocations.
3. Update the client's use of the common key and cert function calls to
pass NULL for the heap.
4. Add a static memory description for the sftp client code.