Feng Tian 
							
						 
					 
					
						
						
							
						
						6e1e540554 
					 
					
						
						
							
							1) Add type cast for better coding style.  
						
						... 
						
						
						
						2) replace StrCpy() usage in Variable driver with StrnCpy().
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Feng Tian <feng.tian@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15770  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-08-07 08:54:34 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Dong 
							
						 
					 
					
						
						
							
						
						4e1005eca7 
					 
					
						
						
							
							Update code to support VS2013 tool chain.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15695  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-07-28 07:52:57 +00:00 
						 
				 
			
				
					
						
							
							
								Dong Guo 
							
						 
					 
					
						
						
							
						
						9a12e5825a 
					 
					
						
						
							
							Calculate enough space for 2 variables (public key and variable data) instead of directly setting them 1 by 1.  
						
						... 
						
						
						
						Fixed a bug in public key reclaim().
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dong Guo <guo.dong@intel.com >
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Zeng, Star <star.zeng@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15404  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-03-27 10:54:23 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						b2bd493edb 
					 
					
						
						
							
							MdeModulePkg/SecurityPkg Variable: Calculate enough space for PlatformLang and Lang variables and use PcdUefiVariableDefaultLangDeprecate to turn off auto update between PlatformLang and Lang variables.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15388  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-03-25 06:56:55 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						9bc5dabb10 
					 
					
						
						
							
							MdeModulePkg/SecurityPkg Variable: Return error status to avoid inconsistency between PlatformLang and Lang.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15340  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-03-20 02:07:48 +00:00 
						 
				 
			
				
					
						
							
							
								Tian, Hot 
							
						 
					 
					
						
						
							
						
						4b738c76f5 
					 
					
						
						
							
							Fix CRLF format  
						
						... 
						
						
						
						Signed-off-by: Tian, Hot <hot.tian@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15155  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2014-01-22 08:38:50 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						128ef095b0 
					 
					
						
						
							
							MdeModulePkg and SecurityPkg Variable: Optimize the code to reduce some SMRAM consumption during variable reclaiming.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14832  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-11-12 13:31:43 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						7baf3c69c5 
					 
					
						
						
							
							MdeModulePkg and SecurityPkg Variable: Enhance code to use the new variable data instead of old variable data when variable reclaim.  
						
						... 
						
						
						
						It can fix the potential failure to return EFI_OUT_OF_RESOURCES of the second variable set of large variable.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14822  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-11-04 03:13:54 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						6675a21f14 
					 
					
						
						
							
							MdePkg/MdeModulePkg/SecurityPkg Variable: Forbid creation of non-spec variables in EFI_GLOBAL_VARIABLE namespace.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14560  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-08-19 05:16:45 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						6e67fec07f 
					 
					
						
						
							
							MdeModulePkg/SecurityPkg Variable: If a preexisting variable is rewritten with different attributes, SetVariable() shall not modify the variable and shall return EFI_INVALID_PARAMETER.  
						
						... 
						
						
						
						Two exceptions to this rule:
1. No access attributes specified
2. The only attribute differing is EFI_VARIABLE_APPEND_WRITE
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14552  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-08-16 03:19:45 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						2c4b18e095 
					 
					
						
						
							
							MdeModulePkg: Add the alignment check for FTW spare area address and length, and add the check for PcdFlashNvStorageVariableSize <= PcdFlashNvStorageFtwSpareSize.  
						
						... 
						
						
						
						Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14463  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-07-11 08:15:47 +00:00 
						 
				 
			
				
					
						
							
							
								Star Zeng 
							
						 
					 
					
						
						
							
						
						3e02ebb2bb 
					 
					
						
						
							
							MdeModulePkg: Variable drivers robustly handle crashes during Reclaim().  
						
						... 
						
						
						
						PEI variable implementation checks only the variable header signature for validity. This does not seem robust if system crash occurred during previous Reclaim() operation. If the crash occurred while FTW was rewriting the variable FV, the signature could be valid even though the rest of the FV isn't valid.
