/** @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
#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
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
UINTN CopyedSize;\r
UINTN BufferSize;\r
UINT8 *Buffer;\r
+\r
+ HTTP_BOOT_PRIVATE_DATA *Private;\r
} HTTP_BOOT_CALLBACK_DATA;\r
\r
/**\r
\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
@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
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