mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-30 05:25:35 +00:00
d53e8fc0da
Our new build scripts try to build ipn-go-bridge on more than just linux and darwin, so let's enable this file so it can be successful on every platform.
24 lines
1.0 KiB
Go
24 lines
1.0 KiB
Go
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package router
|
|
|
|
// SetRoutesFunc applies the given router settings to the OS network
|
|
// stack. cfg is guaranteed to be non-nil.
|
|
//
|
|
// This is logically part of the router_darwin.go implementation, and
|
|
// should not be used on other platforms.
|
|
//
|
|
// The code to reconfigure the network stack on MacOS and iOS is in
|
|
// the non-open `ipn-go-bridge` package, which bridges between the Go
|
|
// and Swift pieces of the application. The ipn-go-bridge sets
|
|
// SetRoutesFunc at startup.
|
|
//
|
|
// So why isn't this in router_darwin.go? Because in the non-oss
|
|
// repository, we build ipn-go-bridge when developing on Linux as well
|
|
// as MacOS, so that we don't have to wait until the Mac CI to
|
|
// discover that we broke it. So this one definition needs to exist in
|
|
// both the darwin and linux builds. Hence this file and build tag.
|
|
var SetRoutesFunc func(cfg *Config) error
|