diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-10-10 19:34:30 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-10-10 19:34:30 +0100 |
commit | 948f9476d6a417da6048d4291bf36b0507293d63 (patch) | |
tree | 794c4cb065d606084053aeadc0b6a44bce61a6f6 /dev-libs/capstone | |
parent | bba7ed73af4fe3b333cb970dc40a9098e2d1c54b (diff) |
gentoo auto-resync : 10:10:2022 - 19:34:30
Diffstat (limited to 'dev-libs/capstone')
-rw-r--r-- | dev-libs/capstone/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/capstone/capstone-5.0_rc2-r2.ebuild | 83 | ||||
-rw-r--r-- | dev-libs/capstone/files/capstone-5.0_rc2-oob-mem-access.patch | 40 |
3 files changed, 125 insertions, 0 deletions
diff --git a/dev-libs/capstone/Manifest b/dev-libs/capstone/Manifest index b7f02d00b348..bbb464765bc9 100644 --- a/dev-libs/capstone/Manifest +++ b/dev-libs/capstone/Manifest @@ -1,8 +1,10 @@ AUX capstone-4.0.2-libsuffix.patch 347 BLAKE2B 5478a08d072cff0873c3410ce99dcf20c7aa12594148102498c7d0ed3216af95712f0daef5e9484d1faf368b93b2b014832ead5466d60d139e9ed7bb2bd1ed02 SHA512 81ffee2dc4a406e980025402dc3f8bee886cba9f305312e03c735d4b47e69887e90240274ae1949ff9900ba2a66413d33e7ef7a9ebb83a3dc9d2769f3d008395 +AUX capstone-5.0_rc2-oob-mem-access.patch 1353 BLAKE2B 67e19e22f466d2081b5f2b3122cc2ca8eed27c3b59c9b4d5ed3f07fba66c34d67305ced9de3e4c80ae6117935a90eb4b030ec7cdbf6da1ad0d4c1ff0b24a964e SHA512 048cf06c0408eddbe994dc7f59ab086575f8b14b83857d22ad48198c75261eea218f20a8615d26b7c974914f8b494b4a05c84c8b6b273464f90a40d14d0a9b8e AUX capstone-5.0_rc2-pkgconfig.patch 464 BLAKE2B 68727cd48eb79d43417df46312d8def40307e4120becd4e89edb88c367c02190e3174fc715a3bd593ea18a5f6b1592e958c7fa3643c164d69f3b9be882911d1d SHA512 cc6588b281257644679004baea4c722a4be88cd2510b632585036017fb8e6eddd5fab3a469c1583d0d6fee1fd1e6490d3773c7de84389f9ea3d72fddfd5add59 DIST capstone-4.0.2.tar.gz 3439542 BLAKE2B 435729a8fef2dce6495635352101b3befe563c8404efdbb0dccabecbe2bded332221665bacdbcd9043dda72b652b6f29c0e1a548cefb8c64d5b6b9dc174ed3d9 SHA512 7f93534517307b737422a8825b66b2a1f3e1cca2049465d60ab12595940154aaf843ba40ed348fce58de58b990c19a0caef289060eb72898cb008a88c470970e DIST capstone-5.0_rc2.tar.gz 5761725 BLAKE2B 2f5074fe1881309ee2d36cdfeba10bacefbac5c994d42dd3b08c07fe8b70e298d9d18e9c061dad1a54c6368bdc296fd02f30d77f78b1ae05074764e7041aef2c SHA512 fdc4992399a2add960b12ff2495087a97fa66dce85e87375ba9d19e02b7ea5fb16a7efa93d839c2693378f6367efc9df68f192584ba624443d3b0b197d4dcd9a EBUILD capstone-4.0.2-r2.ebuild 1535 BLAKE2B 15f3ca620f06cf18d35a0c18324dc0b61297e5479e408a7f38d42eb1b69ce7f97357057d18a9dcb970bf4b61a73c4564e4d90f5a07d22462ee1860d476b1139c SHA512 6a2cd3383a7f58183bb1fc621c756e4b78f4c3f70bb355e98339b4ffc7dd03c7ac7850be8db376fd00707403bfe4a27241d7c7d4a21eaca33be9e7f0df02de30 EBUILD capstone-5.0_rc2-r1.ebuild 1469 BLAKE2B c5279bc3457e8ea39fbda2e65f1e3a1d6f804b3bc2b05ce233bd18096de5c9b57342af01d0e36feddad9a6034138402d70e827242db4375941d97fb51bd6c0a0 SHA512 46395d96c6d311721bbcb8e1cc600bf095d72ad554c2e324a51b801c0849bff621f6a4ac8eaa1fb1a853ecf6e9ec05fbb557186fa021ebf9c197556f51f2a8ee +EBUILD capstone-5.0_rc2-r2.ebuild 1512 BLAKE2B 8e55a682151cff0ad4466a72ecad38a42d5ea916082602740534f7abb6f6fa8004eb9b589e3c66dab06ba403a8239c3550791c06aaad42cba808f29fb9e6bb6e SHA512 421f3fad8d2d33192c07c698eef9e456f7580969617ea8762a7107e80b306140f82a077af691f6b7ae65a26e6fd5d8bdffc6d260a4457bb84aad015984206e81 EBUILD capstone-9999.ebuild 1568 BLAKE2B f5dde9abc087427f4462f82075651dedc26931d16864bec80830c70d7423663b9b9abbbc9f67980b1b08555fb61b877b05c9612d200112b32ace2857ba6f9066 SHA512 da214669d779c3500d7eccbef4cab3c23757ce6cc155d9e45dbc644474677c9cd5946adde6b03306be7872f9037d45489e0130e0c92b40db5ed14f86ec77612b MISC metadata.xml 484 BLAKE2B 32c39bf06443ce4ca18191a4c9626cf517d5bd4f837c179e6186a68a0053217bf41d61d2c4d46c9792b1974879d22b36e4a02fa461a1b085acf5c4406bde4891 SHA512 f06dcd3133982f72cf21c5bb3d9a34207d7083233b5e70856f6a1dab60ef361cf1432659af30ea6b90fcb38cfdaec49f0792623ef841e136bc33cb5e1c40d1cf diff --git a/dev-libs/capstone/capstone-5.0_rc2-r2.ebuild b/dev-libs/capstone/capstone-5.0_rc2-r2.ebuild new file mode 100644 index 000000000000..854077b25d6a --- /dev/null +++ b/dev-libs/capstone/capstone-5.0_rc2-r2.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_OPTIONAL=1 +PYTHON_COMPAT=( python3_{8..11} ) + +inherit cmake distutils-r1 toolchain-funcs + +DESCRIPTION="disassembly/disassembler framework + bindings" +HOMEPAGE="http://www.capstone-engine.org/" +SRC_URI="https://github.com/capstone-engine/capstone/archive/${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/5" # libcapstone.so.5 +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + +IUSE="python test" +RDEPEND="python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND} + python? ( dev-python/setuptools[${PYTHON_USEDEP}] ) +" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +distutils_enable_tests setup.py + +S=${WORKDIR}/${P/_rc/-rc} + +PATCHES=( + "${FILESDIR}"/${P}-pkgconfig.patch + "${FILESDIR}"/${P}-oob-mem-access.patch +) + +if [[ ${PV} == *_rc* ]]; then + # Upstream doesn't flag release candidates (bug 858350) + QA_PKGCONFIG_VERSION="" +fi + +wrap_python() { + local phase=$1 + shift + + if use python; then + pushd bindings/python >/dev/null || die + distutils-r1_${phase} "$@" + popd >/dev/null || die + fi +} + +src_prepare() { + tc-export RANLIB + cmake_src_prepare + + wrap_python ${FUNCNAME} +} + +src_configure() { + local mycmakeargs=( + -DCAPSTONE_BUILD_TESTS="$(usex test)" + ) + cmake_src_configure + + wrap_python ${FUNCNAME} +} + +src_compile() { + cmake_src_compile + + wrap_python ${FUNCNAME} +} + +src_test() { + cmake_src_test + + wrap_python ${FUNCNAME} +} + +src_install() { + cmake_src_install + + wrap_python ${FUNCNAME} +} diff --git a/dev-libs/capstone/files/capstone-5.0_rc2-oob-mem-access.patch b/dev-libs/capstone/files/capstone-5.0_rc2-oob-mem-access.patch new file mode 100644 index 000000000000..4e538ef4d5fb --- /dev/null +++ b/dev-libs/capstone/files/capstone-5.0_rc2-oob-mem-access.patch @@ -0,0 +1,40 @@ +Author: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de> +Date: Mon Aug 22 18:52:19 2022 +0200 + + PPC: fix out of bound memory access + + closes #1912 + +Bug: https://bugs.gentoo.org/865151 +Upstream: https://github.com/capstone-engine/capstone/pull/1913 + +diff --git a/arch/PowerPC/PPCInstPrinter.c b/arch/PowerPC/PPCInstPrinter.c +index 22eef4ee..a5a30a8b 100644 +--- a/arch/PowerPC/PPCInstPrinter.c ++++ b/arch/PowerPC/PPCInstPrinter.c +@@ -1116,7 +1116,8 @@ static char *stripRegisterPrefix(const char *RegName) + char *name = cs_strdup(RegName + 2); + + // also strip the last 2 letters +- name[strlen(name) - 2] = '\0'; ++ if(strlen(name) > 2) ++ name[strlen(name) - 2] = '\0'; + + return name; + } +diff --git a/suite/cstest/issues.cs b/suite/cstest/issues.cs +index e4fb6cfa..3183f43f 100644 +--- a/suite/cstest/issues.cs ++++ b/suite/cstest/issues.cs +@@ -1,3 +1,11 @@ ++!# issue 1912 PPC register name ++!# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, None ++0x2d,0x03,0x00,0x80 == cmpwi cr2, r3, 0x80 ++ ++!# issue 1912 PPC no register name ++!# CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, CS_OPT_SYNTAX_NOREGNAME ++0x2d,0x03,0x00,0x80 == cmpwi 2, 3, 0x80 ++ + !# issue 1839 AArch64 Incorrect detailed disassembly of ldr + !# CS_ARCH_ARM64, CS_MODE_ARM, CS_OPT_DETAIL + 0x41,0x00,0x40,0xf9 == ldr x1, [x2] ; operands[0].access: WRITE ; operands[1].access: READ |