Solution: Add a FaultTolerantWritePei driver to check and provide the FTW last write status, then PEI variable and early phase(before FTW protocol ready) of DXE variable can check the status and determine if all or partial variable data has been backed up in spare block, and then use the backed up data.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14454  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-07-03 09:08:40 +00:00 
						 
				 
			
				
					
						
							
							
								Laszlo Ersek 
							
						 
					 
					
						
						
							
						
						328e5d8c19 
					 
					
						
						
							
							The list of locked variables is traversed at runtime, hence we must  
						
						... 
						
						
						
						convert the list when transferring from physical to virtual mode.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14425  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-06-17 02:30:42 +00:00 
						 
				 
			
				
					
						
							
							
								Ruiyu Ni 
							
						 
					 
					
						
						
							
						
						e4b7e2c94f 
					 
					
						
						
							
							Revert the changes made in 14403 because it incorrectly changed the EOL.  
						
						... 
						
						
						
						Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14424  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-06-17 02:18:58 +00:00 
						 
				 
			
				
					
						
							
							
								Laszlo Ersek 
							
						 
					 
					
						
						
							
						
						9199cb9c02 
					 
					
						
						
							
							The list of locked variables is traversed at runtime, hence we must  
						
						... 
						
						
						
						convert the list when transferring from physical to virtual mode.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14403  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-06-14 01:55:12 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						164a9b6752 
					 
					
						
						
							
							Fix the TOCTOU issue of CommBufferSize itself for SMM communicate handler input.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14379  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-05-21 02:22:02 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						51547bb879 
					 
					
						
						
							
							Remove the complex buffer since the _LOCK_VARIABLE won't be allowed after leaving DXE phase.  
						
						... 
						
						
						
						Add the variable name size check in the RequestToLock wrapper.
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14377  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-05-20 07:04:56 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						ff8438477f 
					 
					
						
						
							
							Add EDKII_VARIABLE_LOCK_PROTOCOL and the implementation in MdeModulePkg variable drivers.  
						
						... 
						
						
						
						Add code in BdsDxe driver to call the protocol to mark the read-only variables defined in the UEFI Spec.
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14372  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-05-17 03:49:35 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						5e5bb2a9ba 
					 
					
						
						
							
							1. Fix TOCTOU issue in VariableSmm, FtwSmm, FpdtSmm, SmmCorePerformance SMM handler. For VariableSmm, pre-allocate a mVariableBufferPayload buffer with mVariableBufferPayloadSize(match with mVariableBufferPayloadSize in VariableSmmRuntimeDxe) to hold communicate buffer payload to avoid TOCTOU issue.  
						
						... 
						
						
						
						2. Add check to ensure CommBufferPayloadSize not exceed mVariableBufferPayloadSize or is enough to hold function structure in VariableSmm and FtwSmm.
3. Align FtwGetLastWrite() in FaultTolerantWriteSmmDxe.c to FtwGetLastWrite() in FaultTolerantWrite.c.
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14325  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-05-07 05:38:32 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						9d00d20ed4 
					 
					
						
						
							
							1. Use the check IsAddressValid() to prevent SMM communication buffer overflow in SmmVariable, FtwSmm, FpdtSmm, SmmCorePerformance and SmmBaseHelper, and add check to prevent InfoSize overflows in SmmVariableHandler.  
						
						... 
						
						
						
						2. Refine the debug message.
3. Add check to make sure the input VariableName is A Null-terminated string.
4. Use local variable to hold StrSize (VariableName) to avoid duplicated StrSize calculation.
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14317  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-25 10:49:45 +00:00 
						 
				 
			
				
					
						
							
							
								czhang46 
							
						 
					 
					
						
						
							
						
						56251c669f 
					 
					
						
						
							
							Fix potential overflow for SetVariable interface  
						
						... 
						
						
						
						Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by  : Guo Dong   <dong.guo@intel.com >
Reviewed-by  : Siyuan Fu  <siyuan.fu@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14305  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-22 08:52:58 +00:00 
						 
				 
			
				
					
						
							
							
								czhang46 
							
						 
					 
					
						
						
							
						
						d17c4eac56 
					 
					
						
						
							
							Fix a potential SMM memory dump issue. If pass communication buffer with DataBuffer to SMM SetVariable which is big enough to cover SMM range. Then GetVariable can dump SMM memory contents. Add more range check for SetVariable  
						
						... 
						
						
						
						Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by  : Dong Guo   <guo.dong@intel.com >
Reviewed-by  : Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14292  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-19 01:35:02 +00:00 
						 
				 
			
				
					
						
							
							
								czhang46 
							
						 
					 
					
						
						
							
						
						3a146f2a7d 
					 
					
						
						
							
							Fix SMM Variable driver stack GetVariable return INVALID_PARAMETER when DataSize is bigger than SMM communication buffer.  
						
						... 
						
						
						
						Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by  : Dong Guo   <guo.dong@intel.com >
Reviewed-by  : Fu Siyuan  <siyuan.fu@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14276  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-15 01:56:31 +00:00 
						 
				 
			
				
					
						
							
							
								czhang46 
							
						 
					 
					
						
						
							
						
						0c55190f40 
					 
					
						
						
							
							Update SMM variable DXE driver GetNextVariable interface to comply with UEFI spec  
						
						... 
						
						
						
						VariableNameSize is the returned buffer size. GetNextVariable should behavior correct if it is bigger than SMM communication buffer or less than string size of VariableName. 
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by  : Dong Guo   <guo.dong@intel.com >
Reviewed-by  : Fu Siyuan  <siyuan.fu@intel.com >
Reviewed-by  : Zeng Star  <star.zeng@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14258  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-12 05:59:11 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						3588bb3529 
					 
					
						
						
							
							If DataSize or VariableNameSize is near MAX_ADDRESS, this can cause the computed PayLoadSize to overflow to a small value and pass the check in InitCommunicateBuffer(). To protect against this vulnerability, check DataSize and VariableNameSize to make sure PayloadSize doesn't overflow.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14252  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-04-08 06:56:08 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						0cc565deac 
					 
					
						
						
							
							Add NULL pointer check.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Eric Dong <eric.dong@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14084  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-01-25 04:48:41 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						23b0693579 
					 
					
						
						
							
							1. Update the logic of UpdateVariable() for updating variable from:  
						
						... 
						
						
						
						set old variable to IN_DELETED_TRANSITION -> check if reclaim is needed(If yes, do reclaim) -> add new variable -> set old variable to DELETED if no reclaim happened.
to:
set old variable to IN_DELETED_TRANSITION -> check if reclaim is needed(If yes, do reclaim) -> add new variable -> set old variable to DELETED.
2. Update UpdateVariable() to correctly handle the case "both ADDED and IN_DELETED_TRANSITION variable are present", and delete both old ADDED and IN_DELETED_TRANSITION variable when deleting or updating variable.
3. Update VariableServiceGetNextVariableName() to return the valid IN_DELETED_TRANSITION variable if only IN_DELETED_TRANSITION variable is present.
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14065  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-01-18 01:12:32 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						aab9212fa9 
					 
					
						
						
							
							Fix the issue that RuntimeServiceQueryVariableInfo() in VariableSmmRuntimeDxe always return EFI_SUCCESS.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14050  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-01-15 06:43:24 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						6ed1ec5946 
					 
					
						
						
							
							Add the TPL raise/restore code for VariableSmmRuntimeDxe to avoid variable services reentry.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14038  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-01-08 02:07:14 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						335e268133 
					 
					
						
						
							
							1. Don't assume that flush the HOB variable to flash must be successful.  
						
						... 
						
						
						
						2. When no DELETED variable found, no variable space could be reclaimed, so just give some debug info and return EFI_SUCCESS.
Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14029  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2013-01-04 12:21:59 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						3f5c168fa8 
					 
					
						
						
							
							Use SMM_VARIABLE_COMMUNICATE_HEADER_SIZE instead of OFFSET_OF (SMM_VARIABLE_COMMUNICATE_HEADER, Data).  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Ting Ye <ting.ye@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13993  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-12-12 14:12:49 +00:00 
						 
				 
			
				
					
						
							
							
								erictian 
							
						 
					 
					
						
						
							
						
						a326830d70 
					 
					
						
						
							
							MdeModulePkg: eliminate all implicit library dependencies for all modules in MdeModulePkg on PcdLib  
						
						... 
						
						
						
						Signed-off-by: Tian Feng <feng.tian@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13909  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-11-01 06:59:25 +00:00 
						 
				 
			
				
					
						
							
							
								erictian 
							
						 
					 
					
						
						
							
						
						d294b9a4b7 
					 
					
						
						
							
							MdeModulePkg/VariableSmm: Fix a VariableSmm bug when reading variable with size 0.  
						
						... 
						
						
						
						Signed-off-by: Tian, Feng <feng.tian@intel.com >
Reviewed-by: Zhang, Chao <chao.b.zhang@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13725  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-09-12 08:24:10 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						8f3a9e5862 
					 
					
						
						
							
							LastVariableOffset is wrongly set to 0 when FtwVariableSpace() fails. Recalculate the HwErrVariableTotalSize, HwErrVariableTotalSize and LastVariableOffset when FtwVariableSpace() fails.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13593  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-08-06 03:20:10 +00:00 
						 
				 
			
				
					
						
							
							
								sfu5 
							
						 
					 
					
						
						
							
						
						876ac39540 
					 
					
						
						
							
							Return EFI_UNSUPPORTED if READY_TO_BOOT function is invoked at SMM runtime.  
						
						... 
						
						
						
						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 
						
						
					 
					
						2012-07-17 08:21:42 +00:00 
						 
				 
			
				
					
						
							
							
								sfu5 
							
						 
					 
					
						
						
							
						
						eb96e4f281 
					 
					
						
						
							
							Fix a buffer overflow bug in VariableSmm driver.  
						
						... 
						
						
						
						Signed-off-by: Fu Siyuan <siyuan.fu@intel.com >
Reviewed-by: Dong Guo <guo.dong@intel.com >
Reviewed-by: Zhang, Chao <chao.b.zhang@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13534  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-07-17 08:07:29 +00:00 
						 
				 
			
				
					
						
							
							
								czhang46 
							
						 
					 
					
						
						
							
						
						2445a70e62 
					 
					
						
						
							
							Add SMRAM range check to variable SMM SMI handler.  
						
						... 
						
						
						
						Signed-off-by: Chao Zhang <chao.b.zhang@intel.com >
Reviewed-by: Fu, Siyuan<siyuan.fu@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13530  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-07-13 05:15:06 +00:00 
						 
				 
			
				
					
						
							
							
								ydong10 
							
						 
					 
					
						
						
							
						
						96277f7402 
					 
					
						
						
							
							Include read data buffer in CommBufferSize when calculate the buffer size.  
						
						... 
						
						
						
						Signed-off-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13512  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-07-09 02:03:47 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						a5f15e3025 
					 
					
						
						
							
							According to UEFI spec 2.3.1a. hardware error record variable should use the EFI_HARDWARE_ERROR_VARIABLE VendorGuid and have the L"HwErrRec####" name convention, #### is a printed hex value and no 0x or h is included in the hex value.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13373  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-05-30 02:53:10 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						021a1af927 
					 
					
						
						
							
							Return EFI_WRITE_PROTECTED when setting HwErrRecSupport Global Variable at runtime.  
						
						... 
						
						
						
						Signed-off-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13372  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-05-30 02:42:26 +00:00 
						 
				 
			
				
					
						
							
							
								lzeng14 
							
						 
					 
					
						
						
							
						
						9622df63df 
					 
					
						
						
							
							If setting variable in Runtime and there has been a same GUID and name variable existed in system without RT attribute, return EFI_WRITE_PROTECTED.  
						
						... 
						
						
						
						Signed-off-by: lzeng14
Reviewed-by: tye
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13156  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2012-03-30 07:19:44 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						222f8505cb 
					 
					
						
						
							
							Missing declaration of the GUID gEfiSystemNvDataFvGuid.  
						
						... 
						
						
						
						Signed-off-by: oliviermartin
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12837  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-12-13 06:00:27 +00:00 
						 
				 
			
				
					
						
							
							
								oliviermartin 
							
						 
					 
					
						
						
							
						
						d65502601e 
					 
					
						
						
							
							MdeModulePkg/Variable: Check if there is a NV Variable Storage header prior to use its attributes  
						
						... 
						
						
						
						The Variable PEI and RuntimeDxe drivers were using the attribute 'HeaderLength' of
EFI_FIRMWARE_VOLUME_HEADER without checking if a Firmware Volume Header was existing at
the base address.
In case the Firmware Volume Header does not exist or is corrupted, the attribute 'HeaderLength'
is a non valid value that can lead to a non valid physical address when accessing produces an
access error.
Signed-off-by: oliviermartin
Reviewed-by: niruiyu
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12836  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-12-12 19:00:59 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						f68af18ee9 
					 
					
						
						
							
							Support Variable driver (EmuRuntimeDxe) to support the default variable data stored in HOB.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12553  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-19 09:30:43 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						e3d5b59a65 
					 
					
						
						
							
							Fix GCC build failure.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12546  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-18 07:12:35 +00:00 
						 
				 
			
				
					
						
							
							
								niruiyu 
							
						 
					 
					
						
						
							
						
						0f7aff7249 
					 
					
						
						
							
							Change Variable driver (Pei/RuntimeDxe) to support the default variable data stored in HOB.  
						
						... 
						
						
						
						Signed-off-by: niruiyu
Reviewed-by: erictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12538  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-10-14 05:19:39 +00:00 
						 
				 
			
				
					
						
							
							
								erictian 
							
						 
					 
					
						
						
							
						
						3b4253677e 
					 
					
						
						
							
							Solve a wrong pointer reference in QueryVariableInfo().  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11593  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-04-27 05:43:09 +00:00 
						 
				 
			
				
					
						
							
							
								gdong1 
							
						 
					 
					
						
						
							
						
						d00ed85e0a 
					 
					
						
						
							
							Puts SMM variable common definitions in SmmVariableCommon.h.  
						
						... 
						
						
						
						Fixed a bug that SMM_VARIABLE_COMMUNICATE_VARIABLE_INFO_ENTRY was misused as SMM_VARIABLE_COMMUNICATE_QUERY_VARIABLE_INFO.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11339  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-02-28 07:31:45 +00:00 
						 
				 
			
				
					
						
							
							
								erictian 
							
						 
					 
					
						
						
							
						
						b7bc11a4ff 
					 
					
						
						
							
							correct Intel's copyright date as the changes checked-in at r11273 & r11272 are contributed by third party.  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11311  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-02-12 03:29:24 +00:00 
						 
				 
			
				
					
						
							
							
								erictian 
							
						 
					 
					
						
						
							
						
						d9303576cd 
					 
					
						
						
							
							fix word typo  
						
						... 
						
						
						
						git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11273  6f19259b-4bc3-4df7-8a09-765794883524 
						
						
					 
					
						2011-01-26 04:30:22 +00:00