Nguyen Anh Quynh
39b812d9e9
switch detail to be CS_OPT_OFF by default
11 years ago
Nguyen Anh Quynh
9fac512efc
no longer need to free insn_cache for each arch: simply do it from cs_close()
11 years ago
Nguyen Anh Quynh
1acfd0b883
move insn_cache into cs_struct to gurantee thread-safe
11 years ago
Nguyen Anh Quynh
8f7ab4981d
fix a potential memleak in cs_open() - happened when arch is invalid/unsupported
11 years ago
Nguyen Anh Quynh
c52352d6d9
add new error code CS_ERR_MEMSETUP to report error when user-defined dynamic mem management is uninitialized
11 years ago
Nguyen Anh Quynh
59492c2688
enable system's my_malloc/calloc/realloc/free via compile time option
11 years ago
Nguyen Anh Quynh
c7404075ff
move internal memory management declarations from utils.h to cs_priv.h
11 years ago
Nguyen Anh Quynh
24bf0d9079
add new option CS_OPT_MEM for cs_option(): this enable user-defined dynamic memory management. idea proposed by Pancake
11 years ago
Nguyen Anh Quynh
34f96389a9
add new API: cs_strerror() return a string describing a given error code. this should be used together with cs_errno()
11 years ago
Nguyen Anh Quynh
ee143c8c6c
fix a crashed bug in cs_close(): call destroy function before freeing handle's memory
11 years ago
Nguyen Anh Quynh
b265406960
cache insns for fast lookup in mapping.c. based on the idea of Dang Hoang Vu
11 years ago
Nguyen Anh Quynh
42c6b1acc7
initial support for PPC
11 years ago
Nguyen Anh Quynh
b90cb993ed
API cs_version_ex(): since we already broke API compatibility, we are not afraid to break cs_version() too. this replaces cs_version() with cs_version_ex()
11 years ago
Nguyen Anh Quynh
04c19beefe
rename API cs_disasm_dyn() to cs_disasm_ex(), and intentionally breaks compatibility with 1.0
11 years ago
Nguyen Anh Quynh
4fe224b1ed
change API cs_disasm_dyn(): break cs_insn into 2 structures, and put all details into new structure cs_detail. this break API compatibility
11 years ago
Nguyen Anh Quynh
b880678a25
old cs_version() and new cs_version() are not compatible, so revert old one, and create new separate API cs_version_ex()
11 years ago
Nguyen Anh Quynh
0877747bcd
cs_version() can accept NULL arguments. this is useful if you dont care about major/minor, but only want to get returned combined version
11 years ago
Nguyen Anh Quynh
9a197b35a1
nullify handle when cs_open() fails. besides, return CS_ERR_ARCH when arch is unsupported
11 years ago
Nguyen Anh Quynh
58747adcbb
to be sure, initialize arch_init[] with NULL
11 years ago
Nguyen Anh Quynh
d345839bce
support cs_option() for arm64 module
11 years ago
Nguyen Anh Quynh
39a42eddfb
Change the way of supporting arch modularization
...
- Always use libapstone.so as library name, no matter which archs are compiled in.
- Add new API cs_support() to check if a particular arch is supported.
- Change cs_version(): return hexical version which encodes both major & minor version.
the return value can be comparable.
- Bump API version to 1.1
11 years ago
Nguyen Anh Quynh
f185180436
cleaner implementation for arch modularization
11 years ago
Nguyen Anh Quynh
7d02c92de8
code style: more fix for cs.c
11 years ago
Nguyen Anh Quynh
7008356bc5
change cs_insn struct to follow the commit 18103e4a
. fixed Python & Java bindings accordingly. attn: bindings
11 years ago
danghvu
629a6d8901
Rename arch.h -> module.h
11 years ago
danghvu
0b6ea044ff
Move cs_option dispatch into arch specific
11 years ago
danghvu
2b19296439
Fix indentation problem
11 years ago
danghvu
34d49d935b
Support compilation of individual arch
11 years ago
Nguyen Anh Quynh
1bdb23a76d
add CS_OPT_MODE option. this allows us to change engine's mode at run-time
11 years ago
Nguyen Anh Quynh
9a0dbabc23
simplify checking on condition to end the loop in cs_disasm(). issue spotted by Pancake
11 years ago
Nguyen Anh Quynh
1f44928d97
mips: fix for micromips
11 years ago
Nguyen Anh Quynh
4d3e852fbb
detail option: provide instruction id even when detail option is OFF
11 years ago
Nguyen Anh Quynh
a209e67f8a
support to turn on/off building instruction details
11 years ago
Nguyen Anh Quynh
e5c658c407
move PKG_* away from cs.c to CONFIG
11 years ago
Nguyen Anh Quynh
a01d1546d6
x86: handle outs instruction in 16bit mode
11 years ago
Nguyen Anh Quynh
a8894b2d82
x86: remove debug code
11 years ago
Nguyen Anh Quynh
86dc393e81
properly handle output string having space as separator
11 years ago
Nguyen Anh Quynh
defb9bcf2f
more flexible on extracting insn menemonic, as sometimes space can be used as separator, not only tab
11 years ago
pancake
f0e4eed89d
Use const on all read-only buffers
11 years ago
Nguyen Anh Quynh
2215895ebc
mips: no need cs_struct.micro_mips, as we can get that from cs_struct.mode
11 years ago
Nguyen Anh Quynh
36df4bb6a7
revert the cs_version() API
11 years ago
Nguyen Anh Quynh
bb64b0bdca
more API version to capstone.h, and remove cs_version(). reset API back to 1.0 for public release
11 years ago
Nguyen Anh Quynh
a253c7a8e8
x86: map EFLAGS to string of 'flags', 'eflags' or 'rflags' depending on current CS_MODE
11 years ago
Nguyen Anh Quynh
fe8030bdf0
update errno in cs_option() upon failure with CS_ERR_OPTION
11 years ago
Nguyen Anh Quynh
041e25dd66
add CS_ERR_OPTION type. cs_option() returns this error code on invalid option
11 years ago
Nguyen Anh Quynh
26a43715d9
bump API to 1.7 due to the addition of @bytes to cs_insn
11 years ago
Nguyen Anh Quynh
8f13f3c6ab
rename @hex_code to @bytes , and move it to next to @size
11 years ago
Joxean
114df0ef2a
Added @hex_code member
...
It's used to retrieve the bytes of the instruction.
11 years ago
Nguyen Anh Quynh
4b95d9fa67
bump API to 1.6 to reflect the addition of the new API cs_option()
11 years ago
Nguyen Anh Quynh
da8adaded2
API cs_option(): @value now has size_t, so mapping opaque pointer is possible for future options
11 years ago