1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /** @file
- Definitinos of RedfishContentCodingLib.
- (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR>
- SPDX-License-Identifier: BSD-2-Clause-Patent
- **/
- #ifndef REDFISH_CONTENT_CODING_LIB_H_
- #define REDFISH_CONTENT_CODING_LIB_H_
- /**
- This is the function to encode the content use the
- algorithm indicated in ContentEncodedValue. The naming of
- ContentEncodedValue is follow HTTP spec or could be a
- platform-specific value.
- @param[in] ContentEncodedValue HTTP conent encoded value.
- The value could be one of below
- or any which is platform-specific.
- - HTTP_CONTENT_ENCODING_IDENTITY "identity"
- - HTTP_CONTENT_ENCODING_GZIP "gzip"
- - HTTP_CONTENT_ENCODING_COMPRESS "compress"
- - HTTP_CONTENT_ENCODING_DEFLATE "deflate"
- - HTTP_CONTENT_ENCODING_BROTLI "br"
- @param[in] OriginalContent Original content.
- @param[in] OriginalContentLength The length of original content.
- @param[out] EncodedContentPointer Pointer to receive the encoded content pointer.
- @param[out] EncodedContentLength Length of encoded content.
- @retval EFI_SUCCESS Content is encoded successfully.
- @retval EFI_UNSUPPORTED No supported encoding funciton,
- @retval EFI_INVALID_PARAMETER One of the given parameter is invalid.
- **/
- EFI_STATUS
- RedfishContentEncode (
- IN CHAR8 *ContentEncodedValue,
- IN CHAR8 *OriginalContent,
- IN UINTN OriginalContentLength,
- OUT VOID **EncodedContentPointer,
- OUT UINTN *EncodedLength
- );
- /**
- This is the function to decode the content use the
- algorithm indicated in ContentEncodedValue. The naming of
- ContentEncodedValue is follow HTTP spec or could be a
- platform-specific value.
- @param[in] ContentDecodedValue HTTP conent decoded value.
- The value could be one of below
- or any which is platform-specific.
- - HTTP_CONTENT_ENCODING_IDENTITY "identity"
- - HTTP_CONTENT_ENCODING_GZIP "gzip"
- - HTTP_CONTENT_ENCODING_COMPRESS "compress"
- - HTTP_CONTENT_ENCODING_DEFLATE "deflate"
- - HTTP_CONTENT_ENCODING_BROTLI "br"
- @param[in] ContentPointer Original content.
- @param[in] ContentLength The length of original content.
- @param[out] DecodedContentPointer Pointer to receive decoded content pointer.
- @param[out] DecodedContentLength Length of decoded content.
- @retval EFI_SUCCESS Content is decoded successfully.
- @retval EFI_UNSUPPORTED No supported decoding funciton,
- @retval EFI_INVALID_PARAMETER One of the given parameter is invalid.
- **/
- EFI_STATUS
- RedfishContentDecode (
- IN CHAR8 *ContentEncodedValue,
- IN VOID *ContentPointer,
- IN UINTN ContentLength,
- OUT VOID **DecodedContentPointer,
- OUT UINTN *DecodedLength
- );
- #endif
|