intel_security_metee - Man Page
C++ class to access CSE/CSME/GSC firmware via a mei interface.
Synopsis
#include <meteepp.h>
Public Member Functions
metee ()
metee (const GUID &guid, uint32_t log_level=TEE_LOG_LEVEL_VERBOSE, TeeLogCallback log_callback=nullptr)
metee (const GUID &guid, const struct tee_device_address &device, uint32_t log_level=TEE_LOG_LEVEL_VERBOSE, TeeLogCallback log_callback=nullptr)
metee (const metee &other)=delete
metee (metee &&other) noexcept
metee & operator= (const metee &other)=delete
metee & operator= (metee &&other) noexcept
virtual ~metee ()
void connect ()
std::vector< uint8_t > read (uint32_t timeout)
size_t write (const std::vector< uint8_t > &buffer, uint32_t timeout)
uint32_t fw_status (uint32_t fwStatusNum)
uint32_t trc ()
std::string kind ()
uint32_t log_level (uint32_t log_level)
uint32_t log_level ()
void log_callback (TeeLogCallback log_callback)
uint32_t max_msg_len ()
uint8_t protocol_ver ()
TEE_DEVICE_HANDLE device_handle ()
std::string driver_version ()
Detailed Description
C++ class to access CSE/CSME/GSC firmware via a mei interface.
Main interface class
Definition at line 84 of file meteepp.h.
Constructor & Destructor Documentation
intel::security::metee::metee () [inline]
Default constructor
Definition at line 88 of file meteepp.h.
intel::security::metee::metee (const GUID & guid, uint32_t log_level = TEE_LOG_LEVEL_VERBOSE, TeeLogCallback log_callback = nullptr) [inline]
Constructor
- Parameters
guid GUID of the FW client that want to start a session
log_level log level to set (from enum tee_log_level)
log_callback pointer to function to run for log write, set NULL to use built-in function
Definition at line 101 of file meteepp.h.
intel::security::metee::metee (const GUID & guid, const struct tee_device_address & device, uint32_t log_level = TEE_LOG_LEVEL_VERBOSE, TeeLogCallback log_callback = nullptr) [inline]
Constructor
- Parameters
guid GUID of the FW client that want to start a session
device device address structure
log_level log level to set (from enum tee_log_level)
log_callback pointer to function to run for log write, set NULL to use built-in function
Definition at line 117 of file meteepp.h.
intel::security::metee::metee (const metee & other) [delete]
Copy constructor - disabled
intel::security::metee::metee (metee && other) [inline], [noexcept]
Move constructor
- Parameters
other Object to move from
Definition at line 132 of file meteepp.h.
virtual intel::security::metee::~metee () [inline], [virtual]
Destructor, disconnects, if connected
Definition at line 152 of file meteepp.h.
Member Function Documentation
void intel::security::metee::connect () [inline]
Connects to the TEE driver and starts a session
Definition at line 158 of file meteepp.h.
TEE_DEVICE_HANDLE intel::security::metee::device_handle () [inline]
Returns handle of TEE device Obtains HECI device handle on Windows and mei device file descriptor on Linux
- Returns
the handle of the session.
Definition at line 305 of file meteepp.h.
std::string intel::security::metee::driver_version () [inline]
Obtains version of the TEE device driver Not implemented on Linux
- Returns
Driver version as dotted string.
Definition at line 314 of file meteepp.h.
uint32_t intel::security::metee::fw_status (uint32_t fwStatusNum) [inline]
Retrieves specified FW status register.
- Parameters
fwStatusNum The FW status register number (0-5).
- Returns
obtained FW status.
Definition at line 209 of file meteepp.h.
std::string intel::security::metee::kind () [inline]
Retrieves device kind.
- Returns
kind string value.
Definition at line 241 of file meteepp.h.
void intel::security::metee::log_callback (TeeLogCallback log_callback) [inline]
Set log callback
- Parameters
log_callback pointer to function to run for log write, set NULL to use built-in function
Definition at line 278 of file meteepp.h.
uint32_t intel::security::metee::log_level () [inline]
Retrieve current log level
- Returns
current log level
Definition at line 269 of file meteepp.h.
uint32_t intel::security::metee::log_level (uint32_t log_level) [inline]
Set log level
- Parameters
log_level log level to set
- Returns
previous log level
Definition at line 260 of file meteepp.h.
uint32_t intel::security::metee::max_msg_len () [inline]
Retrieve client maximum message length (MTU)
- Returns
client maximum message length.
Definition at line 287 of file meteepp.h.
metee & intel::security::metee::operator= (const metee & other) [delete]
Copy operator - disabled
metee & intel::security::metee::operator= (metee && other) [inline], [noexcept]
Move operator
- Parameters
other Object to move from
Definition at line 143 of file meteepp.h.
uint8_t intel::security::metee::protocol_ver () [inline]
Retrieve client protocol version
- Returns
client protocol version.
Definition at line 296 of file meteepp.h.
std::vector< uint8_t > intel::security::metee::read (uint32_t timeout) [inline]
Read data from the TEE device synchronously.
- Parameters
timeout The timeout to complete read in milliseconds, zero for infinite
- Returns
vector with data read from the TEE device
Definition at line 172 of file meteepp.h.
uint32_t intel::security::metee::trc () [inline]
Retrieves TRC register.
- Returns
TRC value.
Definition at line 225 of file meteepp.h.
size_t intel::security::metee::write (const std::vector< uint8_t > & buffer, uint32_t timeout) [inline]
Writes the specified buffer to the TEE device synchronously.
- Parameters
buffer vector containing the data to be written to the TEE device.
timeout The timeout to complete write in milliseconds, zero for infinite- Returns
the number of bytes written
Definition at line 192 of file meteepp.h.
Author
Generated automatically by Doxygen for metee from the source code.