ingest.hpp 710 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef __INGEST_HPP__
  2. #define __INGEST_HPP__
  3. #include "client.hpp"
  4. //#define DEBUG_INGESTION
  5. class Ingestion{
  6. private:
  7. // ClientList clients;
  8. IngClient *clients;
  9. MsgBuffer *buffer;
  10. uint32_t max_buffer_size;
  11. uint32_t cstart;
  12. uint32_t cnum;
  13. public:
  14. Ingestion() {
  15. }
  16. void generateClientKeys(sgx_aes_gcm_128bit_key_t &ESK);
  17. sgx_aes_gcm_128bit_key_t* getClientKey(uint32_t lcid);
  18. void initialize(uint32_t cnum, uint32_t cstart, sgx_aes_gcm_128bit_key_t &ESK);
  19. bool authenticate(clientid_t cid, unsigned char *auth_string);
  20. bool processMsgBundle(clientid_t cid, unsigned char *msgbundle,
  21. uint32_t num_msgs);
  22. };
  23. extern Ingestion g_ing;
  24. #endif