Bet4 9c6134ca91
Add Rust bindings to master branch (#1401)
* Rust bindings (#1295)

* rust bindings init

* updated bindings/README

* Improved Rust bindings: (#1309)

* Added basic block hooking
* Changed confusing struct naming. Before: Protection::All -> R,W,X, Now: Permission::All -> R,W,X
* Fixed issue with remove_hook(..). Implementation tried to remove hook from incorrect hashmap.
* Made unused private vmmap(..) public.

* Improve Rust bindings (#1367)

* fixed tests

* constant readability

* HookType as bitflags

* Mode as bitflags

* improve bitflags

* cargo fmt

* removed unnecessary "as usize"

* fixed buggy deallocation of uc_context structs

* Remove data field in rust bindings

Co-authored-by: Lukas Seidel <pr0me@users.noreply.github.com>
Co-authored-by: Nikolas Eller <nikolas.e@mail.de>
Co-authored-by: Simon Wörner <git@simon-woerner.de>
Co-authored-by: floesen <floesen@users.noreply.github.com>
2021-05-26 23:05:12 +08:00
..
2021-05-16 21:38:08 +08:00
2021-05-16 21:38:08 +08:00
2021-05-16 21:38:08 +08:00
2021-05-16 21:38:08 +08:00
2021-05-16 21:38:08 +08:00
2021-05-16 21:38:08 +08:00
2017-04-27 20:43:47 +08:00
2020-05-05 08:34:51 +08:00
2018-08-03 20:33:25 +08:00

This directory contains bindings & test code for Python, Java, Go, .NET and Rust.
See <language>/README or <language>/README.TXT or <language>/README.md for how to install each binding.

The following bindings are contributed by community.

- Java binding: by Chris Eagle.
- Go binding: by Ryan Hileman.
- .NET binding: by Antonio Parata.
- Ruby binding: by Sascha Schirra
- Haskell binding: by Adrian Herrera.
- VB6 binding: David Zimmer.
- FreePascal/Delphi binding: Mohamed Osama.
- Rust binding: Lukas Seidel.

More bindings created & maintained externally by community are available as follows.

- UnicornPascal: Delphi/Free Pascal binding (by Stievie).
    https://github.com/stievie/UnicornPascal

- Unicorn-Rs: Rust binding (by Sébastien Duquette, unmaintained)
    https://github.com/ekse/unicorn-rs

- UnicornEngine: Perl binding (by Vikas Naresh Kumar)
    https://metacpan.org/pod/UnicornEngine

- Unicorn.CR: Crystal binding (by Benoit Côté-Jodoin)
    https://github.com/Becojo/unicorn.cr

- Deimos/unicorn: D binding (by Vladimir Panteleev)
    https://github.com/D-Programming-Deimos/unicorn

- Unicorn-Lua: Lua binding (by Diego Argueta)
    https://github.com/dargueta/unicorn-lua

- pharo-unicorn: Pharo binding (by Guille Polito)
    https://github.com/guillep/pharo-unicorn

- Unicorn.js: JavaScript binding (by Alexandro Sanchez)
    https://github.com/AlexAltea/unicorn.js