# Packages
Create two wgengine instances and pass data through them, measuring throughput, latency, and packet loss.
Package capture formats packet logging into a debug pcap stream.
Package filter is a stateful packet filter.
Package magicsock implements a socket that can change its communication path while in use, actively searching for the best way to communicate.
Package netlog provides a logger that monitors a TUN device and periodically records any traffic into a log stream.
Package netstack wires up gVisor's netstack into Tailscale.
Package router presents an interface to manipulate the host network stack's state.
Package wgcfg has types and a parser for representing WireGuard config.
Package wgint provides somewhat shady access to wireguard-go internals that don't (yet) have public APIs.
Package wglog contains logging helpers for wireguard-go.
# Functions
NewFakeUserspaceEngine returns a new userspace engine for testing.
NewUserspaceEngine creates the named tun device and returns a Tailscale Engine running on it.
NewWatchdog wraps an Engine and makes sure that all methods complete within a reasonable amount of time.
# Variables
No description provided by the author
ErrNoChanges is returned by Engine.Reconfig if no changes were made.
# Interfaces
BIRDClient handles communication with the BIRD Internet Routing Daemon.
Engine is the Tailscale WireGuard engine interface.
# Type aliases
NetworkMapCallback is the type used by callbacks that hook into network map updates.
StatusCallback is the type of status callbacks used by Engine.SetStatusCallback.