Skip to content

discv5::ChainBootnodeRegistry

Per-chain bootstrap seed registry. More...

#include <discv5_bootnodes.hpp>

Public Functions

Name
ChainBootnodeRegistry() =default
std::unique_ptr< IBootnodeSource > for_chain(ChainId chain_id)
Return an IBootnodeSource for the requested chain.
std::unique_ptr< IBootnodeSource > for_chain(uint64_t chain_id_int)
Convenience overload that accepts a raw integer chain id.
const char * chain_name(ChainId chain_id)
Return the human-readable name for a chain identifier.

Detailed Description

class discv5::ChainBootnodeRegistry;

Per-chain bootstrap seed registry.

Note: The returned source should be treated as a starting point. Always verify against the latest official sources before depending on these entries in production:

Returns a concrete IBootnodeSource for a given ChainId. Data is sourced from officially maintained chain documentation and client repos, not from stale guesses; see comments on each chain's factory function.

Public Functions Documentation

function ChainBootnodeRegistry

ChainBootnodeRegistry() =default

function for_chain

static std::unique_ptr< IBootnodeSource > for_chain(
    ChainId chain_id
)

Return an IBootnodeSource for the requested chain.

Parameters:

  • chain_id Numeric EVM chain identifier.

Return: Owning pointer to the source, or nullptr when the chain is not registered (caller should check).

function for_chain

static std::unique_ptr< IBootnodeSource > for_chain(
    uint64_t chain_id_int
)

Convenience overload that accepts a raw integer chain id.

Parameters:

  • chain_id_int EVM chain id integer.

Return: Owning pointer, or nullptr when unrecognised.

function chain_name

static const char * chain_name(
    ChainId chain_id
)

Return the human-readable name for a chain identifier.

Parameters:

  • chain_id Chain enum value.

Return: Name string (e.g. "ethereum-mainnet").


Updated on 2026-04-13 at 23:22:46 -0700