---
title: llarp::routing::DHTMessage

---

# llarp::routing::DHTMessage





Inherits from [llarp::routing::IMessage](Classes/structllarp_1_1routing_1_1IMessage.md)

## Public Functions

|                | Name           |
| -------------- | -------------- |
| | **[~DHTMessage](Classes/structllarp_1_1routing_1_1DHTMessage.md#function-~dhtmessage)**() override =default |
| virtual bool | **[DecodeKey](Classes/structllarp_1_1routing_1_1DHTMessage.md#function-decodekey)**(const [llarp_buffer_t](Classes/structllarp__buffer__t.md) & key, [llarp_buffer_t](Classes/structllarp__buffer__t.md) * val) override |
| virtual bool | **[BEncode](Classes/structllarp_1_1routing_1_1DHTMessage.md#function-bencode)**([llarp_buffer_t](Classes/structllarp__buffer__t.md) * buf) const override |
| virtual bool | **[HandleMessage](Classes/structllarp_1_1routing_1_1DHTMessage.md#function-handlemessage)**([IMessageHandler](Classes/structllarp_1_1routing_1_1IMessageHandler.md) * h, [AbstractRouter](Classes/structllarp_1_1AbstractRouter.md) * r) const override |
| virtual void | **[Clear](Classes/structllarp_1_1routing_1_1DHTMessage.md#function-clear)**() override |

## Public Attributes

|                | Name           |
| -------------- | -------------- |
| std::vector< llarp::dht::IMessage::Ptr_t > | **[M](Classes/structllarp_1_1routing_1_1DHTMessage.md#variable-m)**  |
| uint64_t | **[V](Classes/structllarp_1_1routing_1_1DHTMessage.md#variable-v)**  |

## Additional inherited members

**Public Functions inherited from [llarp::routing::IMessage](Classes/structllarp_1_1routing_1_1IMessage.md)**

|                | Name           |
| -------------- | -------------- |
| | **[IMessage](Classes/structllarp_1_1routing_1_1IMessage.md#function-imessage)**() =default |
| virtual | **[~IMessage](Classes/structllarp_1_1routing_1_1IMessage.md#function-~imessage)**() =default |
| bool | **[operator<](Classes/structllarp_1_1routing_1_1IMessage.md#function-operator<)**(const [IMessage](Classes/structllarp_1_1routing_1_1IMessage.md) & other) const |

**Public Attributes inherited from [llarp::routing::IMessage](Classes/structllarp_1_1routing_1_1IMessage.md)**

|                | Name           |
| -------------- | -------------- |
| [PathID_t](Classes/structllarp_1_1PathID__t.md) | **[from](Classes/structllarp_1_1routing_1_1IMessage.md#variable-from)**  |
| uint64_t | **[S](Classes/structllarp_1_1routing_1_1IMessage.md#variable-s)**  |
| uint64_t | **[version](Classes/structllarp_1_1routing_1_1IMessage.md#variable-version)**  |


## Public Functions Documentation

### function ~DHTMessage

```cpp
~DHTMessage() override =default
```


### function DecodeKey

```cpp
virtual bool DecodeKey(
    const llarp_buffer_t & key,
    llarp_buffer_t * val
) override
```


**Reimplements**: [llarp::routing::IMessage::DecodeKey](Classes/structllarp_1_1routing_1_1IMessage.md#function-decodekey)


### function BEncode

```cpp
virtual bool BEncode(
    llarp_buffer_t * buf
) const override
```


**Reimplements**: [llarp::routing::IMessage::BEncode](Classes/structllarp_1_1routing_1_1IMessage.md#function-bencode)


### function HandleMessage

```cpp
virtual bool HandleMessage(
    IMessageHandler * h,
    AbstractRouter * r
) const override
```


**Reimplements**: [llarp::routing::IMessage::HandleMessage](Classes/structllarp_1_1routing_1_1IMessage.md#function-handlemessage)


### function Clear

```cpp
inline virtual void Clear() override
```


**Reimplements**: [llarp::routing::IMessage::Clear](Classes/structllarp_1_1routing_1_1IMessage.md#function-clear)


## Public Attributes Documentation

### variable M

```cpp
std::vector< llarp::dht::IMessage::Ptr_t > M;
```


### variable V

```cpp
uint64_t V = 0;
```


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

Updated on 2022-11-08 at 16:19:48 +0000