Commit Graph

646 Commits

Author SHA1 Message Date
Nguyen Anh Quynh fe408b0dc7 bindings: link to Delphi/Pascal binding 2015-11-10 21:00:29 +08:00
Nguyen Anh Quynh 272293556a do not abort() when memory is insufficient. this fixes issue #244 2015-11-10 11:44:29 +08:00
Nguyen Anh Quynh 87ce40eb00 Merge pull request #254 from farmdve/fix_bugs1
Attempting to set some bits in the Unicorn EFLAGS doesn't work.
2015-11-10 10:36:01 +08:00
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