llarp::dht::IMessage

Inherited by llarp::dht::FindIntroMessage, llarp::dht::FindNameMessage, llarp::dht::FindRouterMessage, llarp::dht::GotIntroMessage, llarp::dht::GotNameMessage, llarp::dht::GotRouterMessage, llarp::dht::PublishIntroMessage

Public Types

Name
using std::unique_ptr< IMessage > Ptr_t

Public Functions

Name
virtual ~IMessage() =default
IMessage(const Key_t & from)
construct
virtual bool HandleMessage(struct llarp_dht_context * dht, std::vector< Ptr_t > & replies) const =0
virtual bool BEncode(llarp_buffer_t * buf) const =0
virtual bool DecodeKey(const llarp_buffer_t & key, llarp_buffer_t * val) =0

Public Attributes

Name
Key_t From
PathID_t pathID
uint64_t version

Public Types Documentation

using Ptr_t

using llarp::dht::IMessage::Ptr_t =  std::unique_ptr<IMessage>;

Public Functions Documentation

function ~IMessage

virtual ~IMessage() =default

function IMessage

inline IMessage(
    const Key_t & from
)

construct

function HandleMessage

virtual bool HandleMessage(
    struct llarp_dht_context * dht,
    std::vector< Ptr_t > & replies
) const =0

Reimplemented by: llarp::dht::FindIntroMessage::HandleMessage, llarp::dht::RelayedFindRouterMessage::HandleMessage, llarp::dht::GotIntroMessage::HandleMessage, llarp::dht::RelayedGotIntroMessage::HandleMessage, llarp::dht::FindNameMessage::HandleMessage, llarp::dht::GotNameMessage::HandleMessage

function BEncode

virtual bool BEncode(
    llarp_buffer_t * buf
) const =0

Reimplemented by: llarp::dht::FindIntroMessage::BEncode, llarp::dht::FindNameMessage::BEncode, llarp::dht::FindRouterMessage::BEncode, llarp::dht::GotIntroMessage::BEncode, llarp::dht::GotNameMessage::BEncode, llarp::dht::GotRouterMessage::BEncode, llarp::dht::PublishIntroMessage::BEncode

function DecodeKey

virtual bool DecodeKey(
    const llarp_buffer_t & key,
    llarp_buffer_t * val
) =0

Reimplemented by: llarp::dht::FindIntroMessage::DecodeKey, llarp::dht::FindNameMessage::DecodeKey, llarp::dht::FindRouterMessage::DecodeKey, llarp::dht::GotIntroMessage::DecodeKey, llarp::dht::GotNameMessage::DecodeKey, llarp::dht::GotRouterMessage::DecodeKey, llarp::dht::PublishIntroMessage::DecodeKey

Public Attributes Documentation

variable From

Key_t From;

variable pathID

PathID_t pathID;

variable version

uint64_t version = llarp::constants::proto_version;

Updated on 2026-01-10 at 22:49:45 +0000