./devel/capstone, Lightweight multi-platform, multi-architecture disassembly framework

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 5.0.3, Package name: capstone-5.0.3, Maintainer: pkgsrc-users

Capstone is a disassembly framework with the target of becoming
the ultimate disasm engine for binary analysis and reversing in
the security community.

Capstone supports multiple hardware architectures, including ARM,
ARM64 (ARMv8), Mips, PPC, Sparc, SystemZ, XCore and X86 (including
X86_64).


Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 7471.558 KB

Version history: (Expand)


CVS history: (Expand)


   2024-03-11 10:21:01 by Jonathan Perkin | Files touched by this commit (3)
Log message:
capstone: Handle illumos getopt.
   2024-02-09 06:54:01 by Adam Ciarcinski | Files touched by this commit (1)
Log message:
capstone: fix PLIST
   2024-02-07 10:46:36 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
capstone py-capstone: updated to 5.0.1

Version 5.0.1

[ARM] Fix VFP feature check
Restore the ARM register naming from v4.
Use OS independent printf formatting.
Cherry-pick from next for v5.0.1
Add Python bindings for WASM
Sync Python bindings for x86, m68k, and mos65xx
Add Python bindings for SH
Update Python binding constants
Fixing TriCore disasm instructions
allow absolute CMAKE_INSTALL_*DIR

Version 5.0

[workflows] Remove deprecated image versions
Fix capstone_test.c
Support repz prefix on X86 ret instructions
fix for msvc static lib, dll build error and warnings
use calloc for cs_insn instead of malloc
Fix access bug for TEST op
Update Cython bindings
Use Intel register syntax for Tricore
Add # prefix to tricore imm operand
Revert "Mark cs_* as thread local to avoid race condition in multithreads"
Replace strncpy with memcpy to fix compiler warning.
Remove outdated and irrelevant TODO
   2022-03-26 20:25:51 by Tobias Nygren | Files touched by this commit (3)
Log message:
capstone: fix build on SunOS
   2021-12-07 17:34:45 by Jonathan Perkin | Files touched by this commit (2)
Log message:
capstone: Fix install_name on Darwin.
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2020-08-18 22:20:46 by Taylor R Campbell | Files touched by this commit (7) | Package updated
Log message:
devel/capstone: Update to 4.0.2

3.0.5
July 18, 2018

Release 3.0.5 is a stable release version, with important fixes in the core \ 
& several bindings against v3.0.5-rc3.
Library

    Fix the include path for Android builds when building cstool.
    Add posibility to disable universal build for Mac OS.
    cstool: Separate instruction bytes by spaces.
    Fix code path of pkg-config in Cmake.
    Update XCode project for XCode 9.1.
    Add Cortex-M support to cstool.
    Cmake forces to be build using MT with MSVC.
    Better support for Mac OS kernel.

X86

    Fix some issues in handling EVEX & VEX3 instructions.
    Fix immediate operand for AND instruction in ATT mode.
    Fix ATT syntax when imm operand is 0.
    Better handle XACQUIRE/XRELEASE.
    Fix imm operand of RETF.

Arm

    Fix an integer overlow bug.

Arm64

    Bug fix for incorrect operand type in certain load/store instructions.

Mips

    Mode CS_MODE_MIPS32R6 automatically sets CS_MODE_32

PowerPC

    Fix endian check.

Sparc

    Fix an integer overlow bug.

SystemZ

    Fix an integer overlow bug.

Python binding

    Raise error on accessing irrelevant data fields if skipdata & detail \ 
modes are enable.

4.0
December 18, 2018

Release 4.0 is a stable release version, with important fixes in the core & \ 
several bindings against v3.0.5.
Core

    New APIs: cs_regs_access()
    Add new options for cs_option(): CS_OPT_MNEMONIC & CS_OPT_UNSIGNED & \ 
CS_OPT_SYNTAX_MASM.
    Various updates & bugfixes for all architectures.
    Add 4 new architectures: EVM, M68K, M680X & TMS320C64x.
    Add new group types: CS_GRP_PRIVILEGE & CS_GRP_BRANCH_RELATIVE.
    Add new error types: CS_ERR_X86_MASM.

X86

    Add XOP code condition type in x86_xop_cc.
    Add some info on encoding to cs_x86 in cs_x86_encoding.
    Add register flags update in cs_x86.{eflags, fpu_flags}
    Change cs_x86.disp type from int32_t to int64_t.
    Add new groups: X86_GRP_VM & X86_GRP_FPU.
    Lots of new instructions (AVX)

Arm64

    Add instruction ARM64_INS_NEGS & ARM64_INS_NGCS.

Mips

    Add mode CS_MODE_MIPS2.

PowerPC

    Change cs_ppc_op.imm type from int32_t to int64_t.
    Add new groups: PPC_GRP_ICBT, PPC_GRP_P8ALTIVEC, PPC_GRP_P8VECTOR & \ 
PPC_GRP_QPX.
    Lots of new instructions (QPX among them)

Sparc

    Change cs_sparc_op.imm type from int32_t to int64_t.

Bindings

    New bindings: PowerShell & VB6

4.0.1
January 10, 2019

Release 4.0.1 is a stable release version, with minor bugfixes in the core & \ 
Python binding.
Core

    Fix some issues for packaging (Debian, Gentoo, etc).
    Better support for building with Mingw.
    cstool has new option -s to turn on skipdata mode.
    cstool -v now report build settings of the core.
    Add suite/capstone_get_setup.c so users can integrate with their own code to \ 
retrieve Capstone settings at build time.

Arm

    Fix 4.0 regression: the tbh [r0, r1, lsl #1] instruction sets the \ 
operand.shift.value back again.
    Remove ARM_REG_PC group for BX instruction.

X86

    endbr32 and endbr64 instructions are now properly decoded in both CS_MODE_32 \ 
and CS_MODE_64.

M680X

    Fix some issues reported by clang-analyzer.

Python binding

    Fix skipdata setup.
    Add getter/setter for skipdata_mnem & skipdata_callback.

4.0.2
May 8, 2020

Release 4.0.2 is a stable release version, with minor bugfixes in the core & \ 
some bindings.
Core

    Windows kernel-mode driver support
    Fix installation path on FreeBSD and DragonFly

Cstool

    Add armv8, ppc32 & thumbv8 modes
    Print instruction ID

X86

    Support CS_OPT_UNSIGNED for ATT syntax
    Fix operand size for some instructions
    Fix LOCK prefixes
    Recognize xacquire/xrelease prefix
    Fix call/jmp access mode of mem operand
    Add ENDBR32, ENDBR64 to reduce mode
    Other minor fixes

Arm

    Update writeback for STR_POST_REG

ARM64

    Support CS_OPT_UNSIGNED
    Fix register access flags for memory instructions
    Fix UMOV vess

M68K

    Store correct register value in op.reg_pair

PowerPC

    BDZLA is absolute branch

SystemZ

    Fix truncated 64bit imm operand
    Fix base/index printing

Python binding

    Fix skipdata struct being destroyed
    Add repr for capstone.CsInsn

Java binding

    Fix Java bindings to use pointers instead of longs

Ocaml binding

    Fix x86_op record