]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Variable/RuntimeDxe/PrivilegePolymorphic.h
MdeModulePkg/Variable/RuntimeDxe: move MOR func. declarations to header
[mirror_edk2.git] / MdeModulePkg / Universal / Variable / RuntimeDxe / PrivilegePolymorphic.h
index 0aa0d4f48f10a08db1dd7acac30fa2b21b44b52a..cf0d237195781db7a8a8341c4ccb03827fa3b6f6 100644 (file)
@@ -35,4 +35,43 @@ SecureBootHook (
   IN EFI_GUID                               *VendorGuid\r
   );\r
 \r
+/**\r
+  Initialization for MOR Control Lock.\r
+\r
+  @retval EFI_SUCCESS     MorLock initialization success.\r
+  @return Others          Some error occurs.\r
+**/\r
+EFI_STATUS\r
+MorLockInit (\r
+  VOID\r
+  );\r
+\r
+/**\r
+  This service is an MOR/MorLock checker handler for the SetVariable().\r
+\r
+  @param[in]  VariableName the name of the vendor's variable, as a\r
+                           Null-Terminated Unicode String\r
+  @param[in]  VendorGuid   Unify identifier for vendor.\r
+  @param[in]  Attributes   Attributes bitmask to set for the variable.\r
+  @param[in]  DataSize     The size in bytes of Data-Buffer.\r
+  @param[in]  Data         Point to the content of the variable.\r
+\r
+  @retval  EFI_SUCCESS            The MOR/MorLock check pass, and Variable\r
+                                  driver can store the variable data.\r
+  @retval  EFI_INVALID_PARAMETER  The MOR/MorLock data or data size or\r
+                                  attributes is not allowed for MOR variable.\r
+  @retval  EFI_ACCESS_DENIED      The MOR/MorLock is locked.\r
+  @retval  EFI_ALREADY_STARTED    The MorLock variable is handled inside this\r
+                                  function. Variable driver can just return\r
+                                  EFI_SUCCESS.\r
+**/\r
+EFI_STATUS\r
+SetVariableCheckHandlerMor (\r
+  IN CHAR16     *VariableName,\r
+  IN EFI_GUID   *VendorGuid,\r
+  IN UINT32     Attributes,\r
+  IN UINTN      DataSize,\r
+  IN VOID       *Data\r
+  );\r
+\r
 #endif\r