lokinet/llarp/messages/dht.hpp

40 lines
727 B
C++

#ifndef LLARP_MESSAGES_DHT_HPP
#define LLARP_MESSAGES_DHT_HPP
#include <dht/message.hpp>
#include <routing/message.hpp>
#include <vector>
namespace llarp
{
namespace routing
{
struct DHTMessage final : public IMessage
{
std::vector< std::unique_ptr< llarp::dht::IMessage > > M;
uint64_t V = 0;
~DHTMessage();
bool
DecodeKey(const llarp_buffer_t& key, llarp_buffer_t* val) override;
bool
BEncode(llarp_buffer_t* buf) const override;
bool
HandleMessage(IMessageHandler* h, AbstractRouter* r) const override;
void
Clear() override
{
M.clear();
V = 0;
}
};
} // namespace routing
} // namespace llarp
#endif