From f827ced0163cc11d6d35e2d4e2c8a7ab3fd6482a Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 19 Oct 2023 15:53:17 +0100 Subject: gentoo auto-resync : 19:10:2023 - 15:53:17 --- app-crypt/hashcat/Manifest | 3 +- app-crypt/hashcat/files/hashcat-hip.patch | 170 ++++++++++++++++++++++++++++++ app-crypt/hashcat/hashcat-6.2.6-r1.ebuild | 121 +++++++++++++++++++++ app-crypt/hashcat/hashcat-6.2.6.ebuild | 116 -------------------- 4 files changed, 293 insertions(+), 117 deletions(-) create mode 100644 app-crypt/hashcat/files/hashcat-hip.patch create mode 100644 app-crypt/hashcat/hashcat-6.2.6-r1.ebuild delete mode 100644 app-crypt/hashcat/hashcat-6.2.6.ebuild (limited to 'app-crypt/hashcat') diff --git a/app-crypt/hashcat/Manifest b/app-crypt/hashcat/Manifest index 1a0e25d17882..eaa1838fcb7e 100644 --- a/app-crypt/hashcat/Manifest +++ b/app-crypt/hashcat/Manifest @@ -1,4 +1,5 @@ +AUX hashcat-hip.patch 7538 BLAKE2B e0604d8bb6bd4bdc6c244c1da33eca158596810c48e2c2a958f951e4add3f89dbb8769e295e824f2c70141f7f485c2c9ed3a1852f31e6bda344d60464c844e51 SHA512 fa01adfd89acf3c8b610144e5b944a141acd74870a5d850a411a82e454826c7066a533421565ead259ef66b717e9110a9db9a9ee03be4446b3ff5bd715bbfad2 DIST hashcat-6.2.6.tar.gz 14234640 BLAKE2B fbbebc0a35b920442d4e1fb5822a8b9867db62bcc2404fba514fe1f06f0aa859a116cbe204eed71d340ad826dcfffffadca6963e5eec875ae2fee59068968b61 SHA512 b5e4f40fb5ed0a47977243e1f95bf1deae0b04bd5ca26338395305c42573fe5b17557835f6f5d8b7402812e8eadda2b260d6b927ce99429fd1b87eb26f002f8a -EBUILD hashcat-6.2.6.ebuild 2746 BLAKE2B 1a74c398a7a6dc66440b9403a7c8ea2a59e6438d829d6cef227fc2ec93ed5553bb2892be07e0779ef472706676b58a69818b85045587fe06662d468a8552dfc3 SHA512 1e29b266e22fa249f0bc78ba1392b893d5d850dab96e733701bff38a150fb7a44df1bc8afa7cb45e64eab1e40b536c5aefc249b87fbe22ce9fbda28044451827 +EBUILD hashcat-6.2.6-r1.ebuild 2820 BLAKE2B 1cc0948b075036091c3ebef6109db78e93a1f345493fe39ffd4dc5f345c33df591ff20d4e3ab301ee21d6cf020f1be34829e9d5ed5be678eedeb3460e914b189 SHA512 82cd2fc529e0d094a7a474b4213f67c49aa02599f96a9d67c8e61fe2e9d329f649b0faa41b049b1e183375686a50bb4f74866d91639c3a3a1a487095b15cddd6 EBUILD hashcat-9999.ebuild 2746 BLAKE2B 1a74c398a7a6dc66440b9403a7c8ea2a59e6438d829d6cef227fc2ec93ed5553bb2892be07e0779ef472706676b58a69818b85045587fe06662d468a8552dfc3 SHA512 1e29b266e22fa249f0bc78ba1392b893d5d850dab96e733701bff38a150fb7a44df1bc8afa7cb45e64eab1e40b536c5aefc249b87fbe22ce9fbda28044451827 MISC metadata.xml 396 BLAKE2B ed0f4406e46280943a8ae7cb68486b8410653efa96e284b11d139aa201d3e64adc21abbc78021f247f8ab05da5a81483633f764917c160f776e42bb269b5ceab SHA512 482f749520452bc1dfc1e22d0cd0c694c7f1158526fbaaf6179d67e1617d17710d85ba2eb29dc65216635fd99c2f7796029604b40a447eb358fde9aca1b39ed7 diff --git a/app-crypt/hashcat/files/hashcat-hip.patch b/app-crypt/hashcat/files/hashcat-hip.patch new file mode 100644 index 000000000000..775dfb455d8a --- /dev/null +++ b/app-crypt/hashcat/files/hashcat-hip.patch @@ -0,0 +1,170 @@ +commit eaf3de164bdc327c059d3ae1bd3d2a79f6cd47bd +Author: Jens Steube +Date: Tue Nov 1 19:36:03 2022 +0100 + + Remove option "-flegacy-pass-manager" if HIP backend is used. Support was removed from LLVM 15. There's no alternative option available. + Fixes #3469 + +diff --git a/src/backend.c b/src/backend.c +index 46a0bcdf1..193bbb447 100644 +--- a/src/backend.c ++++ b/src/backend.c +@@ -8396,7 +8389,7 @@ static bool load_kernel (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_p + + hiprtc_options[1] = "-nocudainc"; + hiprtc_options[2] = "-nocudalib"; +- hiprtc_options[3] = "-flegacy-pass-manager"; ++ hiprtc_options[3] = ""; + hiprtc_options[4] = ""; + + // untested but it should work +diff --git a/src/modules/module_00500.c b/src/modules/module_00500.c +index deb73024b..e86de7a19 100644 +--- a/src/modules/module_00500.c ++++ b/src/modules/module_00500.c +@@ -57,19 +57,6 @@ u64 module_tmp_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED c + return tmp_size; + } + +-char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const hc_device_param_t *device_param) +-{ +- char *jit_build_options = NULL; +- +- // AMD HIP +- if (device_param->opencl_device_vendor_id == VENDOR_ID_AMD_USE_HIP) +- { +- hc_asprintf (&jit_build_options, "-flegacy-pass-manager"); +- } +- +- return jit_build_options; +-} +- + static void md5crypt_decode (u8 digest[16], const u8 buf[22]) + { + int l; +@@ -304,7 +291,7 @@ void module_init (module_ctx_t *module_ctx) + module_ctx->module_hook23 = MODULE_DEFAULT; + module_ctx->module_hook_salt_size = MODULE_DEFAULT; + module_ctx->module_hook_size = MODULE_DEFAULT; +- module_ctx->module_jit_build_options = module_jit_build_options; ++ module_ctx->module_jit_build_options = MODULE_DEFAULT; + module_ctx->module_jit_cache_disable = MODULE_DEFAULT; + module_ctx->module_kernel_accel_max = MODULE_DEFAULT; + module_ctx->module_kernel_accel_min = MODULE_DEFAULT; +diff --git a/src/modules/module_00501.c b/src/modules/module_00501.c +index 22b28e385..b22c8f80d 100644 +--- a/src/modules/module_00501.c ++++ b/src/modules/module_00501.c +@@ -59,19 +59,6 @@ u64 module_tmp_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED c + return tmp_size; + } + +-char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const hc_device_param_t *device_param) +-{ +- char *jit_build_options = NULL; +- +- // AMD HIP +- if (device_param->opencl_device_vendor_id == VENDOR_ID_AMD_USE_HIP) +- { +- hc_asprintf (&jit_build_options, "-flegacy-pass-manager"); +- } +- +- return jit_build_options; +-} +- + static void AES128_decrypt_cbc (const u32 key[4], const u32 iv[4], const u32 in[16], u32 out[16]) + { + AES_KEY skey; +@@ -383,7 +370,7 @@ void module_init (module_ctx_t *module_ctx) + module_ctx->module_hook23 = MODULE_DEFAULT; + module_ctx->module_hook_salt_size = MODULE_DEFAULT; + module_ctx->module_hook_size = MODULE_DEFAULT; +- module_ctx->module_jit_build_options = module_jit_build_options; ++ module_ctx->module_jit_build_options = MODULE_DEFAULT; + module_ctx->module_jit_cache_disable = MODULE_DEFAULT; + module_ctx->module_kernel_accel_max = MODULE_DEFAULT; + module_ctx->module_kernel_accel_min = MODULE_DEFAULT; +diff --git a/src/modules/module_01500.c b/src/modules/module_01500.c +index fcd6e9f04..acc09c075 100644 +--- a/src/modules/module_01500.c ++++ b/src/modules/module_01500.c +@@ -168,11 +168,11 @@ char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAY + { + if ((user_options->attack_mode == ATTACK_MODE_BF) && (hashes->salts_cnt == 1) && (user_options->slow_candidates == false)) + { +- hc_asprintf (&jit_build_options, "-D DESCRYPT_SALT=%u -D _unroll -flegacy-pass-manager", hashes->salts_buf[0].salt_buf[0] & 0xfff); ++ hc_asprintf (&jit_build_options, "-D DESCRYPT_SALT=%u -D _unroll", hashes->salts_buf[0].salt_buf[0] & 0xfff); + } + else + { +- hc_asprintf (&jit_build_options, "-D _unroll -flegacy-pass-manager"); ++ hc_asprintf (&jit_build_options, "-D _unroll"); + } + } + else +diff --git a/src/modules/module_01600.c b/src/modules/module_01600.c +index 63f6038a6..5c62252b1 100644 +--- a/src/modules/module_01600.c ++++ b/src/modules/module_01600.c +@@ -57,19 +57,6 @@ u64 module_tmp_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED c + return tmp_size; + } + +-char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const hc_device_param_t *device_param) +-{ +- char *jit_build_options = NULL; +- +- // AMD HIP +- if (device_param->opencl_device_vendor_id == VENDOR_ID_AMD_USE_HIP) +- { +- hc_asprintf (&jit_build_options, "-flegacy-pass-manager"); +- } +- +- return jit_build_options; +-} +- + static void md5crypt_decode (u8 digest[16], const u8 buf[22]) + { + int l; +@@ -304,7 +291,7 @@ void module_init (module_ctx_t *module_ctx) + module_ctx->module_hook23 = MODULE_DEFAULT; + module_ctx->module_hook_salt_size = MODULE_DEFAULT; + module_ctx->module_hook_size = MODULE_DEFAULT; +- module_ctx->module_jit_build_options = module_jit_build_options; ++ module_ctx->module_jit_build_options = MODULE_DEFAULT; + module_ctx->module_jit_cache_disable = MODULE_DEFAULT; + module_ctx->module_kernel_accel_max = MODULE_DEFAULT; + module_ctx->module_kernel_accel_min = MODULE_DEFAULT; +diff --git a/src/modules/module_06300.c b/src/modules/module_06300.c +index 34dbb7a74..02fc4d051 100644 +--- a/src/modules/module_06300.c ++++ b/src/modules/module_06300.c +@@ -57,19 +57,6 @@ u64 module_tmp_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED c + return tmp_size; + } + +-char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const hc_device_param_t *device_param) +-{ +- char *jit_build_options = NULL; +- +- // AMD HIP +- if (device_param->opencl_device_vendor_id == VENDOR_ID_AMD_USE_HIP) +- { +- hc_asprintf (&jit_build_options, "-flegacy-pass-manager"); +- } +- +- return jit_build_options; +-} +- + static void md5crypt_decode (u8 digest[16], const u8 buf[22]) + { + int l; +@@ -295,7 +282,7 @@ void module_init (module_ctx_t *module_ctx) + module_ctx->module_hook23 = MODULE_DEFAULT; + module_ctx->module_hook_salt_size = MODULE_DEFAULT; + module_ctx->module_hook_size = MODULE_DEFAULT; +- module_ctx->module_jit_build_options = module_jit_build_options; ++ module_ctx->module_jit_build_options = MODULE_DEFAULT; + module_ctx->module_jit_cache_disable = MODULE_DEFAULT; + module_ctx->module_kernel_accel_max = MODULE_DEFAULT; + module_ctx->module_kernel_accel_min = MODULE_DEFAULT; diff --git a/app-crypt/hashcat/hashcat-6.2.6-r1.ebuild b/app-crypt/hashcat/hashcat-6.2.6-r1.ebuild new file mode 100644 index 000000000000..162c494087d4 --- /dev/null +++ b/app-crypt/hashcat/hashcat-6.2.6-r1.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pax-utils toolchain-funcs + +DESCRIPTION="World's fastest and most advanced password recovery utility" +HOMEPAGE="https://github.com/hashcat/hashcat" +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/hashcat/hashcat.git" +else + KEYWORDS="~amd64" + SRC_URI="https://github.com/hashcat/hashcat/archive/v${PV}.tar.gz -> ${P}.tar.gz" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="brain video_cards_nvidia" +RESTRICT=test + +DEPEND="app-arch/lzma + app-arch/unrar + sys-libs/zlib[minizip] + brain? ( dev-libs/xxhash ) + video_cards_nvidia? ( + >x11-drivers/nvidia-drivers-440.64 + || ( + dev-util/nvidia-cuda-toolkit + virtual/opencl + ) + ) + !video_cards_nvidia? ( + virtual/opencl + dev-util/opencl-headers + )" +RDEPEND="${DEPEND}" + +PATCHES=( "${FILESDIR}/hashcat-hip.patch" ) + +src_prepare() { + # Remove bundled stuff + rm -r deps/OpenCL-Headers || die "Failed to remove bundled OpenCL Headers" + rm -r deps/xxHash || die "Failed to remove bundled xxHash" + + # TODO: Gentoo's app-arch/lzma doesn't install the needed files + #rm -r deps/LZMA-SDK || die "Failed to remove bundled LZMA-SDK" + #rm -r deps || die "Failed to remove bundled deps" + + # Do not strip + sed -i "/LFLAGS += -s/d" src/Makefile || die + + # Do not add random CFLAGS + sed -i "s/-O2//" src/Makefile || die + + #sed -i "#LZMA_SDK_INCLUDE#d" src/Makefile || die + + # Respect CC, CXX, AR + sed -i \ + -e 's/:= gcc/:= $(CC)/' \ + -e 's/:= g++/:= $(CXX)/' \ + -e 's/:= ar/:= $(AR)/' \ + src/Makefile || die + + export PREFIX="${EPREFIX}"/usr + export LIBRARY_FOLDER="/usr/$(get_libdir)" + export DOCUMENT_FOLDER="/usr/share/doc/${PF}" + + default +} + +src_compile() { + tc-export CC CXX AR + + # Use bundled unrar for now, bug #792720 + emake \ + SHARED=1 \ + PRODUCTION=1 \ + ENABLE_BRAIN=$(usex brain 1 0) \ + USE_SYSTEM_LZMA=0 \ + USE_SYSTEM_OPENCL=1 \ + USE_SYSTEM_UNRAR=0 \ + USE_SYSTEM_ZLIB=1 \ + USE_SYSTEM_XXHASH=1 \ + VERSION_PURE="${PV}" + + pax-mark -mr hashcat +} + +src_test() { + if use video_cards_nvidia; then + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + addwrite /dev/nvidia-uvm + + if [[ ! -w /dev/nvidia0 ]]; then + einfo "To run these tests, portage likely must be in the video group." + einfo "Please run \"gpasswd -a portage video\" if the tests will fail" + fi + fi + + # This always exits with 255 despite success + #./hashcat -b -m 2500 || die "Test failed" + LD_PRELOAD=./libhashcat.so.${PV} ./hashcat -a 3 -m 1500 nQCk49SiErOgk || die "Test failed" +} + +src_install() { + emake \ + DESTDIR="${ED}" \ + SHARED=1 \ + PRODUCTION=1 \ + ENABLE_BRAIN=$(usex brain 1 0) \ + USE_SYSTEM_LZMA=0 \ + USE_SYSTEM_OPENCL=1 \ + USE_SYSTEM_UNRAR=1 \ + USE_SYSTEM_ZLIB=1 \ + USE_SYSTEM_XXHASH=1 \ + VERSION_PURE="${PV}" \ + install +} diff --git a/app-crypt/hashcat/hashcat-6.2.6.ebuild b/app-crypt/hashcat/hashcat-6.2.6.ebuild deleted file mode 100644 index d2c503812e53..000000000000 --- a/app-crypt/hashcat/hashcat-6.2.6.ebuild +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit pax-utils toolchain-funcs - -DESCRIPTION="World's fastest and most advanced password recovery utility" -HOMEPAGE="https://github.com/hashcat/hashcat" -if [[ ${PV} == "9999" ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/hashcat/hashcat.git" -else - KEYWORDS="~amd64" - SRC_URI="https://github.com/hashcat/hashcat/archive/v${PV}.tar.gz -> ${P}.tar.gz" -fi - -LICENSE="MIT" -SLOT="0" -IUSE="brain video_cards_nvidia" -RESTRICT=test - -DEPEND="app-arch/lzma - app-arch/unrar - sys-libs/zlib[minizip] - brain? ( dev-libs/xxhash ) - video_cards_nvidia? ( - >x11-drivers/nvidia-drivers-440.64 - || ( - dev-util/nvidia-cuda-toolkit - virtual/opencl - ) - ) - !video_cards_nvidia? ( virtual/opencl )" -RDEPEND="${DEPEND}" - -src_prepare() { - # Remove bundled stuff - rm -r deps/OpenCL-Headers || die "Failed to remove bundled OpenCL Headers" - rm -r deps/xxHash || die "Failed to remove bundled xxHash" - - # TODO: Gentoo's app-arch/lzma doesn't install the needed files - #rm -r deps/LZMA-SDK || die "Failed to remove bundled LZMA-SDK" - #rm -r deps || die "Failed to remove bundled deps" - - # Do not strip - sed -i "/LFLAGS += -s/d" src/Makefile || die - - # Do not add random CFLAGS - sed -i "s/-O2//" src/Makefile || die - - #sed -i "#LZMA_SDK_INCLUDE#d" src/Makefile || die - - # Respect CC, CXX, AR - sed -i \ - -e 's/:= gcc/:= $(CC)/' \ - -e 's/:= g++/:= $(CXX)/' \ - -e 's/:= ar/:= $(AR)/' \ - src/Makefile || die - - export PREFIX="${EPREFIX}"/usr - export LIBRARY_FOLDER="/usr/$(get_libdir)" - export DOCUMENT_FOLDER="/usr/share/doc/${PF}" - - default -} - -src_compile() { - tc-export CC CXX AR - - # Use bundled unrar for now, bug #792720 - emake \ - SHARED=1 \ - PRODUCTION=1 \ - ENABLE_BRAIN=$(usex brain 1 0) \ - USE_SYSTEM_LZMA=0 \ - USE_SYSTEM_OPENCL=1 \ - USE_SYSTEM_UNRAR=0 \ - USE_SYSTEM_ZLIB=1 \ - USE_SYSTEM_XXHASH=1 \ - VERSION_PURE="${PV}" - - pax-mark -mr hashcat -} - -src_test() { - if use video_cards_nvidia; then - addwrite /dev/nvidia0 - addwrite /dev/nvidiactl - addwrite /dev/nvidia-uvm - - if [[ ! -w /dev/nvidia0 ]]; then - einfo "To run these tests, portage likely must be in the video group." - einfo "Please run \"gpasswd -a portage video\" if the tests will fail" - fi - fi - - # This always exits with 255 despite success - #./hashcat -b -m 2500 || die "Test failed" - LD_PRELOAD=./libhashcat.so.${PV} ./hashcat -a 3 -m 1500 nQCk49SiErOgk || die "Test failed" -} - -src_install() { - emake \ - DESTDIR="${ED}" \ - SHARED=1 \ - PRODUCTION=1 \ - ENABLE_BRAIN=$(usex brain 1 0) \ - USE_SYSTEM_LZMA=0 \ - USE_SYSTEM_OPENCL=1 \ - USE_SYSTEM_UNRAR=1 \ - USE_SYSTEM_ZLIB=1 \ - USE_SYSTEM_XXHASH=1 \ - VERSION_PURE="${PV}" \ - install -} -- cgit v1.2.3