Remove near duplicate AES_set_{encrypt,decrypt}_key() functions.
authorjsing <jsing@openbsd.org>
Wed, 27 Mar 2024 08:24:13 +0000 (08:24 +0000)
committerjsing <jsing@openbsd.org>
Wed, 27 Mar 2024 08:24:13 +0000 (08:24 +0000)
commitcc1e018af35d0763c702c77cef1ee8db6df14bf4
tree71b0f0a184597498668c558165f0841a9dd2043d
parent54fbf153ab0454deb6c4d82a775a5bc91f0b7765
Remove near duplicate AES_set_{encrypt,decrypt}_key() functions.

There are currently three ways in which AES is implemented - all in
assembly (amd64 et al), all in C (aarch64 et al) and, half in C and
half in assembly (hppa and sparc64). The last of these cases currently
makes use of a near duplicate AES_set_{encrypt,decrypt}_key()
implementation that avoids using the AES tables.

Remove the near duplicate version and if only a half assembly version is
implemented, use the same C version of AES_set_{encrypt,decrypt}_key() as
everyone else. This adds around 8KB of rodata to libcrypto on these two
platforms.

Discussed with beck and tb.
lib/libcrypto/aes/aes_core.c