diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/changelog b/changelog new file mode 100644 index 0000000..c706018 --- /dev/null +++ b/changelog @@ -0,0 +1,2 @@ +* Fri Jan 17 2025 Fedora Release Engineering - 6.2.6-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..4b79bd1 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,16 @@ +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_testing +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} diff --git a/hashcat-build-fixes.patch b/hashcat-build-fixes.patch index ba88c2a..737994a 100644 --- a/hashcat-build-fixes.patch +++ b/hashcat-build-fixes.patch @@ -1,17 +1,17 @@ -From 49d6ac344d249941a0592113259a2af82914e319 Mon Sep 17 00:00:00 2001 -From: Vitaly Zaitsev -Date: Wed, 17 Jun 2020 10:57:15 +0200 -Subject: [PATCH] Fedora build patches. +From d4ebb8d60a87a638c20fa1de1b4560142a69feb5 Mon Sep 17 00:00:00 2001 +From: Carlos Rodriguez-Fernandez +Date: Wed, 29 Oct 2025 12:15:25 -0700 +Subject: [PATCH] fixes --- - src/Makefile | 11 ++++------- - 1 file changed, 4 insertions(+), 7 deletions(-) + src/Makefile | 17 +++++------------ + 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/Makefile b/src/Makefile -index 64f54dbf6..c0d587b35 100644 +index 72986407c..49cbaf924 100644 --- a/src/Makefile +++ b/src/Makefile -@@ -43,7 +43,7 @@ endif +@@ -52,7 +52,7 @@ endif ## Makefile flags ## @@ -20,7 +20,16 @@ index 64f54dbf6..c0d587b35 100644 ifneq ($(findstring clean,$(MAKECMDGOALS)),) MAKEFLAGS += -j 1 -@@ -233,10 +233,7 @@ endif +@@ -167,8 +167,6 @@ DEPS_UNRAR_PATH := $(LIBRARY_DEV_ROOT_FOLDER) + endif + endif + +-DEPS_SSE2NEON := deps/sse2neon +- + ## + ## Filenames for library and frontend + ## +@@ -275,10 +273,7 @@ endif endif ifeq ($(DEBUG),0) @@ -32,24 +41,47 @@ index 64f54dbf6..c0d587b35 100644 else ifeq ($(DEBUG),1) ifneq ($(UNAME),Darwin) -@@ -505,7 +502,7 @@ endif +@@ -427,7 +422,6 @@ endif # Darwin + + ifeq ($(IS_ARM),1) + CFLAGS_NATIVE += -DSSE2NEON_SUPPRESS_WARNINGS +-CFLAGS_NATIVE += -I$(DEPS_SSE2NEON) + endif + + ifeq ($(UNAME),CYGWIN) +@@ -589,7 +583,7 @@ endif .PHONY: install ifeq ($(SHARED),1) --install: install_docs install_shared install_library install_library_dev install_tunings install_kernels install_modules install_hashcat -+install: install_shared install_library install_library_dev install_tunings install_kernels install_modules install_hashcat +-install: install_docs install_shared install_tools install_library install_library_dev install_tunings install_kernels install_modules install_bridges install_hashcat ++install: install_shared install_library install_library_dev install_tunings install_kernels install_modules install_bridges install_hashcat else - install: install_docs install_shared install_tunings install_kernels install_modules install_hashcat + install: install_docs install_shared install_tools install_tunings install_kernels install_modules install_bridges install_hashcat endif -@@ -578,7 +575,7 @@ install_kernels: install_shared +@@ -660,13 +654,13 @@ install_kernels: install_shared install_modules: install_shared modules $(INSTALL) -m 755 -d $(DESTDIR)$(SHARED_FOLDER)/modules $(FIND) modules/ -mindepth 1 -type d -execdir $(INSTALL) -m 755 -d $(DESTDIR)$(SHARED_FOLDER)/modules/{} \; - $(FIND) modules/ -mindepth 1 -type f -execdir $(INSTALL) -m 644 {} $(DESTDIR)$(SHARED_FOLDER)/modules/{} \; + $(FIND) modules/ -mindepth 1 -type f -execdir $(INSTALL) -m 755 {} $(DESTDIR)$(SHARED_FOLDER)/modules/{} \; + .PHONY: install_bridges + install_bridges: install_shared bridges + $(INSTALL) -m 755 -d $(DESTDIR)$(SHARED_FOLDER)/bridges + $(FIND) bridges/ -mindepth 1 -type d -execdir $(INSTALL) -m 755 -d $(DESTDIR)$(SHARED_FOLDER)/bridges/{} \; +- $(FIND) bridges/ -mindepth 1 -type f -execdir $(INSTALL) -m 644 {} $(DESTDIR)$(SHARED_FOLDER)/bridges/{} \; ++ $(FIND) bridges/ -mindepth 1 -type f -execdir $(INSTALL) -m 755 {} $(DESTDIR)$(SHARED_FOLDER)/bridges/{} \; + .PHONY: install_library install_library: $(HASHCAT_LIBRARY) +@@ -892,7 +886,6 @@ endif + + ifeq ($(IS_ARM),1) + CFLAGS_CROSS_LINUX += -DSSE2NEON_SUPPRESS_WARNINGS +-CFLAGS_CROSS_LINUX += -I$(DEPS_SSE2NEON) + endif + + ## -- -2.37.2 +2.51.0 diff --git a/hashcat.spec b/hashcat.spec index ef2e795..3569ac3 100644 --- a/hashcat.spec +++ b/hashcat.spec @@ -7,7 +7,7 @@ %bcond_with zlib %endif -%global makeflags PREFIX=%{_prefix} LIBRARY_FOLDER=%{_libdir} SHARED_ROOT_FOLDER=%{_libdir} DOCUMENT_FOLDER=%{_docdir}/hashcat-doc SHARED=1 USE_SYSTEM_OPENCL=1 USE_SYSTEM_XXHASH=1 ENABLE_UNRAR=0 +%global makeflags PREFIX=%{_prefix} LIBRARY_FOLDER=%{_libdir} SHARED_ROOT_FOLDER=%{_libdir} DOCUMENT_FOLDER=%{_docdir}/hashcat-doc SHARED=1 USE_SYSTEM_OPENCL=1 USE_SYSTEM_XXHASH=1 ENABLE_UNRAR=0 MAINTAINER_MODE=1 %if %{with zlib} %global makeflags %(echo %{makeflags} USE_SYSTEM_ZLIB=1) @@ -16,10 +16,10 @@ %endif Name: hashcat -Version: 6.2.6 -Release: 3%{?dist} +Version: 7.1.2 +Release: %autorelease -License: MIT AND LicenseRef-Fedora-Public-Domain +License: MIT AND LicenseRef-Fedora-Public-Domain AND BSD-2-Clause AND Apache-2.0 URL: https://github.com/%{name}/%{name} Summary: Advanced password recovery utility @@ -32,25 +32,31 @@ Patch0: %{name}-build-fixes.patch BuildRequires: opencl-headers BuildRequires: xxhash-devel +%ifarch aarch64 +BuildRequires: sse2neon-devel +%endif + BuildRequires: gcc BuildRequires: make %if %{with zlib} -BuildRequires: zlib-devel +BuildRequires: zlib-ng-compat-devel BuildRequires: minizip-compat-devel %else Provides: bundled(zlib) = 1.2.11 Provides: bundled(minizip) = 1.2.11 %endif +Provides: bundled(lzma-sdk) = 24.09 +Provides: bundled(scrypt-jane) +Provides: bundled(yescrypt) +Provides: bundled(libargon2) = 20190702 -%if 0%{?fedora} -Recommends: mesa-libOpenCL%{?_isa} -Recommends: pocl%{?_isa} -Recommends: %{name}-doc = %{?epoch:%{epoch}:}%{version}-%{release} -%endif +Recommends: %{name}-doc # Upstream does not support Big Endian architectures. -ExcludeArch: ppc64 s390x +# Upstream source code does not longer build for ppc64le: https://bugzilla.redhat.com/show_bug.cgi?id=2407234 +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} ppc64 s390x ppc64le %description Hashcat is the world's fastest and most advanced password recovery @@ -77,7 +83,7 @@ BuildArch: noarch %prep %autosetup -p1 -rm -rf deps/{OpenCL-Headers,xxHash} +rm -rf deps/{OpenCL-Headers,xxHash,sse2neon} %if %{with zlib} rm -rf deps/zlib %endif @@ -94,6 +100,7 @@ rm -f modules/.lock ln -s lib%{name}.so.%{version} %{buildroot}%{_libdir}/lib%{name}.so mkdir -p %{buildroot}%{_datadir}/bash-completion/completions install -m 0744 -p extra/tab_completion/hashcat.sh %{buildroot}%{_datadir}/bash-completion/completions/%{name} +find %{buildroot}%{_libdir}/%{name}/ -name '.gitkeep' -type f -delete %files %license docs/license.txt @@ -112,35 +119,4 @@ install -m 0744 -p extra/tab_completion/hashcat.sh %{buildroot}%{_datadir}/bash- %doc example.dict example*.sh %changelog -* Thu Jul 20 2023 Fedora Release Engineering - 6.2.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 6.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Sep 02 2022 Vitaly Zaitsev - 6.2.6-1 -- Updated to version 6.2.6. - -* Thu Jul 21 2022 Fedora Release Engineering - 6.2.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Thu Jan 20 2022 Fedora Release Engineering - 6.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sun Nov 21 2021 Vitaly Zaitsev - 6.2.5-1 -- Updated to version 6.2.5. - -* Mon Aug 30 2021 Vitaly Zaitsev - 6.2.4-1 -- Updated to version 6.2.4. - -* Thu Jul 22 2021 Fedora Release Engineering - 6.2.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Sat Jul 17 2021 Vitaly Zaitsev - 6.2.3-1 -- Updated to version 6.2.3. - -* Sun Jun 13 2021 Vitaly Zaitsev - 6.2.2-1 -- Updated to version 6.2.2. - -* Sat May 15 2021 Vitaly Zaitsev - 6.2.1-1 -- Updated to version 6.2.1. +%autochangelog diff --git a/plans/main.fmf b/plans/main.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/main.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/sources b/sources index 403430d..776ee7a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (hashcat-6.2.6-clean.tar.xz) = 3c7bdf4209d28bf5bc62d43ea4bb44a158a0226769ec9e1e9b92571fdfd0f1f89ee581edddb6582491e5cc8f44becde13b9caf8a169ed766c79bc114dc204a9f +SHA512 (hashcat-7.1.2-clean.tar.xz) = 39d525d8f835227a2d9a081ce5b96eabebeff15f10707115f94339f9edd55228885dcd151ace9132e937147318d44447dbb53f8c05b3048f5cb24d620a4f00af diff --git a/tests/core/main.fmf b/tests/core/main.fmf new file mode 100644 index 0000000..78884f4 --- /dev/null +++ b/tests/core/main.fmf @@ -0,0 +1 @@ +summary: hashcat cli smoke test diff --git a/tests/core/test.sh b/tests/core/test.sh new file mode 100755 index 0000000..ffd8682 --- /dev/null +++ b/tests/core/test.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartTest + rlRun "hashcat --version" 0 "version info" + rlPhaseEnd + + rlPhaseStartTest + rlRun -s "hashcat --help" 0 "help" + rlAssertGrep "Usage" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartTest + rlRun -s "hashcat --hash-info" 0 "hash info" + rlAssertGrep "Hash Info" "$rlRun_LOG" + rlPhaseEnd +rlJournalEnd diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..f61588b --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,4 @@ +summary: hashcat smoke test +test: ./test.sh +framework: beakerlib +require: ["hashcat"] \ No newline at end of file