- Feb 15, 2020
-
-
Daniel Henry-Mantilla authored
- A bool coming from C cannot be trusted; functionally it is a c_int, and conversion to bool must be done by comparing to 0; - similarly, a `#[repr(C)]` enum cannot be trusted to be a `u32`; it is more often than not a `c_int`. This could cause breakage with the ABI of the C functions of the binding. So the signatures and enum definitions have been adapted based on the `include/keystone/keystone.h` definitions. - and most importantly: a ks_handle is a `ks_engine *` in C parlance, and using `size_t` to represent it is not the right way. Moreover, so doing prevents the `Sync` and `Send` traits from being auto-unimplemented, meaning that this is implicitly asserting that keystone is multithread-safe, even for the same instance. If that is the case, then a `unsafe impl Sync for Keystone {}` (ditto for `Send`) should be added to make such assertion explicit. That's why an opaque type using the classic Rust idiom of a zero_sized #[repr(C)] struct has been made (while waiting for Rust to feature external types), and `Option<ptr::NonNull<_>>` is being used as the pointer type (equivalent to *mut _), but it allows to communicate nullable / non-nullable invariants at the type-level. This has then been transposed to the internals of keystone-rs.
-
- Aug 02, 2019
-
-
Boris-Chengbiao Zhou authored
* Fix Rust bindings * Various small improvements for the Rust bindings * Remove unused dependencies * Use the cmake crate to compile keystone * Add Windows support to Rust bindings * Cleanup doc a bit * Fix symlink path * Link to C++ standard library * Build all keystone targets
-
- Sep 16, 2018
-
-
Tasuku SUENAGA a.k.a. gunyarakun authored
-
- Apr 01, 2018
-
-
gmorenz authored
-
- Mar 30, 2018
-
-
Nguyen Anh Quynh authored
-
- Oct 26, 2017
-
-
Tasuku SUENAGA a.k.a. gunyarakun authored
-
- Oct 02, 2016
-
-
Nguyen Anh Quynh authored
update bindings to add KS_OPT_SYM_RESOLVER. Python binding now supports this option. see sample.py for example
-
- Sep 09, 2016
-
-
Nguyen Anh Quynh authored
-
- Jun 05, 2016
-
-
Nguyen Anh Quynh authored
-
- May 31, 2016
-
-
Nguyen Anh Quynh authored
-
Nguyen Anh Quynh authored
-
- May 30, 2016
-
-
Remco authored
-
Nguyen Anh Quynh authored
-
Nguyen Anh Quynh authored
-
Remco authored
-
Remco authored
-
Remco authored
-
Remco authored
-
Remco authored
-
Remco authored
-
Remco authored
-