]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.c
fixing build errors
[mirror_edk2.git] / ShellPkg / Library / UefiShellCEntryLib / UefiShellCEntryLib.c
index 0ce5271f2245f23ead7b15a7cfdb3cec8bca5985..80f56c00148f2915799d421dd8da6e01786947de 100644 (file)
@@ -18,22 +18,39 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/EfiShellInterface.h>\r
 #include <Protocol/EfiShellParameters.h>\r
 \r
+#include <Library/ShellCEntryLib.h>\r
 #include <Library/DebugLib.h>\r
 \r
-INT32 \r
+INTN\r
 EFIAPI \r
-main(\r
-  UINTN Argc, \r
-  CHAR16 **Argv\r
-);\r
+ShellAppMain (\r
+  IN INTN Argc, \r
+  IN CHAR16 **Argv\r
+  );\r
 \r
+/**\r
+  UEFI entry point for an application that will in turn call the\r
+  ShellAppMain function which has parameters similar to a standard C\r
+  main function.\r
+\r
+  An application that uses UefiShellCEntryLib must have a ShellAppMain\r
+  function as prototyped in Include/Library/ShellCEntryLib.h.\r
+\r
+  @param  ImageHandle  The image handle of the UEFI Application.\r
+  @param  SystemTable  A pointer to the EFI System Table.\r
+\r
+  @retval  EFI_SUCCESS               The application exited normally.\r
+  @retval  Other                     An error occurred.\r
+\r
+**/\r
 EFI_STATUS\r
 EFIAPI\r
-ShellCEntryLib(\r
+ShellCEntryLib (\r
   IN EFI_HANDLE        ImageHandle,\r
   IN EFI_SYSTEM_TABLE  *SystemTable\r
-  ){\r
-  INT32                         ReturnFromMain;\r
+  )\r
+{\r
+  INTN                           ReturnFromMain;\r
   EFI_SHELL_PARAMETERS_PROTOCOL *EfiShellParametersProtocol;\r
   EFI_SHELL_INTERFACE           *EfiShellInterface;\r
   EFI_STATUS                    Status;\r
@@ -53,7 +70,10 @@ ShellCEntryLib(
     //\r
     // use shell 2.0 interface\r
     //\r
-    ReturnFromMain = main(EfiShellInterface->Argc, EfiShellInterface->Argv);\r
+    ReturnFromMain = ShellAppMain (\r
+                       EfiShellParametersProtocol->Argc,\r
+                       EfiShellParametersProtocol->Argv\r
+                       );\r
   } else {\r
     //\r
     // try to get shell 1.0 interface instead.\r
@@ -69,7 +89,10 @@ ShellCEntryLib(
       //\r
       // use shell 1.0 interface\r
       // \r
-      ReturnFromMain = main(EfiShellParametersProtocol->Argc, EfiShellParametersProtocol->Argv);\r
+      ReturnFromMain = ShellAppMain (\r
+                         EfiShellInterface->Argc,\r
+                         EfiShellInterface->Argv\r
+                         );\r
     } else {\r
       ASSERT(FALSE);\r
     }\r