macos compilation fixes

pull/1969/head
Jason Rhinelander 2 years ago
parent a82907bc6c
commit 27d58044c7
No known key found for this signature in database
GPG Key ID: C4992CE7A88D4262

@ -90,7 +90,7 @@ llarp_apple_init(llarp_apple_config* appleconf)
#ifdef MACOS_SYSTEM_EXTENSION
std::strncpy(
appleconf->dns_bind_ip,
config->dns.m_bind.hostString().c_str(),
config->dns.m_bind.front().hostString().c_str(),
sizeof(appleconf->dns_bind_ip));
#endif

@ -38,14 +38,14 @@ namespace llarp::apple
trampoline_active = enable;
}
void RouteManager::AddDefaultRouteViaInterface(std::string)
void RouteManager::AddDefaultRouteViaInterface(vpn::NetworkInterface&)
{
check_trampoline(true);
if (callback_context and route_callbacks.add_default_route)
route_callbacks.add_default_route(callback_context);
}
void RouteManager::DelDefaultRouteViaInterface(std::string)
void RouteManager::DelDefaultRouteViaInterface(vpn::NetworkInterface&)
{
check_trampoline(false);
if (callback_context and route_callbacks.del_default_route)

@ -1,7 +1,7 @@
#pragma once
#include <llarp/router/abstractrouter.hpp>
#include <llarp/ev/vpn.hpp>
#include <llarp/vpn/platform.hpp>
#include "context_wrapper.h"
namespace llarp::apple
@ -16,18 +16,18 @@ namespace llarp::apple
/// These are called for poking route holes, but we don't have to do that at all on macos
/// because the appex isn't subject to its own rules.
void
AddRoute(IPVariant_t /*ip*/, IPVariant_t /*gateway*/) override
AddRoute(net::ipaddr_t /*ip*/, net::ipaddr_t /*gateway*/) override
{}
void
DelRoute(IPVariant_t /*ip*/, IPVariant_t /*gateway*/) override
DelRoute(net::ipaddr_t /*ip*/, net::ipaddr_t /*gateway*/) override
{}
void
AddDefaultRouteViaInterface(std::string ifname) override;
AddDefaultRouteViaInterface(vpn::NetworkInterface& vpn) override;
void
DelDefaultRouteViaInterface(std::string ifname) override;
DelDefaultRouteViaInterface(vpn::NetworkInterface& vpn) override;
void
AddRouteViaInterface(vpn::NetworkInterface& vpn, IPRange range) override;
@ -35,13 +35,13 @@ namespace llarp::apple
void
DelRouteViaInterface(vpn::NetworkInterface& vpn, IPRange range) override;
std::vector<IPVariant_t>
GetGatewaysNotOnInterface(std::string /*ifname*/) override
std::vector<net::ipaddr_t>
GetGatewaysNotOnInterface(vpn::NetworkInterface& /*vpn*/) override
{
// We can't get this on mac from our sandbox, but we don't actually need it because we
// ignore the gateway for AddRoute/DelRoute anyway, so just return a zero IP.
std::vector<IPVariant_t> ret;
ret.push_back(huint32_t{0});
std::vector<net::ipaddr_t> ret;
ret.emplace_back(net::ipv4addr_t{});
return ret;
}

@ -10,7 +10,8 @@ namespace llarp::apple
packet_write_callback packet_writer,
on_readable_callback on_readable,
AbstractRouter* router)
: m_PacketWriter{std::move(packet_writer)}
: vpn::NetworkInterface{{}}
, m_PacketWriter{std::move(packet_writer)}
, m_OnReadable{std::move(on_readable)}
, _router{router}
{
@ -39,12 +40,6 @@ namespace llarp::apple
return -1;
}
std::string
VPNInterface::IfName() const
{
return "";
}
net::IPPacket
VPNInterface::ReadNextPacket()
{
@ -58,7 +53,7 @@ namespace llarp::apple
VPNInterface::WritePacket(net::IPPacket pkt)
{
int af_family = pkt.IsV6() ? AF_INET6 : AF_INET;
return m_PacketWriter(af_family, pkt.buf, pkt.sz);
return m_PacketWriter(af_family, pkt.data(), pkt.size());
}
} // namespace llarp::apple

@ -29,9 +29,6 @@ namespace llarp::apple
int
PollFD() const override;
std::string
IfName() const override;
net::IPPacket
ReadNextPacket() override;

@ -1,6 +1,6 @@
#pragma once
#include <llarp/ev/vpn.hpp>
#include <llarp/vpn/platform.hpp>
#include "vpn_interface.hpp"
#include "route_manager.hpp"

Loading…
Cancel
Save