#define __SHELL_LIB__\r
\r
#include <Protocol/SimpleFileSystem.h>\r
-#include <Guid/FileInfo.h>\r
#include <Protocol/EfiShell.h>\r
\r
/**\r
in the directory's info. Caller can use ShellFindNextFile() to get \r
subsequent files.\r
\r
+ Caller must use FreePool on *Buffer opon completion of all file searching.\r
+\r
@param DirHandle The file handle of the directory to search\r
- @param Buffer Pointer to buffer for file's information\r
+ @param Buffer Pointer to pointer to buffer for file's information\r
\r
@retval EFI_SUCCESS Found the first file.\r
@retval EFI_NOT_FOUND Cannot find the directory.\r
EFIAPI\r
ShellFindFirstFile (\r
IN EFI_FILE_HANDLE DirHandle,\r
- OUT EFI_FILE_INFO *Buffer\r
+ OUT EFI_FILE_INFO **Buffer\r
);\r
\r
/**\r
ParamType Type;\r
} SHELL_PARAM_ITEM;\r
\r
+\r
+/// Helper structure for no parameters (besides -? and -b)\r
+extern SHELL_PARAM_ITEM EmptyParamList[];\r
+\r
/**\r
Checks the command line arguments passed against the list of valid ones. \r
Optionally removes NULL values first.\r
IN UINT32 Position\r
);\r
\r
+/**\r
+ This function causes the shell library to initialize itself. If the shell library\r
+ is already initialized it will de-initialize all the current protocol poitners and\r
+ re-populate them again.\r
+\r
+ When the library is used with PcdShellLibAutoInitialize set to true this function\r
+ will return EFI_SUCCESS and perform no actions.\r
+\r
+ This function is intended for internal access for shell commands only.\r
+\r
+ @retval EFI_SUCCESS the initialization was complete sucessfully\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+ShellInitialize (\r
+ );\r
+\r
#endif // __SHELL_LIB__
\ No newline at end of file