Commit graph

310 commits

Author SHA1 Message Date
Ahmed Samy 02e6c14e12 x86: add MSR API via reg API (#755)
Writing / reading to model specific registers should be as easy as
calling a function, it's a bit stupid to write shell code and run them
just to write/read to a MSR, and even worse, you need more than just a
shellcode to read...

So, add a special register ID called UC_X86_REG_MSR, which should be
passed to uc_reg_write()/uc_reg_read() as the register ID, and then a
data structure which is uc_x86_msr (12 bytes), as the value (always), where:
	Byte	Value		Size
	0	MSR ID		4
	4       MSR val		8
2017-02-24 21:37:19 +08:00
Sascha Schirra eb4dc61c66 Updated ruby bindings (#744)
* added methods for uc_context_save, uc_context_restore

* added test for context_save

* changed version of the lib
2017-01-29 08:13:17 +08:00
Nguyen Anh Quynh b616115df1 update ChangeLog 2017-01-25 12:00:18 +08:00
Nguyen Anh Quynh a735576dd3 python: support uc_mem_regions() API 2017-01-24 12:47:27 +08:00
Nguyen Anh Quynh 5a1e86d46b update Windows DLL dependency 2017-01-22 00:39:21 +08:00
Nguyen Anh Quynh d6ba083c45 update CREDITS.TXT 2017-01-16 09:43:11 +08:00
David Zimmer 523fb9d9fc VB6 bindings and dynload update w/ uc_context* and uc_free api,… (#715)
* msvc unicorn.def and dynload.c added new uc_context* and uc_free api, includes support for older dlls compiled with uc_context_free (can remove next binary release)

* vb6 bindings & x86 32bit sample class for unicorn
2017-01-16 09:40:56 +08:00
hedger d2b7d13443 Fixed circular refs preventing Uc instances from being GC'd. Added a test case, requires objgraph module. 2017-01-11 18:23:21 +03:00
Nguyen Anh Quynh 6378db99dc Merge pull request #712 from lunixbochs/go-free-regions
go: fix uc_free, free uc_mem_regions pointer
2017-01-11 09:27:45 +08:00
Chris Eagle 8adc8afc63 Java bindings (#711)
* Remove glib from samples makefile

* support new APIs

* reimplement register batch mode interface

* stop using deprecated java API
2017-01-11 09:27:16 +08:00
Ryan Hileman ab3828222a go: fix uc_free, free uc_mem_regions pointer 2017-01-10 16:54:54 -05:00
Nguyen Anh Quynh bc569f5a54 rename API uc_mem_free() to uc_free(). see #662 2017-01-10 20:59:14 +08:00
Nguyen Anh Quynh fdbbdc6216 rename uc_context_free() to uc_mem_free(). see #373 2017-01-09 20:52:14 +08:00
Chris Eagle 21ffaf7d10 Java bindings (#709)
* Remove glib from samples makefile

* support new APIs

* reimplement register batch mode interface

* stop using deprecated java API
2017-01-06 23:56:53 +08:00
Andrew Dutcher 7bd4d62dcb Copy prebuilt static library if available. Disallow uploads from builds that fail to provide the static library 2017-01-04 06:45:18 -08:00
Andrew Dutcher 5d8934f5a9 Python: Automatically conform to PEP440 for version numbers 2017-01-04 05:51:55 -08:00
Nguyen Anh Quynh 07aa027167 msvc docs: no longer need libglib. add libpcre as dependency 2017-01-01 23:41:15 +08:00
Nguyen Anh Quynh 9a79d6fe9f Merge branch 'master' into noglib2 2016-12-27 16:48:23 +08:00
Andrew Dutcher bf2cd79a4d Windows: export a static lib that can be used outside of mingw (#699)
* Windows: export a static lib that can be used outside of mingw

* Add comments to windows_export.bat
2016-12-27 16:30:07 +08:00
Nguyen Anh Quynh 55e61f65e4 python: only preload librt.so on Linux 2016-12-26 15:54:46 +08:00
Nguyen Anh Quynh 4805407fb6 fix python test on Ubuntu 12.04 by preloading librt.so 2016-12-26 15:12:48 +08:00
Nguyen Anh Quynh 7287f2a82f Go: fix Travis test on Mac 2016-12-25 18:40:23 +08:00
Nguyen Anh Quynh af4c29c57f Go: attempt to fix compilation issue on missing clock_gettime() 2016-12-25 01:34:59 +08:00
me 1d85d1763d Merge branch 'master' into noglib 2016-12-24 13:21:53 +08:00
Antoine a7dddf6c5f python bindings: restore FreeBSD support (#698)
* python bindings: restore FreeBSD support

* python binding: use libunicorn.so if the platform is unknown
2016-12-24 00:59:19 +08:00
Chris Eagle e46545f722 remove glib dependency by provide compatible replacements 2016-12-18 14:56:58 -08:00
Nguyen Anh Quynh bd339533ca python: comment out a debug code 2016-12-04 20:46:52 +07:00
Nguyen Anh Quynh 4613580e07 python: typo 'prebuilt' dir 2016-12-04 18:18:24 +08:00
Nguyen Anh Quynh e34812c7dd fix merge conflict 2016-11-20 16:36:56 +08:00
Nguyen Anh Quynh 2a4c316b6f python: correct a comment on sample_arm.py 2016-11-19 16:51:08 +08:00
Nguyen Anh Quynh 3543452b06 ruby: update unicorn_const.rb 2016-11-19 16:48:30 +08:00
Andrew Dutcher 188a1d78d3 Allow dlls to be copied out of prebuilt directory 2016-11-17 20:59:39 -08:00
Stephen 9f0cdc4be9 Update .travis.yml
Update eflags_nosync.c
Update sigill2.c
Update ro_mem_test.c
Update ro_mem_test.c
Update nr_mem_test.c
Update mem_fuzz.c
Update mem_double_unmap.c
Update emu_stop_in_hook_overrun.c
Update eflags_nosync.c
remove unused
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update mem_64_c.c
Update mem_64_c.c
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update Makefile
Update .travis.yml
try android ndk build
Update unicorn.py
Update unicorn.py
Update Makefile
Update unicorn.py
Update unicorn.py
remove an untrue comment

if a dll/so/dylib gets loaded at runtime is dependent on many different factors, primarily the LD/DYLD paths. Those do not always include the current working directory
Update Makefile
Update .appveyor.yml
Update .travis.yml
Update Makefile
Update .appveyor.yml
Fix bad sample
2016-11-11 07:45:06 -08:00
Stephen 186540e160 make cleanup 2016-11-06 16:27:24 -08:00
Andrew Dutcher 876570c8d7 Fixes to make python distribution for windows work 2016-11-05 09:18:50 -07:00
Nguyen Anh Quynh f8e82485da python: print out _path_list with next line 2016-11-05 01:55:12 +08:00
Nguyen Anh Quynh 88bd6453d5 python: add a debug code to print out _path_list 2016-11-05 01:51:13 +08:00
Nguyen Anh Quynh d46911d301 Merge pull request #661 from lowlyw/ruby_binding_fix
fix signedness issue with reg read/write in ruby bindings
2016-11-02 15:58:59 +08:00
Nguyen Anh Quynh ffa36b9001 python: remove redundant free() prototype. bug reported by Mahin 2016-11-01 08:57:33 +08:00
Adrian Herrera eccef31651 [haskell] Added testI386ContextSave function
Based on test_i386_context_save function in samples/sample_x86.c
2016-10-31 11:57:13 +01:00
Ryan Hileman 64f4692c22 Go: add context api (#668) 2016-10-31 16:00:57 +08:00
Adrian Herrera 19028f41f6 Updates to Haskell bindings (#667)
* [haskell] Added uc_context_* support

As per issue #662

* [haskell] Updated bindings for commit 4083b87032

Updated for introduction of UC_HOOK_MEM_READ_AFTER.

* [haskell] Style fixes
2016-10-30 10:51:02 +08:00
Nguyen Anh Quynh 4d5738eeb5 python: revert the changes on APIs made by @mrphrazer 2016-10-27 16:45:10 +08:00
Lowly Worm df497a9502 fix signedness issue with reg read/write in ruby bindings 2016-10-26 00:30:22 -07:00
Tim Blazytko 17fd89a27b python bindings: updated signed reg fix 2016-10-26 09:13:19 +02:00
Tim Blazytko 632f3aaa71 fixed python bindings signed/unsigned regs/mem 2016-10-25 20:43:01 +02:00
Nguyen Anh Quynh 44ab083d9b Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2016-10-25 14:38:24 +08:00
Nguyen Anh Quynh 7a1930a879 add UC_VERSION_{MAJOR, MINOR, EXTRA} 2016-10-25 14:37:47 +08:00
Sascha Schirra 2f15e2119d add new constants 2016-10-22 17:02:46 +02:00
Sascha Schirra 2c82671704 add command to create constants file for ruby 2016-10-22 17:02:35 +02:00