github capstone-engine/capstone 6.0.0-Alpha6

5 hours ago

Highlights

  • Fixed CVE-2025-68114 and CVE-2025-67873 reported by @Finder16 (see below).
  • csh and value argument of cs_option are now of type uintptr_t by @kingiler.
  • Several improvements on x86 details and assembly text by @hainest and @0verflowme.
  • Better support for cross builds.
  • Handle previously ignored operands in M68K by @csoren.
  • Change Alpha immediate operands to int64_t by @wargio.
  • Static Capstone libraries are now built with PIC enabled by @hainest.

CVEs

This release fixes CVE-2025-68114
and CVE-2025-67873 reported by @Finder16.

Only users who have custom implementations of the skipdata callback or vsnprintf are affected.


Version 6.0.0-Alpha6: January 13th, 2026

What's Changed

  • Update register semantics for x86 pop instructions by @hainest in #2770
  • Python binding: Support 3.14 free-threaded CPython build by @Antelox in #2769
  • Only publish if tag is present and workflow is triggered by release. by @Rot127 in #2766
  • Add Python prominently to the workflow name to prevent confusion. by @Rot127 in #2774
  • Fix incorrectly defined BSHUFFLE opcode. by @Rot127 in #2772
  • Fix cstest missing size checks by @Rot127 in #2775
  • Update read/written registers for x86 call instructions by @hainest in #2773
  • Apply other VIS instruction fixes from llvm/#130967 by @Rot127 in #2777
  • Fix regex match syntax for project version by @Zangetsu38 in #2779
  • Add workflow to check for C code formatting and format all code with clang-format-17 by @Rot127 in #2744
  • Fix log message in cstest_py/compare.compare_bit_flags by @hainest in #2783
  • DIET MSVC C1001 Fix by @LADIlib in #2782
  • Update read/written registers for x86 interrupt instructions by @hainest in #2781
  • Update read/written registers for x87 comparison instructions by @hainest in #2784
  • Update read/written registers for x86 enter/leave instructions by @hainest in #2788
  • Update read/written registers for x86 procedure return instructions by @hainest in #2789
  • Add instruction details to cstest logging by @hainest in #2787
  • Update read/written registers for x86 interrupt return instructions by @hainest in #2793
  • Remove unused fuzzit.sh script and key. by @Rot127 in #2797
  • Fix assertions if CAPSTONE_ASSERTION_WARNINGS=1. by @Rot127 in #2792
  • Update read/written registers for x86 string instructions by @hainest in #2790
  • Update read/written registers for x86 conditional jump instructions by @hainest in #2798
  • Minor formatting changes by @moste00 in #2804
  • Fix cstest_py and add negative tests. by @Rot127 in #2807
  • Add null check for Xtensa operation detail in Xtensa_add_cs_detail_0 by @b1llow in #2809
  • Update read/written registers for x86 loop instructions by @hainest in #2799
  • Update read/written registers for x86 unconditional jump instructions by @hainest in #2800
  • Bump to latest MacOS runner. by @Rot127 in #2812
  • Fix SH decode table being exported globally by @stuxnot in #2814
  • Doc fixups by @Rot127 in #2754
  • Add better support for cross builds. by @Rot127 in #2803
  • Update read/written registers for x86 system call instructions by @hainest in #2820
  • Fix possible OOB read by @Rot127 in #2825
  • Update read/written registers for x86 cmpxchg instruction by @hainest in #2821
  • Apply clang-format-17 to test_poc.c by @Rot127 in #2833
  • Add missing apt-get update before installing dependencies. by @Rot127 in #2832
  • Return for failing range asserts to enforce the assumptions. by @Rot127 in #2829
  • [alpha] Fix immediate to be 64bit wide by @wargio in #2840
  • Build static libs with PIC by @hainest in #2836
  • M68K: fix displacement, register naming and suppressed registers by @csoren in #2839
  • X86: Fix movabsq immediates >= 2^63 printed as decimal in ATT syntax by @0verflowme in #2843
  • M68K: add displacement size fields to disassembler by @csoren in #2842
  • fix: use uintptr_t to maintain pointer provenance by @kingiler in #2845

New Contributors

Full Changelog: 6.0.0-Alpha5...6.0.0-Alpha6

Don't miss a new capstone release

NewReleases is sending notifications on new releases.