peerapi_macios_ext.go 590 B

123456789101112131415161718192021222324
  1. // Copyright (c) Tailscale Inc & AUTHORS
  2. // SPDX-License-Identifier: BSD-3-Clause
  3. //go:build ts_macext && (darwin || ios)
  4. package ipnlocal
  5. import (
  6. "net"
  7. "net/netip"
  8. "tailscale.com/net/netns"
  9. )
  10. func init() {
  11. initListenConfig = initListenConfigNetworkExtension
  12. }
  13. // initListenConfigNetworkExtension configures nc for listening on IP
  14. // through the iOS/macOS Network/System Extension (Packet Tunnel
  15. // Provider) sandbox.
  16. func initListenConfigNetworkExtension(nc *net.ListenConfig, ip netip.Addr, ifaceIndex int) error {
  17. return netns.SetListenConfigInterfaceIndex(nc, ifaceIndex)
  18. }