blob: 9b987ac915c5aec4db92f0a0a2476e7bcc50425b [file] [log] [blame]
#pragma once
#include <ipmiblob/blob_interface.hpp>
#include <cstdint>
namespace host_tool
{
/**
* Poll an open verification session.
*
* @param[in] session - the open verification session
* @param[in] blob - pointer to blob interface implementation object.
* @return true if the verification was successful.
*/
bool pollStatus(std::uint16_t session, ipmiblob::BlobInterface* blob);
/**
* Poll an open firmware version blob session and check if it ready to read.
*
* @param[in] session - the open firmware version blob session
* @param[in] blob - pointer to blob interface implementation object
* @return the polling status and blob buffer size
*/
std::pair<bool, uint32_t> pollReadReady(std::uint16_t session,
ipmiblob::BlobInterface* blob);
/**
* Aligned memcpy
* @param[out] destination - destination memory pointer
* @param[in] source - source memory pointer
* @param[in] size - bytes to copy
* @return destination pointer
*/
void* memcpyAligned(void* destination, const void* source, std::size_t size);
} // namespace host_tool