From: jljusten Date: Tue, 23 Jun 2009 21:40:29 +0000 (+0000) Subject: Restore Include/Library/ShellCEntryLib.h. Cleanup function and X-Git-Tag: edk2-stable201903~17673 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=322016e52d62dc5432e4469aa7d4cf20d4c30f78 Restore Include/Library/ShellCEntryLib.h. Cleanup function and function prototype comments. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8634 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/ShellPkg/Application/ShellCTestApp/ShellCTestApp.c b/ShellPkg/Application/ShellCTestApp/ShellCTestApp.c index 44f50790c0..0a50278d7f 100644 --- a/ShellPkg/Application/ShellCTestApp/ShellCTestApp.c +++ b/ShellPkg/Application/ShellCTestApp/ShellCTestApp.c @@ -16,7 +16,22 @@ #include #include +#include +/** + UEFI application entry point which has an interface similar to a + standard C main function. + + The ShellCEntryLib library instance wrappers the actual UEFI application + entry point and calls this ShellAppMain function. + + @param ImageHandle The image handle of the UEFI Application. + @param SystemTable A pointer to the EFI System Table. + + @retval 0 The application exited normally. + @retval Other An error occurred. + +**/ INTN EFIAPI ShellAppMain ( diff --git a/ShellPkg/Include/Library/ShellCEntryLib.h b/ShellPkg/Include/Library/ShellCEntryLib.h new file mode 100644 index 0000000000..5adbfdfce4 --- /dev/null +++ b/ShellPkg/Include/Library/ShellCEntryLib.h @@ -0,0 +1,35 @@ +/** @file + Provides application point extension for "C" style main funciton + +Copyright (c) 2006 - 2009, Intel Corporation +All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +/** + UEFI application entry point which has an interface similar to a + standard C main function. + + The ShellCEntryLib library instance wrappers the actual UEFI application + entry point and calls this ShellAppMain function. + + @param ImageHandle The image handle of the UEFI Application. + @param SystemTable A pointer to the EFI System Table. + + @retval 0 The application exited normally. + @retval Other An error occurred. + +**/ +INTN +EFIAPI +ShellAppMain ( + IN INTN Argc, + IN CHAR16 **Argv + ); + diff --git a/ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.c b/ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.c index ce41166573..43d429e6a5 100644 --- a/ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.c +++ b/ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.c @@ -18,6 +18,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include +#include #include INTN @@ -28,17 +29,19 @@ ShellAppMain ( ); /** - UEFI entry point for an application that will in turn call a C - style ShellAppMain function. + UEFI entry point for an application that will in turn call the + ShellAppMain function which has parameters similar to a standard C + main function. - This application must have a function defined as follows: + An application that uses UefiShellCEntryLib must have a ShellAppMain + function as prototyped in Include/Library/ShellCEntryLib.h. + + @param ImageHandle The image handle of the UEFI Application. + @param SystemTable A pointer to the EFI System Table. + + @retval EFI_SUCCESS The application exited normally. + @retval Other An error occurred. - INTN - EFIAPI - ShellAppMain ( - IN INTN Argc, - IN CHAR16 **Argv - ); **/ EFI_STATUS EFIAPI