efi_selftest: fix variables test for GetNextVariableName()
There is a bug in efi variables test. Fix it with some cosmetic improvements. Please note that efi variables test still fails at QueryVariableInfo() and GetVariable(), but this is not due to a change in this patch. ==8<== Testing EFI API implementation Selected test: 'variables' Setting up 'variables' Setting up 'variables' succeeded Executing 'variables' .../u-boot/lib/efi_selftest/efi_selftest_variables.c(60): TODO: QueryVariableInfo failed .../u-boot/lib/efi_selftest/efi_selftest_variables.c(131): TODO: GetVariable returned wrong length 7 .../u-boot/lib/efi_selftest/efi_selftest_variables.c(133): TODO: GetVariable returned wrong value Executing 'variables' succeeded Boot services terminated Summary: 0 failures ==>8== Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
d99a87f84b
commit
1170fee695
@ -141,19 +141,22 @@ static int execute(void)
|
||||
if (ret == EFI_NOT_FOUND)
|
||||
break;
|
||||
if (ret != EFI_SUCCESS) {
|
||||
efi_st_todo("GetNextVariableName failed\n");
|
||||
break;
|
||||
efi_st_error("GetNextVariableName failed (%u)\n",
|
||||
(unsigned int)ret);
|
||||
return EFI_ST_FAILURE;
|
||||
}
|
||||
if (!efi_st_memcmp(&guid, &guid_vendor0, sizeof(efi_guid_t)) &&
|
||||
!efi_st_strcmp_16_8(varname, "efi_st_var0"))
|
||||
flag |= 2;
|
||||
flag |= 1;
|
||||
if (!efi_st_memcmp(&guid, &guid_vendor1, sizeof(efi_guid_t)) &&
|
||||
!efi_st_strcmp_16_8(varname, "efi_st_var1"))
|
||||
flag |= 2;
|
||||
}
|
||||
if (flag != 3)
|
||||
efi_st_todo(
|
||||
if (flag != 3) {
|
||||
efi_st_error(
|
||||
"GetNextVariableName did not return all variables\n");
|
||||
return EFI_ST_FAILURE;
|
||||
}
|
||||
/* Delete variable 1 */
|
||||
ret = runtime->set_variable(L"efi_st_var1", &guid_vendor1,
|
||||
0, 0, NULL);
|
||||
|
Loading…
Reference in New Issue
Block a user