提交 464010b0 编写于 作者: A Alexandru Gagniuc 提交者: Heinrich Schuchardt

efi_loader: Work-around build issue due to missing hash_calculate()

The hash_calculate() symbol is provided by hash-checksum.c. It depends
on hash_progressive_lookup_algo(), provided when CONFIG_HASH=y.

The issue is that hash_calculate() is used by the efi_loader,
irregardless of CONFIG_FIT_SIGNATURE. As pointed out in
commit 87316da0 ("lib: introduce HASH_CALCULATE option"),
enabling hash_calculate() based on CONFIG_FIT_SIGNATURE is incorrect.

To resolve this, use CONFIG_HASH as the compile switch for
hash-checksum.c. This ensures that all dependencies are compiled, and
is the most natural Kconfig to use.

There is the issue of having to 'select HASH' in a couple of places
that already 'select SHA256'. This is a deeper problem with how hashes
are organized, and fixing it is beyonf the scope of this change.
Signed-off-by: NAlexandru Gagniuc <mr.nuke.me@gmail.com>
Acked-by: NMasahisa Kojima <masahisa.kojima@linaro.org>
上级 ec0512b1
...@@ -61,7 +61,7 @@ endif ...@@ -61,7 +61,7 @@ endif
obj-$(CONFIG_$(SPL_)ACPIGEN) += acpi/ obj-$(CONFIG_$(SPL_)ACPIGEN) += acpi/
obj-$(CONFIG_$(SPL_)MD5) += md5.o obj-$(CONFIG_$(SPL_)MD5) += md5.o
obj-$(CONFIG_$(SPL_)RSA) += rsa/ obj-$(CONFIG_$(SPL_)RSA) += rsa/
obj-$(CONFIG_FIT_SIGNATURE) += hash-checksum.o obj-$(CONFIG_HASH) += hash-checksum.o
obj-$(CONFIG_SHA1) += sha1.o obj-$(CONFIG_SHA1) += sha1.o
obj-$(CONFIG_SHA256) += sha256.o obj-$(CONFIG_SHA256) += sha256.o
obj-$(CONFIG_SHA512_ALGO) += sha512.o obj-$(CONFIG_SHA512_ALGO) += sha512.o
......
...@@ -166,6 +166,7 @@ config EFI_CAPSULE_AUTHENTICATE ...@@ -166,6 +166,7 @@ config EFI_CAPSULE_AUTHENTICATE
depends on EFI_CAPSULE_FIRMWARE depends on EFI_CAPSULE_FIRMWARE
depends on EFI_CAPSULE_ON_DISK depends on EFI_CAPSULE_ON_DISK
depends on EFI_CAPSULE_FIRMWARE_MANAGEMENT depends on EFI_CAPSULE_FIRMWARE_MANAGEMENT
select HASH
select SHA256 select SHA256
select RSA select RSA
select RSA_VERIFY select RSA_VERIFY
...@@ -334,6 +335,7 @@ config EFI_LOAD_FILE2_INITRD ...@@ -334,6 +335,7 @@ config EFI_LOAD_FILE2_INITRD
config EFI_SECURE_BOOT config EFI_SECURE_BOOT
bool "Enable EFI secure boot support" bool "Enable EFI secure boot support"
depends on EFI_LOADER depends on EFI_LOADER
select HASH
select SHA256 select SHA256
select RSA select RSA
select RSA_VERIFY_WITH_PKEY select RSA_VERIFY_WITH_PKEY
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册