Nguyen Anh Quynh
4692f3445f
Merge pull request #248 from farmdve/master
...
X86 zero-byte opcode causes Unicorn to crash.
2015-11-05 20:49:04 +08:00
Nguyen Anh Quynh
b3dfde8a17
Merge branch 'master' of https://github.com/unicorn-engine/unicorn
2015-11-05 20:41:51 +08:00
farmdve
7f3c567ae5
X86 zero-byte opcode causes Unicorn to crash.
...
The opcode 0x00 translates as `add byte ptr ds:[eax],al`, which leads to
a segfault in Unicorn.
Using a debugger, I believe the crash is located in
`qemu/translate-all.c` in function `page_flush_tb_1`, more specifically
this code `pd[i].first_tb = NULL;`
2015-11-05 14:41:15 +02:00
Nguyen Anh Quynh
95745eff3b
regress: fix compiled warnings in eflags_nosync.c
2015-11-05 20:22:07 +08:00
farmdve
894739515e
X86 EFLAGS not synced properly.
...
these commits should fix my previous ones.
2015-11-04 09:38:57 +02:00
Nguyen Anh Quynh
613ebbb20e
Merge pull request #244 from emdel/master
...
SIGABRT issue
2015-11-04 10:07:48 +08:00
mariano
9f7d1812a3
SIGABRT issue
2015-11-03 12:58:20 -08:00
Nguyen Anh Quynh
68a2a0c7ab
regress: add shebang for hook_code_stop_emu.py
2015-11-03 22:45:48 +08:00
practicalswift
696c58f9f0
Add test case for segfault-on-emu_stop() bug.
...
The following code segfaults:
unicorn.Uc(unicorn.UC_ARCH_X86, unicorn.UC_MODE_64).emu_stop()
Tested under Linux and OS X.
2015-11-03 14:11:49 +01:00
Nguyen Anh Quynh
f5cec3815a
Merge pull request #240 from williballenthin/test-hook-code-stop-emu
...
add hook_code_stop_emu.py test for issue #232
2015-11-03 09:48:58 +08:00
practicalswift
29903c07f9
Fix typo.
2015-11-02 23:23:02 +01:00
practicalswift
b91df4af23
Test case for issue #236 (potential memory leak)
2015-11-02 23:19:38 +01:00
practicalswift
a435307543
Test case for issue #237 (OS X crash when creating 2048:th Uc object)
2015-11-02 23:18:30 +01:00
Willi Ballenthin
11dfaf4dec
hook_code_stop_emu.py: show PC before asserting
2015-11-02 10:05:00 -05:00
Willi Ballenthin
1a8ca49db1
hook_code_stop_emu.py: formatting
2015-11-02 10:03:31 -05:00
Willi Ballenthin
f02d03dde3
add hook_code_stop_emu.py test for issue #232
2015-11-02 09:54:36 -05:00
Nguyen Anh Quynh
3a36e327ab
support memory redirection, so the issue #217 is fixed
2015-10-27 14:37:03 +08:00
Nguyen Anh Quynh
cea1cf210d
tests: mips_kseg0_1.c prints out friendly error message rather than just error code
2015-10-27 12:36:03 +08:00
Nguyen Anh Quynh
7553c9c1c2
tests: add mips_kseg0_1 to Makefile to compile it
2015-10-27 11:25:34 +08:00
Nguyen Anh Quynh
05d89da496
Merge pull request #222 from pkooiman/master
...
Test for executing from MIPS kseg0/kseg1 memory ranges
2015-10-27 08:44:32 +08:00
Peter Kooiman
0bad2a8a90
Added test for executing from MIPS kseg0/ksegq1 memory ranges to tests/regress
2015-10-26 18:37:27 +01:00
gaffe
21ce78924c
assert that PC was changed in callback-pc test
2015-10-23 11:28:10 -07:00
Nguyen Anh Quynh
dfc8658083
regress: fix compilation warning of mem_double_unmap.c
2015-10-23 11:36:09 +08:00
coco
dd56621bbb
fix for use after free in case of double unmap
2015-10-21 22:25:49 +02:00
Nguyen Anh Quynh
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
Sean Heelan
bb4011efe2
Regression test for issue #165
2015-10-06 12:55:09 +07:00
Nguyen Anh Quynh
9410b8fbe7
regress: add shebang for ensure_typedef_consts_generated.py
2015-10-04 11:21:37 +08:00
Sean Heelan
fd6b510038
Added a comment explaining what is being tested for
2015-10-03 12:36:17 +07:00
Sean Heelan
f62418fc07
Regression test for issue #161
2015-10-03 12:22:41 +07:00
Nguyen Anh Quynh
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
Nguyen Anh Quynh
4a42041a83
handle 'bad ram pointer' case. this fixes issue #159
2015-09-29 18:22:22 +08:00
Nguyen Anh Quynh
976950d3c3
chmod +x tests/regress/bad_ram.py
2015-09-29 15:24:30 +08:00
mothran
0e258b9587
updated a few small errors in the script
2015-09-28 22:50:27 -07:00
mothran
eeebcc5a44
added bad_ram regress
2015-09-28 21:41:38 -07:00
Nguyen Anh Quynh
8b4d274c34
regress: convert some mips tests to use unittest
2015-09-28 11:57:24 +08:00
Nguyen Anh Quynh
2b0b4169bc
mips: advance PC for SYSCALL instruction. this fixes issue #157
2015-09-28 10:58:43 +08:00
Ryan Hileman
13be3435c9
add regress for #157
2015-09-27 01:08:46 -07:00
Nguyen Anh Quynh
53ce8f217d
mips: handle delay slot better for branch instructions. this should fix issue #155
2015-09-27 15:05:40 +08:00
Ryan Hileman
4b42b4be52
add regress for #155
2015-09-26 12:48:25 -07:00
Nguyen Anh Quynh
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
Nguyen Anh Quynh
14a01b5186
mips: handle delay slot so do not duplicate calling instruction handler. this fixes issue #133
2015-09-22 11:59:53 +08:00
danghvu
3c1d65ea66
Reorganize test directories
2015-09-21 20:47:45 -05:00