]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Return EFI_UNSUPPORTED if READY_TO_BOOT function is invoked at SMM runtime.
authorsfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 17 Jul 2012 08:21:42 +0000 (08:21 +0000)
committersfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 17 Jul 2012 08:21:42 +0000 (08:21 +0000)
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Dong Guo <guo.dong@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13535 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.c
SecurityPkg/VariableAuthenticated/RuntimeDxe/Variable.c
SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableSmm.c

index f11300b96a29cdd2e90c47b2f1bb277e47e3be60..0a6c872baa57788ea60cdf8b6cbe1ac105e678d5 100644 (file)
@@ -513,6 +513,10 @@ SmmVariableHandler (
       break;\r
 \r
     case SMM_VARIABLE_FUNCTION_READY_TO_BOOT:\r
+      if (AtRuntime()) {\r
+        Status = EFI_UNSUPPORTED;\r
+        break;\r
+      }\r
       ReclaimForOS ();\r
       Status = EFI_SUCCESS;\r
       break;\r
index fe7d5b93522fbc4299fa5680c9d54202f911e199..bae5f7bc45bdfa1361e659b5e7377d05c9675a02 100644 (file)
@@ -2528,8 +2528,8 @@ VariableServiceQueryVariableInfo (
 /**\r
   This function reclaims variable storage if free size is below the threshold.\r
 \r
-  Caution: This function may be invoked at SMM runtime.\r
-  Care must be taken to make sure not security issue at runtime.\r
+  Caution: This function may be invoked at SMM mode.\r
+  Care must be taken to make sure not security issue.\r
 \r
 **/\r
 VOID\r
index 8247836a635123eea0fe8ac5b1f8fdced10107dc..de0a32ee87e40e0e545d71120da37be3a531292f 100644 (file)
@@ -519,6 +519,10 @@ SmmVariableHandler (
       break;\r
 \r
     case SMM_VARIABLE_FUNCTION_READY_TO_BOOT:\r
+      if (AtRuntime()) {\r
+        Status = EFI_UNSUPPORTED;\r
+        break;\r
+      }\r
       ReclaimForOS ();\r
       Status = EFI_SUCCESS;\r
       break;\r