Chris Eagle
3ca072e0de
pack SegmentDescriptor to eliminate any alignment ambiguity
2016-03-28 09:29:55 -07:00
Nguyen Anh Quynh
e44f8f2981
samples: code style for sample_x86_32_gdt_and_seg_regs.c
2016-03-27 10:25:46 +08:00
Chris Eagle
6991d69dad
merge from upstream
2016-03-25 19:46:44 -07:00
Nguyen Anh Quynh
3bb05fa8e9
samples: clean executable binaries before building
2016-03-25 22:30:04 +08:00
Chris Eagle
dc7ec51c6d
file permissions
2016-03-24 08:57:00 -07:00
Chris Eagle
2825cfd07a
add sample to Makefile
2016-03-24 08:56:13 -07:00
Chris Eagle
4c4203cec8
fix x86 segment setup by updating cached segment registers on reg_write
2016-03-22 23:54:30 -07:00
Adrian Herrera
903fb04f29
Another typo
2016-03-22 23:09:38 +11:00
Adrian Herrera
b5ea277900
Fixed minor typos
2016-03-22 22:32:59 +11:00
Nguyen Anh Quynh
fb1ebac000
Merge branch 'master' into m1
2016-03-09 15:13:42 +08:00
Nguyen Anh Quynh
a7a1dcc661
uc_hook_add(): add begin & end arguments for all hook types. also update Python binding after this change
2016-02-11 08:02:13 +08:00
Nguyen Anh Quynh
20b01a6933
fix merge conflict
2016-02-01 12:08:38 +08:00
Nguyen Anh Quynh
48ab148d1c
Merge branch 'hook'
2016-01-26 22:52:29 +08:00
Nguyen Anh Quynh
235bf0950b
cosmetic change for mem_apis.c
2016-01-26 22:50:35 +08:00
xorstream
26d3b1e7d6
Added ppc 32bit mode and added sparc mode checks to bring it in line with other archs
2016-01-24 22:27:33 +11:00
Nguyen Anh Quynh
38d1443504
Merge branch 'hook-refactor' of https://github.com/lunixbochs/unicorn into lunixbochs-hook-refactor
2016-01-23 13:24:12 +08:00
Ryan Hileman
1974b23164
add begin>end to samples/mem_apis
2016-01-22 19:55:31 -08:00
Nguyen Anh Quynh
d79925f477
sparc: add SPARC32 mode (= UC_MODE_32)
2016-01-23 10:48:18 +08:00
xorstream
8763d426c2
Fix uc_mode usage in source code
2016-01-23 12:08:49 +11:00
Nguyen Anh Quynh
69b784fc45
samples: LDFLAGS += -lpthread. this fixes issue 382
2016-01-19 09:11:25 +08:00
Nguyen Anh Quynh
7c9f851e72
sample: remove memleak test code in sample_x86.c
2016-01-11 00:08:04 +08:00
Nguyen Anh Quynh
cd6c98f5df
sample: make hook_out() of sample_x86.c more deterministic
2016-01-10 23:25:05 +08:00
Hiroyuki Uekawa
6445c80b29
Build for Cygwin
2015-12-20 22:00:35 +09:00
Nguyen Anh Quynh
771f9f7c3b
fix conflicts when merging map-ptr branch to master branch
2015-12-17 08:12:02 +08:00
xorstream
f68077852f
Fixed includes for moved unicorn_dynload.h file
2015-12-15 17:17:14 +11:00
Nguyen Anh Quynh
1b145f431b
code style
2015-12-10 00:53:48 +08:00
xorstream
514715f7d5
Added previously ignored project dirs to MSVC support for unicorn samples.
2015-12-08 19:26:53 +11:00
xorstream
c5c13e110a
Added samples projects for MSVC binding.
...
Added MSVC support to unicorn samples.
2015-12-08 18:21:32 +11:00
Ryan Hileman
230cbd5330
add permissions to map_ptr api
2015-11-28 11:28:31 -08:00
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
8f1e8c0ab1
add sample code for API uc_mem_map_ptr()
2015-11-28 16:17:52 +08:00
practicalswift
2dc0451e3a
Remove trailing whitespace.
2015-10-30 22:34:35 +01:00
Matt
938a118221
Fix typo in register name
...
Register should be `edx` (not `dex`).
2015-10-15 20:38:44 +02: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
886946dcf4
do not use syscall to quit emulation. this can fix issues #147 & #148
2015-09-26 16:49:00 +08:00
Nguyen Anh Quynh
2599d41404
add some hooking macros for all kind of memory access events
2015-09-24 19:21:31 +08: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
548355acca
sparc: do not accept BIGENDIAN mode in samples. more sanity check should be done in the core
2015-09-11 14:02:27 +08:00
Jonathon Reinhart
2c0556826f
samples: remove (uint8_t*) casts to mem API calls
...
These casts are now unnecessary.
2015-09-07 13:09:05 -04:00
Nguyen Anh Quynh
d1bdbd11e7
rename uchook to uc_hook, ucengine to uc_engine, uc_hook_t to uc_hook_type
2015-09-05 11:20:32 +08:00
Nguyen Anh Quynh
74c069dc22
samples: cleanup & put mem_apis into sample_all.sh
2015-09-05 09:42:47 +08:00
Nguyen Anh Quynh
7b5bb95147
Merge branch 'master' of https://github.com/unicorn-engine/unicorn
2015-09-05 09:12:23 +08:00
Chris Eagle
cbf9885b85
clean up comiler warnings
2015-09-04 10:35:39 -07:00
Chris Eagle
0b676a82d4
Merge remote-tracking branch 'upstream/master'
2015-09-04 10:27:33 -07:00
Chris Eagle
e9c6b11506
add mem_api sample program and fix check for wrong NX related constant in cputlb.c
2015-09-04 10:27:03 -07:00
Nguyen Anh Quynh
51a4fe0766
samples: cleanup shellcode.c
2015-09-05 00:59:53 +08:00
pancake
e89174c3f1
Fix build of regress/
2015-09-04 07:56:35 -04:00
Chris Eagle
8cfd902e4b
Move mem_xxx samples to regress. Add check to only flush tlb when unmapping if there is a current cpu
2015-09-04 00:48:24 -07:00
Jonathon Reinhart
5f32e2c1ae
s/uc_hook_h/uchook/g
2015-09-03 22:39:23 -04:00
Jonathon Reinhart
da46071c7d
bring new code and samples up-to-date with API changes
2015-09-03 22:15:49 -04:00
Jonathon Reinhart
5e9d07a40a
Merge remote-tracking branch 'upstream/master' into change-handle-based-api
2015-09-03 22:01:52 -04:00
Nguyen Anh Quynh
0962c4822b
cleanup & update bindings' constants
2015-09-04 09:43:31 +08:00
Chris Eagle
2da46caef7
smooth out split_region related code
2015-09-03 12:26:36 -07:00
Nguyen Anh Quynh
9f9d57e84f
cleaning & indentation
2015-09-03 18:16:49 +08:00
Jonathon Reinhart
5b62d436a9
change public APIs to use ucengine
...
See #52 .
2015-09-02 22:00:09 -04:00
Chris Eagle
2c4f3769d4
clean up mem_protect related constants and error codes
2015-09-01 12:10:09 -07:00
Chris Eagle
9e4e96ff47
final updates for uc_mem_unmap, uc_mem_protect, and support ro UC_PROT_EXEC permission
2015-08-30 19:50:18 -07:00
Chris Eagle
05b645abd5
fix perms
2015-08-30 14:01:46 -07:00
Chris Eagle
394461b941
section splitting complete for uc_mem_protect
2015-08-30 14:01:07 -07:00
Jonathon Reinhart
3bd705a060
Merge remote-tracking branch 'upstream/master' into change-handle-based-api
2015-08-30 00:23:51 -04:00
Chris Eagle
986096d443
fix file perms
2015-08-28 21:05:38 -07:00
Chris Eagle
94ac0f02e6
file permissions changes
2015-08-28 20:03:36 -07:00
Chris Eagle
65787d415a
rename uc_mem_map_ex to uc_mem_map and all associated changes
2015-08-28 20:02:21 -07:00
Nguyen Anh Quynh
d3de7aa567
samples: add sample code for hooking SYSCALL instruction in sample_x86.c
2015-08-29 00:22:11 +08:00
Nguyen Anh Quynh
162728c1b1
samples: add shellcode to sample_all.sh
2015-08-29 00:02:52 +08:00
Jonathon Reinhart
db563bfcdb
samples: update sample_m68k to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
0202a57d32
samples: update shellcode.c to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
4c9e78d2f9
samples: update sample_x86 to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
fa11e9dddb
samples: update sample_sparc to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
0d69d81c2e
samples: update sample_arm64 to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
7406367a34
samples: update sample_arm to use new API
2015-08-26 09:02:17 -04:00
Jonathon Reinhart
7ac92ac50a
samples: update sample_mips to use new API
2015-08-26 09:02:17 -04:00
Nguyen Anh Quynh
192f07c503
reset invalid_error after callbacks decide to continue after invalid memory accesses
2015-08-26 16:15:38 +08:00
Nguyen Anh Quynh
22b549a4db
x86: add sample for 16bit mode
2015-08-26 09:25:29 +08:00
Nguyen Anh Quynh
c55ad00e2a
samples: use -e rather than -a to check for file existence in Makefile
2015-08-24 17:48:30 +08:00
mothran
2516de7ed8
renamed m68k enum constants
2015-08-23 21:56:24 -07:00
mothran
a167f7c456
renames the register constants so unicorn and capstone can compile together
2015-08-23 21:36:33 -07:00
Nguyen Anh Quynh
344d016104
import
2015-08-21 15:04:50 +08:00