X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning-c-bindings%2FREADME.md;h=0c221c7c6ad44ad4c2d6c4b46b34d176e2a7924d;hb=ee995a3a5542dee16b7fbdc5e55c6311b3c78442;hp=fa33a9f4d69dbc6b994d22c758efe12c89132fd3;hpb=4f6f34fa30a34f0fa8e69c7d0b5f55f3158f5cd0;p=rust-lightning diff --git a/lightning-c-bindings/README.md b/lightning-c-bindings/README.md index fa33a9f4..0c221c7c 100644 --- a/lightning-c-bindings/README.md +++ b/lightning-c-bindings/README.md @@ -218,10 +218,19 @@ These include: ... } LDKChannelKeys; ``` + * Private and public keys are asserted valid at the FFI boundary. Thus, before passing any + (untrusted) private or public key material across the boundary, ensure that they represent valid + (ie in-range) keys. **It is highly recommended that you test any code which relies on the C (or C++) bindings in valgrind, AddressSanitizer, MemorySanitizer, or other similar tools to ensure correctness.** +Process +======= + +`genbindings.sh` is currently a catch-all script for bindings - it generates the latest Rust/C/C++ +code for bindings from the rust-lightning source code, builds it, and then runs various test apps. + Note that after running `genbindings.sh`, if possible, the static lib in target/debug (eg target/debug/liblightning.a) will be linked with address sanitizer. In order to build against it, you will need to link with `clang` with `-fsanitize=address` with the same version of LLVM as