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

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


Branch: CURRENT, Version: 3.0.5rc2, Package name: capstone-3.0.5rc2, 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:

SHA1: 52052e754c4f92128d16d5b028b85f646547f091
RMD160: 960473fc8f4b7113adc291b768e668e27a7c8b56
Filesize: 2763.025 KB

Version history: (Expand)


CVS history: (Expand)


   2018-03-24 18:10:42 by Joerg Sonnenberger | Files touched by this commit (6)
Log message:
Don't build capstone locally in the Python binding.
   2018-02-23 03:42:06 by Pierre Pronchery | Files touched by this commit (8) | Package updated
Log message:
Update devel/capstone to version 3.0.5-rc2

This provides important fixes in the core & several bindings:

Library

    Fix build for Visual Studio 2012
    Fix X86_REL_ADDR macro
    Add CS_VERSION_MAJOR, CS_VERSION_MINOR, CS_VERSION_EXTRA
    Better support for embedding Capstone into Windows kernel drivers
    Support to embedded Capstone into MacOS kernel
    Support MacOS 10.11 and up
    Better support for Cygwin
    Support build packages for FreeBSD & DragonflyBSD
    Add a command-line tool "cstool"
    Properly handle switching to Endian mode at run-time for Arm, Arm64, Mips \ 
& Sparc

X86

    Some random 16-bit code can be handled wrongly.
    Remove abundant operand type X86_OP_FP
    Fix instructions MOVQ, LOOP, LOOPE, LOOPNE, CALL/JMP rel16, REPNE LODSD, MOV \ 
*AX, MOFFS, FAR JMP/CALL
    Add X86_REG_EFLAGS for STC and STD
    Fix instruction attributes for SYSEXIT, MOVW, ROL, LGS, SLDT
    Rename registers ST0-ST7 to be consistent with asm output

Arm

    Properly handle IT instruction
    Fix LDRSB
    Fix writeback for LDR
    Fix Thumb BigEndian setup

Arm

    Fix arith extender
    Fix writeback for LDR
    Rename enum arm64_mrs_reg to arm64_sysreg

PowerPC

    Print 0 offset for memory operand

Sparc

    Fix POPC instruction

Python binding

    Better PyPy support
    Add __version__
    Better support for Python 3
    Fix CS_SKIPDATA_CALLBACK prototype
    Cast skipdata function inside binding to simplify the API

Java binding

    Better handle input with invalid code

PowerShell binding

    New binding

Build-tested with devel/ropper and devel/{py-,}radare2 on NetBSD/amd64.
   2016-06-13 03:51:04 by Kamil Rytarowski | Files touched by this commit (1) | Package updated
Log message:
Prepare devel/capstone for split for the base package and bindings

Fix pkglint warnings (whitespace).

Bump PKGREVISION.
   2016-02-20 12:40:30 by Jonathan Perkin | Files touched by this commit (3) | Package updated
Log message:
Fix install_name on Darwin.  Bump PKGREVISION.
   2015-11-03 04:29:40 by Alistair G. Crooks | Files touched by this commit (1995)
Log message:
Add SHA512 digests for distfiles for devel category

Issues found with existing distfiles:
	distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip
	distfiles/fortran-utils-1.1.tar.gz
	distfiles/ivykis-0.39.tar.gz
	distfiles/enum-1.11.tar.gz
	distfiles/pvs-3.2-libraries.tgz
	distfiles/pvs-3.2-linux.tgz
	distfiles/pvs-3.2-solaris.tgz
	distfiles/pvs-3.2-system.tgz
No changes made to these distinfo files.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-07-28 14:48:14 by Sevan Janiyan | Files touched by this commit (3)
Log message:
"Backport upstream patch for pkgsrc to unbreak FreeBSD and \ 
DragonflyBSD" - kamil@
   2015-07-19 16:49:44 by Kamil Rytarowski | Files touched by this commit (2) | Package updated
Log message:
Update to 3.0.4
---------------
Version 3.0.4: Jul 16th, 2015

Library:
    Improve cross-compile for Android using Android NDK.
    Support cross-compile for AArch64 Android (with Linux GCC).
    Removed osxkernel_inttypes.h due to license issue (incompatible with BSD \ 
license).
    Now it is possible to compile with CC having a space inside (such as \ 
"ccache gcc")

X86:
    Fix a null pointer dereference bug on handling code with special prefixes.
    Properly handle AL/AX/EAX operand for OUT instruction in AT&T syntax.
    Print immediate operand in positive form in some algorithm instructions.
    Properly decode some SSE instructions.

PowerPC:
    Fixed some memory corruption bugs.

Mips:
    Fixed instruction ID of SUBU instruction.
    Fixed a memory corruption bug.

Arm:
    Fixed a memory corruption bug on IT instruction.

XCore:
    Fixed a memory corruption bug when instruction has a memory operand.

Python:
    Support Virtualenv.
    setup.py supports option --user if not in a virtualenv to allow for local usage.
    Properly handle the destruction of Cs object in the case the shared library \ 
was already unloaded.
   2015-05-09 09:00:08 by Makoto Fujiwara | Files touched by this commit (2) | Package updated
Log message:
Update to 3.0.3
---------------
Version 3.0.3: May 08th, 2015
[ Library ]

- Support to embed into Mac OS X kernel extensions.
- Now it is possible to compile Capstone with older C compilers, such as
  GCC 4.8 on Ubuntu 12.04.
- Add "test_iter" to MSVC project.

[ X86 ]
- All shifted instructions SHL, SHR, SAL, SAR, RCL, RCR, ROL & ROR now support
  $1 as first operand in *AT&T* syntax (so we have "rcll $1, %edx" \ 
instead of
  "rcll %edx").
- CMPXCHG16B is a valid instruction with LOCK prefix.
- Fixed a segfault on the input of 0xF3.

[ Arm ]
- BLX instruction modifies PC & LR registers.

[ Sparc ]
- Improved displacement decoding for sparc banching instructions.

[ Python binding ]
- Fix for Cython so it can properly initialize.
- X86Op.avx_zero_mask now has c_bool type, but not c_uint8 type.
- Properly support compile with Cygwin & install binding (setup.py).