ACK: [PATCH 3/3] uefirtauthvar: remove duplicate authenticated attribute test (LP: #1432752)
Colin Ian King
colin.king at canonical.com
Fri Mar 20 10:24:38 UTC 2015
On 20/03/15 07:09, Ivan Hu wrote:
> Test12 tests both authenticated attributes are set, the fimware need to
> return EFI_INVALID_PARAMETER. It might be cofused on the firmware which
> unsupport authenticated variable also get pass on this test.
>
> Simplely remove test12 because fwts has the same test on the uefirtvariable
> setvariable_test7 test.
>
> This patch also fix the wrong attribute set on setvariable_test7.
>
> Signed-off-by: Ivan Hu <ivan.hu at canonical.com>
> ---
> src/uefi/uefirtauthvar/uefirtauthvar.c | 53 ++------------------------------
> src/uefi/uefirtvariable/uefirtvariable.c | 2 +-
> 2 files changed, 3 insertions(+), 52 deletions(-)
>
> diff --git a/src/uefi/uefirtauthvar/uefirtauthvar.c b/src/uefi/uefirtauthvar/uefirtauthvar.c
> index 7c5dbf1..a2b535f 100644
> --- a/src/uefi/uefirtauthvar/uefirtauthvar.c
> +++ b/src/uefi/uefirtauthvar/uefirtauthvar.c
> @@ -714,58 +714,10 @@ static int uefirtauthvar_test11(fwts_framework *fw)
> }
>
> /*
> - * Set the authenticated variable with both EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS
> - * and the EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attributes, firmware
> - * should return EFI_INVALID_PARAMETER.
> - */
> -static int uefirtauthvar_test12(fwts_framework *fw)
> -{
> - long ioret;
> -
> - uint64_t status;
> - uint32_t attr_both = attributes | FWTS_UEFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS;
> -
> - ioret = setvar(>estguid, attr_both, sizeof(AuthVarCreate), AuthVarCreate, &status);
> -
> - if (ioret == -1) {
> - if (status == EFI_INVALID_PARAMETER) {
> - fwts_passed(fw, "Test with both authenticated attributes are set passed.");
> -
> - return FWTS_OK;
> - }
> - if (status == EFI_OUT_OF_RESOURCES) {
> - fwts_uefi_print_status_info(fw, status);
> - fwts_skipped(fw,
> - "Run out of resources for SetVariable "
> - "UEFI runtime interface: cannot test.");
> - fwts_advice(fw,
> - "Firmware may reclaim some resources "
> - "after rebooting. Reboot and test "
> - "again may be helpful to continue "
> - "the test.");
> - return FWTS_SKIP;
> - }
> - fwts_failed(fw, LOG_LEVEL_MEDIUM,
> - "UEFIRuntimeSetVariable",
> - "Failed to set variable with UEFI "
> - "runtime service.");
> -
> - fwts_uefi_print_status_info(fw, status);
> - return FWTS_ERROR;
> - }
> -
> - fwts_failed(fw, LOG_LEVEL_HIGH,
> - "UEFSetAuthVarWithBothAuthAttr",
> - "Should not pass setting the authenticated variable "
> - "with both authenticated attributes are set.");
> - return FWTS_ERROR;
> -}
> -
> -/*
> * Test with setting and deleting another authenticated variable,
> * after previous test authenticated variable was deleted.
> */
> -static int uefirtauthvar_test13(fwts_framework *fw)
> +static int uefirtauthvar_test12(fwts_framework *fw)
> {
> long ioret;
>
> @@ -872,8 +824,7 @@ static fwts_framework_minor_test uefirtauthvar_tests[] = {
> { uefirtauthvar_test9, "Authenticated variable test with invalid modified timestamp." },
> { uefirtauthvar_test10, "Authenticated variable test with different guid." },
> { uefirtauthvar_test11, "Authenticated variable test with invalid attributes." },
> - { uefirtauthvar_test12, "Test with both authenticated attributes are set." },
> - { uefirtauthvar_test13, "Set and delete authenticated variable created by different key test." },
> + { uefirtauthvar_test12, "Set and delete authenticated variable created by different key test." },
> { NULL, NULL }
> };
>
> diff --git a/src/uefi/uefirtvariable/uefirtvariable.c b/src/uefi/uefirtvariable/uefirtvariable.c
> index d47f50e..ddf3885 100644
> --- a/src/uefi/uefirtvariable/uefirtvariable.c
> +++ b/src/uefi/uefirtvariable/uefirtvariable.c
> @@ -1345,7 +1345,7 @@ static int setvariable_test7(fwts_framework *fw)
> uint8_t datadiff = 0;
> uint32_t attr;
>
> - attr = attributes | FWTS_UEFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS | FWTS_UEFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS;
> + attr = attributes | FWTS_UEFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS | FWTS_UEFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS;
> ret = setvariable_invalidattr(fw, attr, datasize, variablenametest, >estguid1, datadiff);
> if (ret == FWTS_ERROR) {
> fwts_failed(fw, LOG_LEVEL_MEDIUM, "UEFIRuntimeSetVariable",
>
Acked-by: Colin Ian King <colin.king at canonical.com>
More information about the fwts-devel
mailing list