llarp::RCLookupHandler

Inherits from llarp::I_RCLookupHandler

Public Types

Name
using std::function< void(void)> Work_t
using std::function< void(Work_t)> WorkerFunc_t
using std::list< RCRequestCallback > CallbacksQueue

Public Functions

Name
~RCLookupHandler() override =default
virtual void AddValidRouter(const RouterID & router) override
virtual void RemoveValidRouter(const RouterID & router) override
virtual void SetRouterWhitelist(const std::vector< RouterID > & whitelist, const std::vector< RouterID > & greylist, const std::vector< RouterID > & greenlist) override
virtual bool HaveReceivedWhitelist() const override
virtual void GetRC(const RouterID & router, RCRequestCallback callback, bool forceLookup =false) override
virtual bool PathIsAllowed(const RouterID & remote) const override
virtual bool SessionIsAllowed(const RouterID & remote) const override
virtual bool IsGreylisted(const RouterID & remote) const override
virtual bool IsGreenlisted(const RouterID & remote) const override
virtual bool IsRegistered(const RouterID & remote) const override
virtual bool CheckRC(const RouterContact & rc) const override
virtual bool GetRandomWhitelistRouter(RouterID & router) const override
virtual bool CheckRenegotiateValid(RouterContact newrc, RouterContact oldrc) override
virtual void PeriodicUpdate(llarp_time_t now) override
virtual void ExploreNetwork() override
virtual size_t NumberOfStrictConnectRouters() const override
void Init(llarp_dht_context * dht, std::shared_ptr< NodeDB > nodedb, std::shared_ptr< EventLoop > loop, WorkerFunc_t dowork, ILinkManager * linkManager, service::Context * hiddenServiceContext, const std::unordered_set< RouterID > & strictConnectPubkeys, const std::set< RouterContact > & bootstrapRCList, bool useWhitelist_arg, bool isServiceNode_arg)
std::unordered_set< RouterID > Whitelist() const

Additional inherited members

Public Functions inherited from llarp::I_RCLookupHandler

Name
virtual ~I_RCLookupHandler() =default

Public Types Documentation

using Work_t

using llarp::RCLookupHandler::Work_t =  std::function<void(void)>;

using WorkerFunc_t

using llarp::RCLookupHandler::WorkerFunc_t =  std::function<void(Work_t)>;

using CallbacksQueue

using llarp::RCLookupHandler::CallbacksQueue =  std::list<RCRequestCallback>;

Public Functions Documentation

function ~RCLookupHandler

~RCLookupHandler() override =default

function AddValidRouter

virtual void AddValidRouter(
    const RouterID & router
) override

Reimplements: llarp::I_RCLookupHandler::AddValidRouter

function RemoveValidRouter

virtual void RemoveValidRouter(
    const RouterID & router
) override

Reimplements: llarp::I_RCLookupHandler::RemoveValidRouter

function SetRouterWhitelist

virtual void SetRouterWhitelist(
    const std::vector< RouterID > & whitelist,
    const std::vector< RouterID > & greylist,
    const std::vector< RouterID > & greenlist
) override

Reimplements: llarp::I_RCLookupHandler::SetRouterWhitelist

function HaveReceivedWhitelist

virtual bool HaveReceivedWhitelist() const override

Reimplements: llarp::I_RCLookupHandler::HaveReceivedWhitelist

function GetRC

virtual void GetRC(
    const RouterID & router,
    RCRequestCallback callback,
    bool forceLookup =false
) override

Reimplements: llarp::I_RCLookupHandler::GetRC

function PathIsAllowed

virtual bool PathIsAllowed(
    const RouterID & remote
) const override

Reimplements: llarp::I_RCLookupHandler::PathIsAllowed

function SessionIsAllowed

virtual bool SessionIsAllowed(
    const RouterID & remote
) const override

Reimplements: llarp::I_RCLookupHandler::SessionIsAllowed

function IsGreylisted

virtual bool IsGreylisted(
    const RouterID & remote
) const override

Reimplements: llarp::I_RCLookupHandler::IsGreylisted

function IsGreenlisted

virtual bool IsGreenlisted(
    const RouterID & remote
) const override

Reimplements: llarp::I_RCLookupHandler::IsGreenlisted

function IsRegistered

virtual bool IsRegistered(
    const RouterID & remote
) const override

Reimplements: llarp::I_RCLookupHandler::IsRegistered

function CheckRC

virtual bool CheckRC(
    const RouterContact & rc
) const override

Reimplements: llarp::I_RCLookupHandler::CheckRC

function GetRandomWhitelistRouter

virtual bool GetRandomWhitelistRouter(
    RouterID & router
) const override

Reimplements: llarp::I_RCLookupHandler::GetRandomWhitelistRouter

function CheckRenegotiateValid

virtual bool CheckRenegotiateValid(
    RouterContact newrc,
    RouterContact oldrc
) override

Reimplements: llarp::I_RCLookupHandler::CheckRenegotiateValid

function PeriodicUpdate

virtual void PeriodicUpdate(
    llarp_time_t now
) override

Reimplements: llarp::I_RCLookupHandler::PeriodicUpdate

function ExploreNetwork

virtual void ExploreNetwork() override

Reimplements: llarp::I_RCLookupHandler::ExploreNetwork

function NumberOfStrictConnectRouters

virtual size_t NumberOfStrictConnectRouters() const override

Reimplements: llarp::I_RCLookupHandler::NumberOfStrictConnectRouters

function Init

void Init(
    llarp_dht_context * dht,
    std::shared_ptr< NodeDB > nodedb,
    std::shared_ptr< EventLoop > loop,
    WorkerFunc_t dowork,
    ILinkManager * linkManager,
    service::Context * hiddenServiceContext,
    const std::unordered_set< RouterID > & strictConnectPubkeys,
    const std::set< RouterContact > & bootstrapRCList,
    bool useWhitelist_arg,
    bool isServiceNode_arg
)

function Whitelist

inline std::unordered_set< RouterID > Whitelist() const

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