Commit Graph

52 Commits

Author SHA1 Message Date
ydong10 ba944801a9 Fixed memory leak and buffer overrun for string op-code.
Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12213 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-26 01:54:49 +00:00
ydong10 cce6230ffb Change the HiiDataBase and browser codes to support new efi varstore data structure.
Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12009 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-12 07:24:36 +00:00
ydong10 8ca6180f21 Enable new "ref5" opcode in browser.
Signed-off-by:ydong10
Reviewed-by:lgao4






git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11913 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28 06:41:28 +00:00
ydong10 4f33c8384d Restore the whole form set to default value when user enter F9, old logical only for form level.
Signed-off-by:ydong10
Reviewed-by:lgao4






git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11911 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28 05:01:49 +00:00
ydong10 0194d26cb8 1. When get value from AltCfg data, check the varstore type first.
2. Check the pointer's validation before using it.

Signed-off-by:ydong10
Reviewed-by:lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11816 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-13 05:20:23 +00:00
ydong10 b00964a999 Add new "Modal form" opcode, also add sample code to use it.
Signed-off-by: ydong10
Reviewed-by: lgao4







git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11764 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-08 07:27:39 +00:00
ydong10 b18e705046 Add new call back return value; also add some sample code to use it.
Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11713 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-31 00:59:15 +00:00
ydong10 ee31d1be52 Add two new methods to get default value, also add sample code in sample driver.
Add sample code to use time opcode

Signed-off-by:  ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11688 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-20 02:58:35 +00:00
lgao4 cf4c5a4270 Use the minimum value for Numeric and the first option value for OneOf as their default value when no specific default value is specified.
HII IFR Numeric and OneOf opcode may not specify their default value in opcode. And, zero may not be valid value for them. To make sure the valid value is set to default value, the minimum value for Numeric and the first option value for OneOf will be chosen as default value. 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11497 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-01 09:39:11 +00:00
lgao4 5697f8738b Reserve more space width for Option value.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11401 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-15 06:35:57 +00:00
ydong10 e2100bfa65 1. Support inconsistent if opcode used in string/password opcode.
2. Add sample code of using inconsistent if opcode in string opcode.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11196 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-23 06:47:50 +00:00
lgao4 f7a14a9b99 Correct Data type conversion.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10981 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-26 03:28:44 +00:00
lgao4 512122dc89 Reserve one column at left screen to be more visually.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10978 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-25 05:35:56 +00:00
lgao4 13ad1def34 Do the following fix up in SetupBrowser driver:
1)  Check whether ConfigAccess is NULL before use it.
  2)  Don't do call back for UI_ACTION_REFRESH_FORMSET action.
  3)  Release resource before leave SetupBrowser() function.
  4)  Use the unified check method (HiiHandle, FormsetGuid and FormId) to check FORM is open or close.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10565 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-04 01:29:03 +00:00
