llarp::win32::VPNPlatform
Inherits from llarp::vpn::Platform, llarp::vpn::IRouteManager
Public Functions
| Name | |
|---|---|
| VPNPlatform(const VPNPlatform & ) =delete | |
| VPNPlatform(VPNPlatform && ) =delete | |
| VPNPlatform(llarp::Context * ctx) | |
| ~VPNPlatform() override =default | |
| virtual void | AddRoute(net::ipaddr_t ip, net::ipaddr_t gateway) override |
| virtual void | DelRoute(net::ipaddr_t ip, net::ipaddr_t gateway) override |
| virtual void | AddRouteViaInterface(NetworkInterface & vpn, IPRange range) override |
| virtual void | DelRouteViaInterface(NetworkInterface & vpn, IPRange range) override |
| virtual std::vector< net::ipaddr_t > | GetGatewaysNotOnInterface(NetworkInterface & vpn) override |
| virtual void | AddDefaultRouteViaInterface(NetworkInterface & vpn) override |
| virtual void | DelDefaultRouteViaInterface(NetworkInterface & vpn) override |
| virtual std::shared_ptr< NetworkInterface > | ObtainInterface(InterfaceInfo info, AbstractRouter * router) override get a new network interface fully configured given the interface info blocks until ready, throws on error |
| virtual std::shared_ptr< I_Packet_IO > | create_packet_io(unsigned int ifindex, const std::optional< SockAddr > & dns_upstream_src) override create a packet io that will read (and optionally write) packets on a network interface the lokinet process does not own |
| virtual IRouteManager & | RouteManager() override get owned ip route manager for managing routing table |
Additional inherited members
Public Functions inherited from llarp::vpn::Platform
| Name | |
|---|---|
| Platform() =default | |
| Platform(const Platform & ) =delete | |
| Platform(Platform && ) =delete | |
| virtual | ~Platform() =default |
| std::shared_ptr< NetworkInterface > | CreateInterface(InterfaceInfo info, AbstractRouter * router) create and start a network interface |
| std::shared_ptr< NetworkInterface > | CreateDummyInterface(InterfaceInfo ) create a network interface that doesn't actually write packets to the OS but instead only replies to icmp. |
Public Functions inherited from llarp::vpn::IRouteManager
| Name | |
|---|---|
| IRouteManager() =default | |
| IRouteManager(const IRouteManager & ) =delete | |
| IRouteManager(IRouteManager && ) =delete | |
| virtual | ~IRouteManager() =default |
| virtual const llarp::net::Platform * | Net_ptr() const |
| virtual void | AddBlackhole() |
| virtual void | DelBlackhole() |
Public Functions Documentation
function VPNPlatform
VPNPlatform(
const VPNPlatform &
) =delete
function VPNPlatform
VPNPlatform(
VPNPlatform &&
) =delete
function VPNPlatform
inline VPNPlatform(
llarp::Context * ctx
)
function ~VPNPlatform
~VPNPlatform() override =default
function AddRoute
virtual void AddRoute(
net::ipaddr_t ip,
net::ipaddr_t gateway
) override
Reimplements: llarp::vpn::IRouteManager::AddRoute
function DelRoute
virtual void DelRoute(
net::ipaddr_t ip,
net::ipaddr_t gateway
) override
Reimplements: llarp::vpn::IRouteManager::DelRoute
function AddRouteViaInterface
virtual void AddRouteViaInterface(
NetworkInterface & vpn,
IPRange range
) override
Reimplements: llarp::vpn::IRouteManager::AddRouteViaInterface
function DelRouteViaInterface
virtual void DelRouteViaInterface(
NetworkInterface & vpn,
IPRange range
) override
Reimplements: llarp::vpn::IRouteManager::DelRouteViaInterface
function GetGatewaysNotOnInterface
virtual std::vector< net::ipaddr_t > GetGatewaysNotOnInterface(
NetworkInterface & vpn
) override
Reimplements: llarp::vpn::IRouteManager::GetGatewaysNotOnInterface
function AddDefaultRouteViaInterface
virtual void AddDefaultRouteViaInterface(
NetworkInterface & vpn
) override
Reimplements: llarp::vpn::IRouteManager::AddDefaultRouteViaInterface
function DelDefaultRouteViaInterface
virtual void DelDefaultRouteViaInterface(
NetworkInterface & vpn
) override
Reimplements: llarp::vpn::IRouteManager::DelDefaultRouteViaInterface
function ObtainInterface
virtual std::shared_ptr< NetworkInterface > ObtainInterface(
InterfaceInfo info,
AbstractRouter * router
) override
get a new network interface fully configured given the interface info blocks until ready, throws on error
Reimplements: llarp::vpn::Platform::ObtainInterface
function create_packet_io
virtual std::shared_ptr< I_Packet_IO > create_packet_io(
unsigned int ifindex,
const std::optional< SockAddr > & dns_upstream_src
) override
create a packet io that will read (and optionally write) packets on a network interface the lokinet process does not own
Parameters:
- index the interface index of the network interface to use or 0 for all interfaces on the system
Reimplements: llarp::vpn::Platform::create_packet_io
function RouteManager
inline virtual IRouteManager & RouteManager() override
get owned ip route manager for managing routing table
Reimplements: llarp::vpn::Platform::RouteManager
Updated on 2026-01-10 at 22:49:45 +0000