Commit Graph

643 Commits

Author SHA1 Message Date
farmdve
726f45b33d Attempting to set some bits in the Unicorn EFLAGS doesn't work.
When attempting to set all flags except trap flag, the EFLAGS value
should be 0x00244ED7, I've tested this on Windows and here
https://ideone.com/WQAvk1 which is presumably Linux.

Unicorn however has the value 0x00000ED7, bits 11-21 are not set. Bit 21
is the ID bit indicating whether or not CPUID is available.
2015-11-10 00:49:01 +02:00
Nguyen Anh Quynh
b3a990f1ae Merge pull request #253 from Nico01/master
fix compilation with capstone next
2015-11-08 00:26:25 +08:00
Nico01
4127179fe3 fix compilation with capstone next 2015-11-07 16:55:42 +01:00
Nguyen Anh Quynh
938d0b89eb x86: check for exit request after every hooked instruction. this should fix issue #232 2015-11-07 01:02:45 +08:00
Nguyen Anh Quynh
4c5ecda908 regress: print with newline for 00opcode_uc_crash.c 2015-11-06 22:24:24 +08:00
Nguyen Anh Quynh
4d8f2c9725 Merge branch 'fix_bugs' of https://github.com/farmdve/unicorn into farmdve-fix_bugs 2015-11-06 22:10:14 +08:00
Nguyen Anh Quynh
17f3365fa1 update .gitignore 2015-11-06 22:10:01 +08:00
farmdve
389bc06b49 Fix crash on 00 opcode.
l1_map should be an array of pointers, thus void **
2015-11-06 14:08:12 +02:00
Nguyen Anh Quynh
de86647dbe regress: fix compiled warning for 00opcode_uc_crash.c 2015-11-05 22:51:10 +08:00
Nguyen Anh Quynh
2fe1b31d51 update CREDITS 2015-11-05 21:36:03 +08:00
Nguyen Anh Quynh
d818e2c485 Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2015-11-05 21:34:55 +08:00
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
51323c9c17 x86: properly calculate EFLAGS when UC_HOOK_CODE is used. this should fix issue #246 2015-11-05 20:26:39 +08:00
Nguyen Anh Quynh
95745eff3b regress: fix compiled warnings in eflags_nosync.c 2015-11-05 20:22:07 +08:00
Nguyen Anh Quynh
f5316dc07a Merge pull request #246 from farmdve/master
X86 EFLAGS not synced properly.
2015-11-04 23:49:31 +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
Nguyen Anh Quynh
f70dc1becd Merge pull request #242 from practicalswift/segfault-on-stop
Fix segfault on emu_stop()
2015-11-04 10:06:37 +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
4151d1d600 Fix segfault-on-emu_stop() bug. 2015-11-03 14:34:31 +01: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
4ef13076e9 Merge pull request #239 from williballenthin/python-relative-import-paths
python bindings: use relative paths for imports to support py3
2015-11-03 09:58:10 +08: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
Nguyen Anh Quynh
01671683be Merge pull request #241 from practicalswift/testcases
Add test cases for issues #236 (potential memory leak) and #237 (OS X crash)
2015-11-03 09:47:16 +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
Willi Ballenthin
5eb75c311e python bindings: use relative paths for imports to support py3 2015-11-02 09:34:58 -05:00
Nguyen Anh Quynh
aaa53f7e6b Merge pull request #234 from williballenthin/patch-4
python README.TXT: clarify working directories
2015-11-01 22:36:15 +08:00
Willi Ballenthin
197602b806 python README.TXT: clarify working directories
clarify in which directory to build the core project and install the python bindings. when i went to install the python bindings, i was momentarily confused why the root Makefile didn't have an `install3` target.
2015-11-01 08:50:06 -05:00
Nguyen Anh Quynh
c0de3b5c96 Merge pull request #233 from williballenthin/patch-3
COMPILE.TXT: fix trivial typo
2015-11-01 13:13:08 +08:00
Willi Ballenthin
863bb567db COMPILE.TXT: fix typo
trivial typo fix to installation path
2015-11-01 00:54:54 -04:00
Nguyen Anh Quynh
84fce71416 Merge pull request #231 from lunixbochs/master
Go bindings: add Close() and set as GC finalizer (fix #230)
2015-10-31 13:38:00 +08:00
Ryan Hileman
a6ffb71e4c Go bindings: add Close() and set as GC finalizer 2015-10-30 22:08:35 -07:00
Nguyen Anh Quynh
b41db5abd9 Merge pull request #229 from practicalswift/typos
Fix typos. Remove trailing whitespace.
2015-10-31 10:39:35 +08:00
practicalswift
2dc0451e3a Remove trailing whitespace. 2015-10-30 22:34:35 +01:00
practicalswift
4f521c371c Fix typos. 2015-10-30 22:32:59 +01:00
Nguyen Anh Quynh
e1f7f47096 Merge pull request #226 from mrphrazer/python_mem_api
Python bindings mem_protect and mem_unmap
2015-10-28 12:37:13 +08:00
Tim Blazytko
94012558fb python bindings: added mem_protect 2015-10-28 05:26:09 +01:00
Tim Blazytko
fe2ecdf6f9 python bindings: added mem_unmap 2015-10-28 05:25:36 +01:00
Nguyen Anh Quynh
b66a323b19 do not free MemoryRegion in memory_unmap() because it will be unref later in memory_region_unref(). this fixes issue #202 2015-10-28 01:26:59 +08: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