| /** @file | |
| Definitions of RedfishHttpOperation | |
| Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. | |
| SPDX-License-Identifier: BSD-2-Clause-Patent | |
| **/ | |
| #ifndef EDKII_REDFISH_HTTP_OPERATION_H_ | |
| #define EDKII_REDFISH_HTTP_OPERATION_H_ | |
| #include "RedfishHttpDxe.h" | |
| #define REDFISH_CONTENT_LENGTH_SIZE 80 | |
| #define REDFISH_COMMON_HEADER_SIZE 5 | |
| #define REDFISH_HTTP_HEADER_ODATA_VERSION_STR "OData-Version" | |
| #define REDFISH_HTTP_HEADER_ODATA_VERSION_VALUE "4.0" | |
| #define REDFISH_HTTP_HEADER_USER_AGENT_VALUE "edk2redfish" | |
| #define REDFISH_HTTP_HEADER_CONNECTION_STR "Connection" | |
| #define REDFISH_HTTP_HEADER_CONNECTION_VALUE "Keep-Alive" | |
| #define REDFISH_HTTP_CONTENT_ENCODING_NONE "None" | |
| #define ASCII_STR_DUPLICATE(a) (AllocateCopyPool (AsciiStrSize ((a)), (a))) | |
| /** | |
| This function free resources in Request. Request is no longer available | |
| after this function returns successfully. | |
| @param[in] Request HTTP request to be released. | |
| @retval EFI_SUCCESS Resource is released successfully. | |
| @retval Others Errors occur. | |
| **/ | |
| EFI_STATUS | |
| ReleaseRedfishRequest ( | |
| IN REDFISH_REQUEST *Request | |
| ); | |
| /** | |
| This function free resources in given Response. | |
| @param[in] Response HTTP response to be released. | |
| @retval EFI_SUCCESS Resource is released successfully. | |
| @retval Others Errors occur. | |
| **/ | |
| EFI_STATUS | |
| ReleaseRedfishResponse ( | |
| IN REDFISH_RESPONSE *Response | |
| ); | |
| /** | |
| This function send Redfish request to Redfish service by calling | |
| Rest Ex protocol. | |
| @param[in] Service Pointer to Redfish service. | |
| @param[in] Uri Uri of Redfish service. | |
| @param[in] Method HTTP method. | |
| @param[in] Request Request data. This is optional. | |
| @param[out] Response Redfish response data. | |
| @retval EFI_SUCCESS Request is sent and received successfully. | |
| @retval Others Errors occur. | |
| **/ | |
| EFI_STATUS | |
| HttpSendReceive ( | |
| IN REDFISH_SERVICE Service, | |
| IN EFI_STRING Uri, | |
| IN EFI_HTTP_METHOD Method, | |
| IN REDFISH_REQUEST *Request OPTIONAL, | |
| OUT REDFISH_RESPONSE *Response | |
| ); | |
| #endif |