diff options
author | lpleahy <lpleahy@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-02-09 19:18:06 +0000 |
---|---|---|
committer | lpleahy <lpleahy@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-02-09 19:18:06 +0000 |
commit | f6e5cdd5cfa100e777db38e5f7b26b7ffcf41330 (patch) | |
tree | 29e5a51e8435f044f4614c86802ba7b7d3706077 /AppPkg/Applications/Sockets/WebServer/Exit.c | |
parent | 3bdf9aae5f7f4c5f47fc8f807ae4409dfe3bdd58 (diff) | |
download | edk2-platforms-f6e5cdd5cfa100e777db38e5f7b26b7ffcf41330.tar.xz |
Merged socket development branch:
* Add TCPv6 support to DataSink
* Add TCPv6 support to DataSource
* Add GetAddrInfo test application
* Add GetNameInfo test application
* Fixed copyright date
* Completed TFTP server - now downloads files from local directory
* Added ports and exit pages to web server
* Made PCD values package specific
Signed-off-by: lpleahy
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13003 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'AppPkg/Applications/Sockets/WebServer/Exit.c')
-rw-r--r-- | AppPkg/Applications/Sockets/WebServer/Exit.c | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/AppPkg/Applications/Sockets/WebServer/Exit.c b/AppPkg/Applications/Sockets/WebServer/Exit.c new file mode 100644 index 0000000000..cad4b006b2 --- /dev/null +++ b/AppPkg/Applications/Sockets/WebServer/Exit.c @@ -0,0 +1,92 @@ +/*++ + This file contains an 'Intel UEFI Application' and is + licensed for Intel CPUs and chipsets under the terms of your + license agreement with Intel or your vendor. This file may + be modified by the user, subject to additional terms of the + license agreement +--*/ +/*++ + +Copyright (c) 2011 Intel Corporation. All rights reserved +This software and associated documentation (if any) is furnished +under a license and may only be used or copied in accordance +with the terms of the license. Except as permitted by such +license, no part of this software or documentation may be +reproduced, stored in a retrieval system, or transmitted in any +form or by any means without the express written consent of +Intel Corporation. + +--*/ + +/** @file + Exit response page + +**/ + +#include <WebServer.h> + + +/** + Respond with the Exit page + + @param [in] SocketFD The socket's file descriptor to add to the list. + @param [in] pPort The WSDT_PORT structure address + @param [out] pbDone Address to receive the request completion status + + @retval EFI_SUCCESS The request was successfully processed + +**/ +EFI_STATUS +ExitPage ( + IN int SocketFD, + IN WSDT_PORT * pPort, + OUT BOOLEAN * pbDone + ) +{ + EFI_STATUS Status; + + DBG_ENTER ( ); + + // + // Send the Hello World page + // + for ( ; ; ) { + // + // Tell the web-server to exit + // + mWebServer.bRunning = FALSE; + + // + // Send the page header + // + Status = HttpPageHeader ( SocketFD, pPort, L"Exit" ); + if ( EFI_ERROR ( Status )) { + break; + } + + // + // Send the page body + // + Status = HttpSendAnsiString ( SocketFD, + pPort, + "<h1>Exit</h1>\r\n" + "<p>\r\n" + " Exiting the web-server application.\r\n" + "</p>\r\n" ); + if ( EFI_ERROR ( Status )) { + break; + } + + // + // Send the page trailer + // + Status = HttpPageTrailer ( SocketFD, pPort, pbDone ); + break; + } + + // + // Return the operation status + // + DBG_EXIT_STATUS ( Status ); + return Status; +} |