# Functions
BindToDevice binds a socket to the specified interface.
No description provided by the author
NewChannel initializes a new Channel.
NewClient initializes a new Client.
NewClientDevice creates and configures a new client tun device.
NewClientDeviceFromFD wraps an existing tun device.
NewPacketQueue creates a new PacketQueue.
NewServer initializes a server.
NewServerDevice creates and configures a new server tun device.
OpenTunDevice opens a file for performing device I/O with either a specified tun device, or a new tun device (when name is "").
# Constants
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Structs
Channel manages packet transport over a communications channel.
Client is a packet tunnel client.
ClientConfig specifies the configuration of a packet tunnel client.
Device manages a tun device.
PacketQueue is a fixed-size, preallocated queue of packets.
Server is a packet tunnel server.
ServerConfig specifies the configuration of a packet tunnel server.
# Interfaces
FlowActivityUpdater defines an interface for receiving updates for flow activity.
# Type aliases
AllowedDomainChecker is a function which returns true when it is permitted to resolve the specified domain name.
AllowedPortChecker is a function which returns true when it is permitted to relay packets to the specified upstream IP address and/or port.
DNSQualityReporter is a function which receives a DNS quality report: whether a DNS request received a reponse, the elapsed time, and the resolver used.
FlowActivityUpdaterMaker is a function which returns a list of appropriate updaters for a new flow to the specified upstream hostname (if known -- may be ""), and IP address.
MetricsUpdater is a function which receives a checkpoint summary of application bytes transferred through a packet tunnel.