evb_e2ee_ffi (built from bindings/dart/rust of everabyte/crypto-sdk) exposes the whole protocol through a C ABI. The canonical header is include/evb_e2ee.h in the repository — copy it and include it from your FFI declaration of choice.
Conventions
- Return:
0= OK; negative = error (-1bad argument,-2crypto failure,-3malformed payload,-4buffer too small,-5JSON failure,-6invalid UTF-8,-7internal lock). - Buffers: caller-allocated; string outputs are NUL-terminated; byte outputs write the length to
out_len. - Errors: a short, secret-free message via
evb_last_error(buf, cap)— call withcap = 0first to get the required capacity.evb_clear_last_error()resets the slot. - UMK material crosses the boundary as 96 bytes: X25519 secret (32) ‖ ML-KEM-768 seed (64).