9ec2163571
bindings: add UC_MODE_PPC32 constant after recent update on unicorn.h
2016-01-24 20:50:26 +08:00
6f3d48077e
rename UC_QUERY_ARM_MODE to a more generic name UC_QUERY_MODE. make all bindings support this new constant
2016-01-24 01:08:23 +08:00
d79925f477
sparc: add SPARC32 mode (= UC_MODE_32)
2016-01-23 10:48:18 +08:00
ca79d11211
bindings: update constants after recent changes in unicorn.h
2016-01-23 10:31:16 +08:00
230cbd5330
add permissions to map_ptr api
2015-11-28 11:28:31 -08:00
18066b3578
support uc_mem_map_ptr in Go and Python bindings
2015-11-27 23:30:36 -08:00
2f297bdd3a
handle some errors properly so avoid exit() during initialization. this fixes issue #237
2015-11-12 01:43:41 +08:00
5eb75c311e
python bindings: use relative paths for imports to support py3
2015-11-02 09:34:58 -05:00
94012558fb
python bindings: added mem_protect
2015-10-28 05:26:09 +01:00
fe2ecdf6f9
python bindings: added mem_unmap
2015-10-28 05:25:36 +01:00
359055b4ff
python: properly load supporting DLLs in dependency order. this fixes issue #208
2015-10-26 15:46:10 +08:00
298a942dd1
python: fix DLL loading for Windows
2015-10-19 22:10:05 +08:00
a44b6e1efc
Add OSX 10.11 dylib load fix
...
El Capitan does not guaranteed that
(DY)LD_LIBRARY_PATH will exist, so force
one last check for the default install
directory that the install script uses.
2015-10-16 17:07:53 -07:00
b1d41d414b
on some hook events, uc_hook_add() should not allow more than 1 handler. this add UC_ERR_HOOK_EXIST error type
2015-10-10 18:01:47 +08:00
d93210ad5a
python: better support for Python3 (adapted from Capstone code)
2015-10-04 10:55:29 +08:00
7e7c6512f5
add composite const generator ( fix #161 )
2015-10-03 10:41:19 -07:00
9e64cba6ec
Rename some hook related enums:
...
- UC_ERR_READ_INVALID -> UC_ERR_READ_UNMAPPED
- UC_ERR_WRITE_INVALID -> UC_ERR_WRITE_UNMAPPED
- UC_ERR_FETCH_INVALID -> UC_ERR_FETCH_UNMAPPED
- UC_MEM_READ_INVALID -> UC_MEM_READ_UNMAPPED
- UC_MEM_WRITE_INVALID -> UC_MEM_WRITE_UNMAPPED
- UC_MEM_FETCH_INVALID -> UC_MEM_FETCH_UNMAPPED
- UC_HOOK_MEM_READ_INVALID -> UC_HOOK_MEM_READ_UNMAPPED
- UC_HOOK_MEM_WRITE_INVALID -> UC_HOOK_MEM_WRITE_UNMAPPED
- UC_HOOK_MEM_FETCH_INVALID -> UC_HOOK_MEM_FETCH_UNMAPPED
- UC_HOOK_MEM_INVALID -> UC_HOOK_MEM_UNMAPPED
This also renames some newly added macros to use _INVALID postfix:
- UC_HOOK_MEM_READ_ERR -> UC_HOOK_MEM_READ_INVALID
- UC_HOOK_MEM_WRITE_ERR -> UC_HOOK_MEM_WRITE_INVALID
- UC_HOOK_MEM_FETCH_ERR -> UC_HOOK_MEM_FETCH_INVALID
- UC_HOOK_MEM_ERR -> UC_HOOK_MEM_INVALID
Fixed all the bindings Java, Go & Python.
2015-09-30 14:46:55 +08:00
90eb8f2e72
This commit continues the PR #111
...
- Allow to register handler separately for invalid memory access
- Add new memory events for hooking:
- UC_MEM_READ_INVALID, UC_MEM_WRITE_INVALID, UC_MEM_FETCH_INVALID
- UC_HOOK_MEM_READ_PROT, UC_HOOK_MEM_WRITE_PROT, UC_HOOK_MEM_FETCH_PROT
- Rename UC_ERR_EXEC_PROT to UC_ERR_FETCH_PROT
- Change API uc_hook_add() so event type @type can be combined from hooking types
2015-09-24 14:18:02 +08:00
75c5904ec1
Makes the hook types consistent, with a single indicator for each of
...
read, write and fetch.
This commit only adds the enum values. The functionality still has to be
updated.
As per issue #111
2015-09-22 12:26:01 +07:00
8c163706e4
Fix issue #113 , untracked reference
2015-09-16 21:33:01 -05:00
fe807952d0
bindings: update Sparc registers after the last core change
2015-09-15 14:17:57 +07:00
39ac1bcb4e
rename UC_ERR_INVAL to UC_ERR_ARG
2015-09-09 16:54:47 +08:00
d7ef204398
rename error codes ERR_MEM_READ, ERR_MEM_WRITE, ERR_MEM_FETCH
2015-09-09 16:25:48 +08:00
d3d38d3f21
handle read/write/fetch from unaligned addresses. this adds new error codes UC_ERR_READ_UNALIGNED, UC_ERR_WRITE_UNALIGNED & UC_ERR_FETCH_UNALIGNED
2015-09-09 15:52:15 +08:00
7a5d790ade
rename UC_MEM_EXE to UC_MEM_FETCH
2015-09-08 12:55:56 +08:00
d1bdbd11e7
rename uchook to uc_hook, ucengine to uc_engine, uc_hook_t to uc_hook_type
2015-09-05 11:20:32 +08:00
022f8d82d1
handle memory fetch as invalid memory access. now we can also report error if exec memory is unmapped (UC_ERR_MEM_FETCH)
2015-09-04 11:55:17 +08:00
7ceb2eb0b9
bindings: update constants after the recent changes in the core
2015-09-04 10:54:21 +08:00
291ec98675
python: fix a couple more function signatures
2015-09-03 22:46:43 -04:00
99e34d212a
bring python bindings up-to-date with new API
2015-09-03 22:34:58 -04:00
0962c4822b
cleanup & update bindings' constants
2015-09-04 09:43:31 +08:00
15f6da1c3a
bindings: update UC_MODE_BIG_ENDIAN after the change in the core
2015-08-29 15:10:33 +08:00
fcd0d02bae
python: udpate binding after the last change on uc_mem_map() API
2015-08-29 13:17:50 +08:00
8aba3170c6
bindings: update consts after the latest change in the core
2015-08-29 09:03:12 +08:00
40ba1ea1b0
improve const generator; emit unicorn.h consts
2015-08-28 07:32:25 -07:00
60099d1d69
x86: add back 2 registers X86_REG_FCW & X86_REG_FPIP
2015-08-24 13:58:52 +08:00
d64ef59871
python: update consts after the latest change in the core
2015-08-24 13:16:22 +08:00
2516de7ed8
renamed m68k enum constants
2015-08-23 21:56:24 -07:00
995924176a
Merge branch 'const_rename'
2015-08-23 21:42:02 -07:00
a167f7c456
renames the register constants so unicorn and capstone can compile together
2015-08-23 21:36:33 -07:00
033a44361b
python: rename API uc_support to uc_arch_supported
2015-08-24 09:53:16 +08:00
76d8541717
add check for mem_map(size=0) ( #14 )
2015-08-23 14:16:40 -07:00
e1baf2f36b
x86: support hooking SYSCALL/SYSENTER instructions. we no longer share the SYSCALL callback with interrupt instructions
2015-08-23 01:19:40 +08:00
344d016104
import
2015-08-21 15:04:50 +08:00