---
title: llarp/routing/dht_message.hpp

---

# llarp/routing/dht_message.hpp



## Namespaces

| Name           |
| -------------- |
| **[llarp](Namespaces/namespacellarp.md)** <br>[crypto.hpp] |
| **[llarp::routing](Namespaces/namespacellarp_1_1routing.md)**  |

## Classes

|                | Name           |
| -------------- | -------------- |
| struct | **[llarp::routing::DHTMessage](Classes/structllarp_1_1routing_1_1DHTMessage.md)**  |




## Source code

```cpp
#pragma once

#include <llarp/dht/message.hpp>
#include "message.hpp"

#include <vector>

namespace llarp
{
  namespace routing
  {
    struct DHTMessage final : public IMessage
    {
      std::vector<llarp::dht::IMessage::Ptr_t> M;
      uint64_t V = 0;

      ~DHTMessage() override = default;

      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
```


-------------------------------

Updated on 2022-10-06 at 19:25:19 +0000
