]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/HttpBootDxe/HttpBootClient.h
NetworkPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / NetworkPkg / HttpBootDxe / HttpBootClient.h
index 2dfafab93681de84b59f329004d118a802fab7fc..971b2dc80019738999813e46853f433864f23c74 100644 (file)
@@ -1,14 +1,9 @@
 /** @file\r
   Declaration of the boot file download function.\r
 \r
-Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials are licensed and made available under \r
-the terms and conditions of the BSD License that accompanies this distribution.  \r
-The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php.                                          \r
-    \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>\r
+(C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -16,11 +11,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define __EFI_HTTP_BOOT_HTTP_H__\r
 \r
 #define HTTP_BOOT_REQUEST_TIMEOUT            5000      // 5 seconds in uints of millisecond.\r
-#define HTTP_BOOT_BLOCK_SIZE                 1024\r
+#define HTTP_BOOT_RESPONSE_TIMEOUT           5000      // 5 seconds in uints of millisecond.\r
+#define HTTP_BOOT_BLOCK_SIZE                 1500\r
 \r
-#define HTTP_FIELD_NAME_USER_AGENT           "User-Agent"\r
-#define HTTP_FIELD_NAME_HOST                 "Host"\r
-#define HTTP_FIELD_NAME_ACCEPT               "Accept"\r
 \r
 \r
 #define HTTP_USER_AGENT_EFI_HTTP_BOOT        "UefiHttpBoot/1.0"\r
@@ -41,7 +34,8 @@ typedef struct {
 typedef struct {\r
   LIST_ENTRY                 Link;            // Link to the CacheList in driver's private data.\r
   EFI_HTTP_REQUEST_DATA      *RequestData;\r
-  HTTP_IO_RESOPNSE_DATA      *ResponseData;   // Not include any message-body data.\r
+  HTTP_IO_RESPONSE_DATA      *ResponseData;   // Not include any message-body data.\r
+  HTTP_BOOT_IMAGE_TYPE       ImageType;\r
   UINTN                      EntityLength;\r
   LIST_ENTRY                 EntityDataList;  // Entity data (message-body)\r
 } HTTP_BOOT_CACHE_CONTENT;\r
@@ -64,6 +58,8 @@ typedef struct {
   UINTN                      CopyedSize;\r
   UINTN                      BufferSize;\r
   UINT8                      *Buffer;\r
+\r
+  HTTP_BOOT_PRIVATE_DATA     *Private;\r
 } HTTP_BOOT_CALLBACK_DATA;\r
 \r
 /**\r
@@ -96,7 +92,7 @@ HttpBootCreateHttpIo (
 \r
 /**\r
   This function download the boot file by using UEFI HTTP protocol.\r
-  \r
+\r
   @param[in]       Private         The pointer to the driver's private data.\r
   @param[in]       HeaderOnly      Only request the response header, it could save a lot of time if\r
                                    the caller only want to know the size of the requested file.\r
@@ -107,6 +103,7 @@ HttpBootCreateHttpIo (
   @param[out]      Buffer          The memory buffer to transfer the file to. IF Buffer is NULL,\r
                                    then the size of the requested file is returned in\r
                                    BufferSize.\r
+  @param[out]      ImageType       The image type of the downloaded file.\r
 \r
   @retval EFI_SUCCESS              The file was loaded.\r
   @retval EFI_INVALID_PARAMETER    BufferSize is NULL or Buffer Size is not NULL but Buffer is NULL.\r
@@ -122,7 +119,8 @@ HttpBootGetBootFile (
   IN     HTTP_BOOT_PRIVATE_DATA   *Private,\r
   IN     BOOLEAN                  HeaderOnly,\r
   IN OUT UINTN                    *BufferSize,\r
-     OUT UINT8                    *Buffer\r
+     OUT UINT8                    *Buffer,\r
+     OUT HTTP_BOOT_IMAGE_TYPE     *ImageType\r
   );\r
 \r
 /**\r