libsoliton/soliton_capi
Kamal Tufekcic 89f5be4f40
All checks were successful
CI / lint (push) Successful in 1m12s
CI / test-python (push) Successful in 1m37s
CI / test-zig (push) Successful in 1m30s
CI / test-wasm (push) Successful in 1m45s
CI / test (push) Successful in 13m14s
CI / miri (push) Successful in 12m49s
CI / build (push) Successful in 1m5s
CI / fuzz-regression (push) Successful in 1h17m23s
CI / publish (push) Successful in 1m38s
CI / publish-python (push) Successful in 1m28s
CI / publish-wasm (push) Successful in 1m21s
Fix MSRV, version bumps
Signed-off-by: Kamal Tufekcic <kamal@lo.sh>
2026-04-23 18:53:00 +03:00
..
cmake initial commit 2026-04-23 15:51:07 +03:00
fuzz Fix MSRV, version bumps 2026-04-23 18:53:00 +03:00
src initial commit 2026-04-23 15:51:07 +03:00
tests initial commit 2026-04-23 15:51:07 +03:00
build.rs initial commit 2026-04-23 15:51:07 +03:00
Cargo.toml initial commit 2026-04-23 15:51:07 +03:00
cbindgen.toml initial commit 2026-04-23 15:51:07 +03:00
LICENSE.md initial commit 2026-04-23 15:51:07 +03:00
README.md initial commit 2026-04-23 15:51:07 +03:00
soliton.h initial commit 2026-04-23 15:51:07 +03:00
soliton.pc.in initial commit 2026-04-23 15:51:07 +03:00

libsoliton_capi

C ABI FFI layer for libsoliton — a pure-Rust post-quantum cryptographic library.

API

The complete API is defined in soliton.h (48 exported functions, cbindgen-generated). All functions return int32_t error codes; opaque handles are created/freed via matched _new/_free pairs.

Build

cargo build --release -p libsoliton_capi

Produces:

  • target/release/libsoliton_capi.so (Linux) / .dylib (macOS) / .dll (Windows)
  • target/release/libsoliton_capi.a (static)

pkg-config:

gcc main.c $(pkg-config --cflags --libs libsoliton) -o main

CMake:

find_package(Soliton REQUIRED)
target_link_libraries(myapp Soliton::Soliton)

Direct:

gcc main.c -I path/to/soliton_capi -L path/to/target/release -lsoliton_capi -o main

License

AGPL-3.0-only