[openssl/openssl] 87efbd: Untangle rats nest of .inc files for AES_GCM
"'Simo Sorce' via openssl-commits" <[email protected]>
| Newsgroups | gmane.comp.encryption.openssl.cvs |
|---|---|
| Message-ID | <openssl/openssl/push/refs/heads/master/[email protected]> |
Branch: refs/heads/master
Home: https://github.com/openssl/openssl
Commit: 87efbd952873ebc99e22edcb2f6feaa48c7683ec
https://github.com/openssl/openssl/commit/87efbd952873ebc99e22edcb2f6feaa48c7683ec
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/fips.module.sources
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
A providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_armv8.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_armv8.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_ppc.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_ppc.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_rv32i.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_rv32i.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_s390x.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_s390x.inc
A providers/implementations/ciphers/cipher_aes_gcm_hw_t4.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_t4.inc
R providers/implementations/ciphers/cipher_aes_gcm_hw_vaes_avx512.inc
Log Message:
-----------
Untangle rats nest of .inc files for AES_GCM
These files have no reason not to be just regular .c files.
Additionally apply formatting fixes which were not done on .inc files
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:35 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: e1c0726f486118f417ddf26b08e8e3ccd8de34b1
https://github.com/openssl/openssl/commit/e1c0726f486118f417ddf26b08e8e3ccd8de34b1
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_armv8.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_ppc.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_rv32i.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_t4.c
M providers/implementations/ciphers/cipher_aria_gcm_hw.c
M providers/implementations/include/prov/ciphercommon_gcm.h
Log Message:
-----------
Replace GCM_HW_SET_KEY_CTR_FN with a function
The `GCM_HW_SET_KEY_CTR_FN` macro has been removed and replaced with a proper
function, `aes_gcm_hw_initkey`, for AES GCM hardware implementations. For ARIA
GCM, the macro expansion was manually inlined.
This refactoring eliminates a multi-line macro to improve debuggability and
type safety. Crucially, the new function checks the return value of the
underlying key setup routines, ensuring that key initialization failures are
now correctly caught and propagated instead of being ignored.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:38 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 62663738b0a73ff453f9d0bb058f69328f0893eb
https://github.com/openssl/openssl/commit/62663738b0a73ff453f9d0bb058f69328f0893eb
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M .clang-format
M include/crypto/aes_platform.h
M providers/fips.module.sources
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.c
M providers/implementations/ciphers/cipher_aes.h
R providers/implementations/ciphers/cipher_aes_cfb.h
R providers/implementations/ciphers/cipher_aes_cfb_hw.c
R providers/implementations/ciphers/cipher_aes_cfb_hw_aesni.inc
R providers/implementations/ciphers/cipher_aes_cfb_hw_s390x.inc
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_hw.c
A providers/implementations/ciphers/cipher_aes_hw_aesni.c
R providers/implementations/ciphers/cipher_aes_hw_aesni.inc
A providers/implementations/ciphers/cipher_aes_hw_armv8.c
R providers/implementations/ciphers/cipher_aes_hw_armv8.inc
A providers/implementations/ciphers/cipher_aes_hw_rv32i.c
R providers/implementations/ciphers/cipher_aes_hw_rv32i.inc
A providers/implementations/ciphers/cipher_aes_hw_rv64i.c
R providers/implementations/ciphers/cipher_aes_hw_rv64i.inc
A providers/implementations/ciphers/cipher_aes_hw_s390x.c
R providers/implementations/ciphers/cipher_aes_hw_s390x.inc
A providers/implementations/ciphers/cipher_aes_hw_t4.c
R providers/implementations/ciphers/cipher_aes_hw_t4.inc
Log Message:
-----------
Refactor AES hardware cipher implementations
Replace architecture-specific `.inc` files with standalone `.c` files for AES
ciphers and consolidate CFB mode logic into these new modules.
This eliminates the direct inclusion of source files and compiles each
hardware implementation as a separate translation unit.
This refactoring simplifies code organization and remove macro
complexity that makes it hard to understand what is implemented and
where enhancing maintainability.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:40 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: e9cf01be98d7dc9bec575b5af0b668f53896f2c2
https://github.com/openssl/openssl/commit/e9cf01be98d7dc9bec575b5af0b668f53896f2c2
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/fips.module.sources
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes_ccm.h
M providers/implementations/ciphers/cipher_aes_ccm_hw.c
A providers/implementations/ciphers/cipher_aes_ccm_hw_aesni.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_aesni.inc
A providers/implementations/ciphers/cipher_aes_ccm_hw_rv32i.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_rv32i.inc
A providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.inc
A providers/implementations/ciphers/cipher_aes_ccm_hw_s390x.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_s390x.inc
A providers/implementations/ciphers/cipher_aes_ccm_hw_t4.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_t4.inc
Log Message:
-----------
Convert AES CCM .inc files to separate .c files
The hardware-specific AES CCM implementations were previously included
directly as `.inc` files into `cipher_aes_ccm_hw.c`. This commit renames them
to standalone `.c` files and updates the build configuration, improving
modularity by treating them as separate compilation units.
Additionally, the `AES_HW_CCM_SET_KEY_FN` macro is replaced with a new
`ossl_cipher_set_ccm_aes_initkey` helper function. This reduces code
duplication, removes unsafe macro logic, and introduces proper error handling
during provider key initialization.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:42 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 5339c5219fc605b47db44041e835ff15a9444f50
https://github.com/openssl/openssl/commit/5339c5219fc605b47db44041e835ff15a9444f50
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Refactor AES XTS hardware key initialization
Replace complex AES XTS initialization and hardware selection macros
(`XTS_SET_KEY_FN`, `PROV_CIPHER_HW_declare_xts`, and
`PROV_CIPHER_HW_select_xts`) with standard C functions.
Architecture-specific initializers, particularly for RISC-V, are consolidated
to evaluate CPU capabilities within dedicated initialization functions rather
than relying on macro expansion. This refactoring improves overall code
readability, maintainability, and simplifies debugging by eliminating opaque
multi-statement macros.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:44 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 774525b38bd47b3e895249a81aa885239a7d2061
https://github.com/openssl/openssl/commit/774525b38bd47b3e895249a81aa885239a7d2061
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_xts.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
R providers/implementations/ciphers/cipher_aes_xts_s390x.inc
Log Message:
-----------
Migrate s390x AES-XTS to standard HW interface
Move the s390x-specific AES-XTS implementation from `cipher_aes_xts_s390x.inc`
to `cipher_aes_xts_hw.c`, adapting it to use the standard `PROV_CIPHER_HW`
dispatch structure.
This refactoring removes standalone initialization wrappers and integrates the
s390x hardware backend more cleanly with the generic AES-XTS provider code. It
also reduces code duplication by relying on the generic layer for common
validations (such as the maximum blocks per data unit limit) before invoking
the hardware-specific stream cipher.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:46 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 16234b9073dd20d59e00676e631a950c09443d5d
https://github.com/openssl/openssl/commit/16234b9073dd20d59e00676e631a950c09443d5d
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.h
M providers/implementations/ciphers/cipher_aes_ccm.h
M providers/implementations/ciphers/cipher_aes_ccm_hw.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_hw.c
M providers/implementations/ciphers/cipher_aes_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Consolidate AESNI hardware implementations
Move the AES-NI specific hardware implementations for GCM, CCM, and XTS modes
from individual mode files into a single consolidated file
(`cipher_aes_hw_aesni.c`). This groups architecture-specific optimizations
together, improving code organization and maintainability.
As part of this refactoring, the unused `keybits` parameter was removed from
several AES-NI provider functions, and necessary XTS initialization and
context copy functions were exported for shared use.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:48 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: d1004c62ace7bc550b755d5bea356473e6d2df32
https://github.com/openssl/openssl/commit/d1004c62ace7bc550b755d5bea356473e6d2df32
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.h
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_armv8.c
M providers/implementations/ciphers/cipher_aes_hw.c
M providers/implementations/ciphers/cipher_aes_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_hw_armv8.c
Log Message:
-----------
Consolidate ARMv8 AES hardware implementations
Move the ARMv8-specific hardware implementations for AES GCM into a single
consolidated file (`cipher_aes_hw_armv8.c`). This groups architecture-specific
optimizations together to improve code organization and maintainability.
Additionally, remove the unused `keybits` parameter from the ARMv8 provider
functions to simplify the function signatures.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:50 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: f537454de00015b4a81cbd62ebb221ebfc7bf393
https://github.com/openssl/openssl/commit/f537454de00015b4a81cbd62ebb221ebfc7bf393
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.h
M providers/implementations/ciphers/cipher_aes_ccm.h
M providers/implementations/ciphers/cipher_aes_ccm_hw.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_rv32i.c
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_rv32i.c
M providers/implementations/ciphers/cipher_aes_hw.c
M providers/implementations/ciphers/cipher_aes_hw_rv32i.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Consolidate RV32I AES hardware implementations
Move the RISC-V 32-bit hardware-accelerated AES implementations for GCM, CCM,
and XTS modes into a single file (`cipher_aes_hw_rv32i.c`). This removes the
need for separate files (`cipher_aes_gcm_hw_rv32i.c` and
`cipher_aes_ccm_hw_rv32i.c`) and simplifies the build process. Additionally,
unused `keybits` parameters are removed from the provider hardware
initialization functions to clean up the code.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:52 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: aa23e0cd7a5d9de2654ffe1eab943213c2bb109e
https://github.com/openssl/openssl/commit/aa23e0cd7a5d9de2654ffe1eab943213c2bb109e
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.h
M providers/implementations/ciphers/cipher_aes_ccm.h
M providers/implementations/ciphers/cipher_aes_ccm_hw.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_rv64i.c
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_rv64i.c
M providers/implementations/ciphers/cipher_aes_hw.c
M providers/implementations/ciphers/cipher_aes_hw_rv64i.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Consolidate RISC-V 64 AES hardware code
Merge the RISC-V 64 hardware-accelerated AES mode implementations (GCM, CCM,
and XTS) into a single file (`cipher_aes_hw_rv64i.c`). This removes the need
for separate files for GCM and CCM, and extracts RV64-specific XTS code from
the generic XTS hardware file, improving code organization.
Additionally, remove the unused `keybits` parameter from the RV64 AES hardware
retrieval functions.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:54 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 10dcad1311dcc22f5d2b5116c989e80b53b66282
https://github.com/openssl/openssl/commit/10dcad1311dcc22f5d2b5116c989e80b53b66282
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_hw_rv64i.c
Log Message:
-----------
Extract Zvkned key length check to helper
A new helper function, zvkned_key_schedule_supported, is introduced to
centralize the verification of 128-bit and 256-bit key lengths.
This replaces multiple duplicated, hardcoded checks across the RISC-V AES
implementations to improve code readability and maintainability. It also
ensures consistent check handling for XTS mode by correctly evaluating half
the key length.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:56 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: b0bda138a64086485da93e1dc7fa90fd866e62bd
https://github.com/openssl/openssl/commit/b0bda138a64086485da93e1dc7fa90fd866e62bd
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
R providers/implementations/ciphers/cipher_aes_ccm_hw_s390x.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_s390x.c
M providers/implementations/ciphers/cipher_aes_hw_s390x.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Consolidate s390x AES hardware implementations
Move the s390x hardware-accelerated AES mode implementations (GCM, CCM, and
XTS) from their respective files into a single `cipher_aes_hw_s390x.c` file.
Centralizing the platform-specific logic simplifies the code structure and
improves maintainability.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:05:58 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: f7e4eb281dfcf01b19a6fb891d0432f5af898720
https://github.com/openssl/openssl/commit/f7e4eb281dfcf01b19a6fb891d0432f5af898720
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/build.info
M providers/implementations/ciphers/cipher_aes.h
M providers/implementations/ciphers/cipher_aes_ccm.h
M providers/implementations/ciphers/cipher_aes_ccm_hw.c
R providers/implementations/ciphers/cipher_aes_ccm_hw_t4.c
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
R providers/implementations/ciphers/cipher_aes_gcm_hw_t4.c
M providers/implementations/ciphers/cipher_aes_hw.c
M providers/implementations/ciphers/cipher_aes_hw_t4.c
M providers/implementations/ciphers/cipher_aes_xts.h
M providers/implementations/ciphers/cipher_aes_xts_hw.c
Log Message:
-----------
Consolidate SPARC T4 AES implementations
Move SPARC T4-specific AES hardware implementations (GCM, CCM, and XTS) from
individual mode-specific files into a single unified file
(cipher_aes_hw_t4.c). This consolidates the architecture-specific logic to
improve code organization and maintainability.
Additionally, this change removes the unused `keybits` parameter from several
SPARC T4 hardware initialization routines to clean up the internal API.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:06:01 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: 48a32190509a5e38671091062fad8ed85d01bce6
https://github.com/openssl/openssl/commit/48a32190509a5e38671091062fad8ed85d01bce6
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_gcm.h
M providers/implementations/ciphers/cipher_aes_gcm_hw.c
M providers/implementations/ciphers/cipher_aes_gcm_hw_ppc.c
M providers/implementations/ciphers/cipher_aes_hw_aesni.c
M providers/implementations/ciphers/cipher_aes_hw_armv8.c
M providers/implementations/ciphers/cipher_aes_hw_rv32i.c
M providers/implementations/ciphers/cipher_aes_hw_rv64i.c
M providers/implementations/ciphers/cipher_aes_hw_t4.c
Log Message:
-----------
Prefix internal AES-GCM functions with ossl_
The `aes_gcm_hw_initkey` and `generic_aes_gcm_cipher_update` functions are
shared across multiple hardware-specific provider implementations but lacked
the internal `ossl_` prefix. They have been renamed to
`ossl_aes_gcm_hw_initkey` and `ossl_generic_aes_gcm_cipher_update`
respectively to follow OpenSSL naming conventions and prevent potential
namespace collisions.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:06:03 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Commit: e60d940b29504b7b1f15d1fe597ae9cdde701c8a
https://github.com/openssl/openssl/commit/e60d940b29504b7b1f15d1fe597ae9cdde701c8a
Author: Simo Sorce <[email protected]>
Date: 2026-06-27 (Sat, 27 Jun 2026)
Changed paths:
M providers/implementations/ciphers/cipher_aes_hw.c
Log Message:
-----------
Expand AES mode macro into explicit functions
This removes the PROV_CIPHER_HW_aes_mode macro and replaces it with explicitly
written function definitions for each AES mode (ECB, CBC, CFB128, CFB8, CFB1,
OFB128, CTR).
Expanding macro-generated functions improves overall code readability, allows
code navigation tools to properly index the function signatures, and provides
clearer stack traces during debugging.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
MergeDate: Sat Jun 27 09:06:05 2026
(Merged from https://github.com/openssl/openssl/pull/31472)
Compare: https://github.com/openssl/openssl/compare/5a47730f01e8...e60d940b2950
To unsubscribe from these emails, change your notification settings at https://github.com/openssl/openssl/settings/notifications
--
You received this message because you are subscribed to the Google Groups "openssl-commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion visit https://groups.google.com/a/openssl.org/d/msgid/openssl-commits/openssl/openssl/push/refs/heads/master/5a4773-e60d94%40github.com.