public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
To: Eric Jin <eric.jin@intel.com>, edk2-devel@lists.01.org
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
Subject: Re: [PATCH] uefi-sct/SctPkg:Add conformance test cases for deprecated EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS attribute.
Date: Mon, 15 Oct 2018 03:46:38 +0100	[thread overview]
Message-ID: <14e09b08-f90f-5b7a-5c04-54aa490562bf@arm.com> (raw)
In-Reply-To: <20181013151936.15784-1-eric.jin@intel.com>

Reviewed-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>

If the commit message is broken down into multiple lines less than 80 cols.


On 10/13/2018 04:19 PM, Eric Jin wrote:
> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
> Cc: Jiaxin Wu <jiaxin.wu@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Eric Jin <eric.jin@intel.com>
> ---
>   .../AuthVariableServicesBBTestConformance.c   | 143 ++++++++++++++----
>   .../VariableServices/BlackBoxTest/Guid.c      |   6 +-
>   .../VariableServices/BlackBoxTest/Guid.h      |  11 +-
>   3 files changed, 132 insertions(+), 28 deletions(-)
>
> diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/AuthVariableServicesBBTestConformance.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/AuthVariableServicesBBTestConformance.c
> index 05281054..a1d1c4c3 100644
> --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/AuthVariableServicesBBTestConformance.c
> +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/AuthVariableServicesBBTestConformance.c
> @@ -1,7 +1,7 @@
>   /** @file
>   
>     Copyright 2006 - 2012 Unified EFI, Inc.<BR>
> -  Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
>   
>     This program and the accompanying materials
>     are licensed and made available under the terms and conditions of the BSD License
> @@ -151,6 +151,44 @@ AuthVariableDERConfTest (
>     EFI_TEST_LOGGING_LIBRARY_PROTOCOL   *LoggingLib;
>     UINT32                              Attr;
>     EFI_TEST_ASSERTION                  Result;
> +  UINTN                               Index;
> +  UINTN                               MaximumVariableStorageSize;
> +  UINTN                               RemainingVariableStorageSize;
> +  UINTN                               MaximumVariableSize;
> +  UINT32                              AttrArray[] = {
> +    //
> +    //  For 1 attribute.
> +    //
> +    EFI_VARIABLE_NON_VOLATILE,
> +    EFI_VARIABLE_RUNTIME_ACCESS,
> +    EFI_VARIABLE_BOOTSERVICE_ACCESS,
> +    EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +
> +    //
> +    //  For 2 attributes.
> +    //
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_RUNTIME_ACCESS,
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +
> +    EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS,
> +    EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +
> +    EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +
> +    //
> +    //  For 3 attributes.
> +    //
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS,
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +    EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +
> +    //
> +    //  For 4 attributes.
> +    //
> +    EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS,
> +  };
>   
>     Status = GetTestSupportLibrary (
>                SupportHandle,
> @@ -192,33 +230,86 @@ AuthVariableDERConfTest (
>                    Status
>                    );
>   
> -  Attr = EFI_VARIABLE_NON_VOLATILE |
> -         EFI_VARIABLE_RUNTIME_ACCESS |
> -         EFI_VARIABLE_BOOTSERVICE_ACCESS |
> -         EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS;
> +  for (Index = 0; Index < sizeof (AttrArray) / sizeof (AttrArray[0]); Index = Index + 1) {
> +    Attr = AttrArray[Index];
> +    Attr |= EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS;
> +
> +    Status = RT->SetVariable (
> +                   L"AuthVarDER",
> +                   &mVarVendorGuid,
> +                   Attr,
> +                   sizeof (mValidAuthVarDERCreate),
> +                   (VOID *) mValidAuthVarDERCreate
> +                   );
> +    if (Status == EFI_UNSUPPORTED) {
> +      Result = EFI_TEST_ASSERTION_PASSED;
> +    } else {
> +      Result = EFI_TEST_ASSERTION_FAILED;
> +    }
> +
> +    StandardLib->RecordAssertion (
> +                   StandardLib,
> +                   Result,
> +                   gVariableServicesBbTestConformanceAssertionGuid020,
> +                   L"RT.SetVariable - Set Auth Variable with valid cert.",
> +                   L"Attributes = Array[%d]. %a:%d:Status - %r",
> +                   Index,
> +                   __FILE__,
> +                   (UINTN)__LINE__,
> +                   Status
> +                   );
> +
> +    Status = RT->SetVariable (
> +                   L"AuthVarDER",
> +                   &mVarVendorGuid,
> +                   Attr,
> +                   sizeof (mInvalidAuthVarDERCreate),
> +                   (VOID *) mInvalidAuthVarDERCreate
> +                   );
> +    if (Status == EFI_UNSUPPORTED) {
> +      Result = EFI_TEST_ASSERTION_PASSED;
> +    } else {
> +      Result = EFI_TEST_ASSERTION_FAILED;
> +    }
> +
> +    StandardLib->RecordAssertion (
> +                   StandardLib,
> +                   Result,
> +                   gVariableServicesBbTestConformanceAssertionGuid023,
> +                   L"RT.SetVariable - Set Auth Variable with invalid cert.",
> +                   L"Attributes = Array[%d]. %a:%d:Status - %r",
> +                   Index,
> +                   __FILE__,
> +                   (UINTN)__LINE__,
> +                   Status
> +                   );
> +
> +    Status = RT->QueryVariableInfo (
> +                   Attr,
> +                   &MaximumVariableStorageSize,
> +                   &RemainingVariableStorageSize,
> +                   &MaximumVariableSize
> +                   );
> +
> +    if (Status == EFI_UNSUPPORTED) {
> +      Result = EFI_TEST_ASSERTION_PASSED;
> +    } else {
> +      Result = EFI_TEST_ASSERTION_FAILED;
> +    }
> +
> +    StandardLib->RecordAssertion (
> +                   StandardLib,
> +                   Result,
> +                   gVariableServicesBbTestConformanceAssertionGuid024,
> +                   L"RT.QueryVariableInfo - Query Auth Variable.",
> +                   L"Attributes = Array[%d]. %a:%d:Status - %r",
> +                   Index,
> +                   __FILE__,
> +                   (UINTN)__LINE__,
> +                   Status
> +                   );
>   
> -  Status = RT->SetVariable(
> -                 L"AuthVarDER",
> -                 &mVarVendorGuid,
> -                 Attr,
> -                 sizeof(mValidAuthVarDERCreate),
> -                 (VOID*) mValidAuthVarDERCreate
> -                 );
> -  if (Status == EFI_SECURITY_VIOLATION) {
> -    Result = EFI_TEST_ASSERTION_PASSED;
> -  } else {
> -    Result = EFI_TEST_ASSERTION_FAILED;
>     }
> -  StandardLib->RecordAssertion (
> -                 StandardLib,
> -                 Result,
> -                 gVariableServicesBbTestConformanceAssertionGuid020,
> -                 L"RT.SetVariable - Set Auth Variable with invalid Attr",
> -                 L"%a:%d:Status - %r",
> -                 __FILE__,
> -                 (UINTN)__LINE__,
> -                 Status
> -                 );
>   
>     return EFI_SUCCESS;
>   }
> diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.c
> index 6e14012a..4bbbb6e8 100644
> --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.c
> +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.c
> @@ -1,7 +1,7 @@
>   /** @file
>   
>     Copyright 2006 - 2016 Unified EFI, Inc.<BR>
> -  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
>   
>     This program and the accompanying materials
>     are licensed and made available under the terms and conditions of the BSD License
> @@ -84,6 +84,10 @@ EFI_GUID gVariableServicesBbTestConformanceAssertionGuid021 = EFI_TEST_VARIABLES
>   
>   EFI_GUID gVariableServicesBbTestConformanceAssertionGuid022 = EFI_TEST_VARIABLESERVICESBBTESTCONFORMANCE_ASSERTION_022_GUID;
>   
> +EFI_GUID gVariableServicesBbTestConformanceAssertionGuid023 = EFI_TEST_VARIABLESERVICESBBTESTCONFORMANCE_ASSERTION_023_GUID;
> +
> +EFI_GUID gVariableServicesBbTestConformanceAssertionGuid024 = EFI_TEST_VARIABLESERVICESBBTESTCONFORMANCE_ASSERTION_024_GUID;
> +
>   EFI_GUID gVariableServicesBbTestFunctionAssertionGuid001 = EFI_TEST_VARIABLESERVICESBBTESTFUNCTION_ASSERTION_001_GUID;
>   
>   EFI_GUID gVariableServicesBbTestFunctionAssertionGuid002 = EFI_TEST_VARIABLESERVICESBBTESTFUNCTION_ASSERTION_002_GUID;
> diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.h b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.h
> index 1d213905..4e43fbc9 100644
> --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.h
> +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/RuntimeServices/VariableServices/BlackBoxTest/Guid.h
> @@ -1,7 +1,7 @@
>   /** @file
>   
>     Copyright 2006 - 2016 Unified EFI, Inc.<BR>
> -  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
>   
>     This program and the accompanying materials
>     are licensed and made available under the terms and conditions of the BSD License
> @@ -167,6 +167,15 @@ extern EFI_GUID gVariableServicesBbTestConformanceAssertionGuid021;
>   
>   extern EFI_GUID gVariableServicesBbTestConformanceAssertionGuid022;
>   
> +#define EFI_TEST_VARIABLESERVICESBBTESTCONFORMANCE_ASSERTION_023_GUID \
> +{ 0x55af8fad, 0x1b12, 0x45ad, { 0xb0, 0x42, 0xa6, 0x43, 0x96, 0x2f, 0x4, 0x70 }}
> +
> +extern EFI_GUID gVariableServicesBbTestConformanceAssertionGuid023;
> +
> +#define EFI_TEST_VARIABLESERVICESBBTESTCONFORMANCE_ASSERTION_024_GUID \
> +{ 0x6d0740fb, 0x388a, 0x491f, { 0xb8, 0x18, 0x9b, 0x5c, 0xb5, 0x17, 0xf, 0x95 }}
> +
> +extern EFI_GUID gVariableServicesBbTestConformanceAssertionGuid024;
>   
>   
>   #define EFI_TEST_VARIABLESERVICESBBTESTFUNCTION_ASSERTION_001_GUID \



  reply	other threads:[~2018-10-16  9:48 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-13 15:19 [PATCH] uefi-sct/SctPkg:Add conformance test cases for deprecated EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS attribute Eric Jin
2018-10-15  2:46 ` Supreeth Venkatesh [this message]
2018-10-15 13:09   ` Supreeth Venkatesh
2018-10-16  2:28 ` Leif Lindholm
2018-10-17 12:04   ` Laszlo Ersek
2018-10-26 11:50     ` Leif Lindholm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=14e09b08-f90f-5b7a-5c04-54aa490562bf@arm.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox