summaryrefslogtreecommitdiff
path: root/ShellPkg/Include/Library/ShellLib.h
AgeCommit message (Collapse)AuthorFilesLines
2023-12-08ShellPkg: Fix typosPage Chen1-15/+15
begining->beginning dirve->drive duplicat->duplicate fuly->fully Funciton->Function Functino->Function optioanl->optional poitners->pointers rountine->routine sucessful->successful sucessfully->successfully Signed-off-by: Page Chen <paiching_chen@apple.com> Cc: Zhichao Gao <zhichao.gao@intel.com> Cc: Andrew Fish <afish@apple.com> Message-Id: <829d2bed2a848229d719d7ae7b64ef1a47782720.1699557986.git.paiching_chen@apple.com> Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
2021-12-07ShellPkg: Apply uncrustify changesMichael Kubacki1-150/+149
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the ShellPkg package Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
2020-08-19ShellPkg: Fix spelling mistake for occurredMichael D Kinney1-2/+2
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2361 Cc: Ray Ni <ray.ni@intel.com> Cc: Zhichao Gao <zhichao.gao@intel.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Guomin Jiang <guomin.jiang@intel.com> Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
2019-10-09ShellPkg: stop using EFI_HANDLE in place of EFI_HII_HANDLELaszlo Ersek1-2/+2
The UefiShell*CommandsLib instances have constructor functions that do something like: gHiiHandle = HiiAddPackages (...); ... ShellCommandRegisterCommandName (..., gHiiHandle, ...); and destructor functions that implement the following pattern: HiiRemovePackages (gHiiHandle); The -- semantic, not functional -- problem is that "gHiiHandle" is declared with type EFI_HANDLE, and not EFI_HII_HANDLE, in all of these library instances, even though HiiAddPackages() correctly returns EFI_HII_HANDLE, and HiiRemovePackages() takes EFI_HII_HANDLE. Once we fix the type of "gHiiHandle", it causes sort of a butterfly effect, because it is passed around widely. Track down and update all of those locations. The DynamicCommand lib instances use a similar pattern, so they are affected too. NOTE: in practice, this patch is a no-op, as both EFI_HII_HANDLE and EFI_HANDLE are typedefs to (VOID*). However, we shouldn't use EFI_HANDLE where semantically EFI_HII_HANDLE is passed around. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Zhichao Gao <zhichao.gao@intel.com> Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com> Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
2019-04-09ShellPkg: Replace BSD License with BSD+Patent LicenseMichael D Kinney1-7/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
2019-03-19ShellPkg: Correct a parameter's nameShenglei Zhang1-2/+2
The parameter FilePath of ShellOpenFileByName defined in ShellLib.h is incorrect. It should be FileName. https://bugzilla.tianocore.org/show_bug.cgi?id=1221 Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
2018-11-05ShellPkg-UefiShellLib: Add a function to fully-qualify pathsJim.Dailey@dell.com1-0/+35
Add a function to return a clean, fully-qualified version of some path. This function handles a (possibly "dirty") input path that may or may not include a file system reference. If it does not include a file system reference, then if the input path does not begin with a forward or backward slash, then the input path is relative to the current working directory of the current file system. Otherwise, it is an absolute path within the current file system. If it does include a file system reference, it may be a reference to the current or some other file system. If the file system reference is not immediately followed by a forward or backward slash, then the input path is relative to the current working directory of the given file system. Otherwise, it is an absolute path within the given file system. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jim Dailey <jim_dailey@dell.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
2018-08-16ShellPkg/UefiShellLib: drop DeviceHandle param of ShellOpenFileByDevicePath()Laszlo Ersek1-2/+0
The ShellOpenFileByDevicePath() API promises to set the DeviceHandle output parameter to the handle of the filesystem identified by the FilePath input parameter. However, this doesn't actually happen when the UEFI Shell 2.0 method is used (which is basically "always" nowadays). Accordingly, the only caller of ShellOpenFileByDevicePath(), namely ShellOpenFileByName(), defines a (dummy) local DeviceHandle variable just so it can call ShellOpenFileByDevicePath(). Remove the useless output parameter. Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1008 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
2018-06-28ShellPkg: Clean up source filesLiming Gao1-4/+4
1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
2017-07-27ShellPkg/ShellLib: Remove unused macrosRuiyu Ni1-4/+1
MAX_FILE_NAME_LEN and FIND_XXXXX_FILE_BUFFER_SIZE are not used by ShellLib so remove them. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-10-19ShellPkg: Update sources to include MdePkg protocol definitionsRuiyu Ni1-2/+2
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
2016-10-19ShellPkg: Move SHELL_FREE_NON_NULL from ShellBase.h to ShellLib.hRuiyu Ni1-1/+9
The more proper place for macro SHELL_FREE_NON_NULL is ShellLib.h instead of ShellBase.h. Modify Compress.c to resolve build failure due to this change. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com>
2016-07-07ShellPkg: Series of patches to fix typos - apropriate to appropriateMudusuru, Giri P1-1/+1
Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Shumin Qiu <shumin.qiu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-By: Jaben Carsey <jaben.carsey@intel.com>
2016-02-09ShellPkg: Fix ASCII and UNICODE file pipes.jaben carsey1-0/+1
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 Shumin1-1/+3
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 commandjcarsey1-1/+2
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 Carsey1-0/+17
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.jcarsey1-0/+19
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.jcarsey1-1/+30
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.ydong101-2/+2
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.darylm5031-60/+65
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.ydong101-54/+54
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 ↵jcarsey1-0/+57
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.jcarsey1-2/+2
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.jcarsey1-1/+1
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.jcarsey1-5/+33
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.jcarsey1-184/+249
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10874 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-08Fix HSD Tracker 204133.darylm5031-2/+4
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.xdu21-0/+1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10661 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03adding prompting to library headerjcarsey1-0/+85
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.jcarsey1-119/+122
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 ↵jcarsey1-4/+12
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.jcarsey1-13/+117
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9710 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-07clean up commentsjcarsey1-109/+114
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9536 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-01corrected out of date commentsjcarsey1-11/+9
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 functionjcarsey1-5/+26
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9461 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-20comment repairs.jcarsey1-84/+97
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.jcarsey1-79/+150
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 parsingjcarsey1-2/+75
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9398 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-13comment clarificationjcarsey1-1/+2
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 ↵mdkinney1-1/+1
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 errorsjcarsey1-24/+25
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 ↵jcarsey1-2/+2
6f19259b-4bc3-4df7-8a09-765794883524
2009-06-23git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8633 ↵jcarsey1-2/+2
6f19259b-4bc3-4df7-8a09-765794883524
2009-06-16Updating with new functions and adding "C" style entrypoint library with ↵jcarsey1-0/+38
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.jljusten1-1/+1
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.qhuang81-10/+10
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.jcarsey1-3/+26
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 ShellPkgjcarsey1-0/+729
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8256 6f19259b-4bc3-4df7-8a09-765794883524