llarp::dns::sd::Platform

a dns platform that sets dns via systemd resolved

#include <sd_platform.hpp>

Inherits from llarp::dns::I_Platform

Public Functions

Name
virtual ~Platform() =default
virtual void set_resolver(unsigned int if_index, llarp::SockAddr dns, bool global) override
Attempts to set lokinet as the DNS server.

Additional inherited members

Public Functions inherited from llarp::dns::I_Platform

Name
virtual ~I_Platform() =default

Public Functions Documentation

function ~Platform

virtual ~Platform() =default

function set_resolver

virtual void set_resolver(
    unsigned int if_index,
    llarp::SockAddr dns,
    bool global
) override

Attempts to set lokinet as the DNS server.

Parameters:

  • if_index – the interface index to which we add the DNS servers, this can be gotten from the interface name e.g. lokitun0 (Typically tun_endpoint.GetIfName().) and then put through if_nametoindex().
  • dns – the listening address of the lokinet DNS server
  • global – whether to set up lokinet for all DNS queries (true) or just .loki & .snode addresses (false).

Reimplements: llarp::dns::I_Platform::set_resolver

throws if unsupported or fails.


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