unicorn/bindings/ruby
misson20000 9cb64915c7 fix Ruby bindings (#830)
* fix mem_unmap and query for Ruby bindings

* ruby bindings: fix issues with GC freeing callbacks while we still have references to them

* ruby bindings: add test for garbage collection of hooks

* ruby bindings: let the VM garbage collect hooks properly this time

* ruby bindings: update garbage collection test to make sure Proc is garbage collected after Uc is collected

* ruby bindings: fix m_uc_hook_add to return the ruby VALUE with proper memory management instead of making another one with bad memory management

* ruby bindings: fix cb_hook_intr signature

* add architecture query

* ruby bindings: only treat certain x86 registers specially if we're actually on x86

* only treat certain x86 registers specially if we're actually on x86 (uc_reg_read and uc_reg_write)

* ruby bindings: read and write ARM64's 128-bit NEON registers
2017-05-22 20:46:30 +08:00
..
unicorn_gem fix Ruby bindings (#830) 2017-05-22 20:46:30 +08:00
Makefile Updated ruby bindings (#744) 2017-01-29 08:13:17 +08:00
README.md README format changed 2016-03-22 12:26:12 +01:00
sample_arm.rb ruby & java: fix address of Thumb sample 2016-09-20 20:16:29 +08:00
sample_arm64.rb sample for arm64 added 2016-03-27 21:15:45 +02:00
sample_m68k.rb sample for m68k added 2016-03-27 21:31:34 +02:00
sample_mips.rb sample for mips added 2016-03-27 21:38:46 +02:00
sample_sparc.rb sample for sparc added 2016-03-27 21:44:09 +02:00
sample_x86.rb Updated ruby bindings (#744) 2017-01-29 08:13:17 +08:00
sample_x86_gdt.rb set gdt example added 2016-03-27 22:04:33 +02:00
test_hook_gc.rb fix Ruby bindings (#830) 2017-05-22 20:46:30 +08:00

Installation

Software requirements

Linux

  • ruby >= 1.9.3
  • rubygems
  • make
  • gcc

Mac OS

  • ruby >= 1.9.3
  • rubygems
  • make
  • XCode

Install unicorn

  • cd path_to_unicorn
  • ./make.sh install

Install ruby binding

  • cd bindings/ruby
  • make install