]> git.baikalelectronics.ru Git - uboot.git/commit
efi_loader: update attribute check for QueryVariableInfo()
authorMasahisa Kojima <masahisa.kojima@linaro.org>
Thu, 2 Feb 2023 13:53:35 +0000 (22:53 +0900)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fri, 10 Feb 2023 12:05:39 +0000 (13:05 +0100)
commit9195ef414f04166db2aec875bf4eb426eae4da27
treef006b7900a553c3bf6907bfaad34fbe8f3a962f5
parent1766f2a1b5811d644ff492d94cc96d3f71f7f3f0
efi_loader: update attribute check for QueryVariableInfo()

Current U-Boot supports two EFI variable service, U-Boot own
implementation and op-tee based StMM variable service.

With ACS Security Interface Extension(SIE) v22.10_SIE_REL1.1.0,
there are several failure items of QueryVariableInfo().

Current attribute check for QueryVariableInfo() was implemented
based on the Self Certification Test (SCT) II Case Specification,
June 2017, chapter 4.1.4 QueryVariableInfo().
This test case specification is outdated and don't align at all
with the SCT test case code, and UEFI specification v2.10 does
not clearly define the priority of the attribute check.

For U-Boot standard case that EFI variables are stored in a file
in the ESP, this commit modifies the attribute check to get align
to the EDK2 implementation.

For latter case(op-tee based StMM variable service), parameter check
should be delegated to StMM.

Now all ACS SIE QueryVariableInfo() test cases passed both EFI variable
storage implementations.

Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
lib/efi_loader/efi_var_common.c
lib/efi_loader/efi_variable.c