gnu: john-the-ripper-jumbo: Fix compilation with GCC 11+.

* gnu/packages/patches/john-the-ripper-jumbo-with-gcc-11.patch: New file.
* gnu/local.mk (dist_PATCH_DATA): Register it.
* gnu/packages/password-utils.scm (john-the-ripper-jumbo)[source]: Use it.

Co-authored-by: Guillaume Le Vaillant <glv@posteo.net>
This commit is contained in:
Jakob Kirsch 2023-08-02 14:37:13 +02:00 committed by Guillaume Le Vaillant
parent 84ea83e44f
commit 6ccfa48d83
No known key found for this signature in database
GPG key ID: 6BE8208ADF21FE3F
3 changed files with 53 additions and 2 deletions

View file

@ -1431,6 +1431,7 @@ dist_patch_DATA = \
%D%/packages/patches/jfsutils-add-sysmacros.patch \
%D%/packages/patches/jfsutils-gcc-compat.patch \
%D%/packages/patches/jfsutils-include-systypes.patch \
%D%/packages/patches/john-the-ripper-jumbo-with-gcc-11.patch \
%D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \

View file

@ -1179,8 +1179,8 @@ (define-public john-the-ripper-jumbo
(uri (string-append "http://www.openwall.com/john/j/john-"
official-version "-jumbo-" jumbo-version ".tar.xz"))
(sha256
(base32
"0fvz3v41hnaiv1ggpxanfykyfjq79cwp9qcqqn63vic357w27lgm"))))
(base32 "0fvz3v41hnaiv1ggpxanfykyfjq79cwp9qcqqn63vic357w27lgm"))
(patches (search-patches "john-the-ripper-jumbo-with-gcc-11.patch"))))
(build-system gnu-build-system)
(native-inputs
(list perl))

View file

@ -0,0 +1,50 @@
From 154ee1156d62dd207aff0052b04c61796a1fde3b Mon Sep 17 00:00:00 2001
From: Ferry Huberts <ferry.huberts@pelagic.nl>
Date: Tue, 9 Mar 2021 22:04:46 +0100
Subject: [PATCH] Fix alignment compile errors on GCC 11
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
---
src/blake2.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/blake2.h b/src/blake2.h
index b05208117e..b4398f9e13 100644
--- a/src/blake2.h
+++ b/src/blake2.h
@@ -57,7 +57,7 @@ extern "C" {
uint8_t personal[BLAKE2S_PERSONALBYTES]; // 32
} blake2s_param;
- JTR_ALIGN( 64 ) typedef struct __blake2s_state
+ typedef struct JTR_ALIGN( 64 ) __blake2s_state
{
uint32_t h[8];
uint32_t t[2];
@@ -82,7 +82,7 @@ extern "C" {
uint8_t personal[BLAKE2B_PERSONALBYTES]; // 64
} blake2b_param;
- JTR_ALIGN( 64 ) typedef struct __blake2b_state
+ typedef struct JTR_ALIGN( 64 ) __blake2b_state
{
uint64_t h[8];
uint64_t t[2];
@@ -94,7 +94,7 @@ extern "C" {
#if defined(JOHN_NO_SIMD) || (!defined(__SSE2__) && !defined(__SSE4_1__) && !defined(__XOP__))
typedef struct __blake2sp_state
#else
- JTR_ALIGN( 64 ) typedef struct __blake2sp_state
+ typedef struct JTR_ALIGN( 64 ) __blake2sp_state
#endif
{
blake2s_state S[8][1];
@@ -106,7 +106,7 @@ extern "C" {
#if defined(JOHN_NO_SIMD) || (!defined(__SSE2__) && !defined(__SSE4_1__) && !defined(__XOP__))
typedef struct __blake2bp_state
#else
- JTR_ALIGN( 64 ) typedef struct __blake2bp_state
+ typedef struct JTR_ALIGN( 64 ) __blake2bp_state
#endif
{
blake2b_state S[4][1];