Commit graph

3310 commits

Author SHA1 Message Date
Nguyen Anh Quynh f4882ae1a2 simplify code by replacing mem_map_start()/mem_map_finish() in uc.c with mem_map() 2015-11-28 18:26:08 +08:00
Nguyen Anh Quynh 4a759cebb5 set permission for memory region allocated by memory_map_ptr(). this fixes the segfault in sample_x86.c, function test_x86_map_ptr() 2015-11-28 17:11:27 +08:00
Nguyen Anh Quynh 8f1e8c0ab1 add sample code for API uc_mem_map_ptr() 2015-11-28 16:17:52 +08:00
Nguyen Anh Quynh f57c098056 declare variables at begin of function 2015-11-28 15:56:19 +08:00
Nguyen Anh Quynh 6b599314e1 Merge branch 'map-ptr' of https://github.com/lunixbochs/unicorn into lunixbochs-map-ptr 2015-11-28 15:50:53 +08:00
Ryan Hileman 18066b3578 support uc_mem_map_ptr in Go and Python bindings 2015-11-27 23:30:36 -08:00
Ryan Hileman 6d21ebabea implement host-controlled memory mapping for #261 2015-11-27 23:30:36 -08:00
Nguyen Anh Quynh 5210423fe4 Merge pull request #273 from edgarmb/master
fixed small typo
2015-11-18 11:03:59 +08:00
Edgar Barbosa c6b6ba5daa fixed small typo 2015-11-17 19:35:11 -02:00
Nguyen Anh Quynh 2764cb4170 Merge pull request #271 from practicalswift/invalid_test_case_name
invalid_read_in_cpu_tb_exec_x86_64 → invalid_write_in_cpu_tb_exec_x86_64
2015-11-18 01:07:16 +08:00
Nguyen Anh Quynh 42b8879bb2 Merge branch 'master' of https://github.com/farmdve/unicorn into farmdve-master 2015-11-18 00:45:55 +08:00
Nguyen Anh Quynh 3302b9798c add some debug helper on generated machine code 2015-11-18 00:43:18 +08:00
farmdve 65a649dec0 Fix issue #269
Patch from here
http://lists.nongnu.org/archive/html/qemu-devel/2015-11/msg03848.html

Also fix another potential issue with constants from
bbeb82395e (diff-9e0011b4d4a5890b309421630e6d86c3)
2015-11-17 18:34:38 +02:00
practicalswift 36948320ce invalid_read_in_cpu_tb_exec_x86_64 → invalid_write_in_cpu_tb_exec_x86_64 2015-11-17 08:44:38 +01:00
Nguyen Anh Quynh 51945c5bf2 Merge pull request #270 from practicalswift/invalid-write-in-cpu_tb_exec_x86_64
Crash case: Invalid write of size 4 in cpu_tb_exec_x86_64 (issue #269)
2015-11-17 10:05:10 +08:00
practicalswift ad5c2eb9c6 Crash case: Invalid write of size 4 in cpu_tb_exec_x86_64. 2015-11-16 23:19:23 +01:00
Nguyen Anh Quynh edaea7020b x86: on self-modifying code, generate JIT code until end of block. this fixes issue #266 2015-11-16 21:55:42 +08:00
Nguyen Anh Quynh 331154551e Merge pull request #267 from practicalswift/hook-block-invalid-read
Add test case for issue #266 ("Invalid read of size 4" in cpu_tb_exec).
2015-11-16 02:17:04 +08:00
practicalswift 8af4967707 Remove space. 2015-11-15 18:18:04 +01:00
practicalswift 76ed117df6 Cast last two uc_hook_add(…) arguments to uint64_t. 2015-11-15 18:12:10 +01:00
practicalswift 5b34660b3f Add test case to Makefile and .gitignore. Add disassembly. 2015-11-15 17:31:06 +01:00
practicalswift c8fe68fb3d Add test case for issue #266 ("Invalid read of size 4" in cpu_tb_exec). 2015-11-15 00:04:34 +01:00
Nguyen Anh Quynh 2933d23772 Merge pull request #264 from williballenthin/run_across_bb
add test case to run_across_bb.py
2015-11-13 23:59:47 +08:00
Nguyen Anh Quynh 9099755ca1 flush JIT cache before finishing emulation. this fixes issue #263. TODO: optimize this for better performance 2015-11-13 23:57:03 +08:00
Willi Ballenthin eb73984763 run_across_bb: include expected vs actual PC in assertion error 2015-11-13 10:14:38 -05:00
farmdve 1ba39a582c change tabs to whitespaces... 2015-11-13 16:53:01 +02:00
farmdve 661714d0c2 Potential fix for issue #262/#263 2015-11-13 16:51:59 +02:00
Willi Ballenthin d09cc88495 run_across_bb: whitespacing 2015-11-13 09:13:27 -05:00
Willi Ballenthin c97fa4fd8a add test case to run_across_bb
demonstrates that calling emu_start from a BB start to another BB end works fine.
2015-11-13 08:59:36 -05:00
Nguyen Anh Quynh 1a543c04f0 Merge pull request #262 from williballenthin/run_across_bb
Add test for emulation within and across BBs
2015-11-13 15:01:48 +08:00
Willi Ballenthin 22d2d3bdbb add test for emulation within and across BB 2015-11-13 00:44:19 -05:00
Nguyen Anh Quynh 9f29fdf442 update regress.sh 2015-11-12 15:30:19 +08:00
Nguyen Anh Quynh 49ee3828af update .gitignore 2015-11-12 15:25:24 +08:00
Nguyen Anh Quynh d126644bb2 Merge pull request #259 from lunixbochs/multiarch
improve multiarch support
2015-11-12 15:11:06 +08:00
Nguyen Anh Quynh d92d6791b9 Merge pull request #260 from lunixbochs/master
add mem_map_large regression (for #223)
2015-11-12 15:06:35 +08:00
Ryan Hileman f93e342177 add mem_map_large regression (for #223) 2015-11-11 22:52:18 -08:00
Ryan Hileman ad5cd37551 improve multiarch support 2015-11-11 22:48:21 -08:00
Nguyen Anh Quynh 2f297bdd3a handle some errors properly so avoid exit() during initialization. this fixes issue #237 2015-11-12 01:43:41 +08:00
Nguyen Anh Quynh 116d96692d Merge branch 'master' of https://github.com/unicorn-engine/unicorn 2015-11-11 23:50:18 +08:00
Nguyen Anh Quynh dcde01daef COMPILE.TXT: MingW compile requires Python2. issue reported by @stievie 2015-11-11 23:49:41 +08:00
Nguyen Anh Quynh e6fe7a8b54 Merge pull request #255 from radare/fix-184-pkgconfig
Fix #184 - Proper handling of DESTDIR
2015-11-10 22:12:36 +08:00
Nguyen Anh Quynh bd1a76c279 update .gitignore 2015-11-10 21:39:35 +08:00
Nguyen Anh Quynh 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
farmdve c8300587f7 Patch eflags_noset to compile on 32-bit and on 64-bit. 2015-11-10 15:01:23 +02:00
Nguyen Anh Quynh fe408b0dc7 bindings: link to Delphi/Pascal binding 2015-11-10 21:00:29 +08:00
pancake b15a179a18 Fix #184 - Proper handling of DESTDIR 2015-11-10 11:47:19 +01: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