diff options
| author | jsing <> | 2026-01-17 14:30:37 +0000 |
|---|---|---|
| committer | jsing <> | 2026-01-17 14:30:37 +0000 |
| commit | db12bd9b580e2fc1c5c7d3224d2d9d0f534d1b8d (patch) | |
| tree | d8886890844b745822e02557ecb2251ea4786398 /src/lib/libcrypto/arch | |
| parent | 1dd1aaafcbe820792a0f2e002a85a22055696509 (diff) | |
| download | openbsd-db12bd9b580e2fc1c5c7d3224d2d9d0f534d1b8d.tar.gz openbsd-db12bd9b580e2fc1c5c7d3224d2d9d0f534d1b8d.tar.bz2 openbsd-db12bd9b580e2fc1c5c7d3224d2d9d0f534d1b8d.zip | |
Replace GHASH_ASM with function specific defines.
Use the same pattern that is now used for most other code - provide HAVE_*
defines for functions and use these to selectively enable source code.
Diffstat (limited to 'src/lib/libcrypto/arch')
| -rw-r--r-- | src/lib/libcrypto/arch/alpha/Makefile.inc | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/alpha/crypto_arch.h | 9 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/amd64/Makefile.inc | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/amd64/crypto_arch.h | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/hppa/Makefile.inc | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/hppa/crypto_arch.h | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/i386/Makefile.inc | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/i386/crypto_arch.h | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/sparc64/Makefile.inc | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/sparc64/crypto_arch.h | 5 |
10 files changed, 27 insertions, 15 deletions
diff --git a/src/lib/libcrypto/arch/alpha/Makefile.inc b/src/lib/libcrypto/arch/alpha/Makefile.inc index 1073ac3c1e..d89f32dc9d 100644 --- a/src/lib/libcrypto/arch/alpha/Makefile.inc +++ b/src/lib/libcrypto/arch/alpha/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.15 2025/02/14 12:01:58 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.16 2026/01/17 14:30:37 jsing Exp $ |
| 2 | 2 | ||
| 3 | # alpha-specific libcrypto build rules | 3 | # alpha-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -6,7 +6,6 @@ | |||
| 6 | SSLASM+= bn alpha-mont | 6 | SSLASM+= bn alpha-mont |
| 7 | CFLAGS+= -DOPENSSL_BN_ASM_MONT | 7 | CFLAGS+= -DOPENSSL_BN_ASM_MONT |
| 8 | # modes | 8 | # modes |
| 9 | CFLAGS+= -DGHASH_ASM | ||
| 10 | SSLASM+= modes ghash-alpha | 9 | SSLASM+= modes ghash-alpha |
| 11 | # sha | 10 | # sha |
| 12 | SSLASM+= sha sha1-alpha | 11 | SSLASM+= sha sha1-alpha |
diff --git a/src/lib/libcrypto/arch/alpha/crypto_arch.h b/src/lib/libcrypto/arch/alpha/crypto_arch.h index 1d553b7e07..8fec3e2855 100644 --- a/src/lib/libcrypto/arch/alpha/crypto_arch.h +++ b/src/lib/libcrypto/arch/alpha/crypto_arch.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: crypto_arch.h,v 1.2 2025/02/14 12:01:58 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_arch.h,v 1.3 2026/01/17 14:30:37 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -18,7 +18,14 @@ | |||
| 18 | #ifndef HEADER_CRYPTO_ARCH_H | 18 | #ifndef HEADER_CRYPTO_ARCH_H |
| 19 | #define HEADER_CRYPTO_ARCH_H | 19 | #define HEADER_CRYPTO_ARCH_H |
| 20 | 20 | ||
| 21 | #ifndef OPENSSL_NO_ASM | ||
| 22 | |||
| 23 | #define HAVE_GCM_GHASH_4BIT | ||
| 24 | #define HAVE_GCM_GMULT_4BIT | ||
| 25 | |||
| 21 | #define HAVE_SHA1_BLOCK_DATA_ORDER | 26 | #define HAVE_SHA1_BLOCK_DATA_ORDER |
| 22 | #define HAVE_SHA1_BLOCK_GENERIC | 27 | #define HAVE_SHA1_BLOCK_GENERIC |
| 23 | 28 | ||
| 24 | #endif | 29 | #endif |
| 30 | |||
| 31 | #endif | ||
diff --git a/src/lib/libcrypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/arch/amd64/Makefile.inc index 27c61edf58..49f2f6e627 100644 --- a/src/lib/libcrypto/arch/amd64/Makefile.inc +++ b/src/lib/libcrypto/arch/amd64/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.43 2026/01/17 13:55:30 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.44 2026/01/17 14:30:37 jsing Exp $ |
| 2 | 2 | ||
| 3 | # amd64-specific libcrypto build rules | 3 | # amd64-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -48,7 +48,6 @@ CFLAGS+= -DMD5_ASM | |||
| 48 | SRCS+= md5_amd64_generic.S | 48 | SRCS+= md5_amd64_generic.S |
| 49 | 49 | ||
| 50 | # modes | 50 | # modes |
| 51 | CFLAGS+= -DGHASH_ASM | ||
| 52 | SSLASM+= modes ghash-x86_64 | 51 | SSLASM+= modes ghash-x86_64 |
| 53 | SRCS += gcm128_amd64.c | 52 | SRCS += gcm128_amd64.c |
| 54 | 53 | ||
diff --git a/src/lib/libcrypto/arch/amd64/crypto_arch.h b/src/lib/libcrypto/arch/amd64/crypto_arch.h index 9a179a571e..fdc17b8110 100644 --- a/src/lib/libcrypto/arch/amd64/crypto_arch.h +++ b/src/lib/libcrypto/arch/amd64/crypto_arch.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: crypto_arch.h,v 1.15 2025/09/08 12:56:17 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_arch.h,v 1.16 2026/01/17 14:30:37 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -49,6 +49,8 @@ extern uint64_t crypto_cpu_caps_amd64; | |||
| 49 | #define HAVE_AES_XTS_ENCRYPT_INTERNAL | 49 | #define HAVE_AES_XTS_ENCRYPT_INTERNAL |
| 50 | 50 | ||
| 51 | #define HAVE_GCM128_INIT | 51 | #define HAVE_GCM128_INIT |
| 52 | #define HAVE_GCM_GHASH_4BIT | ||
| 53 | #define HAVE_GCM_GMULT_4BIT | ||
| 52 | 54 | ||
| 53 | #define HAVE_RC4_INTERNAL | 55 | #define HAVE_RC4_INTERNAL |
| 54 | #define HAVE_RC4_SET_KEY_INTERNAL | 56 | #define HAVE_RC4_SET_KEY_INTERNAL |
diff --git a/src/lib/libcrypto/arch/hppa/Makefile.inc b/src/lib/libcrypto/arch/hppa/Makefile.inc index ebcc4c8208..4244c20fef 100644 --- a/src/lib/libcrypto/arch/hppa/Makefile.inc +++ b/src/lib/libcrypto/arch/hppa/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.28 2026/01/17 13:55:30 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.29 2026/01/17 14:30:37 jsing Exp $ |
| 2 | 2 | ||
| 3 | # hppa-specific libcrypto build rules | 3 | # hppa-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -8,7 +8,6 @@ SSLASM+= aes aes-parisc aes-parisc | |||
| 8 | SSLASM+= bn parisc-mont parisc-mont | 8 | SSLASM+= bn parisc-mont parisc-mont |
| 9 | CFLAGS+= -DOPENSSL_BN_ASM_MONT | 9 | CFLAGS+= -DOPENSSL_BN_ASM_MONT |
| 10 | # modes | 10 | # modes |
| 11 | CFLAGS+= -DGHASH_ASM | ||
| 12 | SSLASM+= modes ghash-parisc ghash-parisc | 11 | SSLASM+= modes ghash-parisc ghash-parisc |
| 13 | # sha | 12 | # sha |
| 14 | SSLASM+= sha sha1-parisc sha1-parisc | 13 | SSLASM+= sha sha1-parisc sha1-parisc |
diff --git a/src/lib/libcrypto/arch/hppa/crypto_arch.h b/src/lib/libcrypto/arch/hppa/crypto_arch.h index 08fcaca045..80260c93e7 100644 --- a/src/lib/libcrypto/arch/hppa/crypto_arch.h +++ b/src/lib/libcrypto/arch/hppa/crypto_arch.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: crypto_arch.h,v 1.2 2025/02/14 12:01:58 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_arch.h,v 1.3 2026/01/17 14:30:37 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -23,6 +23,9 @@ | |||
| 23 | #define HAVE_AES_ENCRYPT_INTERNAL | 23 | #define HAVE_AES_ENCRYPT_INTERNAL |
| 24 | #define HAVE_AES_DECRYPT_INTERNAL | 24 | #define HAVE_AES_DECRYPT_INTERNAL |
| 25 | 25 | ||
| 26 | #define HAVE_GCM_GHASH_4BIT | ||
| 27 | #define HAVE_GCM_GMULT_4BIT | ||
| 28 | |||
| 26 | #define HAVE_SHA1_BLOCK_DATA_ORDER | 29 | #define HAVE_SHA1_BLOCK_DATA_ORDER |
| 27 | #define HAVE_SHA1_BLOCK_GENERIC | 30 | #define HAVE_SHA1_BLOCK_GENERIC |
| 28 | 31 | ||
diff --git a/src/lib/libcrypto/arch/i386/Makefile.inc b/src/lib/libcrypto/arch/i386/Makefile.inc index d0c1aeea6a..18d316e64d 100644 --- a/src/lib/libcrypto/arch/i386/Makefile.inc +++ b/src/lib/libcrypto/arch/i386/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.32 2026/01/17 13:55:30 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.33 2026/01/17 14:30:37 jsing Exp $ |
| 2 | 2 | ||
| 3 | # i386-specific libcrypto build rules | 3 | # i386-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -23,7 +23,6 @@ CFLAGS+= -DMD5_ASM | |||
| 23 | SSLASM+= md5 md5-586 | 23 | SSLASM+= md5 md5-586 |
| 24 | 24 | ||
| 25 | # modes | 25 | # modes |
| 26 | CFLAGS+= -DGHASH_ASM | ||
| 27 | SSLASM+= modes ghash-x86 | 26 | SSLASM+= modes ghash-x86 |
| 28 | SRCS += gcm128_i386.c | 27 | SRCS += gcm128_i386.c |
| 29 | 28 | ||
diff --git a/src/lib/libcrypto/arch/i386/crypto_arch.h b/src/lib/libcrypto/arch/i386/crypto_arch.h index f0e9e4c065..143dce6ce0 100644 --- a/src/lib/libcrypto/arch/i386/crypto_arch.h +++ b/src/lib/libcrypto/arch/i386/crypto_arch.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: crypto_arch.h,v 1.14 2025/12/31 10:06:41 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_arch.h,v 1.15 2026/01/17 14:30:37 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -49,6 +49,8 @@ extern uint64_t crypto_cpu_caps_i386; | |||
| 49 | #define HAVE_AES_XTS_ENCRYPT_INTERNAL | 49 | #define HAVE_AES_XTS_ENCRYPT_INTERNAL |
| 50 | 50 | ||
| 51 | #define HAVE_GCM128_INIT | 51 | #define HAVE_GCM128_INIT |
| 52 | #define HAVE_GCM_GHASH_4BIT | ||
| 53 | #define HAVE_GCM_GMULT_4BIT | ||
| 52 | 54 | ||
| 53 | #define HAVE_RC4_INTERNAL | 55 | #define HAVE_RC4_INTERNAL |
| 54 | #define HAVE_RC4_SET_KEY_INTERNAL | 56 | #define HAVE_RC4_SET_KEY_INTERNAL |
diff --git a/src/lib/libcrypto/arch/sparc64/Makefile.inc b/src/lib/libcrypto/arch/sparc64/Makefile.inc index f09a9769a9..2343b3b3e2 100644 --- a/src/lib/libcrypto/arch/sparc64/Makefile.inc +++ b/src/lib/libcrypto/arch/sparc64/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.22 2026/01/17 13:55:31 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.23 2026/01/17 14:30:37 jsing Exp $ |
| 2 | 2 | ||
| 3 | # sparc64-specific libcrypto build rules | 3 | # sparc64-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -6,7 +6,6 @@ | |||
| 6 | SSLASM+= aes aes-sparcv9 aes-sparcv9 | 6 | SSLASM+= aes aes-sparcv9 aes-sparcv9 |
| 7 | # bn | 7 | # bn |
| 8 | # modes | 8 | # modes |
| 9 | CFLAGS+= -DGHASH_ASM | ||
| 10 | SSLASM+= modes ghash-sparcv9 ghash-sparcv9 | 9 | SSLASM+= modes ghash-sparcv9 ghash-sparcv9 |
| 11 | # sha | 10 | # sha |
| 12 | SSLASM+= sha sha1-sparcv9 sha1-sparcv9 | 11 | SSLASM+= sha sha1-sparcv9 sha1-sparcv9 |
diff --git a/src/lib/libcrypto/arch/sparc64/crypto_arch.h b/src/lib/libcrypto/arch/sparc64/crypto_arch.h index 251957a5bc..405f1c3657 100644 --- a/src/lib/libcrypto/arch/sparc64/crypto_arch.h +++ b/src/lib/libcrypto/arch/sparc64/crypto_arch.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: crypto_arch.h,v 1.2 2025/02/14 12:01:58 jsing Exp $ */ | 1 | /* $OpenBSD: crypto_arch.h,v 1.3 2026/01/17 14:30:37 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> | 3 | * Copyright (c) 2024 Joel Sing <jsing@openbsd.org> |
| 4 | * | 4 | * |
| @@ -23,6 +23,9 @@ | |||
| 23 | #define HAVE_AES_ENCRYPT_INTERNAL | 23 | #define HAVE_AES_ENCRYPT_INTERNAL |
| 24 | #define HAVE_AES_DECRYPT_INTERNAL | 24 | #define HAVE_AES_DECRYPT_INTERNAL |
| 25 | 25 | ||
| 26 | #define HAVE_GCM_GHASH_4BIT | ||
| 27 | #define HAVE_GCM_GMULT_4BIT | ||
| 28 | |||
| 26 | #define HAVE_SHA1_BLOCK_DATA_ORDER | 29 | #define HAVE_SHA1_BLOCK_DATA_ORDER |
| 27 | #define HAVE_SHA1_BLOCK_GENERIC | 30 | #define HAVE_SHA1_BLOCK_GENERIC |
| 28 | 31 | ||
