variable driver doesn't support EFI_AUTHENTICATED_WRITE_ACCESS. we use:
authorerictian <erictian@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 18 Mar 2010 08:57:05 +0000 (08:57 +0000)
committererictian <erictian@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 18 Mar 2010 08:57:05 +0000 (08:57 +0000)
1. EFI_INVALID_PARAMETER as a return value of SetVariable() to indicate it does not support this feature.
2. EFI_NOT_FOUND will be a return value of QueryVariableInfo() to indicate it does not support this feature.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk@10280 6f19259b-4bc3-4df7-8a09-765794883524

edk2/DuetPkg/FSVariable/FSVariable.c

index 2298e4e..dab8c89 100644 (file)
@@ -1292,6 +1292,13 @@ Returns:
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
+  //\r
+  // Not support authenticated variable write yet.\r
+  //\r
+  if ((Attributes & EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS) != 0) {\r
+    return EFI_INVALID_PARAMETER;\r
+  }\r
+\r
   //\r
   //  Make sure if runtime bit is set, boot service bit is set also\r
   //\r
@@ -1390,8 +1397,7 @@ Returns:
     // Make sure the Attributes combination is supported by the platform.\r
     //\r
     return EFI_UNSUPPORTED;  \r
-  }  \r
-  else if ((Attributes & (EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS)) == EFI_VARIABLE_RUNTIME_ACCESS) {\r
+  } else if ((Attributes & (EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_BOOTSERVICE_ACCESS)) == EFI_VARIABLE_RUNTIME_ACCESS) {\r
     //\r
     // Make sure if runtime bit is set, boot service bit is set also.\r
     //\r
@@ -1406,6 +1412,11 @@ Returns:
     // Make sure Hw Attribute is set with NV.\r
     //\r
     return EFI_INVALID_PARAMETER;\r
+  } else if ((Attributes & EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS) != 0) {\r
+    //\r
+    // Not support authentiated variable write yet.\r
+    //\r
+    return EFI_UNSUPPORTED;\r
   }\r
   \r
   VariableStoreHeader = (VARIABLE_STORE_HEADER *) mGlobal->VariableBase[\r