lgao4 5adb8db71e Per UEFI spec, FORM_OPEN/FORM_CLOSE Callback function should be called for each question in the form when this form opens or closes.
Update SetupBrowser driver to call Callback function (FORM_OPEN/FORM_CLOSE) based on UEFI spec, and update all EDKII HII drivers to correctly handle FORM_OPEN and FORM_CLOSE call back. 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10560 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-02 02:05:47 +00:00
hhtian e5eed7d364 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10418 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:33:45 +00:00
lgao4 2573712e01 Enhance SetupBrowser to support new UEFI HiiFormMap feature
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10069 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 10:10:59 +00:00
xdu2 1b2bf3cadc Add some security check.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9934 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-05 06:13:18 +00:00
lgao4 d228526f93 Add support to original EFI_IFR_FORM_SET in initial UEFI2.1 spec. Now, it has been updated to new one in UEFI2.1D.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9906 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 01:38:00 +00:00
lgao4 e55e1d13bf Correct copyright year to 2010
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9687 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-07 09:36:09 +00:00
lgao4 4024517599 Enable SetupBrowser to support multiple form class guid.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9680 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-06 06:41:09 +00:00
xdu2 2bb526f3da Add newly added global to Browser Context.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9443 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-18 05:28:31 +00:00
lgao4 eccfeab1ca Invoke EFI_BROWSER_ACTION_RETRIEVE callback when read EfiVarstore question.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9425 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-13 06:46:59 +00:00
lgao4 0c66bc762a Add SuppressIf form support in SetupBrowser driver.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9417 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-12 01:16:12 +00:00
xdu2 f5006bd99e Update SetupBrowser to support call to SendForm() by specify a formset class GUID with input parameter FormsetGuid.
With this update, SendForm() could support formset class GUID other than EFI_HII_PLATFORM_SETUP_FORMSET_GUID, for example, the EFI_HII_DRIVER_HEALTH_FORMSET_GUID.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9369 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 07:44:10 +00:00
xdu2 ce6d12cce0 Support call of SendForm() from Callback(), i.e. nested call of SendForm().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9364 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 03:06:06 +00:00
xdu2 8b0fc5c1e1 1. Code clean up: add IN/OUT modifier for parameters.
2. UI enchancement: if there is no editable item in a Form, the F9/F10 will not be displayed in the footer.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9363 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 03:05:16 +00:00
xdu2 d02847d3c0 Add support for newly defined VarStore type EFI_IFR_TYPE_UNDEFINED, EFI_IFR_TYPE_ACTION and EFI_IFR_TYPE_BUFFER in UEFI spec.
Note: with this update, the limitation for "OrderedList should use array of data type UINT8 as its storage" is removed; now OrderedList could use any data type (UINT8/UINT16/UINT32/UINT64) as its storage array.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9360 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 03:03:47 +00:00
xdu2 d66e6c1687 Change the FormBrowser behavior of "Pressing ESC":
The old behavior is: if press ESC, it will exit the whole Formset.
The new behavior is: if press ESC, it will return to the parent Form; if current Form is the root Form of a FormSet, it will exit the whole FormSet.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9359 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 03:03:12 +00:00
lgao4 086cd2c8e9 Correct DriverSample ConfigAcess protocol ExtractConfig interface.
Correct SetupBrowser to set default value for default sting ID.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8660 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-25 09:08:30 +00:00
rsun3 0e8e994db3 Update SetupBrowserDxe and BdsDxe to use an internal string for prompting string missing instead of ASSERT if it fails to get a string for separate module's forms.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8263 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-08 05:55:25 +00:00
lgao4 7da7367655 Fix ICC build break.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8158 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-23 07:30:09 +00:00
lgao4 0a1147ed7a Update SetUp Browser doesn't set a default value to Numeric field per UEFI spec. And Update Setup Browser driver parse the introduced IFR FormSet classguid in UEFI2.1.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8146 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-22 03:18:37 +00:00
rsun3 cb7d01c0c9 HII Library Class interface refine.
The "HiiLib" prefix for all HII Library API function names changed to "Hii".

Remove: 
  HiiLibPreparePackageList(), replaced by HiiAddPackages()
  HiiLibNewString(), replaced by HiiSetString()
  HiiLibGetStringFromHandle(), replaced by HiiGetString()
  HiiLibGetStringFromToken(), replaced by HiiGetPackageString()
  HiiLibExtractGuidFromHiiHandle()
  HiiLibDevicePathToHiiHandle()
  HiiLibGetSupportedSecondaryLanguages()
  HiiLibGetSupportedLanguageNumber()
  HiiLibExportPackageLists()
  HiiLibListPackageLists()
  
