summaryrefslogtreecommitdiff
path: root/ShellPkg/Include/Library/ShellLib.h
AgeCommit message (Collapse)Author
2016-02-09ShellPkg: 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>
2015-10-23ShellPkg: Follow spec to remove the last '\' char in return name of GetCurDir().Qiu Shumin
In Shell spec 2.1 the return name of EFI_SHELL_PROTOCOL.GetCurDir() is defined as 'fs0:\current-dir' while in current implementation it's 'fs0:\current-dir\'. To follow spec the patch removed the redundant '\' char. Since it has been broken for a long time, some codes may depend on the broken behavior. After this change 'EFI_SHELL_PROTOCOL.GetCurDir()' and 'UefiShellLib.ShellGetCurrentDir()' will return a current directory string without tailing '\' (fs0:\current-dir), the value of Shell environment variable 'cwd' will become 'fs0:\current-dir' as well. This patch has updated all the code in EDKII to make them depend on the new behavior. Developers should check whether 'GetCurDir()' and 'ShellGetCurrentDir' are used in their source 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> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18653 6f19259b-4bc3-4df7-8a09-765794883524
2014-11-04ShellPkg: Fix timezone commandjcarsey
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by : Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Tapan Shah <tapandshah@hp.com> Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16300 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-22ShellPkg: Add ShellHexStrToUintn to allow for simple conversion of hex numbers.Jaben Carsey
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> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14893 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-04ShellPkg: Add ShellPrintHelp function to ShellLib.jcarsey
This function allows for easier access to printing standard command help. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Matt Stanbro <Matthew.A.Stanbro@intel.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14159 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-20ShellPkg: Added function ShellDeleteByName which deletes a file by name.jcarsey
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Matthew Stanbro <matthew.a.stanbro@intel.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14138 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-14Update comment for function header.ydong10
Signed-off-by: ydong10 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12691 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-12ShellPkg: Update comments for functions to clarify buffer origin.darylm503
Signed-off-by: darylm503 Reviewed-by: jljusten git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12687 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-02Refine comments and two code style.ydong10
Signed-off-by: ydong10 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12263 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06Move the 2 functions associated with reading whole lines at a single time ↵jcarsey
from the shell command (internal) library to the ShellLib (external) library. signed-off-by: jcarsey reviewed-by: lgrosenb git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12000 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-27Clarify that the shared variables of the shell protocols are properly named.jcarsey
This removes the non-shared gEfiShellProtocol and gEfiShellParametersProtocol and renames the shared version to those names. This removes the m-versions of those protocol pointers. signed-off-by: jcarsey reviewed-by: darylm503 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11900 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-01Comment's added and fixed.jcarsey
Pointer's checked for NULL before access and after memory allocations. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11499 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-25FileHandleLib - use standard unicode file tag.jcarsey
ShellCEntryLib - add #define protection. ShellCommandLib - add optional sorting of command list. ShellLib - add string-to-number with EFI_STATUS return value for verification. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11429 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-14udk2010.up2.shell initial release.jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10874 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-08Fix HSD Tracker 204133.darylm503
Clarified the comment for the ShellExecute function. Added text indicating that the EnvironmentVariables and Status parameters are ignored in a pre-UEFI Shell 2.0 environment and that the Output parameter is ignored in a UEFI Shell 2.0 environment. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10858 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-19Add some error checking.xdu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10661 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03adding prompting to library headerjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9923 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-25fixed license header / copyright date on all files.jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9810 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-13adding new parameter to search and replace function to allow for easy ↵jcarsey
skipping of items preceded by ^ git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9726 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-11updating comments mostly. also added some new lib functions.jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9710 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-07clean up commentsjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9536 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-01corrected out of date commentsjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9500 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-20build break fix and new functionjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9461 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-20comment repairs.jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9460 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-18updating headers from code review.jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9449 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-09Upgrade ShellLib and fix bug with param parsingjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9398 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-13comment clarificationjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8935 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-11Put EOF (End of File) on its own line for all source files. This is ↵mdkinney
required for some compiler to build. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8896 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-08fixing build errorsjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8824 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-29git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8681 ↵jcarsey
6f19259b-4bc3-4df7-8a09-765794883524
2009-06-23git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8633 ↵jcarsey
6f19259b-4bc3-4df7-8a09-765794883524
2009-06-16Updating with new functions and adding "C" style entrypoint library with ↵jcarsey
example application. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8564 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-15Fix ShellPkg build errors for UNIXGCC toolchain.jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8555 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-20Fix several Unicode issues that fails VS2005.qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8350 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-11fixed to build under IPF.jcarsey
Refactored some commands into FileHandleLib since they are used in many binaries. Added .h for GUID that was missing. Added PCD for initialization of shell apps and shell itself in shell library interaction. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8295 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-07First (Alpha) release of ShellPkgjcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8256 6f19259b-4bc3-4df7-8a09-765794883524