#ifndef __CONFIG_HPP__ #define __CONFIG_HPP__ #include #include #include #include "sgx_tcrypto.h" #include "../Enclave/enclave_api.h" // The per-node config struct NodeConfig { std::string name; sgx_ec256_public_t pubkey; std::string listenhost, listenport; std::string clistenhost, clistenport; uint8_t weight; uint8_t roles; }; // The global config struct Config { // global params uint32_t user_count; uint16_t msg_size; uint8_t m_priv_out; uint8_t m_priv_in; uint8_t m_pub_out; uint8_t m_pub_in; // config for each node std::vector nodes; // Which node is this one? nodenum_t my_node_num; }; bool config_parse(Config &config, const std::string configstr, const std::string &myname, threadid_t nthreads); #endif