arblant
firefox-vpn-client / core / internal / egress / egress_other.go
egress_other.go29 lines · 770 B
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
//go:build !windows && !darwin && (!linux || android)

package egress

import (
	"errors"
	"net/netip"
	"syscall"
)

// The desktop TUN mode runs on Windows, Linux, and macOS; SetTun is never
// called here (Android's VPN keeps the core's sockets out of it itself).

var errNotHere = errors.New("the TUN mode is not available on this system")

func forget() {}

func physical(bool, *tunState) (uint32, bool) { return 0, false }

func bestInterface(netip.Addr) (uint32, bool) { return 0, false }

func bind(syscall.RawConn, bool, uint32) error { return errNotHere }

func keepRoute(syscall.RawConn, bool, uint32) error { return errNotHere }

func dnsServers(*tunState) []netip.AddrPort { return nil }

// Supported: not here.
func Supported() error { return errNotHere }