Files
wolfssl/wrapper/rust
Daniel Pouzzner 0097739dd8 fixes for F-3325:
wolfcrypt/src/aes.c: enforce AES-XTS K1!=K2 constraint in wc_AesXtsSetKeyNoInit() unless WC_AES_XTS_ALLOW_DUPLICATE_KEYS and !HAVE_FIPS:

tests/api/test_aes.c: add negative tests to test_wc_AesXtsSetKey() for K1==K2;

wolfcrypt/test/test.c: fix keys in aes_xts_128_inplace_test() and aes_xts_192_inplace_test() so that K1!=K2, update test vectors, and remove associated !HAVE_FIPS gating;

linuxkm/lkcapi_aes_glue.c: synchronize aes_xts_128_test() test of ciphertext stealing in-place with wolfcrypt/test/test.c.

wrapper/rust/wolfssl-wolfcrypt/src/aes.rs: synchronize XTS streaming test with wolfcrypt/test/test.c.

linuxkm/: refactor self-test sensing with version-gated setup in linuxkm_wc_port.h and refactored gates in lkcapi_glue.c.
2026-06-11 15:38:28 -05:00
..
2026-06-11 15:38:28 -05:00
2026-02-04 14:32:05 -05:00

wolfSSL Rust Wrapper

The wolfSSL Rust wrapper currently consists of a single Rust crate named wolfssl-wolfcrypt. The wolfssl-wolfcrypt crate is a Rust wrapper for the wolfCrypt cryptographic algorithms portion of the wolfSSL C library.

Locally building and testing the wolfSSL Rust Wrapper

First, configure and build wolfssl C library.

Then build the wolfssl Rust wrapper with:

make -C wrapper/rust

Run tests with:

make -C wrapper/rust test

Repository Directory Structure

Repository Directory Description
/wrapper/rust Top level container for all Rust wrapper functionality.
/wrapper/rust/wolfssl-wolfcrypt Top level for the wolfssl-wolfcrypt library crate.
/wrapper/rust/wolfssl-wolfcrypt/src Source directory for wolfssl-wolfcrypt crate top-level modules.