14#ifndef _SHELL_COMMAND_LIB_
15#define _SHELL_COMMAND_LIB_
30extern CONST CHAR16 *SupportLevel[];
39 CHAR16 *CurrentDirectoryPath;
133 IN CONST CHAR16 *CommandString,
136 IN UINT32 ShellMinSupportLevel,
140 IN CONST EFI_STRING_ID ManFormatHelp
170 IN CONST CHAR16 *CommandString,
172 IN OUT BOOLEAN *CanAffectLE OPTIONAL
196 CHAR16 *CommandString;
216 CHAR16 *CommandString;
338 IN BOOLEAN ScriptOnly,
451 MappingTypeFileSystem,
469 IN CONST SHELL_MAPPING_TYPE Type
599 IN CONST SHELL_FILE_HANDLE Handle
613 IN CONST SHELL_FILE_HANDLE Handle
641 IN CONST SHELL_FILE_HANDLE Handle
659 IN SHELL_FILE_HANDLE Handle
722 ShellSortFileListByFileName,
727 ShellSortFileListByFullName,
729} SHELL_SORT_FILE_LIST;
792 IN SHELL_SORT_FILE_LIST Order
CHAR16 *EFIAPI ShellCommandCreateNewMappingName(IN CONST SHELL_MAPPING_TYPE Type)
BOOLEAN EFIAPI ShellCommandGetScriptExit(VOID)
CONST ALIAS_LIST *EFIAPI ShellCommandGetInitAliasList(VOID)
BOOLEAN EFIAPI ShellFileHandleRemove(IN CONST SHELL_FILE_HANDLE Handle)
EFI_STATUS EFIAPI CommandInit(VOID)
SHELL_FILE_HANDLE EFIAPI ConvertEfiFileProtocolToShellHandle(IN CONST EFI_FILE_PROTOCOL *Handle, IN CONST CHAR16 *Path)
VOID EFIAPI FreeBufferList(IN BUFFER_LIST *List)
BOOLEAN EFIAPI ShellFileHandleEof(IN SHELL_FILE_HANDLE Handle)
EFI_STATUS EFIAPI ShellCommandAddMapItemAndUpdatePath(IN CONST CHAR16 *Name, IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath, IN CONST UINT64 Flags, IN CONST BOOLEAN Path)
CONST CHAR16 *EFIAPI ShellCommandGetManFileNameHandler(IN CONST CHAR16 *CommandString)
SHELL_MAP_LIST gShellMapList
List of Mappings - DeviceName and Drive Letter(ism).
BOOLEAN EFIAPI ShellCommandIsCommandOnList(IN CONST CHAR16 *CommandString)
SHELL_STATUS(EFIAPI * SHELL_RUN_COMMAND)(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
CONST CHAR16 *EFIAPI ShellFileHandleGetPath(IN CONST SHELL_FILE_HANDLE Handle)
SHELL_MAP_LIST * gShellCurMapping
Pointer to node of current directory in the mMapList.
CHAR16 *EFIAPI ShellCommandGetCommandHelp(IN CONST CHAR16 *CommandString)
VOID EFIAPI ShellCommandRegisterExit(IN BOOLEAN ScriptOnly, IN CONST UINT64 ErrorCode)
RETURN_STATUS EFIAPI ShellCommandRunCommandHandler(IN CONST CHAR16 *CommandString, IN OUT SHELL_STATUS *RetVal, IN OUT BOOLEAN *CanAffectLE OPTIONAL)
EFI_FILE_PROTOCOL *EFIAPI ConvertShellHandleToEfiFileProtocol(IN CONST SHELL_FILE_HANDLE Handle)
SHELL_MAP_LIST *EFIAPI ShellCommandFindMapItem(IN CONST CHAR16 *MapKey)
RETURN_STATUS EFIAPI ShellCommandRegisterCommandName(IN CONST CHAR16 *CommandString, IN SHELL_RUN_COMMAND CommandHandler, IN SHELL_GET_MAN_FILENAME GetManFileName, IN UINT32 ShellMinSupportLevel, IN CONST CHAR16 *ProfileName, IN CONST BOOLEAN CanAffectLE, IN CONST EFI_HII_HANDLE HiiHandle, IN CONST EFI_STRING_ID ManFormatHelp)
UINT64 EFIAPI ShellCommandGetExitCode(VOID)
VOID EFIAPI DeleteScriptFileStruct(IN SCRIPT_FILE *Script)
CONST CHAR16 *(EFIAPI * SHELL_GET_MAN_FILENAME)(VOID)
SCRIPT_FILE *EFIAPI ShellCommandSetNewScript(IN SCRIPT_FILE *Script OPTIONAL)
BOOLEAN EFIAPI ShellCommandGetEchoState(VOID)
CONST COMMAND_LIST *EFIAPI ShellCommandGetCommandList(IN CONST BOOLEAN Sort)
RETURN_STATUS EFIAPI ShellCommandRegisterAlias(IN CONST CHAR16 *Command, IN CONST CHAR16 *Alias)
EFI_STATUS EFIAPI ShellCommandUpdateMapping(VOID)
EFI_STATUS EFIAPI ShellCommandCreateInitialMappingsAndPaths(VOID)
VOID EFIAPI ShellCommandSetEchoState(IN BOOLEAN State)
CHAR16 *EFIAPI CatSDumpHex(IN CHAR16 *Buffer, IN UINTN Indent, IN UINTN Offset, IN UINTN DataSize, IN VOID *UserData)
EFI_STATUS EFIAPI ShellCommandConsistMappingUnInitialize(EFI_DEVICE_PATH_PROTOCOL **Table)
CHAR16 *EFIAPI ShellCommandConsistMappingGenMappingName(IN EFI_DEVICE_PATH_PROTOCOL *DevicePath, IN EFI_DEVICE_PATH_PROTOCOL **Table)
EFI_STATUS EFIAPI ShellSortFileList(IN OUT EFI_SHELL_FILE_INFO **FileList, OUT EFI_SHELL_FILE_INFO **Duplicates OPTIONAL, IN SHELL_SORT_FILE_LIST Order)
BOOLEAN EFIAPI ShellCommandGetExit(VOID)
CONST CHAR16 *EFIAPI ShellCommandGetProfileList(VOID)
VOID EFIAPI DumpHex(IN UINTN Indent, IN UINTN Offset, IN UINTN DataSize, IN VOID *UserData)
SCRIPT_FILE *EFIAPI ShellCommandGetCurrentScriptFile(VOID)
BOOLEAN EFIAPI ShellCommandIsOnAliasList(IN CONST CHAR16 *Alias)
EFI_STATUS EFIAPI ShellCommandConsistMappingInitialize(EFI_DEVICE_PATH_PROTOCOL ***Table)
CHAR16 * GetManFileName(IN CONST CHAR16 *ManFileName)
LIST_ENTRY Link
List enumerator items.
VOID * Data
The data structure format dependant upon Command. (not always used)
UINTN Line
What line of the script file this was on.
BOOLEAN Reset
Reset the command (it must be treated like a initial run (but it may have data already))
CHAR16 * Cl
The original command line.
CHAR16 * ScriptName
The filename of this script.
UINTN Argc
The count of parameters.
LIST_ENTRY CommandList
The script converted to a list of commands (SCRIPT_COMMAND_LIST objects).
SCRIPT_COMMAND_LIST * CurrentCommand
The command currently being operated. If !=NULL must be a member of CommandList.
CHAR16 ** Argv
The parmameters to the script file.
LIST_ENTRY SubstList
A list of current script loop alias' (ALIAS_LIST objects) (Used for the for %-based replacement).