mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
lib: Drop SHA512_ALGO in lieu of SHA512
SHA512_ALGO was used as a "either SHA512 or SHA384", although the implementations of these two algorithms share a majority of code. From a Kconfig interface perspective, it makes sense to present two distinct options. This requires #ifdefing out the SHA512 implementation from sha512.c. The latter doesn't make any sense. It's reasonable to say in Kconfig that SHA384 depends on SHA512, and seems to be the more polite way to handle the selection. Thus, automatically select SHA512 when SHA384 is enabled. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
This commit is contained in:
parent
eb5171ddec
commit
e60e449931
6 changed files with 8 additions and 14 deletions
|
@ -11,7 +11,7 @@ config SOCFPGA_SECURE_VAB_AUTH
|
|||
depends on TARGET_SOCFPGA_AGILEX || TARGET_SOCFPGA_N5X
|
||||
select FIT_IMAGE_POST_PROCESS
|
||||
select SHA384
|
||||
select SHA512_ALGO
|
||||
select SHA512
|
||||
select SPL_FIT_IMAGE_POST_PROCESS
|
||||
help
|
||||
All images loaded from FIT will be authenticated by Secure Device
|
||||
|
|
12
lib/Kconfig
12
lib/Kconfig
|
@ -375,14 +375,9 @@ config SHA256
|
|||
The SHA256 algorithm produces a 256-bit (32-byte) hash value
|
||||
(digest).
|
||||
|
||||
config SHA512_ALGO
|
||||
bool "Enable SHA512 algorithm"
|
||||
help
|
||||
This option enables support of internal SHA512 algorithm.
|
||||
|
||||
config SHA512
|
||||
bool "Enable SHA512 support"
|
||||
depends on SHA512_ALGO
|
||||
help
|
||||
This option enables support of hashing using SHA512 algorithm.
|
||||
The hash is calculated in software.
|
||||
|
@ -391,10 +386,11 @@ config SHA512
|
|||
|
||||
config SHA384
|
||||
bool "Enable SHA384 support"
|
||||
depends on SHA512_ALGO
|
||||
select SHA512
|
||||
help
|
||||
This option enables support of hashing using SHA384 algorithm.
|
||||
The hash is calculated in software.
|
||||
The hash is calculated in software. This is also selects SHA512,
|
||||
because these implementations share the bulk of the code..
|
||||
The SHA384 algorithm produces a 384-bit (48-byte) hash value
|
||||
(digest).
|
||||
|
||||
|
@ -409,7 +405,7 @@ if SHA_HW_ACCEL
|
|||
|
||||
config SHA512_HW_ACCEL
|
||||
bool "Enable hardware acceleration for SHA512"
|
||||
depends on SHA512_ALGO
|
||||
depends on SHA512
|
||||
help
|
||||
This option enables hardware acceleration for the SHA384 and SHA512
|
||||
hashing algorithms. This affects the 'hash' command and also the
|
||||
|
|
|
@ -65,7 +65,7 @@ obj-$(CONFIG_$(SPL_)RSA) += rsa/
|
|||
obj-$(CONFIG_HASH) += hash-checksum.o
|
||||
obj-$(CONFIG_SHA1) += sha1.o
|
||||
obj-$(CONFIG_SHA256) += sha256.o
|
||||
obj-$(CONFIG_SHA512_ALGO) += sha512.o
|
||||
obj-$(CONFIG_SHA512) += sha512.o
|
||||
obj-$(CONFIG_CRYPT_PW) += crypt/
|
||||
|
||||
obj-$(CONFIG_$(SPL_)ZLIB) += zlib/
|
||||
|
|
|
@ -20,7 +20,7 @@ config CRYPT_PW_SHA256
|
|||
config CRYPT_PW_SHA512
|
||||
bool "Provide sha512crypt"
|
||||
select SHA512
|
||||
select SHA512_ALGO
|
||||
select SHA512
|
||||
help
|
||||
Enables support for the sha512crypt password-hashing algorithm.
|
||||
The prefix is "$6$".
|
||||
|
|
|
@ -323,7 +323,7 @@ config EFI_TCG2_PROTOCOL
|
|||
depends on TPM_V2
|
||||
select SHA1
|
||||
select SHA256
|
||||
select SHA512_ALGO
|
||||
select SHA512
|
||||
select SHA384
|
||||
select SHA512
|
||||
select HASH
|
||||
|
|
|
@ -320,7 +320,6 @@ void sha384_csum_wd(const unsigned char *input, unsigned int ilen,
|
|||
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SHA512)
|
||||
void sha512_starts(sha512_context * ctx)
|
||||
{
|
||||
ctx->state[0] = SHA512_H0;
|
||||
|
@ -381,4 +380,3 @@ void sha512_csum_wd(const unsigned char *input, unsigned int ilen,
|
|||
|
||||
sha512_finish(&ctx, output);
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue