Liming:
Thank you for pointing this. I will take a look at it.

On Wed, 2013-03-06 at 14:25 +0000, Gao, Liming wrote:
> Mike:
>   DxeServicesLib wraps FV protocol services and simplifies Caller usage to 
> get section data. Your usage is more align to FV protocol services. So, I 
> suggest that you directly call FV protocol->ReadSection() to do it.
> 
> Thanks
> Liming
> -----Original Message-----
> From: Mike Maslenkin [mailto:[email protected]] 
> Sent: Friday, March 01, 2013 4:54 PM
> To: [email protected]
> Cc: Mike Maslenkin
> Subject: [edk2] [RFC]]PATCH 0/2] MdePkg: Allow to read section data into a 
> buffer allocated by caller
> 
> Dear  MdePkg Maintainer,
> 
> Currently MdePkg/DxeServicesLib does not allow to pass pointer to allocated 
> buffer to read firmware section to. Is there any reason for that?
> This prevents from concatenation of several sections within continuous memory 
> area without additional copy operation.
> Please find the attached patches that fix this issue.
> 
> Since InternalGetSectionFromFv() explicitly reinitializes to NULL pointer to 
> buffer patch 1/2 introduced an additional parameter (BOOLEAN Allocate) that 
> prevents from that.
> 
> A new function GetSectionFromFvToBuffer() was introduced in patch 2/2.
> This function acts as GetSectionFromFv() but uses Allocate=FALSE flag passed 
> to InternalGetSectionFromFv() so it does not reinitializes to NULL pointers 
> to Buffer and Size explicitly.
> 
> An implementation of a new function was required because simple grepping 
> showed that uninitialized pointers could be passed to GetSectionFromFv() 
> according to its original description. Here is that calls:
> ./SecurityPkg/Tcg/TcgSmm/TcgSmm.c:303:  Status = GetSectionFromFv (
> ./OvmfPkg/Csm/CsmSupportLib/LegacyPlatform.c:795:        Status = 
> GetSectionFromFv (
> ./MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c:877:  Status = 
> GetSectionFromAnyFvByFileType (
> ./MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/ScriptExecute.c:249: 
> Status = GetSectionFromAnyFv  (
> ./EdkCompatibilityPkg/Compatibility/BootScriptSaveOnS3SaveStateThunk/ScriptSave.c:844:
>     Status = GetSectionFromAnyFv
> 
> Signed-off-by: Mike Maslenkin <[email protected]>
> 
> 



------------------------------------------------------------------------------
Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester  
Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the  
endpoint security space. For insight on selecting the right partner to 
tackle endpoint security challenges, access the full report. 
http://p.sf.net/sfu/symantec-dev2dev
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to