]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Application/Shell/ShellProtocol.h
Roll back check in r15180 which caused the shell always returns EFI_ABORTED no matter...
[mirror_edk2.git] / ShellPkg / Application / Shell / ShellProtocol.h
index 38e71b40dc754208e18b4edf84403a2acc344d7a..023ec1278976a11cb9c9fd5cc1d61d90274418b6 100644 (file)
@@ -2,7 +2,8 @@
   Member functions of EFI_SHELL_PROTOCOL and functions for creation,\r
   manipulation, and initialization of EFI_SHELL_PROTOCOL.\r
 \r
-  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
+  (C) Copyright 2014, Hewlett-Packard Development Company, L.P.\r
+  Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
   which accompanies this distribution.  The full text of the license may be found at\r
 #ifndef _SHELL_PROTOCOL_HEADER_\r
 #define _SHELL_PROTOCOL_HEADER_\r
 \r
-#include <Uefi.h>\r
-#include <ShellBase.h>\r
-\r
-#include <Guid/ShellVariableGuid.h>\r
-#include <Guid/ShellMapGuid.h>\r
-#include <Guid/ShellAliasGuid.h>\r
-\r
-#include <Protocol/EfiShell.h>\r
-#include <Protocol/EfiShellParameters.h>\r
-#include <Protocol/SimpleFileSystem.h>\r
-#include <Protocol/DevicePathToText.h>\r
-#include <Protocol/ComponentName2.h>\r
-#include <Protocol/LoadedImage.h>\r
-#include <Protocol/UnicodeCollation.h>\r
-#include <Protocol/DevicePath.h>\r
-#include <Protocol/SimpleTextInEx.h>\r
-\r
-#include <Library/UefiBootServicesTableLib.h>\r
-#include <Library/BaseLib.h>\r
-#include <Library/ShellCommandLib.h>\r
-#include <Library/PrintLib.h>\r
-#include <Library/DevicePathLib.h>\r
-#include <Library/UefiRuntimeServicesTableLib.h>\r
-#include <Library/DebugLib.h>\r
-#include <Library/MemoryAllocationLib.h>\r
-#include <Library/BaseMemoryLib.h>\r
-#include <Library/UefiLib.h>\r
-#include <Library/SortLib.h>\r
-#include <Library/PcdLib.h>\r
-#include <Library/ShellLib.h>\r
-\r
-#include "FileHandleWrappers.h"\r
-#include "ShellEnvVar.h"\r
-#include "ShellManParser.h"\r
+#include "Shell.h"\r
 \r
 typedef struct {\r
   LIST_ENTRY                Link;\r
@@ -68,7 +36,7 @@ typedef struct {
 \r
   This must be removed via calling CleanUpShellProtocol().\r
 \r
-  @param[in,out] NewShell   The pointer to the pointer to the structure \r
+  @param[in, out] NewShell   The pointer to the pointer to the structure \r
   to install.\r
 \r
   @retval EFI_SUCCESS     The operation was successful.\r
@@ -86,7 +54,7 @@ CreatePopulateInstallShellProtocol (
   Free all memory and restore the system to the state it was in before calling\r
   CreatePopulateInstallShellProtocol.\r
 \r
-  @param[in,out] NewShell   The pointer to the new shell protocol structure.\r
+  @param[in, out] NewShell   The pointer to the new shell protocol structure.\r
 \r
   @retval EFI_SUCCESS       The operation was successful.\r
 **/\r
@@ -466,17 +434,17 @@ EfiShellEnablePageBreak (
 /**\r
   internal worker function to run a command via Device Path\r
 \r
-  @param ParentImageHandle  A handle of the image that is executing the specified\r
-                            command line.\r
-  @param DevicePath         device path of the file to execute\r
-  @param CommandLine        Points to the NULL-terminated UCS-2 encoded string\r
-                            containing the command line. If NULL then the command-\r
-                            line will be empty.\r
-  @param Environment        Points to a NULL-terminated array of environment\r
-                            variables with the format 'x=y', where x is the\r
-                            environment variable name and y is the value. If this\r
-                            is NULL, then the current shell environment is used.\r
-  @param StatusCode         Points to the status code returned by the command.\r
+  @param ParentImageHandle      A handle of the image that is executing the specified\r
+                                command line.\r
+  @param DevicePath             device path of the file to execute\r
+  @param CommandLine            Points to the NULL-terminated UCS-2 encoded string\r
+                                containing the command line. If NULL then the command-\r
+                                line will be empty.\r
+  @param Environment            Points to a NULL-terminated array of environment\r
+                                variables with the format 'x=y', where x is the\r
+                                environment variable name and y is the value. If this\r
+                                is NULL, then the current shell environment is used.\r
+  @param[out] StartImageStatus  Returned status from gBS->StartImage.\r
 \r
   @retval EFI_SUCCESS       The command executed successfully. The  status code\r
                             returned by the command is pointed to by StatusCode.\r
@@ -487,11 +455,11 @@ EfiShellEnablePageBreak (
 EFI_STATUS\r
 EFIAPI\r
 InternalShellExecuteDevicePath(\r
-  IN CONST EFI_HANDLE *ParentImageHandle,\r
+  IN CONST EFI_HANDLE               *ParentImageHandle,\r
   IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath,\r
-  IN CONST CHAR16 *CommandLine OPTIONAL,\r
-  IN CONST CHAR16 **Environment OPTIONAL,\r
-  OUT EFI_STATUS *StatusCode OPTIONAL\r
+  IN CONST CHAR16                   *CommandLine OPTIONAL,\r
+  IN CONST CHAR16                   **Environment OPTIONAL,\r
+  OUT EFI_STATUS                    *StartImageStatus OPTIONAL\r
   );\r
 \r
 /**\r
@@ -588,7 +556,6 @@ EfiShellRemoveDupInFileList(
 \r
   @param[in] BasePath         the Path to prepend onto filename for FullPath\r
   @param[in] Status           Status member initial value.\r
-  @param[in] FullName         FullName member initial value.\r
   @param[in] FileName         FileName member initial value.\r
   @param[in] Handle           Handle member initial value.\r
   @param[in] Info             Info struct to copy.\r
@@ -599,7 +566,6 @@ EFIAPI
 CreateAndPopulateShellFileInfo(\r
   IN CONST CHAR16 *BasePath,\r
   IN CONST EFI_STATUS Status,\r
-  IN CONST CHAR16 *FullName,\r
   IN CONST CHAR16 *FileName,\r
   IN CONST SHELL_FILE_HANDLE Handle,\r
   IN CONST EFI_FILE_INFO *Info\r
@@ -688,7 +654,7 @@ EfiShellOpenFileList(
 \r
   @param Name                   A pointer to the environment variable name\r
 \r
-  @return !=NULL                The environment variable's value. The returned\r
+  @retval !=NULL                The environment variable's value. The returned\r
                                 pointer does not need to be freed by the caller.\r
   @retval NULL                  The environment variable doesn't exist.\r
 **/\r
@@ -959,5 +925,18 @@ EFIAPI
 InernalEfiShellStartMonitor(\r
   VOID\r
   );\r
+\r
+/**\r
+  Notification function for keystrokes.\r
+\r
+  @param[in] KeyData    The key that was pressed.\r
+\r
+  @retval EFI_SUCCESS   The operation was successful.\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+NotificationFunction(\r
+  IN EFI_KEY_DATA *KeyData\r
+  );\r
 #endif //_SHELL_PROTOCOL_HEADER_\r
 \r