inc/azure_c_shared_utility/azure_base32.h (21 lines of code) (raw):
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
#ifndef AZURE_BASE32_H
#define AZURE_BASE32_H
#ifdef __cplusplus
#include <cstddef>
#else
#include <stddef.h>
#endif
#include "azure_c_shared_utility/strings.h"
#include "azure_c_shared_utility/buffer_.h"
#include "umock_c/umock_c_prod.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Encodes the BUFFER_HANDLE to a base 32 STRING_HANDLE
*
* @param input BUFFER_HANDLE of the unsigned char* to be encoded
*
* @return A base32 encoded STRING_HANDLE that will need to be deallocated
*/
MOCKABLE_FUNCTION(, STRING_HANDLE, Azure_Base32_Encode, BUFFER_HANDLE, input);
/**
* @brief Encodes the BUFFER_HANDLE to a base 32 char*
*
* @param source An unsigned char* to be encoded
* @param size The lenght in bytes of the source variable
*
* @return A base32 encoded string that will need to be deallocated
*/
MOCKABLE_FUNCTION(, char*, Azure_Base32_Encode_Bytes, const unsigned char*, source, size_t, size);
/**
* @brief Decodes a base32 encoded STRING_HANDLE to a BUFFER_HANDLE
*
* @param handle STRING_HANDLE of a base32 encode string
*
* @return A BUFFER_HANDLE of the result of decoding the handle
*/
MOCKABLE_FUNCTION(, BUFFER_HANDLE, Azure_Base32_Decode, STRING_HANDLE, handle);
/**
* @brief Decodes a base32 encoded char* to a BUFFER_HANDLE
*
* @param source char* of a base32 encode string
*
* @return A BUFFER_HANDLE of the result of decoding the source
*/
MOCKABLE_FUNCTION(, BUFFER_HANDLE, Azure_Base32_Decode_String, const char*, source);
#ifdef __cplusplus
}
#endif
#endif /* AZURE_BASE32_H */