TianoCore EDK2 master
|
Go to the source code of this file.
Data Structures | |
struct | HTTP_BOOT_ENTITY_DATA |
struct | HTTP_BOOT_CACHE_CONTENT |
struct | HTTP_BOOT_CALLBACK_DATA |
Macros | |
#define | HTTP_BOOT_BLOCK_SIZE 32000 |
#define | HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" |
#define | HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 |
Functions | |
EFI_STATUS | HttpBootDiscoverBootInfo (IN OUT HTTP_BOOT_PRIVATE_DATA *Private) |
EFI_STATUS | HttpBootCreateHttpIo (IN HTTP_BOOT_PRIVATE_DATA *Private) |
EFI_STATUS | HttpBootGetBootFile (IN HTTP_BOOT_PRIVATE_DATA *Private, IN BOOLEAN HeaderOnly, IN OUT UINTN *BufferSize, OUT UINT8 *Buffer, OUT HTTP_BOOT_IMAGE_TYPE *ImageType) |
VOID | HttpBootFreeCacheList (IN HTTP_BOOT_PRIVATE_DATA *Private) |
Declaration of the boot file download function.
Copyright (c) 2015 - 2021, Intel Corporation. All rights reserved.
(C) Copyright 2016 Hewlett Packard Enterprise Development LP
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file HttpBootClient.h.
#define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 |
Definition at line 15 of file HttpBootClient.h.
#define HTTP_BOOT_BLOCK_SIZE 32000 |
Definition at line 13 of file HttpBootClient.h.
#define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" |
Definition at line 14 of file HttpBootClient.h.
EFI_STATUS HttpBootCreateHttpIo | ( | IN HTTP_BOOT_PRIVATE_DATA * | Private | ) |
Create a HttpIo instance for the file download.
[in] | Private | The pointer to the driver's private data. |
EFI_SUCCESS | Successfully created. |
Others | Failed to create HttpIo. |
Definition at line 609 of file HttpBootClient.c.
EFI_STATUS HttpBootDiscoverBootInfo | ( | IN OUT HTTP_BOOT_PRIVATE_DATA * | Private | ) |
Discover all the boot information for boot file.
[in,out] | Private | The pointer to the driver's private data. |
EFI_SUCCESS | Successfully obtained all the boot information . |
Others | Failed to retrieve the boot information. |
Definition at line 539 of file HttpBootClient.c.
VOID HttpBootFreeCacheList | ( | IN HTTP_BOOT_PRIVATE_DATA * | Private | ) |
Clean up all cached data.
[in] | Private | The pointer to the driver's private data. |
Definition at line 722 of file HttpBootClient.c.
EFI_STATUS HttpBootGetBootFile | ( | IN HTTP_BOOT_PRIVATE_DATA * | Private, |
IN BOOLEAN | HeaderOnly, | ||
IN OUT UINTN * | BufferSize, | ||
OUT UINT8 * | Buffer, | ||
OUT HTTP_BOOT_IMAGE_TYPE * | ImageType | ||
) |
This function download the boot file by using UEFI HTTP protocol.
[in] | Private | The pointer to the driver's private data. |
[in] | HeaderOnly | Only request the response header, it could save a lot of time if the caller only want to know the size of the requested file. |
[in,out] | BufferSize | On input the size of Buffer in bytes. On output with a return code of EFI_SUCCESS, the amount of data transferred to Buffer. On output with a return code of EFI_BUFFER_TOO_SMALL, the size of Buffer required to retrieve the requested file. |
[out] | Buffer | The memory buffer to transfer the file to. IF Buffer is NULL, then the size of the requested file is returned in BufferSize. |
[out] | ImageType | The image type of the downloaded file. |
EFI_SUCCESS | The file was loaded. |
EFI_INVALID_PARAMETER | BufferSize is NULL or Buffer Size is not NULL but Buffer is NULL. |
EFI_OUT_OF_RESOURCES | Could not allocate needed resources |
EFI_BUFFER_TOO_SMALL | The BufferSize is too small to read the current directory entry. BufferSize has been updated with the size needed to complete the request. |
EFI_ACCESS_DENIED | The server needs to authenticate the client. |
EFI_UNSUPPORTED | Some HTTP response header is not supported. |
Others | Unexpected error happened. |
This function download the boot file by using UEFI HTTP protocol.
[in] | Private | The pointer to the driver's private data. |
[in] | HeaderOnly | Only request the response header, it could save a lot of time if the caller only want to know the size of the requested file. |
[in,out] | BufferSize | On input the size of Buffer in bytes. On output with a return code of EFI_SUCCESS, the amount of data transferred to Buffer. On output with a return code of EFI_BUFFER_TOO_SMALL, the size of Buffer required to retrieve the requested file. |
[out] | Buffer | The memory buffer to transfer the file to. IF Buffer is NULL, then the size of the requested file is returned in BufferSize. |
[out] | ImageType | The image type of the downloaded file. |
EFI_SUCCESS | The file was loaded. |
EFI_INVALID_PARAMETER | BufferSize is NULL or Buffer Size is not NULL but Buffer is NULL. |
EFI_OUT_OF_RESOURCES | Could not allocate needed resources |
EFI_BUFFER_TOO_SMALL | The BufferSize is too small to read the current directory entry. BufferSize has been updated with the size needed to complete the request. |
EFI_ACCESS_DENIED | The server needs to authenticate the client. |
EFI_NOT_READY | Data transfer has timed-out, call HttpBootGetBootFile again to resume the download operation using HTTP Range headers. |
EFI_UNSUPPORTED | Some HTTP response header is not supported. |
Others | Unexpected error happened. |
Definition at line 933 of file HttpBootClient.c.