22#define SHELL_FREE_NON_NULL(Pointer) \
24 if ((Pointer) != NULL) { \
25 FreePool((Pointer)); \
84 IN SHELL_FILE_HANDLE FileHandle
109 IN SHELL_FILE_HANDLE FileHandle,
146 OUT SHELL_FILE_HANDLE *FileHandle,
184 OUT SHELL_FILE_HANDLE *FileHandle,
219 IN CONST CHAR16 *DirectoryName,
220 OUT SHELL_FILE_HANDLE *FileHandle
255 IN SHELL_FILE_HANDLE FileHandle,
289 IN SHELL_FILE_HANDLE FileHandle,
309 IN SHELL_FILE_HANDLE *FileHandle
329 IN SHELL_FILE_HANDLE *FileHandle
355 IN SHELL_FILE_HANDLE FileHandle,
377 IN SHELL_FILE_HANDLE FileHandle,
398 IN SHELL_FILE_HANDLE FileHandle
428 IN SHELL_FILE_HANDLE DirHandle,
455 IN SHELL_FILE_HANDLE DirHandle,
457 IN OUT BOOLEAN *NoFile
475 IN SHELL_FILE_HANDLE FileHandle,
572 IN CHAR16 *CommandLine,
574 IN CHAR16 **EnvironmentVariables,
595 IN CHAR16 *
CONST DeviceName OPTIONAL
609 IN BOOLEAN CurrentState
749 OUT CHAR16 **ProblemParam OPTIONAL,
750 IN BOOLEAN AutoPageBreak,
751 IN BOOLEAN AlwaysAllowNumbers
755#define ShellCommandLineParse(CheckList, CheckPackage, ProblemParam, AutoPageBreak) ShellCommandLineParseEx(CheckList,CheckPackage,ProblemParam,AutoPageBreak,FALSE)
922 IN INT32 Col OPTIONAL,
923 IN INT32 Row OPTIONAL,
963 IN INT32 Col OPTIONAL,
964 IN INT32 Row OPTIONAL,
965 IN CONST CHAR8 *Language OPTIONAL,
966 IN CONST EFI_STRING_ID HiiFormatStringId,
1096 IN OUT CHAR16 **Destination,
1132 IN CHAR16
CONST *SourceString,
1137 IN CONST BOOLEAN SkipPreCarrot,
1138 IN CONST BOOLEAN ParameterReplacing
1185 ShellPromptResponseTypeYesNo,
1186 ShellPromptResponseTypeYesNoCancel,
1187 ShellPromptResponseTypeFreeform,
1188 ShellPromptResponseTypeQuitContinue,
1189 ShellPromptResponseTypeYesNoAllCancel,
1190 ShellPromptResponseTypeEnterContinue,
1191 ShellPromptResponseTypeAnyKeyContinue,
1192 ShellPromptResponseTypeMax
1199 ShellPromptResponseYes,
1200 ShellPromptResponseNo,
1201 ShellPromptResponseCancel,
1202 ShellPromptResponseQuit,
1203 ShellPromptResponseContinue,
1204 ShellPromptResponseAll,
1205 ShellPromptResponseMax
1236 IN CHAR16 *Prompt OPTIONAL,
1237 IN OUT VOID **Response OPTIONAL
1261 IN CONST EFI_STRING_ID HiiFormatStringId,
1263 IN OUT VOID **Response
1343 IN SHELL_FILE_HANDLE Handle,
1344 IN OUT BOOLEAN *Ascii
1376 IN SHELL_FILE_HANDLE Handle,
1377 IN OUT CHAR16 *Buffer,
1379 IN BOOLEAN Truncate,
1380 IN OUT BOOLEAN *Ascii
1426 IN CONST CHAR16 *CommandToGetHelpOn,
1427 IN CONST CHAR16 *SectionToGetHelpOn,
1428 IN BOOLEAN PrintCommandText
EFI_FILE_INFO * FileInfo(IN EFI_FILE_HANDLE FHand)
EFI_STRING_ID NewString(IN CHAR16 *String, IN EFI_HII_HANDLE HiiHandle)
EFI_STATUS EFIAPI ShellPrintHelp(IN CONST CHAR16 *CommandToGetHelpOn, IN CONST CHAR16 *SectionToGetHelpOn, IN BOOLEAN PrintCommandText)
EFI_STATUS EFIAPI ShellGetFileSize(IN SHELL_FILE_HANDLE FileHandle, OUT UINT64 *Size)
CONST CHAR16 *EFIAPI ShellGetCurrentDir(IN CHAR16 *CONST DeviceName OPTIONAL)
BOOLEAN EFIAPI ShellIsHexaDecimalDigitCharacter(IN CHAR16 Char)
CHAR16 *EFIAPI ShellFileHandleReturnLine(IN SHELL_FILE_HANDLE Handle, IN OUT BOOLEAN *Ascii)
CHAR16 *EFIAPI FullyQualifyPath(IN CONST CHAR16 *Path)
CONST CHAR16 *EFIAPI ShellCommandLineGetValue(IN CONST LIST_ENTRY *CheckPackage, IN CHAR16 *KeyString)
EFI_STATUS EFIAPI ShellOpenFileByDevicePath(IN OUT EFI_DEVICE_PATH_PROTOCOL **FilePath, OUT SHELL_FILE_HANDLE *FileHandle, IN UINT64 OpenMode, IN UINT64 Attributes)
EFI_FILE_INFO *EFIAPI ShellGetFileInfo(IN SHELL_FILE_HANDLE FileHandle)
EFI_STATUS EFIAPI ShellSetEnvironmentVariable(IN CONST CHAR16 *EnvKey, IN CONST CHAR16 *EnvVal, IN BOOLEAN Volatile)
EFI_STATUS EFIAPI ShellFindNextFile(IN SHELL_FILE_HANDLE DirHandle, IN OUT EFI_FILE_INFO *Buffer, IN OUT BOOLEAN *NoFile)
EFI_STATUS EFIAPI ShellSetFileInfo(IN SHELL_FILE_HANDLE FileHandle, IN EFI_FILE_INFO *FileInfo)
EFI_STATUS EFIAPI ShellDeleteFile(IN SHELL_FILE_HANDLE *FileHandle)
SHELL_PROMPT_REQUEST_TYPE
EFI_STATUS EFIAPI ShellCopySearchAndReplace(IN CHAR16 CONST *SourceString, IN OUT CHAR16 *NewString, IN UINTN NewSize, IN CONST CHAR16 *FindTarget, IN CONST CHAR16 *ReplaceWith, IN CONST BOOLEAN SkipPreCarrot, IN CONST BOOLEAN ParameterReplacing)
UINTN EFIAPI ShellStrToUintn(IN CONST CHAR16 *String)
BOOLEAN EFIAPI ShellGetExecutionBreakFlag(VOID)
VOID EFIAPI ShellSetPageBreakMode(IN BOOLEAN CurrentState)
EFI_STATUS EFIAPI ShellDeleteFileByName(IN CONST CHAR16 *FileName)
EFI_STATUS EFIAPI ShellPromptForResponseHii(IN SHELL_PROMPT_REQUEST_TYPE Type, IN CONST EFI_STRING_ID HiiFormatStringId, IN CONST EFI_HII_HANDLE HiiFormatHandle, IN OUT VOID **Response)
EFI_STATUS EFIAPI ShellCreateDirectory(IN CONST CHAR16 *DirectoryName, OUT SHELL_FILE_HANDLE *FileHandle)
EFI_STATUS EFIAPI ShellCloseFileMetaArg(IN OUT EFI_SHELL_FILE_INFO **ListHead)
EFI_STATUS EFIAPI ShellPrintHiiEx(IN INT32 Col OPTIONAL, IN INT32 Row OPTIONAL, IN CONST CHAR8 *Language OPTIONAL, IN CONST EFI_STRING_ID HiiFormatStringId, IN CONST EFI_HII_HANDLE HiiFormatHandle,...)
BOOLEAN EFIAPI ShellCommandLineGetFlag(IN CONST LIST_ENTRY *CONST CheckPackage, IN CONST CHAR16 *CONST KeyString)
BOOLEAN EFIAPI ShellIsHexOrDecimalNumber(IN CONST CHAR16 *String, IN CONST BOOLEAN ForceHex, IN CONST BOOLEAN StopAtSpace)
@ TypeStart
A flag that has variable value appended to the end (IE "-ad", "-afd", "-adf", etc....
@ TypeValue
A flag that has some data following it with a space (IE "-a 1").
@ TypeTimeValue
A flag that has a time value following it (IE "-a -5:00").
@ TypeMaxValue
A flag followed by all the command line data before the next flag.
@ TypeDoubleValue
A flag that has 2 space seperated value data following it (IE "-a 1 2").
@ TypeFlag
A flag that is present or not present only (IE "-a").
@ TypePosition
Some data that did not follow a parameter (IE "filename.txt").
EFI_STATUS EFIAPI ShellOpenFileByName(IN CONST CHAR16 *FileName, OUT SHELL_FILE_HANDLE *FileHandle, IN UINT64 OpenMode, IN UINT64 Attributes)
BOOLEAN EFIAPI ShellIsDecimalDigitCharacter(IN CHAR16 Char)
SHELL_PARAM_ITEM SfoParamList[]
Helper structure for -sfo only (besides -? and -b)
CHAR16 *EFIAPI StrnCatGrow(IN OUT CHAR16 **Destination, IN OUT UINTN *CurrentSize, IN CONST CHAR16 *Source, IN UINTN Count)
EFI_STATUS EFIAPI ShellFindFirstFile(IN SHELL_FILE_HANDLE DirHandle, OUT EFI_FILE_INFO **Buffer)
CHAR16 *EFIAPI ShellFindFilePathEx(IN CONST CHAR16 *FileName, IN CONST CHAR16 *FileExtension)
EFI_STATUS EFIAPI ShellPromptForResponse(IN SHELL_PROMPT_REQUEST_TYPE Type, IN CHAR16 *Prompt OPTIONAL, IN OUT VOID **Response OPTIONAL)
EFI_STATUS EFIAPI ShellCommandLineCheckDuplicate(IN CONST LIST_ENTRY *CheckPackage, OUT CHAR16 **Param)
EFI_STATUS EFIAPI ShellExecute(IN EFI_HANDLE *ParentHandle, IN CHAR16 *CommandLine, IN BOOLEAN Output, IN CHAR16 **EnvironmentVariables, OUT EFI_STATUS *Status)
CONST CHAR16 *EFIAPI ShellGetEnvironmentVariable(IN CONST CHAR16 *EnvKey)
EFI_STATUS EFIAPI ShellFileExists(IN CONST CHAR16 *Name)
EFI_STATUS EFIAPI ShellFileHandleReadLine(IN SHELL_FILE_HANDLE Handle, IN OUT CHAR16 *Buffer, IN OUT UINTN *Size, IN BOOLEAN Truncate, IN OUT BOOLEAN *Ascii)
EFI_STATUS EFIAPI ShellOpenFileMetaArg(IN CHAR16 *Arg, IN UINT64 OpenMode, IN OUT EFI_SHELL_FILE_INFO **ListHead)
EFI_STATUS EFIAPI ShellCommandLineParseEx(IN CONST SHELL_PARAM_ITEM *CheckList, OUT LIST_ENTRY **CheckPackage, OUT CHAR16 **ProblemParam OPTIONAL, IN BOOLEAN AutoPageBreak, IN BOOLEAN AlwaysAllowNumbers)
VOID EFIAPI ShellCommandLineFreeVarList(IN LIST_ENTRY *CheckPackage)
EFI_STATUS EFIAPI ShellInitialize(VOID)
UINTN EFIAPI ShellHexStrToUintn(IN CONST CHAR16 *String)
EFI_STATUS EFIAPI ShellIsFile(IN CONST CHAR16 *Name)
EFI_STATUS EFIAPI ShellIsDirectory(IN CONST CHAR16 *DirName)
EFI_STATUS EFIAPI ShellGetFilePosition(IN SHELL_FILE_HANDLE FileHandle, OUT UINT64 *Position)
EFI_STATUS EFIAPI ShellSetFilePosition(IN SHELL_FILE_HANDLE FileHandle, IN UINT64 Position)
CHAR16 *EFIAPI ShellFindFilePath(IN CONST CHAR16 *FileName)
EFI_STATUS EFIAPI ShellPrintEx(IN INT32 Col OPTIONAL, IN INT32 Row OPTIONAL, IN CONST CHAR16 *Format,...)
EFI_STATUS EFIAPI ShellIsFileInPath(IN CONST CHAR16 *Name)
CONST CHAR16 *EFIAPI ShellCommandLineGetRawValue(IN CONST LIST_ENTRY *CONST CheckPackage, IN UINTN Position)
UINTN EFIAPI ShellCommandLineGetCount(IN CONST LIST_ENTRY *CheckPackage)
EFI_STATUS EFIAPI ShellConvertStringToUint64(IN CONST CHAR16 *String, OUT UINT64 *Value, IN CONST BOOLEAN ForceHex, IN CONST BOOLEAN StopAtSpace)
SHELL_PARAM_ITEM EmptyParamList[]
Helper structure for no parameters (besides -? and -b)
EFI_STATUS EFIAPI ShellFlushFile(IN SHELL_FILE_HANDLE FileHandle)
EFI_STATUS EFIAPI ShellWriteFile(IN SHELL_FILE_HANDLE FileHandle, IN OUT UINTN *BufferSize, IN VOID *Buffer)
EFI_STATUS EFIAPI ShellCloseFile(IN SHELL_FILE_HANDLE *FileHandle)
EFI_STATUS EFIAPI ShellReadFile(IN SHELL_FILE_HANDLE FileHandle, IN OUT UINTN *ReadSize, OUT VOID *Buffer)