Commit Graph

654 Commits

Author SHA1 Message Date
2f297bdd3a handle some errors properly so avoid exit() during initialization. this fixes issue #237 2015-11-12 01:43:41 +08:00
116d96692d Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2015-11-11 23:50:18 +08:00
dcde01daef COMPILE.TXT: MingW compile requires Python2. issue reported by @stievie 2015-11-11 23:49:41 +08:00
e6fe7a8b54 Merge pull request #255 from radare/fix-184-pkgconfig
Fix #184 - Proper handling of DESTDIR
2015-11-10 22:12:36 +08:00
bd1a76c279 update .gitignore 2015-11-10 21:39:35 +08:00
29b3c57e3c Merge pull request #256 from farmdve/fix_bugs1
Patch eflags_noset to compile on 32-bit and on 64-bit.
2015-11-10 21:23:56 +08:00
c8300587f7 Patch eflags_noset to compile on 32-bit and on 64-bit. 2015-11-10 15:01:23 +02:00
fe408b0dc7 bindings: link to Delphi/Pascal binding 2015-11-10 21:00:29 +08:00
b15a179a18 Fix #184 - Proper handling of DESTDIR 2015-11-10 11:47:19 +01:00
272293556a do not abort() when memory is insufficient. this fixes issue #244 2015-11-10 11:44:29 +08:00
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
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
b3a990f1ae Merge pull request #253 from Nico01/master
fix compilation with capstone next
2015-11-08 00:26:25 +08:00
4127179fe3 fix compilation with capstone next 2015-11-07 16:55:42 +01:00
938d0b89eb x86: check for exit request after every hooked instruction. this should fix issue #232 2015-11-07 01:02:45 +08:00
4c5ecda908 regress: print with newline for 00opcode_uc_crash.c 2015-11-06 22:24:24 +08:00
4d8f2c9725 Merge branch 'fix_bugs' of https://github.com/farmdve/unicorn into farmdve-fix_bugs 2015-11-06 22:10:14 +08:00
17f3365fa1 update .gitignore 2015-11-06 22:10:01 +08:00
389bc06b49 Fix crash on 00 opcode.
l1_map should be an array of pointers, thus void **
2015-11-06 14:08:12 +02:00
de86647dbe regress: fix compiled warning for 00opcode_uc_crash.c 2015-11-05 22:51:10 +08:00
2fe1b31d51 update CREDITS 2015-11-05 21:36:03 +08:00
d818e2c485 Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2015-11-05 21:34:55 +08:00
4692f3445f Merge pull request #248 from farmdve/master
X86 zero-byte opcode causes Unicorn to crash.
2015-11-05 20:49:04 +08:00
b3dfde8a17 Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2015-11-05 20:41:51 +08:00
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
51323c9c17 x86: properly calculate EFLAGS when UC_HOOK_CODE is used. this should fix issue #246 2015-11-05 20:26:39 +08:00
95745eff3b regress: fix compiled warnings in eflags_nosync.c 2015-11-05 20:22:07 +08:00
f5316dc07a Merge pull request #246 from farmdve/master
X86 EFLAGS not synced properly.
2015-11-04 23:49:31 +08:00
894739515e X86 EFLAGS not synced properly.
these commits should fix my previous ones.
2015-11-04 09:38:57 +02:00
613ebbb20e Merge pull request #244 from emdel/master
SIGABRT issue
2015-11-04 10:07:48 +08:00
f70dc1becd Merge pull request #242 from practicalswift/segfault-on-stop
Fix segfault on emu_stop()
2015-11-04 10:06:37 +08:00
9f7d1812a3 SIGABRT issue 2015-11-03 12:58:20 -08:00
68a2a0c7ab regress: add shebang for hook_code_stop_emu.py 2015-11-03 22:45:48 +08:00
4151d1d600 Fix segfault-on-emu_stop() bug. 2015-11-03 14:34:31 +01:00
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
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
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
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
29903c07f9 Fix typo. 2015-11-02 23:23:02 +01:00
b91df4af23 Test case for issue #236 (potential memory leak) 2015-11-02 23:19:38 +01:00
a435307543 Test case for issue #237 (OS X crash when creating 2048:th Uc object) 2015-11-02 23:18:30 +01:00
11dfaf4dec hook_code_stop_emu.py: show PC before asserting 2015-11-02 10:05:00 -05:00
1a8ca49db1 hook_code_stop_emu.py: formatting 2015-11-02 10:03:31 -05:00
f02d03dde3 add hook_code_stop_emu.py test for issue #232 2015-11-02 09:54:36 -05:00
5eb75c311e python bindings: use relative paths for imports to support py3 2015-11-02 09:34:58 -05:00
aaa53f7e6b Merge pull request #234 from williballenthin/patch-4
python README.TXT: clarify working directories
2015-11-01 22:36:15 +08:00
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
c0de3b5c96 Merge pull request #233 from williballenthin/patch-3
COMPILE.TXT: fix trivial typo
2015-11-01 13:13:08 +08:00
863bb567db COMPILE.TXT: fix typo
trivial typo fix to installation path
2015-11-01 00:54:54 -04:00
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