emp-toolkit
hash_io_channel.h
Go to the documentation of this file.
1 #ifndef HASH_IO_CHANNEL_H__
2 #define HASH_IO_CHANNEL_H__
3 #include "hash.h"
4 #include "net_io_channel.h"
9 class HashIO: public IOChannel<HashIO>{ public:
12  HashIO(NetIO * _netio ) {
13  this->netio = _netio;
14  }
15  void send_data_impl(const void * data, int len) {
16  h.put(data, len);
17  }
18  void recv_data_impl(void * data, int len) {
19  netio->recv_data(data, len);
20  h.put(data, len);
21  }
22  void get_digest(char * dgst){
23  h.digest(dgst);
24  }
25 };
27 #endif//HASH_IO_CHANNEL_H__
void recv_data(void *data, int nbyte)
Definition: io_channel.h:17
Definition: hash_io_channel.h:9
void recv_data_impl(void *data, int len)
Definition: hash_io_channel.h:18
void send_data_impl(const void *data, int len)
Definition: hash_io_channel.h:15
Definition: net_io_channel.h:22
HashIO(NetIO *_netio)
Definition: hash_io_channel.h:12
void put(const void *data, int nbyte)
Definition: hash.h:23
NetIO * netio
Definition: hash_io_channel.h:11
void get_digest(char *dgst)
Definition: hash_io_channel.h:22
Definition: hash.h:12
Hash h
Definition: hash_io_channel.h:10
Definition: io_channel.h:12
void digest(char *a)
Definition: hash.h:38