intel::security::metee(3) Library Functions Manual intel::security::metee(3) NAME intel::security::metee - C++ class to access CSE/CSME/GSC firmware via a mei interface. SYNOPSIS #include Public Member Functions metee () metee (uint32_t log_level, TeeLogCallback2 log_callback) metee (const GUID &guid) metee (const GUID &guid, uint32_t log_level) metee (const GUID &guid, uint32_t log_level, TeeLogCallback log_callback) metee (const GUID &guid, uint32_t log_level, TeeLogCallback2 log_callback) metee (const GUID &guid, const struct tee_device_address &device, uint32_t log_level) metee (const GUID &guid, const struct tee_device_address &device, uint32_t log_level, TeeLogCallback log_callback) metee (const GUID &guid, const struct tee_device_address &device, uint32_t log_level, TeeLogCallback2 log_callback) metee (const metee &other)=delete metee (metee &&other) noexcept metee & operator= (const metee &other)=delete metee & operator= (metee &&other) noexcept virtual ~metee () void cancel_io () 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, when connection to specific client is not required Definition at line 88 of file meteepp.h. intel::security::metee::metee (uint32_t log_level, TeeLogCallback2 log_callback) [inline] Constructor without client GUID, when connection to specific client is not required Parameters log_level log level to set (from enum tee_log_level) log_callback pointer to function to run for log write (type 2) Definition at line 94 of file meteepp.h. intel::security::metee::metee (const GUID & guid) [inline] Constructor Parameters guid GUID of the FW client that want to start a session Definition at line 99 of file meteepp.h. intel::security::metee::metee (const GUID & guid, uint32_t log_level) [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) Definition at line 110 of file meteepp.h. intel::security::metee::metee (const GUID & guid, uint32_t log_level, TeeLogCallback log_callback) [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 Definition at line 117 of file meteepp.h. intel::security::metee::metee (const GUID & guid, uint32_t log_level, TeeLogCallback2 log_callback) [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 (type 2) Definition at line 125 of file meteepp.h. intel::security::metee::metee (const GUID & guid, const struct tee_device_address & device, uint32_t log_level) [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) Definition at line 133 of file meteepp.h. intel::security::metee::metee (const GUID & guid, const struct tee_device_address & device, uint32_t log_level, TeeLogCallback log_callback) [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 Definition at line 142 of file meteepp.h. intel::security::metee::metee (const GUID & guid, const struct tee_device_address & device, uint32_t log_level, TeeLogCallback2 log_callback) [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 (type 2) Definition at line 156 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 170 of file meteepp.h. virtual intel::security::metee::~metee () [inline], [virtual] Destructor, disconnects, if connected Definition at line 190 of file meteepp.h. Member Function Documentation void intel::security::metee::cancel_io () [inline] Try to stop all in-process reads and writes Definition at line 196 of file meteepp.h. void intel::security::metee::connect () [inline] Connects to the TEE driver and starts a session Definition at line 202 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 349 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 358 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 253 of file meteepp.h. std::string intel::security::metee::kind () [inline] Retrieves device kind. Returns kind string value. Definition at line 285 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 322 of file meteepp.h. uint32_t intel::security::metee::log_level () [inline] Retrieve current log level Returns current log level Definition at line 313 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 304 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 331 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 181 of file meteepp.h. uint8_t intel::security::metee::protocol_ver () [inline] Retrieve client protocol version Returns client protocol version. Definition at line 340 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 216 of file meteepp.h. uint32_t intel::security::metee::trc () [inline] Retrieves TRC register. Returns TRC value. Definition at line 269 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 236 of file meteepp.h. Author Generated automatically by Doxygen for metee from the source code. metee intel::security::metee(3)