Index | Thread | Search

From:
Rafael Sadowski <rafael@sizeofvoid.org>
Subject:
Re: security/john-jumbo and Python 2
To:
Daniel Dickman <didickman@gmail.com>
Cc:
Sebastian Reitenbach <sebastia@openbsd.org>, ports@openbsd.org
Date:
Fri, 19 Jun 2026 08:05:17 +0200

Download raw body.

Thread
On Thu Jun 18, 2026 at 05:05:54PM -0400, Daniel Dickman wrote:
> Hi Sebastian,
> 
> I'd like to commit the below to remove the Python 2 dep from john-jumbo 
> fairly quickly.
> 
> I did not test any of the Python scripts as I'm not sure how to use them 
> and I'm not sure if the test suite tests them either, so maybe they aren't 
> super important?
> 
> In order to run the tests I had to make 3 fixes:
> 
> 1. On newer Intel machines, there's missing IBT support. I patched that.
> 
> 2. When building as user _pbuild, the test environment isn't correct, I 
>    added the missing "env -i ${ALL_TEST_ENV}"
> 
> 3. With the correct test environment, we still need to set PORTHOME for 
>    a place for the tests to write to.
> 
> With the below patch, all tests PASS for me on amd64.

I've the same result after installing john-jumbo, but I'm getting an
error message saying that the file /etc/john.conf is missing. I think we
need:

TEST_DEPENDS=	${BASE_PKGPATH}

I would suggest adding the CET/IBT fix in a separate commit.

Otherwise OK rsadowski

> 
> ok?
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/security/john-jumbo/Makefile,v
> diff -u -p -u -r1.31 Makefile
> --- Makefile	6 Jan 2026 14:08:59 -0000	1.31
> +++ Makefile	18 Jun 2026 21:00:46 -0000
> @@ -4,7 +4,7 @@ FIX_EXTRACT_PERMISSIONS=Yes
>  
>  V =		1.9.0
>  JV =		1
> -REVISION =	2
> +REVISION =	3
>  EXTRACT_SUFX =	.tar.xz
>  
>  DISTNAME =	john-$V-jumbo-${JV}
> @@ -31,7 +31,7 @@ USE_GMAKE =		Yes
>  MAKE_FILE =		Makefile.legacy
>  
>  MODULES +=		lang/python
> -MODPY_VERSION =	${MODPY_DEFAULT_VERSION_2}
> +
>  MODPY_BUILDDEP =	No
>  MODPY_RUNDEP =		No
>  MODPY_ADJ_FILES =	../run/*.py
> @@ -94,7 +94,8 @@ do-install:
>  	cp -R ${WRKDIST}/doc/* ${PREFIX}/share/doc/john
>  
>  # not using TEST_TARGET as it gets confused by the quotes in CFLAGS
> +PORTHOME=${WRKDIR}
>  do-test:
> -	cd ${WRKSRC}; ${MAKE_PROGRAM} -f ${MAKE_FILE} check
> +	cd ${WRKSRC} && env -i ${ALL_TEST_ENV} ${MAKE_PROGRAM} -f ${MAKE_FILE} check
>  
>  .include <bsd.port.mk>
> Index: patches/patch-src_x86-64_S
> ===================================================================
> RCS file: patches/patch-src_x86-64_S
> diff -N patches/patch-src_x86-64_S
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ patches/patch-src_x86-64_S	18 Jun 2026 21:00:46 -0000
> @@ -0,0 +1,15 @@
> +Fix for CET/IBT
> +
> +Index: src/x86-64.S
> +--- src/x86-64.S.orig
> ++++ src/x86-64.S
> +@@ -84,7 +84,8 @@
> +  * Return: RAX.
> +  */
> + #define ARG1				%rdi
> +-#define PROLOGUE
> ++#define PROLOGUE \
> ++	endbr64
> + #define EPILOGUE
> + #endif
> + 
>