summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-07-13ShellPkg/Bcfg: Add support for 'addp' command.Qiu Shumin
Until now the 'addp' command has been handled in the same way as 'add'. Just copy the DevicePath starting from the Hard Drive node when 'addp' is used. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit f86a5c346578a9503f7383c6eb77ce256f33b605)
2016-07-13ShellPkg: Also accept gEfiUnicodeCollation2ProtocolGuid for parsing.Marvin H?user
The EFI_UNICODE_COLLATION_PROTOCOL can have two different GUIDs. Look for both to support more UEFI implementations. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit f3a51e989aeae40b754eb76e38a3cea73fe1c2d2)
2016-07-13ShellPkg: Add argument to set block size for tftp command.Fu Siyuan
TFTP block size has a big impact on the transmit performance, this patch is to add new argument [-s <block size>] for shell "tftp" command to configure the block size for file download. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 2be45bfe2779043bc3566e879e7ec279412012dc)
2016-07-13ShellPkg: Fix the incorrect behavior when pressing 'shift' key.Pedroa Liu
If 'ReadKeyStroke' function return EFI_NOT_READY then skip it. If the return value is EFI_DEVICE_ERROR clean the currentString buffer. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Pedroa Liu <pedroa.liu@insyde.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit b8f3601daae5c8b50ca6f7da74bb150f2eef9453)
2016-07-13ShellPkg: Use a local variable to cache the pointer.Jaben Carsey
CC: Qiu Shumin <shumin.qiu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit 08222019067e168c7f9b2b378b01eac9705e9187)
2016-07-13report line number for command errors in a script.Jaben Carsey
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit 063aa89bef89e035fc0ed285ace8f2fff106d37a)
2016-07-13ShellPkg: Remove debug message in release binaries.Qiu Shumin
Use BaseDebugLibNull instance instead of UefiDebugLibConOut to remove the debug message in release Shell binaries. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit d454c18a315f109c52b78e8049a7231eb01f003c)
2016-07-13ShellPkg UefiDpLib: Delete one comment introduced by 196ccda08fc4Star Zeng
Cc: Cinnamon Shia <cinnamon.shia@hpe.com> Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Shumin Qiu <shumin.qiu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit d0a23f9f86dc39065429dc954adbc56b099b801e)
2016-07-13ShellPkg/UefiDpLib: Fix the error message "Timer library instance error!"Cinnamon Shia
When executing shell dp command, there is an error message "Timer library instance error!" The error message "Timer library instance error!" should be for the case about duration > EndTimeStamp if CountUp or duration > StartTimeStamp if CountDown. But if the EndTimeStamp of an entry is not added, it should not the case to catch. This change fixes the error message "Timer library instance error!" from the "BdsAttempt" entry which is logged when trying to boot a boot option. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 69af847603ca1f6439031c4e1fee844fdb06ca6f)
2016-07-13ShellPkg: Add NULL pointer check.Qiu Shumin
Add pointer check to avoid NULL pointer dereferenced. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Tapan Shah <tapandshah@hpe.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Tapan Shah <tapandshah@hpe.com> (cherry picked from commit 6d3911d40610c01e843a35cefd1fec57f98a4fc2)
2016-07-13ShellPkg: Enhance ping6 to select the interface automaticallyJiaxin Wu
v2: * Refine the code to make it more readable. This patch is used to support no source IP specified case while multiple NICs existed in the platform. The command will select the first both connected and configured interface automatically. Note: Source address is always required when pinging a link-local address. Cc: Bhupesh Sharma <bhupesh.sharma@nxp.com> Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> (cherry picked from commit 76cd3ffab6105c3c535125c1907ccdb4a9e19bbd)
2016-07-13ShellPkg: Enhance ping to select the interface automaticallyJiaxin Wu
v2: * A. Refine the code to make it more readable. * B. Add hint message for link local address case. This patch is used to support no source IP specified case while multiple NICs existed in the platform. The command will select the first both connected and configured interface automatically. Note: Source address is always required when pinging a link-local address. Cc: David Van Arnem <dvanarnem@cmlab.biz> Cc: Bhupesh Sharma <bhupesh.sharma@nxp.com> Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> (cherry picked from commit 9ce14ca124dd4ef1ae1f4e7c55840a13f1a6c0b7)
2016-07-13ShellPkg: Update smbiosview for latest Type 17 devicesSamer El-Haj-Mahmoud
Update smbiosview to understand latest SMBIOS Type 17 devices from SMBIOS 3.0.0 spec Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 21cc5ebf361248631fcfebde6494d4b615c62f4b)
2016-07-13ShellPkg: Fix typos and EDK2 coding style issuesTapan Shah
Fixing typos and EDK2 coding style issues found from previous submit Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tapan Shah <tapandshah@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit a5b731e0850aa98bf1e635860016e913a6cbb808)
2016-07-13ShellPkg: Fix pci command for '_e' optionAbdul Lateef Attar
ShellPkg: Fix pci command for '_e' option Processing of '_e' argument was missing. Added fix, to process the '_e' option for printing additional AER information. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Abdul Lateef Attar <abdul-lateef.attar@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit 262e2d94b6c889fe0737a756bd4860d732aa2dc3)
2016-07-13ShellPkg: Fix Shell treats every .EFI file as an executable application.Qiu Shumin
UEFI Shell 2.x cannot recognize whether a .EFI file is an application or a driver. This means when we typed in a driver image in Shell command line, Shell will load the driver image and try to run the entry point function of the driver. This patch check the ImageCodeType to fix the issue. Cc: Jaben Carsey <jaben.carsey@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit 91a92220f75c15950e5ba913c1f204ec73f2c2e9)
2016-07-13ShellPkg: Enahance 'dh' command to add more protocols decoding supportTapan Shah
Adding EdidDiscovered, EdidActive protocol decode support a in 'dh' command. Extending GraphicsOutput protocol decoding to list all supported GOP resolutions. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tapan Shah <tapandshah@hpe.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit cf6c1550cbf80423a9c058a52f7708db09dd4883)
2016-07-13ShellPkg: Support connect a device handle recursively with '-r'.Qiu Shumin
This patch make Shell 'connect' a device handle recursively with '-r' option. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit b5e44fbc15085270adfc777c0f2c1890c1e9790f)
2016-07-13ShellPkg: Update ping command options to sync with SpecJiaxin Wu
This patch is used to update ping command options to sync with shell2.2 Spec. Considering the backward compatible issue, the patch keeps ā€˜-_sā€™ command option unchanged, only add the new option '-s' and make the old option '-_s' function same as new one. Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Jaben Carsey <jaben.carsey@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 0b42d7d8a34a99a02becf4dece78481d3cd2b2fc)
2016-07-13ShellPkg : Cache the environment variable into memory to enhanceQiu Shumin
the performance. Currently UEFI Shell reads variable storage to get the environment variables every time running a new command. And reading(writing) UEFI variables is a high cost operation on most platforms. In order to enhance the performance this patch read the variable storage once and cache the environment variables in memory. Every further 'set' command will save the variable not only to Shell cache, but also the flash variable storage. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by:Ruiyu Ni <ruiyu.ni@intel.com> (cherry picked from commit b62bb8854fc5ab36b9b88f8bee9a276558bbcd96)
2016-07-13ShellPkg: Update Guid/Protocol usages in INF files.Liming Gao
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Shumin Qiu <shumin.qiu@intel.com> (cherry picked from commit 06ac66ecb6c1b5d2bf712e84c0a36add6a262015)
2016-07-13ShellPkg: Fix Shell ASSERT when mv file with cwd is NULL.Qiu Shumin
Shell will ASSERT when doing the following operation: "" Shell> mv fs2:\file1 fs2:\file2 "" This patch add NULL pointer check to fix this issue. Fixes: https://github.com/tianocore/edk2/issues/76 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> (cherry picked from commit 64ee6ed72ad5c1e4b7c9a96f419c3592e93314ad)
2016-07-13ShellPkg: Refine the comparisons code in ShellPkg.Qiu Shumin
For Boolean values not use explicit comparisons to TRUE or FALSE. For non-Boolean comparisons we should use a compare operator. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit ac14846aad016a1f88ebe4a09e00779dd03fcf88)
2016-07-13ShellPkg/UefiDpLib: Fix a memory leak issue in Dp.Cinnamon Shia
The allocated memory of ParamPackage is not freed. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> (cherry picked from commit 3751a092b67f2d3481fa2295cb45a0afda6a9118)
2016-07-13ShellPkg AARCH64: remove DEBUG BuildOptions overrideArd Biesheuvel
The BuildOptions for AARCH64 in Application/Shell/Shell.inf only affect the core Shell binary, and not the Shell component libraries which are merged into the final Shell binary via NULL library class resolution. This means we need to override the UEFI_APPLICATION build options in the platform .DSC anyway, there is no point in setting these options here as well. So remove them. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> (cherry picked from commit 481b93f7f00feb9bbc9e5a412c5065c0740b20f4)
2016-07-13ShellPkg/UefiHandleParsingLib: Fix GUID referenceQiu Shumin
Pass in GUID* for the GUID reference in a CatSPrint statement. Issue was noticed when running "dh -d -v" command on a system with a PCI NIC installed. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Thomas Palmer <thomas.palmer@hpe.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> (cherry picked from commit 5d54bbec2ce3861d646fbbd19072b1c3c1537f17)
2016-07-13ShellPkg/UefiShellDebug1CommandsLib: remove unused but set variableArd Biesheuvel
Remove variable FStartRow that is declared, assigned but never referenced. This fixes a warning emitted by GCC when -Wunused-but-set-variable is in effect. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> (cherry picked from commit e36ed7a84b2768443de22371f0aad5cf502328b1)
2016-07-13ShellPkg: Modify the 'dh' Shell command to dump the Firmware Management ā†µTapan Shah
Protocol Image Descriptor Information. Modify 'dh' shell command to dump FirmwareManagement Protocol information. Add FirmwareManagement image descriptor V1 and V2 structure definition in UefiHandleParsingLib.h to support decoding V1/V2 revisions. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Tapan Shah <tapandshah@hpe.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 8985d6127afc380ce10212a3eb7bb04bc5630380)
2016-07-13ShellPkg: Make the USB mouse behavior in 'edit' consistent with 'hexedit'.Qiu Shumin
1. Make the USB mouse cursor move smoothly in 'edit'. 2. Make the USB mouse can drag and select text in 'edit'. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit ee60bd2b6aa473fdff6af3bfc62203ed8ca5c52a)
2016-07-13ShellPkg: Remove the unused local variable.Qiu Shumin
Remove the unused local variable to refine the code. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc:Ard Biesheuvel <ard.biesheuvel@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> (cherry picked from commit 19c427a7ce6f5e036270543086c3e15c09c27e81)
2016-07-13ShellPkg: Per UEFI Shell 2.2 SPEC to make Shell supports 'NoNesting'.Qiu Shumin
This patch makes Shell support -nonesting invocation option. This option specifies that EFI_SHELL_PROTOCOL.Execute API nesting of a new Shell instance is optional and dependent on the 'nonesting' Shell environment variable. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jim Dailey <Jim_Dailey@Dell.com> (cherry picked from commit dcbdb8bfb026588cb888949c2c0adb43687935f3)
2016-07-13ShellPkg: Fix Shell ASSERT when read 'TAB' key fail from 'ConIn'.Qiu Shumin
Free 'FoundFileList' when read 'TAB' key fail to avoid memory leak and ASSERT. Cc: Jaben Carsey <jaben.carsey@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> (cherry picked from commit 9c17810a3635f6c0ca2afa78e3ec05bbb807d4be)
2016-07-13ShellPkg: Use DOS format end of line.Qiu Shumin
Use DOS format end of line(CR, LF). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 231ad7d8660d674d95fc4e03361338ac573c1f9f)
2016-07-13ShellPkg/UefiDpLib: Support execution breakCinnamon Shia
Support UEFI shell execution break. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Samer EL-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 196ccda08fc481dae4fc97db8f2938df87801edb)
2016-07-13ShellPkg: Merge Ping6 and Ifconfig6 tools to Shell command.Zhang, Lubo
According to the new Shell spec, we add Network2 profile and merge Ping6 and Ifconfig6 tools to Shell command. Cc: Carsey Jaben <jaben.carsey@intel.com> Cc: Wu Jiaxin <jiaxin.wu@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Zhang Lubo <lubo.zhang@intel.com> Reviewed-By: Jaben Carsey <Jaben.carsey@intel.com> Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com> (cherry picked from commit 43ca17532bd7292eee5ad979e26b19ddd0d3e55a)
2016-07-13ShellPkg: Fix smbiosview decode of PCIe Extended CapabilitiesSamer El-Haj-Mahmoud
Fix SMBIOSVIEW decode of the HeaderLog fields of the PCIe AER structure . The PCIe 2.1 Base Specification, section 7.10, lists this as 16 bytes, or 4 DWORDs. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 2c328aca1d5dfd99e7541d85db63318be3d4da62)
2016-07-13ShellPkg: Update 'ifconfig -r' implementationJiaxin Wu
This patch is used to update ifconfig -r implementation to sync with UEFI Shell 2.2. option -r means to reconfigure all or specified interface, and set DHCP policy. If specified interface is already set to DHCP, then refresh the IPv4 configuration. If the interface name is specified with '-r', DHCP DORA process will be triggered by the policy transition (static -> dhcp). Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Carsey Jaben <jaben.carsey@intel.com> Cc: El-Haj-Mahmoud Samer <samer.el-haj-mahmoud@hpe.com> Cc: Subramanian Sriram <sriram-s@hpe.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Sriram Subramanian <sriram-s@hpe.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> (cherry picked from commit 913ba15120b4dfa58fb90e859161ccf976015321)
2016-07-13ShellPkg: Increase reallocation size for temp memory filesJim_Dailey@Dell.com
If data of any real size were to be piped from one command to another, an inordinate amount of time could be taken up by reallocating memory that is only 10 bytes bigger than what is currently needed. Also, this could cause unwelcome memory fragmentation. Added a define to control how much memory is reallocated beyond that which is currently needed. Set it to 1K vs. the original 10 bytes. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <jim_dailey@dell.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit c8d9d0e2bd376cbbe6a37da786784e7fc736c7d9)
2016-07-13ShellPkg: Do not write the UNICODE BOM on ConOut.Jim_Dailey@Dell.com
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <jim_dailey@dell.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit d73fc181e722d787581eef7b6dc41b2550236fd8)
2016-07-13ShellPkg: Add FileSize member to shell memory file structure.Jim_Dailey@Dell.com
The shell uses the memory file structure to manage temporary files in memory that support piping of output from one command into the the input of another command. The BufferSize member is the size of the internal buffer, not the size of the data that was written to the file. So, it was possible to read beyond the EOF of these files as reads used BufferSize. Now FileSize tracks the actual size of these files (the number of bytes written, not the number of bytes available in the buffer), and the reads use this member. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <jim_dailey@dell.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 7bcd3ff611821e9f3f05207ebf157e30d030795b)
2016-07-13ShellPkg: Revert git 'd6cf1af9' fixJiaxin Wu
'd6cf1af9' is associated with '3d0a49ad' commit. So, this patch is used to respond the revert for '3d0a49ad' to adapt the Ipv4 config policy update. Cc: Subramanian Sriram <sriram-s@hpe.com> Cc: El-Haj-Mahmoud Samer <samer.el-haj-mahmoud@hpe.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> (cherry picked from commit db54ae0845e321e4cce35f0ccbb16b7fcb2b57db)
2016-07-13ShellPkg: Don't strip BOM when piping UCS2 data to a UEFI appJim_Dailey@Dell.com
If the BOM is stripped from StdIn, then an app that duplicates StdIn will not be able to duplicate, say, a UCS2 file that was piped into it (the output file it creates would not start with a BOM). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <jim_dailey@dell.com> Reviewed-by: Jaben Carsey <Jaben.Carsey@intel.com> (cherry picked from commit 0b966ddd61a90b3ba116c2eeaa93ee4247832a1a)
2016-07-13ShellPkg: Fix unexpected behavior of mouse cursor in Editor.Qiu Shumin
USB mouse cursor cannot move unless the left button is down. The patch refresh the FileBuffer of Editor every time when the 'MainEditorRefresh' is called to fix this bug. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit fb9dd8322532cd71d897b3b5690a3d2268bb1603)
2016-07-13ShellPkg: Support finding help message embedded in resource section.Qiu Shumin
UEFI Shell scandalizes the help message in spec level so that a standalone UEFI shell application can never get "-?" switch, instead the Shell core (interpreter) detects the "-?" and finds .MAN file for that shell application in certain spec defined paths, then show the help extracted from that .MAN file. But it means distributing a UEFI shell application not only means distributing a .EFI file but also distributing a .MAN file. If the text formatted .MAN file is corrupted (edited by user by mistake), or is missing (deleted by user by mistake), no help will be shown to user. So this patch enhance the Shell to make it support finding help message imbedded in resource section of application image. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> (cherry picked from commit 8d4eec6d97db143d9568631102c2027ed594eadb)
2016-07-13ShellPkg: Do NULL pointer check before the pointer is used.Qiu Shumin
Do NULL pointer check before the pointer is used to avoid dereferenced. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit e3b76f3b5e80df1219fb4adf0199b9606e84b8e7)
2016-07-13ShellPkg: Fix the last command doesn't work in a script.Qiu Shumin
When the last line in a script file is not an empty line the Shell will not execute the command in the last line. The patch refine the logic in function 'ShellFileHandleReturnLine' and fix the issue. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> (cherry picked from commit f79d7b62ba11db018db7bd489dd44051bfc067ae)
2016-07-13ShellPkg: Do NULL pointer check before the pointer is used.Qiu Shumin
The pointer 'FileInterface->Buffer' returned from 'AllocateZeroPool' in function 'CreateFileInterfaceMem' may be NULL and will be dereferenced at the following code. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 9eec4d38c027e9eb95c545875a1f847f0cb3dcbf)
2016-07-13ShellPkg/UefiDpLib: Refine the code of locating all handles in DpTrace.c.Cinnamon Shia
Replace gBS->LocateHandle with gBS->LocateHandleBuffer Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Samer El-Haj-Mahmoud <elhaj@hpe.com> (cherry picked from commit 64c51ed181545f2c9914ad49c8dcbabe2f9a32e2)
2016-07-13ShellPkg: complete previous incomplete patchJim Dailey
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <Jim_Dailey@Dell.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit 1095b4323dab2e64e71bf7896ea88a0eb5d64706)
2016-07-13ShellPkg: Fix ASCII and UNICODE file pipes.jaben carsey
Fix various errors when piping a UNICODE or ASCII file to a simple shell application that reads standard input and writes it to standard output. 1) When the memory file is created by CreateFileInferfaceMem() to capture the pipe output, no UNICODE BOM is written to the memory file. Later, when the memory file is read by the application using ShellFileHandleReadLine(), the function indicates that the file is ASCII because there is no BOM. 2) If the file is piped as ASCII, the ASCII memory image is not correctly created by FileInterfaceMemWrite() as each ASCII character is followed by '\0' in the image (when the ASCII data is written to the memory image, the file position should only be incremented by half the buffer size). 3) ShellFileHandleReadLine() does not read ASCII files correctly (writes to Buffer need to be cast as CHAR8*). 4) FileInterfaceMemRead() and FileInterfaceMemWrite() as somewhat hard to read and difficult to debug with certain tools due to the typecasting of This. Added a local variable (MemFile) of the correct type to these functions and used it instead of This. Enhancement: ShellFileHandleReadLine() now returns EFI_END_OF_FILE when appropriate. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jim Dailey <jim_dailey@dell.com> reviewed-by: Jaben Carsey <jaben.carsey@intel.com> (cherry picked from commit d2a0d2e6acea4d6a3dbe31b68a9a7fe7511cb478)