blob: eb305141d06430f244e89c4c10802a15281ec85c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
# Created by: David O'Brien <obrien@FreeBSD.org>
# $FreeBSD$
PORTNAME= john
DISTVERSION= 1.8.0-jumbo-1
PORTREVISION= 2
CATEGORIES= security
MASTER_SITES= http://www.openwall.com/john/j/ \
http://mirrors.kernel.org/openwall/projects/john/${DISTVERSION:C/-.*//}/ \
http://distro.ibiblio.org/pub/linux/distributions/openwall/projects/john/${DISTVERSION:C/-.*//}/ \
http://gd.tuwien.ac.at/opsys/linux/openwall/projects/john/${DISTVERSION:C/-.*//}/
MAINTAINER= danfe@FreeBSD.org
COMMENT= Featureful Unix password cracker
LICENSE= GPLv2
LIB_DEPENDS= libgmp.so:math/gmp
BROKEN_aarch64= Fails to build: Cannot detect CPU architechture
BROKEN_mips64= Fails to build: Cannot detect CPU architechture
USES= gmake shebangfix ssl tar:xz
GNU_CONFIGURE= yes
CONFIGURE_ENV= OPENSSL_CFLAGS="-I${OPENSSLINC}" \
OPENSSL_LIBS="-L${OPENSSLLIB} -lcrypto -lssl"
SHEBANG_FILES= ../run/*.pl ../run/*.rb ../run/benchmark-unify ../run/relbench
WRKSRC_SUBDIR= src
ALL_TARGET= default
CFLAGS+= -DJOHN_SYSTEMWIDE=1 \
-DJOHN_SYSTEMWIDE_HOME=\\\"${DATADIR}\\\" \
-DJOHN_SYSTEMWIDE_EXEC=\\\"${LOCALBASE}/libexec/${PORTNAME}\\\"
# We prefer -jumbo (community-enhanced) versions instead of vanilla releases
# due to the sad fact that `-jumbo-???' suffixed versions *precede* official
# ones per pkg_version(1) -t check. So, when Alexander rolls out new "plain"
# release, just hold the horses and wait for corresponding -jumbo one, which
# usually does not take too long to appear.
#
PORTSCOUT= limit:.*-jumbo
BINARIES= calc_stat cprepair genmkvpwd john luks2john mkvcalcproba \
raw2dyna SIPdump tgtsnarf uaf2john vncpcap2john wpapcap2john
BINLINKS= base64conv dmg2john gpg2john hccap2john keepass2john \
keychain2john keyring2john keystore2john kwallet2john \
pfx2john putty2john pwsafe2john racf2john rar2john ssh2john \
truecrypt_volume2john unafs undrop unique unshadow zip2john
PORTDOCS= *
OPTIONS_DEFINE= DOCS #OPENMP
#OPENMP_USES= compiler:openmp
post-patch:
# Replace methods and types that were marked deprecated by OpenSSL 0.9.7
# and removed in OpenSSL 1.1.0 and LibreSSL
@${REINPLACE_CMD} -e 's|des_string_to_key|DES_string_to_key|' \
${WRKSRC}/KRB4_fmt_plug.c
@${REINPLACE_CMD} -e 's|des_set_odd_parity|DES_set_odd_parity|' \
${WRKSRC}/KRB4_std_plug.c
@${REINPLACE_CMD} -e 's|C_Block|DES_cblock|' \
${WRKSRC}/efs_fmt_plug.c \
${WRKSRC}/gpg_fmt_plug.c \
${WRKSRC}/keychain_fmt_plug.c \
${WRKSRC}/mozilla_ng_fmt_plug.c \
${WRKSRC}/opencl_gpg_fmt_plug.c \
${WRKSRC}/opencl_keychain_fmt_plug.c \
${WRKSRC}/ssh_ng_fmt_plug.c
.include <bsd.port.pre.mk>
.if ${SSL_DEFAULT:Mopenssl-devel}
BROKEN= Does not build with openssl-devel
.endif
do-install:
.for b in ${BINARIES}
${INSTALL_PROGRAM} ${WRKSRC}/../run/${b} ${STAGEDIR}${PREFIX}/bin
.endfor
.for l in ${BINLINKS}
${LN} -sf john ${STAGEDIR}${PREFIX}/bin/${l}
.endfor
@${MKDIR} ${STAGEDIR}${DATADIR}/extra
cd ${WRKSRC}/../run && ${INSTALL_DATA} *.chr *.conf *.lst \
${STAGEDIR}${DATADIR}
cd ${WRKSRC}/../run && ${INSTALL_DATA} *.?? benchmark-unify \
dictionary.rfc2865 john.*sh_completion mailer makechr \
relbench stats ${STAGEDIR}${DATADIR}/extra
do-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
@${RM} ${WRKSRC}/../doc/COPYING
${INSTALL_DATA} ${WRKSRC}/../doc/* ${STAGEDIR}${DOCSDIR}
.include <bsd.port.post.mk>
|