1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
6 |
inherit autotools flag-o-matic toolchain-funcs pax-utils
|
7 |
7 |
|
8 |
8 |
DESCRIPTION="Fast password cracker, community enhanced version"
|
9 |
9 |
HOMEPAGE="http://www.openwall.com/john/"
|
10 |
10 |
|
11 |
|
MY_PN="JohnTheRipper"
|
12 |
|
|
13 |
11 |
if [[ ${PV} == "9999" ]] ; then
|
14 |
|
EGIT_REPO_URI="https://github.com/magnumripper/${MY_PN}.git"
|
|
12 |
EGIT_REPO_URI="https://github.com/magnumripper/JohnTheRipper.git"
|
15 |
13 |
inherit git-r3
|
16 |
14 |
else
|
17 |
|
JUMBO="jumbo-1.1"
|
18 |
|
MY_PV="${PV}-${JUMBO}"
|
19 |
|
MY_P="john-${MY_PV}"
|
20 |
|
HASH_COMMIT="5d0c85f16f96ca7b6dd06640e95a5801081d6e20"
|
|
15 |
HASH_COMMIT="c798c3f39215f6e08c67677eb9b79f65cfe08e40"
|
21 |
16 |
|
22 |
17 |
SRC_URI="https://github.com/openwall/john/archive/${HASH_COMMIT}.tar.gz -> ${P}.tar.gz"
|
23 |
18 |
S="${WORKDIR}/john-${HASH_COMMIT}"
|
... | ... | |
48 |
43 |
dev-perl/Digest-SHA3
|
49 |
44 |
dev-perl/Digest-GOST
|
50 |
45 |
!app-crypt/johntheripper"
|
51 |
|
|
52 |
|
PATCHES=(
|
53 |
|
"${FILESDIR}"/${P}-fix-bashism.patch
|
54 |
|
)
|
|
46 |
RESTRICT="test"
|
55 |
47 |
|
56 |
48 |
pkg_pretend() {
|
57 |
49 |
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
... | ... | |
94 |
86 |
emake LD="$(tc-getCC)" -C src
|
95 |
87 |
}
|
96 |
88 |
|
97 |
|
#src_test() {
|
98 |
|
# pax-mark -mr run/john
|
|
89 |
src_test() {
|
|
90 |
pax-mark -mr run/john
|
99 |
91 |
|
100 |
|
#if use opencl; then
|
|
92 |
# this probably causes the following failure:
|
|
93 |
# Testing: as400-des, AS/400 DES [DES 32/64]... PASS
|
|
94 |
# Error, Invalid signature line trying to link to dynamic format.
|
|
95 |
# Original format=as400-ssha1
|
|
96 |
sed '/.include /d' run/john.conf > run/john-test.conf
|
|
97 |
if use opencl; then
|
101 |
98 |
# GPU tests fail in portage, so run cpu only tests
|
102 |
|
# ./run/john --device=cpu --test=0 --verbosity=2 || die
|
103 |
|
#else
|
|
99 |
./run/john --config=run/john-test.conf --device=cpu --test=0 --verbosity=2 || die
|
|
100 |
else
|
104 |
101 |
# Weak tests
|
105 |
|
#./run/john --test=0 --verbosity=2 || die
|
|
102 |
./run/john --config=run/john-test.conf --test=0 --verbosity=2 || die
|
106 |
103 |
# Strong tests
|
107 |
104 |
#./run/john --test=1 --verbosity=2 || die
|
108 |
|
#fi
|
|
105 |
fi
|
109 |
106 |
|
110 |
|
# ewarn "When built systemwide, john can't run tests without reading files in /etc."
|
111 |
|
# ewarn "Don't bother opening a bug for this unless you include a patch to fix it"
|
112 |
|
#}
|
|
107 |
rm john-test.conf || die
|
|
108 |
}
|
113 |
109 |
|
114 |
110 |
src_install() {
|
115 |
111 |
# Executables
|