Interface change:
  HiiAddPackages()
  HiiSetString()
  HiiGetString()
  HiiGetHiiHandles()

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8083 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-14 10:47:19 +00:00
lgao4 634303c96f Fix error when replace HexStringToBuf
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8047 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-09 08:19:40 +00:00
lgao4 63d55bb98a Replace BufToHexString by UnicodeValueToString
Replace HexStringToBuf by StrHexToUint64

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8034 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-08 00:56:51 +00:00
rsun3 f6f910dd12 Retire Extended HII library class.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8011 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-02 08:48:03 +00:00
vanjeff 6c822f41fc remove clean console control protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7919 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-22 04:09:51 +00:00
qhuang8 bb9153a122 Split the Print functionality from SetupBrowserDxe. Platform should use PrintDxe to produces Print2 Protocol and PrintThunk for Edk Print protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7572 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 03:05:23 +00:00
vanjeff db0bd81c85 enhanced security check.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7516 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-13 03:36:02 +00:00
vanjeff 519f076a47 1.retried graphics library class from MdePkg
2.retried graphics library instance from MdeModulePkg
3.Move EnableQuietBoot(), DisableQuietBoot() and LockKeyboards() into GenericBdsLib

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6691 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-24 05:49:59 +00:00
qwang12 f4113e1fdb 1) Remove the variable initalization in declaration.
2) Change all gBS->FreePool to use the MdePkg/BaseLib's FreePool.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6662 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-21 06:59:58 +00:00
qwang12 8d00a0f195 Sync in bug fix from EDK I:
1) issue with setup browser and IFR refresh opcode
2) [HII]HIIConfigRoutingExportConfig generate error format of <MultiConfigAltResp>
3) [HII] ConfigRouting->ExtractConfig() will cause overflow
4) [Hii Database] EFI_HII_DATABASE_NOTIFY should be invoked when a string package is created internally when a new String Token is created
5) [PT]HIIConfigAccessProtocolTest fail on NT32uefi
6) Incorrect HII package types in EDK

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6378 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-04 14:28:08 +00:00
qwang12 676df92c2c Remove SafeFreePool from MemoryAllocationLib as this API's name is misleading. Its implementation only check if a pointer is NULL. If a garbage pointer is passed in, the gBS->FreePool will still ASSERT in debug build and return error code.
It is recommended that module writer should keep track how a pointer is allocated and free it after use.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6306 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-30 07:32:46 +00:00
qwang12 ebe43565f9 Merged in the bug fixes from EDK I.
*** Press F9 in Uefi64 FrontPage shouldnot enter sub-menu 
** [FT] Some UI error on multiple platforms on framework_20080811
** [FT] UI test of How tall are you(Hex) on framework_20080811


To improve backward compatibility, add gEfiPrint2ProtocolGuid and rename gEfiPrintProtocolGuid to the previous GUID value used in EDK I. gEfiPrint2ProtocolGuid is a enhanced version of gEfiPrintProtocolGuid.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5768 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-02 01:23:52 +00:00
qwang12 e8e36190f4 Merge in [EDK 1166]: Form title is not displayed by Setup Browser
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5664 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-18 07:57:01 +00:00
lgao4 f02d0c0fe9 Add comments to MdeModulePkg.dec, Correct minor comments for other files and Add new guided IFR opcode to framework option key value.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5581 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-28 05:51:09 +00:00
qwang12 7936fb6a1f Clean up SetupBrowserDxe for Doxygen comments requirement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5472 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-15 08:35:54 +00:00
qwang12 813acf3a9a Merged in the following trackers from EDK:
EDK1145 Cursor mising in shell in some case 
EDK1099: Dell - [HII] HiiGetFontInfo() not retrieve the system font by FoFontInfoMask
EDK1127: [UEFI 2.10] Keyboard layout support 
EDK1129: [UEFI HII] GUID is represented wrongly in Config String
And some other fixes such as
*[UEFI HII] HiiGetAltCfg is generating "Name=" sub string in the wrong format 
*UEFI HII: GetUnicodeStringTextOrSize() doesn't handle NULL StringDest properly
*GetFontInfo() need be updated to avoid iteration 
*HIIStringProtocolTest failed on multiple platform
*[Uefi 2.1] Comply with latest Hii ECR 
* GetFontInfo() need be updated to avoid iteration


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5361 6f19259b-4bc3-4df7-8a09-765794883524
2008-06-23 09:41:33 +00:00
qwang12 36fe40c2ea 1) Add BufToHexString, HexStringToBuf and IsHexDigit to BaseLib.
2) Remove the duplicated functions implementation  from the modules that reference these APIs 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5283 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-23 05:30:08 +00:00