Commit Graph

18 Commits

Author SHA1 Message Date
Hao Wu 9c0e4db3db IntelFrameworkPkg/UefiLib: Avoid mis-calculate of graphic console size
The commit adds check in function InternalPrintGraphic() to ensure that
the expression:

Blt->Width * Blt->Height * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)

will not overflow in the UINTN range.

The commit also adds an explicit UINT32 type cast for 'Blt->Width' to
avoid possible overflow in the int range for:

Blt->Width * Blt->Height

Since both Blt->Width and Blt->Height are of type UINT16. They will be
promoted to int (signed) first, and then perform the multiplication
operation. If the result of multiplication between Blt->Width and
Blt->Height exceeds the range of type int, a potential incorrect size will
be passed into function AllocateZeroPool().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
2017-04-14 13:16:12 +08:00
Hao Wu dba2756893 IntelFrameworkPkg FrameworkUefiLib: Fix wrong DestMax passed to StrCpyS()
The second parameter 'DestMax' of StrCpyS() should be the number of
unicode characters, not the size in bytes.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18159 6f19259b-4bc3-4df7-8a09-765794883524
2015-08-05 02:55:05 +00:00
Hao Wu 4129b837ae IntelFrameworkPkg FrameworkUefiLib: Fix ASSERT in CatVSPrint
This commit will resolve issue brought by r17740.

BufferToReturn = AllocateCopyPool(SizeRequired, String);

The above using of AllocateCopyPool() will cause ASSERT if 'String' is
NULL. Therefore, proper check for 'String' is needed.

The above using of AllocateCopyPool() will read contents out of the scope
of 'String'. Potential risk for 'String' allocated at the boundary of
memory region.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17906 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-10 01:08:05 +00:00
Hao Wu 01a5dd0b26 IntelFrameworkPkg FrameworkUefiLib: Use safe string functions
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17740 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-30 06:28:57 +00:00
lgao4 b0855f925c Update FrameworkUefiLib library instance to implement the missing CatSPrint() and CatVSPrint() API.
Signed-off-by: lgao4
Reviewed-by: rsun3

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13070 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-29 04:57:44 +00:00
rsun3 3bbe68a362 Add Missing invocations to VA_END() for VA_START().
Signed-off-by: rsun3
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12979 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-01 06:06:08 +00:00
mdkinney 4ea439fb1d Sync FrameworkUefiLib with the MdePkg UefiLib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10583 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-14 23:32:07 +00:00
hhtian 2b3687dbb5 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10404 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23 15:52:13 +00:00
eric_tian 57b201b843 update the file description of PrintXY and AsciiPrintXY. and also refine the implementation to return the number of actual printed characters.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8373 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-21 10:04:21 +00:00
eric_tian 619e4c06c3 update the implementation of InternalPrintGraphic to reflect the number of actual printed character
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8370 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-21 09:27:29 +00:00
qhuang8 e115460bd7 sync Print functions with MdePkg counterpart.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8093 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-15 14:32:10 +00:00
gdong1 4af947e5ca Add PCD to save size.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7932 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-24 08:43:54 +00:00
gdong1 5547062df5 Fixed two K8 report issue
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7929 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-24 06:53:26 +00:00
gdong1 e681318906 In Comment, the parameter name does NOT consistent with function parameter name
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7102 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-23 09:45:45 +00:00
qhuang8 bf428cb388 Sync UefiLib instance in IntelFrameworkPkg with the one in MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6797 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-01 14:42:26 +00:00
qwang12 00a1f55295 Update doxygen comment for VarArg list.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6621 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-19 03:24:44 +00:00
jji4 df1f748c87 Patch to remove STATIC modifier. This is on longer recommended by EFI Framework coding style. All duplicated symbols has been renamed accordingly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6297 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-30 06:06:07 +00:00
klu2 8e5b17b25e Update following library class/Protocol for puting 'Framework' as prefix
FrameworkHii
FrameworkFormBrowser
FrameworkFormCallback
FrameworkIfrSupportLib

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4196 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-22 09:36:00 +00:00