vpn
packageThis package is not in the latest version of its module.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
Documentation¶
Index¶
- Constants
- Variables
- func NewDNSConfigurator(t *Tunnel) dns.OSConfigurator
- func NewRouter(t *Tunnel) router.Router
- type Agent
- func (*Agent) Descriptor() ([]byte, []int)deprecated
- func (x *Agent) GetFqdn() []string
- func (x *Agent) GetId() []byte
- func (x *Agent) GetIpAddrs() []string
- func (x *Agent) GetLastHandshake() *timestamppb.Timestamp
- func (x *Agent) GetName() string
- func (x *Agent) GetWorkspaceId() []byte
- func (*Agent) ProtoMessage()
- func (x *Agent) ProtoReflect() protoreflect.Message
- func (x *Agent) Reset()
- func (x *Agent) String() string
- type BidirectionalPipe
- type Client
- type ClientMessage
- func (*ClientMessage) Descriptor() ([]byte, []int)deprecated
- func (m *ClientMessage) GetMsg() isClientMessage_Msg
- func (x *ClientMessage) GetRpc() *RPC
- func (x *ClientMessage) GetStart() *StartRequest
- func (x *ClientMessage) GetStatus() *StatusRequest
- func (x *ClientMessage) GetStop() *StopRequest
- func (*ClientMessage) ProtoMessage()
- func (x *ClientMessage) ProtoReflect() protoreflect.Message
- func (x *ClientMessage) Reset()
- func (x *ClientMessage) String() string
- type ClientMessage_Start
- type ClientMessage_Status
- type ClientMessage_Stop
- type Conn
- type GetPeerUpdate
- type Log
- func (*Log) Descriptor() ([]byte, []int)deprecated
- func (x *Log) GetFields() []*Log_Field
- func (x *Log) GetLevel() Log_Level
- func (x *Log) GetLoggerNames() []string
- func (x *Log) GetMessage() string
- func (*Log) ProtoMessage()
- func (x *Log) ProtoReflect() protoreflect.Message
- func (x *Log) Reset()
- func (x *Log) String() string
- type Log_Field
- type Log_Level
- type ManagerMessage
- func (*ManagerMessage) Descriptor() ([]byte, []int)deprecated
- func (m *ManagerMessage) EnsureRPC() *RPC
- func (x *ManagerMessage) GetGetPeerUpdate() *GetPeerUpdate
- func (m *ManagerMessage) GetMsg() isManagerMessage_Msg
- func (x *ManagerMessage) GetNetworkSettings() *NetworkSettingsResponse
- func (x *ManagerMessage) GetRpc() *RPC
- func (x *ManagerMessage) GetStart() *StartRequest
- func (x *ManagerMessage) GetStop() *StopRequest
- func (*ManagerMessage) ProtoMessage()
- func (x *ManagerMessage) ProtoReflect() protoreflect.Message
- func (x *ManagerMessage) Reset()
- func (x *ManagerMessage) String() string
- type ManagerMessage_GetPeerUpdate
- type ManagerMessage_NetworkSettings
- type ManagerMessage_Start
- type ManagerMessage_Stop
- type NetworkSettingsRequest
- func (*NetworkSettingsRequest) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest) GetDnsSettings() *NetworkSettingsRequest_DNSSettings
- func (x *NetworkSettingsRequest) GetIpv4Settings() *NetworkSettingsRequest_IPv4Settings
- func (x *NetworkSettingsRequest) GetIpv6Settings() *NetworkSettingsRequest_IPv6Settings
- func (x *NetworkSettingsRequest) GetMtu() uint32
- func (x *NetworkSettingsRequest) GetTunnelOverheadBytes() uint32
- func (x *NetworkSettingsRequest) GetTunnelRemoteAddress() string
- func (*NetworkSettingsRequest) ProtoMessage()
- func (x *NetworkSettingsRequest) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest) Reset()
- func (x *NetworkSettingsRequest) String() string
- type NetworkSettingsRequest_DNSSettings
- func (*NetworkSettingsRequest_DNSSettings) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest_DNSSettings) GetDomainName() string
- func (x *NetworkSettingsRequest_DNSSettings) GetMatchDomains() []string
- func (x *NetworkSettingsRequest_DNSSettings) GetMatchDomainsNoSearch() bool
- func (x *NetworkSettingsRequest_DNSSettings) GetSearchDomains() []string
- func (x *NetworkSettingsRequest_DNSSettings) GetServers() []string
- func (*NetworkSettingsRequest_DNSSettings) ProtoMessage()
- func (x *NetworkSettingsRequest_DNSSettings) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest_DNSSettings) Reset()
- func (x *NetworkSettingsRequest_DNSSettings) String() string
- type NetworkSettingsRequest_IPv4Settings
- func (*NetworkSettingsRequest_IPv4Settings) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest_IPv4Settings) GetAddrs() []string
- func (x *NetworkSettingsRequest_IPv4Settings) GetExcludedRoutes() []*NetworkSettingsRequest_IPv4Settings_IPv4Route
- func (x *NetworkSettingsRequest_IPv4Settings) GetIncludedRoutes() []*NetworkSettingsRequest_IPv4Settings_IPv4Route
- func (x *NetworkSettingsRequest_IPv4Settings) GetRouter() string
- func (x *NetworkSettingsRequest_IPv4Settings) GetSubnetMasks() []string
- func (*NetworkSettingsRequest_IPv4Settings) ProtoMessage()
- func (x *NetworkSettingsRequest_IPv4Settings) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest_IPv4Settings) Reset()
- func (x *NetworkSettingsRequest_IPv4Settings) String() string
- type NetworkSettingsRequest_IPv4Settings_IPv4Route
- func (*NetworkSettingsRequest_IPv4Settings_IPv4Route) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetDestination() string
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetMask() string
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetRouter() string
- func (*NetworkSettingsRequest_IPv4Settings_IPv4Route) ProtoMessage()
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) Reset()
- func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) String() string
- type NetworkSettingsRequest_IPv6Settings
- func (*NetworkSettingsRequest_IPv6Settings) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest_IPv6Settings) GetAddrs() []string
- func (x *NetworkSettingsRequest_IPv6Settings) GetExcludedRoutes() []*NetworkSettingsRequest_IPv6Settings_IPv6Route
- func (x *NetworkSettingsRequest_IPv6Settings) GetIncludedRoutes() []*NetworkSettingsRequest_IPv6Settings_IPv6Route
- func (x *NetworkSettingsRequest_IPv6Settings) GetPrefixLengths() []uint32
- func (*NetworkSettingsRequest_IPv6Settings) ProtoMessage()
- func (x *NetworkSettingsRequest_IPv6Settings) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest_IPv6Settings) Reset()
- func (x *NetworkSettingsRequest_IPv6Settings) String() string
- type NetworkSettingsRequest_IPv6Settings_IPv6Route
- func (*NetworkSettingsRequest_IPv6Settings_IPv6Route) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetDestination() string
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetPrefixLength() uint32
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetRouter() string
- func (*NetworkSettingsRequest_IPv6Settings_IPv6Route) ProtoMessage()
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) Reset()
- func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) String() string
- type NetworkSettingsResponse
- func (*NetworkSettingsResponse) Descriptor() ([]byte, []int)deprecated
- func (x *NetworkSettingsResponse) GetErrorMessage() string
- func (x *NetworkSettingsResponse) GetSuccess() bool
- func (*NetworkSettingsResponse) ProtoMessage()
- func (x *NetworkSettingsResponse) ProtoReflect() protoreflect.Message
- func (x *NetworkSettingsResponse) Reset()
- func (x *NetworkSettingsResponse) String() string
- type NetworkStack
- type Options
- type PeerUpdate
- func (*PeerUpdate) Descriptor() ([]byte, []int)deprecated
- func (x *PeerUpdate) GetDeletedAgents() []*Agent
- func (x *PeerUpdate) GetDeletedWorkspaces() []*Workspace
- func (x *PeerUpdate) GetUpsertedAgents() []*Agent
- func (x *PeerUpdate) GetUpsertedWorkspaces() []*Workspace
- func (*PeerUpdate) ProtoMessage()
- func (x *PeerUpdate) ProtoReflect() protoreflect.Message
- func (x *PeerUpdate) Reset()
- func (x *PeerUpdate) String() string
- type RPC
- type RPCVersion
- type RPCVersionList
- type ServiceMessage
- func (*ServiceMessage) Descriptor() ([]byte, []int)deprecated
- func (m *ServiceMessage) GetMsg() isServiceMessage_Msg
- func (x *ServiceMessage) GetRpc() *RPC
- func (x *ServiceMessage) GetStart() *StartResponse
- func (x *ServiceMessage) GetStatus() *Status
- func (x *ServiceMessage) GetStop() *StopResponse
- func (*ServiceMessage) ProtoMessage()
- func (x *ServiceMessage) ProtoReflect() protoreflect.Message
- func (x *ServiceMessage) Reset()
- func (x *ServiceMessage) String() string
- type ServiceMessage_Start
- type ServiceMessage_Status
- type ServiceMessage_Stop
- type SpeakerRole
- type StartRequest
- func (*StartRequest) Descriptor() ([]byte, []int)deprecated
- func (x *StartRequest) GetApiToken() string
- func (x *StartRequest) GetCoderDesktopVersion() string
- func (x *StartRequest) GetCoderUrl() string
- func (x *StartRequest) GetDeviceId() string
- func (x *StartRequest) GetDeviceOs() string
- func (x *StartRequest) GetHeaders() []*StartRequest_Header
- func (x *StartRequest) GetTunnelFileDescriptor() int32
- func (*StartRequest) ProtoMessage()
- func (x *StartRequest) ProtoReflect() protoreflect.Message
- func (x *StartRequest) Reset()
- func (x *StartRequest) String() string
- type StartRequest_Header
- func (*StartRequest_Header) Descriptor() ([]byte, []int)deprecated
- func (x *StartRequest_Header) GetName() string
- func (x *StartRequest_Header) GetValue() string
- func (*StartRequest_Header) ProtoMessage()
- func (x *StartRequest_Header) ProtoReflect() protoreflect.Message
- func (x *StartRequest_Header) Reset()
- func (x *StartRequest_Header) String() string
- type StartResponse
- func (*StartResponse) Descriptor() ([]byte, []int)deprecated
- func (x *StartResponse) GetErrorMessage() string
- func (x *StartResponse) GetSuccess() bool
- func (*StartResponse) ProtoMessage()
- func (x *StartResponse) ProtoReflect() protoreflect.Message
- func (x *StartResponse) Reset()
- func (x *StartResponse) String() string
- type Status
- func (*Status) Descriptor() ([]byte, []int)deprecated
- func (x *Status) GetErrorMessage() string
- func (x *Status) GetLifecycle() Status_Lifecycle
- func (x *Status) GetPeerUpdate() *PeerUpdate
- func (*Status) ProtoMessage()
- func (x *Status) ProtoReflect() protoreflect.Message
- func (x *Status) Reset()
- func (x *Status) String() string
- type StatusRequest
- type Status_Lifecycle
- func (Status_Lifecycle) Descriptor() protoreflect.EnumDescriptor
- func (x Status_Lifecycle) Enum() *Status_Lifecycle
- func (Status_Lifecycle) EnumDescriptor() ([]byte, []int)deprecated
- func (x Status_Lifecycle) Number() protoreflect.EnumNumber
- func (x Status_Lifecycle) String() string
- func (Status_Lifecycle) Type() protoreflect.EnumType
- type StopRequest
- type StopResponse
- func (*StopResponse) Descriptor() ([]byte, []int)deprecated
- func (x *StopResponse) GetErrorMessage() string
- func (x *StopResponse) GetSuccess() bool
- func (*StopResponse) ProtoMessage()
- func (x *StopResponse) ProtoReflect() protoreflect.Message
- func (x *StopResponse) Reset()
- func (x *StopResponse) String() string
- type Tunnel
- type TunnelMessage
- func (*TunnelMessage) Descriptor() ([]byte, []int)deprecated
- func (t *TunnelMessage) EnsureRPC() *RPC
- func (x *TunnelMessage) GetLog() *Log
- func (m *TunnelMessage) GetMsg() isTunnelMessage_Msg
- func (x *TunnelMessage) GetNetworkSettings() *NetworkSettingsRequest
- func (x *TunnelMessage) GetPeerUpdate() *PeerUpdate
- func (x *TunnelMessage) GetRpc() *RPC
- func (x *TunnelMessage) GetStart() *StartResponse
- func (x *TunnelMessage) GetStop() *StopResponse
- func (*TunnelMessage) ProtoMessage()
- func (x *TunnelMessage) ProtoReflect() protoreflect.Message
- func (x *TunnelMessage) Reset()
- func (x *TunnelMessage) String() string
- type TunnelMessage_Log
- type TunnelMessage_NetworkSettings
- type TunnelMessage_PeerUpdate
- type TunnelMessage_Start
- type TunnelMessage_Stop
- type TunnelOption
- type Workspace
- func (*Workspace) Descriptor() ([]byte, []int)deprecated
- func (x *Workspace) GetId() []byte
- func (x *Workspace) GetName() string
- func (x *Workspace) GetStatus() Workspace_Status
- func (*Workspace) ProtoMessage()
- func (x *Workspace) ProtoReflect() protoreflect.Message
- func (x *Workspace) Reset()
- func (x *Workspace) String() string
- type Workspace_Status
- func (Workspace_Status) Descriptor() protoreflect.EnumDescriptor
- func (x Workspace_Status) Enum() *Workspace_Status
- func (Workspace_Status) EnumDescriptor() ([]byte, []int)deprecated
- func (x Workspace_Status) Number() protoreflect.EnumNumber
- func (x Workspace_Status) String() string
- func (Workspace_Status) Type() protoreflect.EnumType
Constants¶
const MaxLength = 0x1000000// 16MiB
MaxLength is the largest possible CoderVPN Protocol message size. This is setso that a misbehaving peer can't cause us to allocate a huge amount of memory.
Variables¶
var (Log_Level_name = map[int32]string{0: "DEBUG",1: "INFO",2: "WARN",3: "ERROR",4: "CRITICAL",5: "FATAL",}Log_Level_value = map[string]int32{"DEBUG": 0,"INFO": 1,"WARN": 2,"ERROR": 3,"CRITICAL": 4,"FATAL": 5,})
Enum value maps for Log_Level.
var (Workspace_Status_name = map[int32]string{0: "UNKNOWN",1: "PENDING",2: "STARTING",3: "RUNNING",4: "STOPPING",5: "STOPPED",6: "FAILED",7: "CANCELING",8: "CANCELED",9: "DELETING",10: "DELETED",}Workspace_Status_value = map[string]int32{"UNKNOWN": 0,"PENDING": 1,"STARTING": 2,"RUNNING": 3,"STOPPING": 4,"STOPPED": 5,"FAILED": 6,"CANCELING": 7,"CANCELED": 8,"DELETING": 9,"DELETED": 10,})
Enum value maps for Workspace_Status.
var (Status_Lifecycle_name = map[int32]string{0: "UNKNOWN",1: "STARTING",2: "STARTED",3: "STOPPING",4: "STOPPED",}Status_Lifecycle_value = map[string]int32{"UNKNOWN": 0,"STARTING": 1,"STARTED": 2,"STOPPING": 3,"STOPPED": 4,})
Enum value maps for Status_Lifecycle.
var CurrentSupportedVersions =RPCVersionList{Versions: []RPCVersion{{Major: 1, Minor: 1},},}
CurrentSupportedVersions is the list of versions supported by thisimplementation of the VPN RPC protocol.
var File_vpn_vpn_protoprotoreflect.FileDescriptor
Functions¶
funcNewDNSConfigurator¶added inv2.18.0
func NewDNSConfigurator(t *Tunnel)dns.OSConfigurator
Types¶
typeAgent¶
type Agent struct {Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`// UUIDNamestring `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`WorkspaceId []byte `protobuf:"bytes,3,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"`// UUIDFqdn []string `protobuf:"bytes,4,rep,name=fqdn,proto3" json:"fqdn,omitempty"`IpAddrs []string `protobuf:"bytes,5,rep,name=ip_addrs,json=ipAddrs,proto3" json:"ip_addrs,omitempty"`// last_handshake is the primary indicator of whether we are connected to a peer. Zero value or// anything longer than 5 minutes ago means there is a problem.LastHandshake *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=last_handshake,json=lastHandshake,proto3" json:"last_handshake,omitempty"`// contains filtered or unexported fields}
func (*Agent)Descriptordeprecated
func (*Agent)GetIpAddrs¶
func (*Agent)GetLastHandshake¶
func (x *Agent) GetLastHandshake() *timestamppb.Timestamp
func (*Agent)GetWorkspaceId¶
func (*Agent)ProtoMessage¶
func (*Agent) ProtoMessage()
func (*Agent)ProtoReflect¶
func (x *Agent) ProtoReflect()protoreflect.Message
typeBidirectionalPipe¶added inv2.18.0
type BidirectionalPipe struct {// contains filtered or unexported fields}
BidirectionalPipe combines a pair of files that can be used for bidirectionalcommunication.
funcNewBidirectionalPipe¶added inv2.18.0
func NewBidirectionalPipe(readFd, writeFduintptr) (BidirectionalPipe,error)
NewBidirectionalPipe creates a new BidirectionalPipe from the given filedescriptors.
func (BidirectionalPipe)Close¶added inv2.18.0
func (bBidirectionalPipe) Close()error
Close implements io.Closer. Both the read and write pipes are closed.
typeClient¶added inv2.19.0
typeClientMessage¶added inv2.22.0
type ClientMessage struct {Rpc *RPC `protobuf:"bytes,1,opt,name=rpc,proto3" json:"rpc,omitempty"`// Types that are assignable to Msg:////*ClientMessage_Start//*ClientMessage_Stop//*ClientMessage_StatusMsg isClientMessage_Msg `protobuf_oneof:"msg"`// contains filtered or unexported fields}
ClientMessage is a message from the client (to the service). Windows only.
func (*ClientMessage)Descriptordeprecatedadded inv2.22.0
func (*ClientMessage) Descriptor() ([]byte, []int)
Deprecated: Use ClientMessage.ProtoReflect.Descriptor instead.
func (*ClientMessage)GetMsg¶added inv2.22.0
func (m *ClientMessage) GetMsg() isClientMessage_Msg
func (*ClientMessage)GetRpc¶added inv2.22.0
func (x *ClientMessage) GetRpc() *RPC
func (*ClientMessage)GetStart¶added inv2.22.0
func (x *ClientMessage) GetStart() *StartRequest
func (*ClientMessage)GetStatus¶added inv2.22.0
func (x *ClientMessage) GetStatus() *StatusRequest
func (*ClientMessage)GetStop¶added inv2.22.0
func (x *ClientMessage) GetStop() *StopRequest
func (*ClientMessage)ProtoMessage¶added inv2.22.0
func (*ClientMessage) ProtoMessage()
func (*ClientMessage)ProtoReflect¶added inv2.22.0
func (x *ClientMessage) ProtoReflect()protoreflect.Message
func (*ClientMessage)Reset¶added inv2.22.0
func (x *ClientMessage) Reset()
func (*ClientMessage)String¶added inv2.22.0
func (x *ClientMessage) String()string
typeClientMessage_Start¶added inv2.22.0
type ClientMessage_Start struct {Start *StartRequest `protobuf:"bytes,2,opt,name=start,proto3,oneof"`}
typeClientMessage_Status¶added inv2.22.0
type ClientMessage_Status struct {Status *StatusRequest `protobuf:"bytes,4,opt,name=status,proto3,oneof"`}
typeClientMessage_Stop¶added inv2.22.0
type ClientMessage_Stop struct {Stop *StopRequest `protobuf:"bytes,3,opt,name=stop,proto3,oneof"`}
typeConn¶added inv2.19.0
type Conn interface {CurrentWorkspaceState() (tailnet.WorkspaceUpdate,error)GetPeerDiagnostics(peerIDuuid.UUID)tailnet.PeerDiagnosticsClose()error}
typeGetPeerUpdate¶
type GetPeerUpdate struct {// contains filtered or unexported fields}
GetPeerUpdate asks for a PeerUpdate with a full set of data.
func (*GetPeerUpdate)Descriptordeprecated
func (*GetPeerUpdate) Descriptor() ([]byte, []int)
Deprecated: Use GetPeerUpdate.ProtoReflect.Descriptor instead.
func (*GetPeerUpdate)ProtoMessage¶
func (*GetPeerUpdate) ProtoMessage()
func (*GetPeerUpdate)ProtoReflect¶
func (x *GetPeerUpdate) ProtoReflect()protoreflect.Message
func (*GetPeerUpdate)Reset¶
func (x *GetPeerUpdate) Reset()
func (*GetPeerUpdate)String¶
func (x *GetPeerUpdate) String()string
typeLog¶
type Log struct {LevelLog_Level `protobuf:"varint,1,opt,name=level,proto3,enum=vpn.Log_Level" json:"level,omitempty"`Messagestring `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`LoggerNames []string `protobuf:"bytes,3,rep,name=logger_names,json=loggerNames,proto3" json:"logger_names,omitempty"`Fields []*Log_Field `protobuf:"bytes,4,rep,name=fields,proto3" json:"fields,omitempty"`// contains filtered or unexported fields}
Log is a log message generated by the tunnel. The manager should log it to the system log. It isone-way tunnel -> manager with no response.
func (*Log)Descriptordeprecated
func (*Log)GetLoggerNames¶
func (*Log)GetMessage¶
func (*Log)ProtoMessage¶
func (*Log) ProtoMessage()
func (*Log)ProtoReflect¶
func (x *Log) ProtoReflect()protoreflect.Message
typeLog_Field¶
type Log_Field struct {Namestring `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`Valuestring `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`// contains filtered or unexported fields}
func (*Log_Field)Descriptordeprecated
func (*Log_Field)ProtoMessage¶
func (*Log_Field) ProtoMessage()
func (*Log_Field)ProtoReflect¶
func (x *Log_Field) ProtoReflect()protoreflect.Message
typeLog_Level¶
type Log_Levelint32
func (Log_Level)Descriptor¶
func (Log_Level) Descriptor()protoreflect.EnumDescriptor
func (Log_Level)EnumDescriptordeprecated
func (Log_Level)Number¶
func (xLog_Level) Number()protoreflect.EnumNumber
func (Log_Level)Type¶
func (Log_Level) Type()protoreflect.EnumType
typeManagerMessage¶
type ManagerMessage struct {Rpc *RPC `protobuf:"bytes,1,opt,name=rpc,proto3" json:"rpc,omitempty"`// Types that are assignable to Msg:////*ManagerMessage_GetPeerUpdate//*ManagerMessage_NetworkSettings//*ManagerMessage_Start//*ManagerMessage_StopMsg isManagerMessage_Msg `protobuf_oneof:"msg"`// contains filtered or unexported fields}
ManagerMessage is a message from the manager (to the tunnel).
func (*ManagerMessage)Descriptordeprecated
func (*ManagerMessage) Descriptor() ([]byte, []int)
Deprecated: Use ManagerMessage.ProtoReflect.Descriptor instead.
func (*ManagerMessage)EnsureRPC¶
func (m *ManagerMessage) EnsureRPC() *RPC
func (*ManagerMessage)GetGetPeerUpdate¶
func (x *ManagerMessage) GetGetPeerUpdate() *GetPeerUpdate
func (*ManagerMessage)GetMsg¶
func (m *ManagerMessage) GetMsg() isManagerMessage_Msg
func (*ManagerMessage)GetNetworkSettings¶
func (x *ManagerMessage) GetNetworkSettings() *NetworkSettingsResponse
func (*ManagerMessage)GetRpc¶
func (x *ManagerMessage) GetRpc() *RPC
func (*ManagerMessage)GetStart¶
func (x *ManagerMessage) GetStart() *StartRequest
func (*ManagerMessage)GetStop¶
func (x *ManagerMessage) GetStop() *StopRequest
func (*ManagerMessage)ProtoMessage¶
func (*ManagerMessage) ProtoMessage()
func (*ManagerMessage)ProtoReflect¶
func (x *ManagerMessage) ProtoReflect()protoreflect.Message
func (*ManagerMessage)Reset¶
func (x *ManagerMessage) Reset()
func (*ManagerMessage)String¶
func (x *ManagerMessage) String()string
typeManagerMessage_GetPeerUpdate¶
type ManagerMessage_GetPeerUpdate struct {GetPeerUpdate *GetPeerUpdate `protobuf:"bytes,2,opt,name=get_peer_update,json=getPeerUpdate,proto3,oneof"`}
typeManagerMessage_NetworkSettings¶
type ManagerMessage_NetworkSettings struct {NetworkSettings *NetworkSettingsResponse `protobuf:"bytes,3,opt,name=network_settings,json=networkSettings,proto3,oneof"`}
typeManagerMessage_Start¶
type ManagerMessage_Start struct {Start *StartRequest `protobuf:"bytes,4,opt,name=start,proto3,oneof"`}
typeManagerMessage_Stop¶
type ManagerMessage_Stop struct {Stop *StopRequest `protobuf:"bytes,5,opt,name=stop,proto3,oneof"`}
typeNetworkSettingsRequest¶
type NetworkSettingsRequest struct {TunnelOverheadBytesuint32 `protobuf:"varint,1,opt,name=tunnel_overhead_bytes,json=tunnelOverheadBytes,proto3" json:"tunnel_overhead_bytes,omitempty"`Mtuuint32 `protobuf:"varint,2,opt,name=mtu,proto3" json:"mtu,omitempty"`DnsSettings *NetworkSettingsRequest_DNSSettings `protobuf:"bytes,3,opt,name=dns_settings,json=dnsSettings,proto3" json:"dns_settings,omitempty"`TunnelRemoteAddressstring `protobuf:"bytes,4,opt,name=tunnel_remote_address,json=tunnelRemoteAddress,proto3" json:"tunnel_remote_address,omitempty"`Ipv4Settings *NetworkSettingsRequest_IPv4Settings `protobuf:"bytes,5,opt,name=ipv4_settings,json=ipv4Settings,proto3" json:"ipv4_settings,omitempty"`Ipv6Settings *NetworkSettingsRequest_IPv6Settings `protobuf:"bytes,6,opt,name=ipv6_settings,json=ipv6Settings,proto3" json:"ipv6_settings,omitempty"`// contains filtered or unexported fields}
NetworkSettingsRequest is based onhttps://developer.apple.com/documentation/networkextension/nepackettunnelnetworksettings formacOS. It is a request/response message with response NetworkSettingsResponse
func (*NetworkSettingsRequest)Descriptordeprecated
func (*NetworkSettingsRequest) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest)GetDnsSettings¶
func (x *NetworkSettingsRequest) GetDnsSettings() *NetworkSettingsRequest_DNSSettings
func (*NetworkSettingsRequest)GetIpv4Settings¶
func (x *NetworkSettingsRequest) GetIpv4Settings() *NetworkSettingsRequest_IPv4Settings
func (*NetworkSettingsRequest)GetIpv6Settings¶
func (x *NetworkSettingsRequest) GetIpv6Settings() *NetworkSettingsRequest_IPv6Settings
func (*NetworkSettingsRequest)GetMtu¶
func (x *NetworkSettingsRequest) GetMtu()uint32
func (*NetworkSettingsRequest)GetTunnelOverheadBytes¶
func (x *NetworkSettingsRequest) GetTunnelOverheadBytes()uint32
func (*NetworkSettingsRequest)GetTunnelRemoteAddress¶
func (x *NetworkSettingsRequest) GetTunnelRemoteAddress()string
func (*NetworkSettingsRequest)ProtoMessage¶
func (*NetworkSettingsRequest) ProtoMessage()
func (*NetworkSettingsRequest)ProtoReflect¶
func (x *NetworkSettingsRequest) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest)Reset¶
func (x *NetworkSettingsRequest) Reset()
func (*NetworkSettingsRequest)String¶
func (x *NetworkSettingsRequest) String()string
typeNetworkSettingsRequest_DNSSettings¶
type NetworkSettingsRequest_DNSSettings struct {Servers []string `protobuf:"bytes,1,rep,name=servers,proto3" json:"servers,omitempty"`SearchDomains []string `protobuf:"bytes,2,rep,name=search_domains,json=searchDomains,proto3" json:"search_domains,omitempty"`// domain_name is the primary domain name of the tunnelDomainNamestring `protobuf:"bytes,3,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"`MatchDomains []string `protobuf:"bytes,4,rep,name=match_domains,json=matchDomains,proto3" json:"match_domains,omitempty"`// match_domains_no_search specifies if the domains in the matchDomains list should not be// appended to the resolver’s list of search domains.MatchDomainsNoSearchbool ``/* 126-byte string literal not displayed */// contains filtered or unexported fields}
func (*NetworkSettingsRequest_DNSSettings)Descriptordeprecated
func (*NetworkSettingsRequest_DNSSettings) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest_DNSSettings.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest_DNSSettings)GetDomainName¶
func (x *NetworkSettingsRequest_DNSSettings) GetDomainName()string
func (*NetworkSettingsRequest_DNSSettings)GetMatchDomains¶
func (x *NetworkSettingsRequest_DNSSettings) GetMatchDomains() []string
func (*NetworkSettingsRequest_DNSSettings)GetMatchDomainsNoSearch¶
func (x *NetworkSettingsRequest_DNSSettings) GetMatchDomainsNoSearch()bool
func (*NetworkSettingsRequest_DNSSettings)GetSearchDomains¶
func (x *NetworkSettingsRequest_DNSSettings) GetSearchDomains() []string
func (*NetworkSettingsRequest_DNSSettings)GetServers¶
func (x *NetworkSettingsRequest_DNSSettings) GetServers() []string
func (*NetworkSettingsRequest_DNSSettings)ProtoMessage¶
func (*NetworkSettingsRequest_DNSSettings) ProtoMessage()
func (*NetworkSettingsRequest_DNSSettings)ProtoReflect¶
func (x *NetworkSettingsRequest_DNSSettings) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest_DNSSettings)Reset¶
func (x *NetworkSettingsRequest_DNSSettings) Reset()
func (*NetworkSettingsRequest_DNSSettings)String¶
func (x *NetworkSettingsRequest_DNSSettings) String()string
typeNetworkSettingsRequest_IPv4Settings¶
type NetworkSettingsRequest_IPv4Settings struct {Addrs []string `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs,omitempty"`SubnetMasks []string `protobuf:"bytes,2,rep,name=subnet_masks,json=subnetMasks,proto3" json:"subnet_masks,omitempty"`// router is the next-hop router in dotted-decimal formatRouterstring `protobuf:"bytes,3,opt,name=router,proto3" json:"router,omitempty"`IncludedRoutes []*NetworkSettingsRequest_IPv4Settings_IPv4Route `protobuf:"bytes,4,rep,name=included_routes,json=includedRoutes,proto3" json:"included_routes,omitempty"`ExcludedRoutes []*NetworkSettingsRequest_IPv4Settings_IPv4Route `protobuf:"bytes,5,rep,name=excluded_routes,json=excludedRoutes,proto3" json:"excluded_routes,omitempty"`// contains filtered or unexported fields}
func (*NetworkSettingsRequest_IPv4Settings)Descriptordeprecated
func (*NetworkSettingsRequest_IPv4Settings) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest_IPv4Settings.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest_IPv4Settings)GetAddrs¶
func (x *NetworkSettingsRequest_IPv4Settings) GetAddrs() []string
func (*NetworkSettingsRequest_IPv4Settings)GetExcludedRoutes¶
func (x *NetworkSettingsRequest_IPv4Settings) GetExcludedRoutes() []*NetworkSettingsRequest_IPv4Settings_IPv4Route
func (*NetworkSettingsRequest_IPv4Settings)GetIncludedRoutes¶
func (x *NetworkSettingsRequest_IPv4Settings) GetIncludedRoutes() []*NetworkSettingsRequest_IPv4Settings_IPv4Route
func (*NetworkSettingsRequest_IPv4Settings)GetRouter¶
func (x *NetworkSettingsRequest_IPv4Settings) GetRouter()string
func (*NetworkSettingsRequest_IPv4Settings)GetSubnetMasks¶
func (x *NetworkSettingsRequest_IPv4Settings) GetSubnetMasks() []string
func (*NetworkSettingsRequest_IPv4Settings)ProtoMessage¶
func (*NetworkSettingsRequest_IPv4Settings) ProtoMessage()
func (*NetworkSettingsRequest_IPv4Settings)ProtoReflect¶
func (x *NetworkSettingsRequest_IPv4Settings) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest_IPv4Settings)Reset¶
func (x *NetworkSettingsRequest_IPv4Settings) Reset()
func (*NetworkSettingsRequest_IPv4Settings)String¶
func (x *NetworkSettingsRequest_IPv4Settings) String()string
typeNetworkSettingsRequest_IPv4Settings_IPv4Route¶
type NetworkSettingsRequest_IPv4Settings_IPv4Route struct {Destinationstring `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`Maskstring `protobuf:"bytes,2,opt,name=mask,proto3" json:"mask,omitempty"`// router is the next-hop router in dotted-decimal formatRouterstring `protobuf:"bytes,3,opt,name=router,proto3" json:"router,omitempty"`// contains filtered or unexported fields}
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)Descriptordeprecated
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest_IPv4Settings_IPv4Route.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)GetDestination¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetDestination()string
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)GetMask¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetMask()string
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)GetRouter¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) GetRouter()string
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)ProtoMessage¶
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route) ProtoMessage()
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)ProtoReflect¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)Reset¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) Reset()
func (*NetworkSettingsRequest_IPv4Settings_IPv4Route)String¶
func (x *NetworkSettingsRequest_IPv4Settings_IPv4Route) String()string
typeNetworkSettingsRequest_IPv6Settings¶
type NetworkSettingsRequest_IPv6Settings struct {Addrs []string `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs,omitempty"`PrefixLengths []uint32 `protobuf:"varint,2,rep,packed,name=prefix_lengths,json=prefixLengths,proto3" json:"prefix_lengths,omitempty"`IncludedRoutes []*NetworkSettingsRequest_IPv6Settings_IPv6Route `protobuf:"bytes,3,rep,name=included_routes,json=includedRoutes,proto3" json:"included_routes,omitempty"`ExcludedRoutes []*NetworkSettingsRequest_IPv6Settings_IPv6Route `protobuf:"bytes,4,rep,name=excluded_routes,json=excludedRoutes,proto3" json:"excluded_routes,omitempty"`// contains filtered or unexported fields}
func (*NetworkSettingsRequest_IPv6Settings)Descriptordeprecated
func (*NetworkSettingsRequest_IPv6Settings) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest_IPv6Settings.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest_IPv6Settings)GetAddrs¶
func (x *NetworkSettingsRequest_IPv6Settings) GetAddrs() []string
func (*NetworkSettingsRequest_IPv6Settings)GetExcludedRoutes¶
func (x *NetworkSettingsRequest_IPv6Settings) GetExcludedRoutes() []*NetworkSettingsRequest_IPv6Settings_IPv6Route
func (*NetworkSettingsRequest_IPv6Settings)GetIncludedRoutes¶
func (x *NetworkSettingsRequest_IPv6Settings) GetIncludedRoutes() []*NetworkSettingsRequest_IPv6Settings_IPv6Route
func (*NetworkSettingsRequest_IPv6Settings)GetPrefixLengths¶
func (x *NetworkSettingsRequest_IPv6Settings) GetPrefixLengths() []uint32
func (*NetworkSettingsRequest_IPv6Settings)ProtoMessage¶
func (*NetworkSettingsRequest_IPv6Settings) ProtoMessage()
func (*NetworkSettingsRequest_IPv6Settings)ProtoReflect¶
func (x *NetworkSettingsRequest_IPv6Settings) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest_IPv6Settings)Reset¶
func (x *NetworkSettingsRequest_IPv6Settings) Reset()
func (*NetworkSettingsRequest_IPv6Settings)String¶
func (x *NetworkSettingsRequest_IPv6Settings) String()string
typeNetworkSettingsRequest_IPv6Settings_IPv6Route¶
type NetworkSettingsRequest_IPv6Settings_IPv6Route struct {Destinationstring `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`PrefixLengthuint32 `protobuf:"varint,2,opt,name=prefix_length,json=prefixLength,proto3" json:"prefix_length,omitempty"`// router is the address of the next-hopRouterstring `protobuf:"bytes,3,opt,name=router,proto3" json:"router,omitempty"`// contains filtered or unexported fields}
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)Descriptordeprecated
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsRequest_IPv6Settings_IPv6Route.ProtoReflect.Descriptor instead.
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)GetDestination¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetDestination()string
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)GetPrefixLength¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetPrefixLength()uint32
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)GetRouter¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) GetRouter()string
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)ProtoMessage¶
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route) ProtoMessage()
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)ProtoReflect¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) ProtoReflect()protoreflect.Message
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)Reset¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) Reset()
func (*NetworkSettingsRequest_IPv6Settings_IPv6Route)String¶
func (x *NetworkSettingsRequest_IPv6Settings_IPv6Route) String()string
typeNetworkSettingsResponse¶
type NetworkSettingsResponse struct {Successbool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`ErrorMessagestring `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`// contains filtered or unexported fields}
NetworkSettingsResponse is the response from the manager to the tunnel for aNetworkSettingsRequest
func (*NetworkSettingsResponse)Descriptordeprecated
func (*NetworkSettingsResponse) Descriptor() ([]byte, []int)
Deprecated: Use NetworkSettingsResponse.ProtoReflect.Descriptor instead.
func (*NetworkSettingsResponse)GetErrorMessage¶
func (x *NetworkSettingsResponse) GetErrorMessage()string
func (*NetworkSettingsResponse)GetSuccess¶
func (x *NetworkSettingsResponse) GetSuccess()bool
func (*NetworkSettingsResponse)ProtoMessage¶
func (*NetworkSettingsResponse) ProtoMessage()
func (*NetworkSettingsResponse)ProtoReflect¶
func (x *NetworkSettingsResponse) ProtoReflect()protoreflect.Message
func (*NetworkSettingsResponse)Reset¶
func (x *NetworkSettingsResponse) Reset()
func (*NetworkSettingsResponse)String¶
func (x *NetworkSettingsResponse) String()string
typeNetworkStack¶added inv2.20.0
type NetworkStack struct {WireguardMonitor *netmon.MonitorTUNDevicetun.DeviceRouterrouter.RouterDNSConfiguratordns.OSConfigurator}
funcGetNetworkingStack¶added inv2.20.0
func GetNetworkingStack(_ *Tunnel, _ *StartRequest, _slog.Logger) (NetworkStack,error)
This is a no-op on every platform except Darwin and Windows.
typePeerUpdate¶
type PeerUpdate struct {UpsertedWorkspaces []*Workspace `protobuf:"bytes,1,rep,name=upserted_workspaces,json=upsertedWorkspaces,proto3" json:"upserted_workspaces,omitempty"`UpsertedAgents []*Agent `protobuf:"bytes,2,rep,name=upserted_agents,json=upsertedAgents,proto3" json:"upserted_agents,omitempty"`DeletedWorkspaces []*Workspace `protobuf:"bytes,3,rep,name=deleted_workspaces,json=deletedWorkspaces,proto3" json:"deleted_workspaces,omitempty"`DeletedAgents []*Agent `protobuf:"bytes,4,rep,name=deleted_agents,json=deletedAgents,proto3" json:"deleted_agents,omitempty"`// contains filtered or unexported fields}
PeerUpdate is an update about workspaces and agents connected via the tunnel. It is generated inresponse to GetPeerUpdate (which dumps the full set). It is also generated on any changes (not inresponse to any request).
func (*PeerUpdate)Descriptordeprecated
func (*PeerUpdate) Descriptor() ([]byte, []int)
Deprecated: Use PeerUpdate.ProtoReflect.Descriptor instead.
func (*PeerUpdate)GetDeletedAgents¶
func (x *PeerUpdate) GetDeletedAgents() []*Agent
func (*PeerUpdate)GetDeletedWorkspaces¶
func (x *PeerUpdate) GetDeletedWorkspaces() []*Workspace
func (*PeerUpdate)GetUpsertedAgents¶
func (x *PeerUpdate) GetUpsertedAgents() []*Agent
func (*PeerUpdate)GetUpsertedWorkspaces¶
func (x *PeerUpdate) GetUpsertedWorkspaces() []*Workspace
func (*PeerUpdate)ProtoMessage¶
func (*PeerUpdate) ProtoMessage()
func (*PeerUpdate)ProtoReflect¶
func (x *PeerUpdate) ProtoReflect()protoreflect.Message
func (*PeerUpdate)Reset¶
func (x *PeerUpdate) Reset()
func (*PeerUpdate)String¶
func (x *PeerUpdate) String()string
typeRPC¶
type RPC struct {MsgIduint64 `protobuf:"varint,1,opt,name=msg_id,json=msgId,proto3" json:"msg_id,omitempty"`ResponseTouint64 `protobuf:"varint,2,opt,name=response_to,json=responseTo,proto3" json:"response_to,omitempty"`// contains filtered or unexported fields}
RPC allows a very simple unary request/response RPC mechanism. The requester generates a uniquemsg_id which it sets on the request, the responder sets response_to that msg_id on the responsemessage
func (*RPC)Descriptordeprecated
func (*RPC)GetResponseTo¶
func (*RPC)ProtoMessage¶
func (*RPC) ProtoMessage()
func (*RPC)ProtoReflect¶
func (x *RPC) ProtoReflect()protoreflect.Message
typeRPCVersion¶added inv2.19.0
RPCVersion represents a single version of the RPC protocol. Any given versionis expected to be backwards compatible with all previous minor versions onthe same major version.
e.g. RPCVersion{2, 3} is backwards compatible with RPCVersion{2, 2} but isnot backwards compatible with RPCVersion{1, 2}.
funcParseRPCVersion¶added inv2.19.0
func ParseRPCVersion(strstring) (RPCVersion,error)
ParseRPCVersion parses a version string in the format "major.minor" into aRPCVersion.
func (RPCVersion)IsCompatibleWith¶added inv2.19.0
func (vRPCVersion) IsCompatibleWith(otherRPCVersion) (RPCVersion,bool)
IsCompatibleWith returns the lowest version that is compatible with bothversions. If the versions are not compatible, the second return value will befalse.
func (RPCVersion)String¶added inv2.19.0
func (vRPCVersion) String()string
typeRPCVersionList¶added inv2.19.0
type RPCVersionList struct {Versions []RPCVersion `json:"versions"`}
RPCVersionList represents a list of RPC versions supported by a RPC peer. An
funcParseRPCVersionList¶added inv2.19.0
func ParseRPCVersionList(strstring) (RPCVersionList,error)
ParseRPCVersionList parses a version string in the format"major.minor,major.minor" into a RPCVersionList.
func (RPCVersionList)IsCompatibleWith¶added inv2.19.0
func (vlRPCVersionList) IsCompatibleWith(otherRPCVersionList) (RPCVersion,bool)
IsCompatibleWith returns the lowest version that is compatible with bothversion lists. If the versions are not compatible, the second return valuewill be false.
func (RPCVersionList)String¶added inv2.19.0
func (vlRPCVersionList) String()string
func (RPCVersionList)Validate¶added inv2.19.0
func (vlRPCVersionList) Validate()error
Validate returns an error if the version list is not sorted or containsduplicate major versions.
typeServiceMessage¶added inv2.22.0
type ServiceMessage struct {Rpc *RPC `protobuf:"bytes,1,opt,name=rpc,proto3" json:"rpc,omitempty"`// Types that are assignable to Msg:////*ServiceMessage_Start//*ServiceMessage_Stop//*ServiceMessage_StatusMsg isServiceMessage_Msg `protobuf_oneof:"msg"`// contains filtered or unexported fields}
ServiceMessage is a message from the service (to the client). Windows only.
func (*ServiceMessage)Descriptordeprecatedadded inv2.22.0
func (*ServiceMessage) Descriptor() ([]byte, []int)
Deprecated: Use ServiceMessage.ProtoReflect.Descriptor instead.
func (*ServiceMessage)GetMsg¶added inv2.22.0
func (m *ServiceMessage) GetMsg() isServiceMessage_Msg
func (*ServiceMessage)GetRpc¶added inv2.22.0
func (x *ServiceMessage) GetRpc() *RPC
func (*ServiceMessage)GetStart¶added inv2.22.0
func (x *ServiceMessage) GetStart() *StartResponse
func (*ServiceMessage)GetStatus¶added inv2.22.0
func (x *ServiceMessage) GetStatus() *Status
func (*ServiceMessage)GetStop¶added inv2.22.0
func (x *ServiceMessage) GetStop() *StopResponse
func (*ServiceMessage)ProtoMessage¶added inv2.22.0
func (*ServiceMessage) ProtoMessage()
func (*ServiceMessage)ProtoReflect¶added inv2.22.0
func (x *ServiceMessage) ProtoReflect()protoreflect.Message
func (*ServiceMessage)Reset¶added inv2.22.0
func (x *ServiceMessage) Reset()
func (*ServiceMessage)String¶added inv2.22.0
func (x *ServiceMessage) String()string
typeServiceMessage_Start¶added inv2.22.0
type ServiceMessage_Start struct {Start *StartResponse `protobuf:"bytes,2,opt,name=start,proto3,oneof"`}
typeServiceMessage_Status¶added inv2.22.0
type ServiceMessage_Status struct {Status *Status `protobuf:"bytes,4,opt,name=status,proto3,oneof"`// either in reply to a StatusRequest or broadcasted}
typeServiceMessage_Stop¶added inv2.22.0
type ServiceMessage_Stop struct {Stop *StopResponse `protobuf:"bytes,3,opt,name=stop,proto3,oneof"`}
typeSpeakerRole¶
type SpeakerRolestring
const (SpeakerRoleManagerSpeakerRole = "manager"SpeakerRoleTunnelSpeakerRole = "tunnel")
typeStartRequest¶
type StartRequest struct {TunnelFileDescriptorint32 `protobuf:"varint,1,opt,name=tunnel_file_descriptor,json=tunnelFileDescriptor,proto3" json:"tunnel_file_descriptor,omitempty"`CoderUrlstring `protobuf:"bytes,2,opt,name=coder_url,json=coderUrl,proto3" json:"coder_url,omitempty"`ApiTokenstring `protobuf:"bytes,3,opt,name=api_token,json=apiToken,proto3" json:"api_token,omitempty"`Headers []*StartRequest_Header `protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty"`// Device ID from Coder DesktopDeviceIdstring `protobuf:"bytes,5,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`// Device OS from Coder DesktopDeviceOsstring `protobuf:"bytes,6,opt,name=device_os,json=deviceOs,proto3" json:"device_os,omitempty"`// Coder Desktop versionCoderDesktopVersionstring `protobuf:"bytes,7,opt,name=coder_desktop_version,json=coderDesktopVersion,proto3" json:"coder_desktop_version,omitempty"`// contains filtered or unexported fields}
StartRequest is a request from the manager to start the tunnel. The tunnel replies with aStartResponse.
func (*StartRequest)Descriptordeprecated
func (*StartRequest) Descriptor() ([]byte, []int)
Deprecated: Use StartRequest.ProtoReflect.Descriptor instead.
func (*StartRequest)GetApiToken¶
func (x *StartRequest) GetApiToken()string
func (*StartRequest)GetCoderDesktopVersion¶added inv2.21.0
func (x *StartRequest) GetCoderDesktopVersion()string
func (*StartRequest)GetCoderUrl¶
func (x *StartRequest) GetCoderUrl()string
func (*StartRequest)GetDeviceId¶added inv2.21.0
func (x *StartRequest) GetDeviceId()string
func (*StartRequest)GetDeviceOs¶added inv2.21.0
func (x *StartRequest) GetDeviceOs()string
func (*StartRequest)GetHeaders¶added inv2.19.0
func (x *StartRequest) GetHeaders() []*StartRequest_Header
func (*StartRequest)GetTunnelFileDescriptor¶
func (x *StartRequest) GetTunnelFileDescriptor()int32
func (*StartRequest)ProtoMessage¶
func (*StartRequest) ProtoMessage()
func (*StartRequest)ProtoReflect¶
func (x *StartRequest) ProtoReflect()protoreflect.Message
func (*StartRequest)Reset¶
func (x *StartRequest) Reset()
func (*StartRequest)String¶
func (x *StartRequest) String()string
typeStartRequest_Header¶added inv2.19.0
type StartRequest_Header struct {Namestring `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`Valuestring `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`// contains filtered or unexported fields}
Additional HTTP headers added to all requests
func (*StartRequest_Header)Descriptordeprecatedadded inv2.19.0
func (*StartRequest_Header) Descriptor() ([]byte, []int)
Deprecated: Use StartRequest_Header.ProtoReflect.Descriptor instead.
func (*StartRequest_Header)GetName¶added inv2.19.0
func (x *StartRequest_Header) GetName()string
func (*StartRequest_Header)GetValue¶added inv2.19.0
func (x *StartRequest_Header) GetValue()string
func (*StartRequest_Header)ProtoMessage¶added inv2.19.0
func (*StartRequest_Header) ProtoMessage()
func (*StartRequest_Header)ProtoReflect¶added inv2.19.0
func (x *StartRequest_Header) ProtoReflect()protoreflect.Message
func (*StartRequest_Header)Reset¶added inv2.19.0
func (x *StartRequest_Header) Reset()
func (*StartRequest_Header)String¶added inv2.19.0
func (x *StartRequest_Header) String()string
typeStartResponse¶
type StartResponse struct {Successbool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`ErrorMessagestring `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`// contains filtered or unexported fields}
func (*StartResponse)Descriptordeprecated
func (*StartResponse) Descriptor() ([]byte, []int)
Deprecated: Use StartResponse.ProtoReflect.Descriptor instead.
func (*StartResponse)GetErrorMessage¶
func (x *StartResponse) GetErrorMessage()string
func (*StartResponse)GetSuccess¶
func (x *StartResponse) GetSuccess()bool
func (*StartResponse)ProtoMessage¶
func (*StartResponse) ProtoMessage()
func (*StartResponse)ProtoReflect¶
func (x *StartResponse) ProtoReflect()protoreflect.Message
func (*StartResponse)Reset¶
func (x *StartResponse) Reset()
func (*StartResponse)String¶
func (x *StartResponse) String()string
typeStatus¶added inv2.22.0
type Status struct {LifecycleStatus_Lifecycle `protobuf:"varint,1,opt,name=lifecycle,proto3,enum=vpn.Status_Lifecycle" json:"lifecycle,omitempty"`ErrorMessagestring `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`// This will be a FULL update with all workspaces and agents, so clients// should replace their current peer state. Only the Upserted fields will// be populated.PeerUpdate *PeerUpdate `protobuf:"bytes,3,opt,name=peer_update,json=peerUpdate,proto3" json:"peer_update,omitempty"`// contains filtered or unexported fields}
Status is sent in response to a StatusRequest or broadcasted to all clientswhen the status changes.
func (*Status)Descriptordeprecatedadded inv2.22.0
func (*Status)GetErrorMessage¶added inv2.22.0
func (*Status)GetLifecycle¶added inv2.22.0
func (x *Status) GetLifecycle()Status_Lifecycle
func (*Status)GetPeerUpdate¶added inv2.22.0
func (x *Status) GetPeerUpdate() *PeerUpdate
func (*Status)ProtoMessage¶added inv2.22.0
func (*Status) ProtoMessage()
func (*Status)ProtoReflect¶added inv2.22.0
func (x *Status) ProtoReflect()protoreflect.Message
typeStatusRequest¶added inv2.22.0
type StatusRequest struct {// contains filtered or unexported fields}
StatusRequest is a request to get the status of the tunnel. The managerreplies with a Status.
func (*StatusRequest)Descriptordeprecatedadded inv2.22.0
func (*StatusRequest) Descriptor() ([]byte, []int)
Deprecated: Use StatusRequest.ProtoReflect.Descriptor instead.
func (*StatusRequest)ProtoMessage¶added inv2.22.0
func (*StatusRequest) ProtoMessage()
func (*StatusRequest)ProtoReflect¶added inv2.22.0
func (x *StatusRequest) ProtoReflect()protoreflect.Message
func (*StatusRequest)Reset¶added inv2.22.0
func (x *StatusRequest) Reset()
func (*StatusRequest)String¶added inv2.22.0
func (x *StatusRequest) String()string
typeStatus_Lifecycle¶added inv2.22.0
type Status_Lifecycleint32
const (Status_UNKNOWNStatus_Lifecycle = 0Status_STARTINGStatus_Lifecycle = 1Status_STARTEDStatus_Lifecycle = 2Status_STOPPINGStatus_Lifecycle = 3Status_STOPPEDStatus_Lifecycle = 4)
func (Status_Lifecycle)Descriptor¶added inv2.22.0
func (Status_Lifecycle) Descriptor()protoreflect.EnumDescriptor
func (Status_Lifecycle)Enum¶added inv2.22.0
func (xStatus_Lifecycle) Enum() *Status_Lifecycle
func (Status_Lifecycle)EnumDescriptordeprecatedadded inv2.22.0
func (Status_Lifecycle) EnumDescriptor() ([]byte, []int)
Deprecated: Use Status_Lifecycle.Descriptor instead.
func (Status_Lifecycle)Number¶added inv2.22.0
func (xStatus_Lifecycle) Number()protoreflect.EnumNumber
func (Status_Lifecycle)String¶added inv2.22.0
func (xStatus_Lifecycle) String()string
func (Status_Lifecycle)Type¶added inv2.22.0
func (Status_Lifecycle) Type()protoreflect.EnumType
typeStopRequest¶
type StopRequest struct {// contains filtered or unexported fields}
StopRequest is a request from the manager to stop the tunnel. The tunnel replies with aStopResponse.
func (*StopRequest)Descriptordeprecated
func (*StopRequest) Descriptor() ([]byte, []int)
Deprecated: Use StopRequest.ProtoReflect.Descriptor instead.
func (*StopRequest)ProtoMessage¶
func (*StopRequest) ProtoMessage()
func (*StopRequest)ProtoReflect¶
func (x *StopRequest) ProtoReflect()protoreflect.Message
func (*StopRequest)Reset¶
func (x *StopRequest) Reset()
func (*StopRequest)String¶
func (x *StopRequest) String()string
typeStopResponse¶
type StopResponse struct {Successbool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`ErrorMessagestring `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`// contains filtered or unexported fields}
StopResponse is a response to stopping the tunnel. After sending this response, the tunnel closesits side of the bidirectional stream for writing.
func (*StopResponse)Descriptordeprecated
func (*StopResponse) Descriptor() ([]byte, []int)
Deprecated: Use StopResponse.ProtoReflect.Descriptor instead.
func (*StopResponse)GetErrorMessage¶
func (x *StopResponse) GetErrorMessage()string
func (*StopResponse)GetSuccess¶
func (x *StopResponse) GetSuccess()bool
func (*StopResponse)ProtoMessage¶
func (*StopResponse) ProtoMessage()
func (*StopResponse)ProtoReflect¶
func (x *StopResponse) ProtoReflect()protoreflect.Message
func (*StopResponse)Reset¶
func (x *StopResponse) Reset()
func (*StopResponse)String¶
func (x *StopResponse) String()string
typeTunnel¶
type Tunnel struct {// contains filtered or unexported fields}
funcNewTunnel¶
func NewTunnel(ctxcontext.Context,loggerslog.Logger,mgrConnio.ReadWriteCloser,clientClient,opts ...TunnelOption,) (*Tunnel,error)
func (*Tunnel)ApplyNetworkSettings¶
func (t *Tunnel) ApplyNetworkSettings(ctxcontext.Context, ns *NetworkSettingsRequest)error
ApplyNetworkSettings sends a request to the manager to apply the given network settings
func (*Tunnel)Update¶added inv2.19.0
func (u *Tunnel) Update(updatetailnet.WorkspaceUpdate)error
Update pushes a workspace update to the manager
typeTunnelMessage¶
type TunnelMessage struct {Rpc *RPC `protobuf:"bytes,1,opt,name=rpc,proto3" json:"rpc,omitempty"`// Types that are assignable to Msg:////*TunnelMessage_Log//*TunnelMessage_PeerUpdate//*TunnelMessage_NetworkSettings//*TunnelMessage_Start//*TunnelMessage_StopMsg isTunnelMessage_Msg `protobuf_oneof:"msg"`// contains filtered or unexported fields}
TunnelMessage is a message from the tunnel (to the manager).
func (*TunnelMessage)Descriptordeprecated
func (*TunnelMessage) Descriptor() ([]byte, []int)
Deprecated: Use TunnelMessage.ProtoReflect.Descriptor instead.
func (*TunnelMessage)EnsureRPC¶
func (t *TunnelMessage) EnsureRPC() *RPC
func (*TunnelMessage)GetLog¶
func (x *TunnelMessage) GetLog() *Log
func (*TunnelMessage)GetMsg¶
func (m *TunnelMessage) GetMsg() isTunnelMessage_Msg
func (*TunnelMessage)GetNetworkSettings¶
func (x *TunnelMessage) GetNetworkSettings() *NetworkSettingsRequest
func (*TunnelMessage)GetPeerUpdate¶
func (x *TunnelMessage) GetPeerUpdate() *PeerUpdate
func (*TunnelMessage)GetRpc¶
func (x *TunnelMessage) GetRpc() *RPC
func (*TunnelMessage)GetStart¶
func (x *TunnelMessage) GetStart() *StartResponse
func (*TunnelMessage)GetStop¶
func (x *TunnelMessage) GetStop() *StopResponse
func (*TunnelMessage)ProtoMessage¶
func (*TunnelMessage) ProtoMessage()
func (*TunnelMessage)ProtoReflect¶
func (x *TunnelMessage) ProtoReflect()protoreflect.Message
func (*TunnelMessage)Reset¶
func (x *TunnelMessage) Reset()
func (*TunnelMessage)String¶
func (x *TunnelMessage) String()string
typeTunnelMessage_Log¶
type TunnelMessage_Log struct {Log *Log `protobuf:"bytes,2,opt,name=log,proto3,oneof"`}
typeTunnelMessage_NetworkSettings¶
type TunnelMessage_NetworkSettings struct {NetworkSettings *NetworkSettingsRequest `protobuf:"bytes,4,opt,name=network_settings,json=networkSettings,proto3,oneof"`}
typeTunnelMessage_PeerUpdate¶
type TunnelMessage_PeerUpdate struct {PeerUpdate *PeerUpdate `protobuf:"bytes,3,opt,name=peer_update,json=peerUpdate,proto3,oneof"`}
typeTunnelMessage_Start¶
type TunnelMessage_Start struct {Start *StartResponse `protobuf:"bytes,5,opt,name=start,proto3,oneof"`}
typeTunnelMessage_Stop¶
type TunnelMessage_Stop struct {Stop *StopResponse `protobuf:"bytes,6,opt,name=stop,proto3,oneof"`}
typeTunnelOption¶added inv2.19.0
type TunnelOption func(t *Tunnel)
funcUseAsLogger¶added inv2.19.0
func UseAsLogger()TunnelOption
funcUseCustomLogSinks¶added inv2.20.0
func UseCustomLogSinks(sinks ...slog.Sink)TunnelOption
funcUseOSNetworkingStack¶added inv2.20.0
func UseOSNetworkingStack()TunnelOption
funcWithClock¶added inv2.19.0
func WithClock(clockquartz.Clock)TunnelOption
typeWorkspace¶
type Workspace struct {Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`// UUIDNamestring `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`StatusWorkspace_Status `protobuf:"varint,3,opt,name=status,proto3,enum=vpn.Workspace_Status" json:"status,omitempty"`// contains filtered or unexported fields}
func (*Workspace)Descriptordeprecated
func (*Workspace)GetStatus¶
func (x *Workspace) GetStatus()Workspace_Status
func (*Workspace)ProtoMessage¶
func (*Workspace) ProtoMessage()
func (*Workspace)ProtoReflect¶
func (x *Workspace) ProtoReflect()protoreflect.Message
typeWorkspace_Status¶
type Workspace_Statusint32
const (Workspace_UNKNOWNWorkspace_Status = 0Workspace_PENDINGWorkspace_Status = 1Workspace_STARTINGWorkspace_Status = 2Workspace_RUNNINGWorkspace_Status = 3Workspace_STOPPINGWorkspace_Status = 4Workspace_STOPPEDWorkspace_Status = 5Workspace_FAILEDWorkspace_Status = 6Workspace_CANCELINGWorkspace_Status = 7Workspace_CANCELEDWorkspace_Status = 8Workspace_DELETINGWorkspace_Status = 9Workspace_DELETEDWorkspace_Status = 10)
func (Workspace_Status)Descriptor¶
func (Workspace_Status) Descriptor()protoreflect.EnumDescriptor
func (Workspace_Status)Enum¶
func (xWorkspace_Status) Enum() *Workspace_Status
func (Workspace_Status)EnumDescriptordeprecated
func (Workspace_Status) EnumDescriptor() ([]byte, []int)
Deprecated: Use Workspace_Status.Descriptor instead.
func (Workspace_Status)Number¶
func (xWorkspace_Status) Number()protoreflect.EnumNumber
func (Workspace_Status)String¶
func (xWorkspace_Status) String()string
func (Workspace_Status)Type¶
func (Workspace_Status) Type()protoreflect.EnumType