1 unstable release
Uses old Rust 2015
0.1.0 | Mar 2, 2018 |
---|
#224 in #instructions
75KB
1.5K
SLoC
Contains (ELF exe/lib, 8KB) test_data/elf_x86_64, (ELF exe/lib, 5KB) test_data/elf_x86
Bindings to BAP in Rust
Installation
-
Install
libbap
for your distribution (tested against 1.3 and 1.4)- For NixOS, just use the package provided in nixpkgs
- For Debian/Ubuntu, install these debs in sequence
- For RHEL/Fedora, install these rpms in sequence
- For other linux, you can try the .tar.gz files
- Otherwise, you're going to have to try to install from source, follow the instructions to get BAP, then proceed to bap-bindings to get libbap.
-
bap-rust
should now work as any other cargo package
Caveats
- The API is unstable and incomplete
- Bugs will be fixed, but fixes are on a best effort basis.
- Due to interactions between OCaml, threads, and the outside world, all API calls must occur on a single thread. This is enforced by the API
Feature Requests
-
Exported functionality
- If it's in
bap-bindings
but not here, file an issue here. - If it's in
bap
but not inbap-bindings
, file an issue inbap-bindings
. - If it's not in
bap
, file an issue there.
- If it's in
-
High level representation requests can go here, but I'm unlikely to implement them myself unless I need them, so prepeare yourself to write a PR :)
Dependencies
~1.2–3.5MB
~63K SLoC