libbox

package
v1.14.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2026 License: GPL-2.0 Imports: 91 Imported by: 12

Documentation

Index

Constants

View Source
const (
	CommandLog int32 = iota
	CommandStatus
	CommandGroup
	CommandClashMode
	CommandConnections
	CommandOutbounds
)
View Source
const (
	ConnectionStateAll = iota
	ConnectionStateActive
	ConnectionStateClosed
)
View Source
const (
	ConnectionEventNew = iota
	ConnectionEventUpdate
	ConnectionEventClosed
)
View Source
const (
	USBDeviceStateIdle int32 = iota
	USBDeviceStateAttached
	USBDeviceStateUnavailable
)
View Source
const (
	USBBackendUnspecified int32 = iota
	USBBackendLinuxSysfs
	USBBackendDynamic
	USBBackendDarwinIOKit
	USBBackendWindowsVBoxUSB
)
View Source
const (
	InterfaceTypeWIFI     = int32(C.InterfaceTypeWIFI)
	InterfaceTypeCellular = int32(C.InterfaceTypeCellular)
	InterfaceTypeEthernet = int32(C.InterfaceTypeEthernet)
	InterfaceTypeOther    = int32(C.InterfaceTypeOther)
)
View Source
const (
	MessageTypeError = iota
	MessageTypeProfileList
	MessageTypeProfileContentRequest
	MessageTypeProfileContent
)
View Source
const (
	ProfileTypeLocal int32 = iota
	ProfileTypeiCloud
	ProfileTypeRemote
)
View Source
const (
	NetworkQualityAccuracyLow    = int32(networkquality.AccuracyLow)
	NetworkQualityAccuracyMedium = int32(networkquality.AccuracyMedium)
	NetworkQualityAccuracyHigh   = int32(networkquality.AccuracyHigh)
)
View Source
const (
	NetworkQualityPhaseIdle     = int32(networkquality.PhaseIdle)
	NetworkQualityPhaseDownload = int32(networkquality.PhaseDownload)
	NetworkQualityPhaseUpload   = int32(networkquality.PhaseUpload)
	NetworkQualityPhaseDone     = int32(networkquality.PhaseDone)
)
View Source
const (
	STUNPhaseBinding      = int32(stun.PhaseBinding)
	STUNPhaseNATMapping   = int32(stun.PhaseNATMapping)
	STUNPhaseNATFiltering = int32(stun.PhaseNATFiltering)
	STUNPhaseDone         = int32(stun.PhaseDone)
)
View Source
const (
	NATMappingEndpointIndependent     = int32(stun.NATMappingEndpointIndependent)
	NATMappingAddressDependent        = int32(stun.NATMappingAddressDependent)
	NATMappingAddressAndPortDependent = int32(stun.NATMappingAddressAndPortDependent)
)
View Source
const (
	NATFilteringEndpointIndependent     = int32(stun.NATFilteringEndpointIndependent)
	NATFilteringAddressDependent        = int32(stun.NATFilteringAddressDependent)
	NATFilteringAddressAndPortDependent = int32(stun.NATFilteringAddressAndPortDependent)
)
View Source
const (
	DNSModeDisabled = tun.DNSModeDisabled
	DNSModeNative   = tun.DNSModeNative
	DNSModeHijack   = tun.DNSModeHijack
)
View Source
const NetworkQualityDefaultConfigURL = networkquality.DefaultConfigURL
View Source
const NetworkQualityDefaultMaxRuntimeSeconds = int32(networkquality.DefaultMaxRuntime / time.Second)
View Source
const STUNDefaultServer = stun.DefaultServer
View Source
const TaildropChunkSize = daemon.TaildropChunkSize

Variables

This section is empty.

Functions

func AvailablePort added in v1.13.0

func AvailablePort(startPort int32) (int32, error)

func CheckConfig added in v1.2.3

func CheckConfig(configContent string) error

func CompareSemver added in v1.13.0

func CompareSemver(left string, right string) bool

func CreateZipArchive added in v1.14.0

func CreateZipArchive(sourcePath string, destinationPath string, encrypt bool) error

func DecodeLengthChunk added in v1.3.5

func DecodeLengthChunk(data []byte) int32

func EncodeChunkedMessage added in v1.3.5

func EncodeChunkedMessage(data []byte) []byte

func FormatBitrate added in v1.14.0

func FormatBitrate(bps int64) string

func FormatBytes

func FormatBytes(length int64) string

func FormatDuration added in v1.10.0

func FormatDuration(duration int64) string

func FormatFQDN added in v1.14.0

func FormatFQDN(fqdn string) string

func FormatMemoryBytes added in v1.4.4

func FormatMemoryBytes(length int64) string

func FormatNATFiltering added in v1.14.0

func FormatNATFiltering(value int32) string

func FormatNATMapping added in v1.14.0

func FormatNATMapping(value int32) string
func GenerateRemoteProfileImportLink(name string, remoteURL string) string

func GoVersion added in v1.14.0

func GoVersion() string

func NewOOMReporter added in v1.14.0

func NewOOMReporter(startedService *daemon.StartedService) oomkiller.OOMReporter

func PowerReportOptions added in v1.14.0

func PowerReportOptions(startedService *daemon.StartedService) powerreport.Options

func PrepareCrashSignalHandlers added in v1.14.0

func PrepareCrashSignalHandlers()

func PromoteOOMDraft added in v1.14.0

func PromoteOOMDraft()

func PromoteOOMDraftAt added in v1.14.0

func PromoteOOMDraftAt(workingPath string)

func PromotePowerReportDraft added in v1.14.0

func PromotePowerReportDraft()

func ProxyDisplayType added in v1.3.6

func ProxyDisplayType(proxyType string) string

func ReinstallCrashSignalHandlers added in v1.14.0

func ReinstallCrashSignalHandlers()

func ReloadSetupOptions added in v1.14.0

func ReloadSetupOptions(options *SetupOptions)

func SetLocale added in v1.10.4

func SetLocale(localeID string) error

func SetXPCDialer added in v1.13.0

func SetXPCDialer(dialer XPCDialer)

func Setup added in v1.3.0

func Setup(options *SetupOptions) error

func TriggerGoPanic added in v1.14.0

func TriggerGoPanic()

func Version

func Version() string

Types

type BridgeOptions added in v1.14.0

type BridgeOptions struct {
	BridgeName string
	MTU        int32
	Inet4Port  string
	Inet6Port  string
	Interface  string
	RuleIndex  int32
	RouteTable int32
}

type BridgeSession added in v1.14.0

type BridgeSession interface {
	FileDescriptor() int32
	Name() string
	Inet6Active() bool
	SetEgress(interfaceName string) error
	Close() error
}

func NewBridgeService added in v1.14.0

func NewBridgeService(options *BridgeOptions) (BridgeSession, error)

type CommandClient added in v1.2.3

type CommandClient struct {
	// contains filtered or unexported fields
}

func NewCommandClient added in v1.2.3

func NewCommandClient(handler CommandClientHandler, options *CommandClientOptions) *CommandClient

func NewRemoteCommandClient added in v1.14.0

func NewRemoteCommandClient(handler CommandClientHandler, options *CommandClientOptions, remoteOptions *RemoteConnectionOptions) (*CommandClient, error)

func NewStandaloneCommandClient added in v1.3.3

func NewStandaloneCommandClient() *CommandClient

func NewStandaloneRemoteCommandClient added in v1.14.0

func NewStandaloneRemoteCommandClient(remoteOptions *RemoteConnectionOptions) (*CommandClient, error)

func (*CommandClient) CancelOpenConnectAuthChallenge added in v1.14.0

func (c *CommandClient) CancelOpenConnectAuthChallenge(endpointTag string, challengeID string) error

func (*CommandClient) CancelOpenVPNChallenge added in v1.14.0

func (c *CommandClient) CancelOpenVPNChallenge(endpointTag string, challengeID string) error

func (*CommandClient) CancelTaildropReceiving added in v1.14.0

func (c *CommandClient) CancelTaildropReceiving(endpointTag string, senderID string, name string) error

func (*CommandClient) ClearLogs added in v1.13.0

func (c *CommandClient) ClearLogs() error

func (*CommandClient) CloseConnection added in v1.10.0

func (c *CommandClient) CloseConnection(connId string) error

func (*CommandClient) CloseConnections added in v1.3.3

func (c *CommandClient) CloseConnections() error

func (*CommandClient) Connect added in v1.2.3

func (c *CommandClient) Connect() error

func (*CommandClient) ConnectWithFD added in v1.13.0

func (c *CommandClient) ConnectWithFD(fd int32) error

func (*CommandClient) DeleteTaildropFile added in v1.14.0

func (c *CommandClient) DeleteTaildropFile(endpointTag string, name string) error

func (*CommandClient) Disconnect added in v1.2.3

func (c *CommandClient) Disconnect() error

func (*CommandClient) DownloadTaildropFile added in v1.14.0

func (c *CommandClient) DownloadTaildropFile(endpointTag string, name string, destinationPath string, handler TaildropDownloadHandler) (*TaildropDownloadSession, error)

func (*CommandClient) GetAPIVersion added in v1.14.0

func (c *CommandClient) GetAPIVersion() (int32, error)

func (*CommandClient) GetDeprecatedNotes added in v1.10.2

func (c *CommandClient) GetDeprecatedNotes() (DeprecatedNoteIterator, error)

func (*CommandClient) GetStartedAt added in v1.13.0

func (c *CommandClient) GetStartedAt() (int64, error)

func (*CommandClient) GetSystemProxyStatus added in v1.4.2

func (c *CommandClient) GetSystemProxyStatus() (*SystemProxyStatus, error)

func (*CommandClient) MarkTaildropInboxRead added in v1.14.0

func (c *CommandClient) MarkTaildropInboxRead(endpointTag string) error

func (*CommandClient) NewUSBLocalProvider added in v1.14.0

func (c *CommandClient) NewUSBLocalProvider(handler USBLocalProviderHandler) (*USBLocalProviderManager, error)

func (*CommandClient) ProvideUSBDevices added in v1.14.0

func (c *CommandClient) ProvideUSBDevices(handler USBProviderHandler) (*USBProviderSession, error)

func (*CommandClient) SelectOutbound added in v1.3.3

func (c *CommandClient) SelectOutbound(groupTag string, outboundTag string) error

func (*CommandClient) SendTaildropFiles added in v1.14.0

func (c *CommandClient) SendTaildropFiles(options *TaildropSendOptions, handler TaildropSendHandler) (*TaildropSendSession, error)

func (*CommandClient) ServiceClose added in v1.8.9

func (c *CommandClient) ServiceClose() error

func (*CommandClient) ServiceReload added in v1.3.3

func (c *CommandClient) ServiceReload() error

func (*CommandClient) SetClashMode added in v1.4.0

func (c *CommandClient) SetClashMode(newMode string) error

func (*CommandClient) SetGroupExpand added in v1.4.0

func (c *CommandClient) SetGroupExpand(groupTag string, isExpand bool) error

func (*CommandClient) SetSystemProxyEnabled added in v1.4.2

func (c *CommandClient) SetSystemProxyEnabled(isEnabled bool) error

func (*CommandClient) SetTailscaleExitNode added in v1.14.0

func (c *CommandClient) SetTailscaleExitNode(endpointTag string, stableID string) error

func (*CommandClient) StartNetworkQualityTest added in v1.14.0

func (c *CommandClient) StartNetworkQualityTest(configURL string, outboundTag string, serial bool, maxRuntimeSeconds int32, http3 bool, handler NetworkQualityTestHandler) (*NetworkQualityTestSession, error)

func (*CommandClient) StartSTUNTest added in v1.14.0

func (c *CommandClient) StartSTUNTest(server string, outboundTag string, handler STUNTestHandler) (*STUNTestSession, error)

func (*CommandClient) StartTailscalePing added in v1.14.0

func (c *CommandClient) StartTailscalePing(endpointTag string, peerIP string, handler TailscalePingHandler) (*TailscalePingSession, error)

func (*CommandClient) StartTailscaleSSHSession added in v1.14.0

func (c *CommandClient) StartTailscaleSSHSession(opts *TailscaleSSHOptions, handler TailscaleSSHHandler) (*TailscaleSSHSession, error)

func (*CommandClient) SubmitOpenConnectAuthResponse added in v1.14.0

func (c *CommandClient) SubmitOpenConnectAuthResponse(endpointTag string, challengeID string, response *OpenConnectAuthResponse) error

func (*CommandClient) SubmitOpenVPNChallengeResponse added in v1.14.0

func (c *CommandClient) SubmitOpenVPNChallengeResponse(endpointTag string, challengeID string, response *OpenVPNChallengeResponse) error

func (*CommandClient) SubscribeOpenConnectStatus added in v1.14.0

func (c *CommandClient) SubscribeOpenConnectStatus(handler OpenConnectStatusHandler) (*OpenConnectStatusSubscription, error)

func (*CommandClient) SubscribeOpenVPNStatus added in v1.14.0

func (c *CommandClient) SubscribeOpenVPNStatus(handler OpenVPNStatusHandler) (*OpenVPNStatusSubscription, error)

func (*CommandClient) SubscribeTaildropInbox added in v1.14.0

func (c *CommandClient) SubscribeTaildropInbox(endpointTag string, handler TaildropInboxHandler) (*TaildropInboxSubscription, error)

func (*CommandClient) SubscribeTailscaleStatus added in v1.14.0

func (c *CommandClient) SubscribeTailscaleStatus(handler TailscaleStatusHandler) (*TailscaleStatusSubscription, error)

func (*CommandClient) SubscribeUSBIPServerStatus added in v1.14.0

func (c *CommandClient) SubscribeUSBIPServerStatus(handler USBIPServerStatusHandler) (*USBIPServerStatusSubscription, error)

func (*CommandClient) TailscaleLogout added in v1.14.0

func (c *CommandClient) TailscaleLogout(endpointTag string) error

func (*CommandClient) TriggerGoCrash added in v1.14.0

func (c *CommandClient) TriggerGoCrash() error

func (*CommandClient) TriggerNativeCrash added in v1.14.0

func (c *CommandClient) TriggerNativeCrash() error

func (*CommandClient) TriggerOOMReport added in v1.14.0

func (c *CommandClient) TriggerOOMReport() error

func (*CommandClient) URLTest added in v1.3.3

func (c *CommandClient) URLTest(outboundTag string) error

type CommandClientHandler added in v1.2.3

type CommandClientHandler interface {
	Connected()
	Disconnected(message string)
	SetDefaultLogLevel(level int32)
	ClearLogs()
	WriteLogs(messageList LogIterator)
	WriteStatus(message *StatusMessage)
	WriteGroups(message OutboundGroupIterator)
	WriteOutbounds(message OutboundGroupItemIterator)
	InitializeClashMode(modeList StringIterator, currentMode string)
	UpdateClashMode(newMode string)
	WriteConnectionEvents(events *ConnectionEvents)
}

type CommandClientOptions added in v1.2.3

type CommandClientOptions struct {
	StatusInterval int64
	// contains filtered or unexported fields
}

func (*CommandClientOptions) AddCommand added in v1.13.0

func (o *CommandClientOptions) AddCommand(command int32)

type CommandServer added in v1.2.3

type CommandServer struct {
	*daemon.StartedService
	// contains filtered or unexported fields
}

func NewCommandServer added in v1.2.3

func NewCommandServer(handler CommandServerHandler, platformInterface PlatformInterface) (*CommandServer, error)

func (*CommandServer) Close added in v1.2.3

func (s *CommandServer) Close()

func (*CommandServer) CloseService added in v1.13.0

func (s *CommandServer) CloseService() error

func (*CommandServer) NeedFindProcess added in v1.13.0

func (s *CommandServer) NeedFindProcess() bool

func (*CommandServer) NeedWIFIState added in v1.13.0

func (s *CommandServer) NeedWIFIState() bool

func (*CommandServer) Pause added in v1.13.0

func (s *CommandServer) Pause()

func (*CommandServer) ResetNetwork added in v1.13.0

func (s *CommandServer) ResetNetwork()

func (*CommandServer) SetError added in v1.13.0

func (s *CommandServer) SetError(message string)

func (*CommandServer) Start added in v1.2.3

func (s *CommandServer) Start() error

func (*CommandServer) StartOrReloadService added in v1.13.0

func (s *CommandServer) StartOrReloadService(configContent string, options *OverrideOptions) error

func (*CommandServer) UpdateWIFIState added in v1.13.0

func (s *CommandServer) UpdateWIFIState()

func (*CommandServer) Wake added in v1.13.0

func (s *CommandServer) Wake()

func (*CommandServer) WriteMessage added in v1.2.3

func (s *CommandServer) WriteMessage(level int32, message string)

type CommandServerHandler added in v1.2.3

type CommandServerHandler interface {
	ServiceStop() error
	ServiceReload() error
	GetSystemProxyStatus() (*SystemProxyStatus, error)
	SetSystemProxyEnabled(enabled bool) error
	TriggerNativeCrash() error
	WriteDebugMessage(message string)
	ConnectSSHAgent() (int32, error)
}

type Connection added in v1.10.0

type Connection struct {
	ID            string
	Inbound       string
	InboundType   string
	IPVersion     int32
	Network       string
	Source        string
	Destination   string
	Domain        string
	Protocol      string
	User          string
	FromOutbound  string
	CreatedAt     int64
	ClosedAt      int64
	Uplink        int64
	Downlink      int64
	UplinkTotal   int64
	DownlinkTotal int64
	Rule          string
	Outbound      string
	OutboundType  string

	ProcessInfo *ProcessInfo
	// contains filtered or unexported fields
}

func (*Connection) Chain added in v1.10.0

func (c *Connection) Chain() StringIterator

func (*Connection) DisplayDestination added in v1.10.0

func (c *Connection) DisplayDestination() string

type ConnectionEvent added in v1.13.0

type ConnectionEvent struct {
	Type          int32
	ID            string
	Connection    *Connection
	UplinkDelta   int64
	DownlinkDelta int64
	ClosedAt      int64
}

type ConnectionEventIterator added in v1.13.0

type ConnectionEventIterator interface {
	Next() *ConnectionEvent
	HasNext() bool
}

type ConnectionEvents added in v1.13.0

type ConnectionEvents struct {
	Reset bool
	// contains filtered or unexported fields
}

func (*ConnectionEvents) Iterator added in v1.13.0

type ConnectionIterator added in v1.10.0

type ConnectionIterator interface {
	Next() *Connection
	HasNext() bool
}

type ConnectionOwner added in v1.13.0

type ConnectionOwner struct {
	UserId      int32
	UserName    string
	ProcessPath string
	// contains filtered or unexported fields
}

func (*ConnectionOwner) AndroidPackageNames added in v1.13.4

func (c *ConnectionOwner) AndroidPackageNames() StringIterator

func (*ConnectionOwner) SetAndroidPackageNames added in v1.13.4

func (c *ConnectionOwner) SetAndroidPackageNames(names StringIterator)

type Connections added in v1.10.0

type Connections struct {
	// contains filtered or unexported fields
}

func NewConnections added in v1.13.0

func NewConnections() *Connections

func (*Connections) ApplyEvents added in v1.13.0

func (c *Connections) ApplyEvents(events *ConnectionEvents)

func (*Connections) FilterState added in v1.10.0

func (c *Connections) FilterState(state int32)

func (*Connections) Iterator added in v1.10.0

func (c *Connections) Iterator() ConnectionIterator

func (*Connections) SortByDate added in v1.10.0

func (c *Connections) SortByDate()

func (*Connections) SortByTraffic added in v1.10.0

func (c *Connections) SortByTraffic()

func (*Connections) SortByTrafficTotal added in v1.10.0

func (c *Connections) SortByTrafficTotal()

type DeprecatedNote added in v1.10.2

type DeprecatedNote struct {
	Name              string
	Description       string
	DeprecatedVersion string
	ScheduledVersion  string
	EnvName           string
	MigrationLink     string
}

func (DeprecatedNote) Impending added in v1.10.2

func (n DeprecatedNote) Impending() bool

func (DeprecatedNote) Message added in v1.10.2

func (n DeprecatedNote) Message() string
func (n DeprecatedNote) MessageWithLink() string

type DeprecatedNoteIterator added in v1.10.2

type DeprecatedNoteIterator interface {
	HasNext() bool
	Next() *DeprecatedNote
}

type ErrorMessage added in v1.3.5

type ErrorMessage struct {
	Message string
}

func DecodeErrorMessage added in v1.3.5

func DecodeErrorMessage(data []byte) (*ErrorMessage, error)

func (*ErrorMessage) Encode added in v1.3.5

func (e *ErrorMessage) Encode() []byte

type ExchangeContext added in v1.3.0

type ExchangeContext struct {
	// contains filtered or unexported fields
}

func (*ExchangeContext) ErrnoCode added in v1.3.0

func (c *ExchangeContext) ErrnoCode(code int32)

func (*ExchangeContext) ErrorCode added in v1.3.0

func (c *ExchangeContext) ErrorCode(code int32)

func (*ExchangeContext) OnCancel added in v1.3.0

func (c *ExchangeContext) OnCancel(callback Func)

func (*ExchangeContext) RawSuccess added in v1.3.0

func (c *ExchangeContext) RawSuccess(result []byte)

func (*ExchangeContext) Success added in v1.3.0

func (c *ExchangeContext) Success(result string)

type FDroidMirror added in v1.13.3

type FDroidMirror struct {
	URL     string
	Country string
	Name    string
}

type FDroidMirrorIterator added in v1.13.3

type FDroidMirrorIterator interface {
	Len() int32
	HasNext() bool
	Next() *FDroidMirror
}

func GetFDroidMirrors added in v1.13.3

func GetFDroidMirrors() FDroidMirrorIterator

type FDroidPingResult added in v1.13.3

type FDroidPingResult struct {
	URL       string
	LatencyMs int32
	Error     string
}

func PingFDroidMirror added in v1.13.3

func PingFDroidMirror(mirrorURL string) *FDroidPingResult

type FDroidPingResultIterator added in v1.13.3

type FDroidPingResultIterator interface {
	Len() int32
	HasNext() bool
	Next() *FDroidPingResult
}

func PingFDroidMirrors added in v1.13.3

func PingFDroidMirrors(mirrorURLs string) (FDroidPingResultIterator, error)

type FDroidUpdateInfo added in v1.13.3

type FDroidUpdateInfo struct {
	VersionCode int32
	VersionName string
	DownloadURL string
	FileSize    int64
	FileSHA256  string
}

func CheckFDroidUpdate added in v1.13.3

func CheckFDroidUpdate(mirrorURL, packageName string, currentVersionCode int32, cachePath string) (*FDroidUpdateInfo, error)

type Func added in v1.3.0

type Func interface {
	Invoke() error
}

type HTTPClient added in v1.2.3

type HTTPClient interface {
	RestrictedTLS()
	ModernTLS()
	PinnedTLS12()
	PinnedSHA256(sumHex string)
	TrySocks5(port int32)
	KeepAlive()
	NewRequest() HTTPRequest
	Close()
}

func NewHTTPClient added in v1.2.3

func NewHTTPClient() HTTPClient

type HTTPRequest added in v1.2.3

type HTTPRequest interface {
	SetURL(link string) error
	SetMethod(method string)
	SetHeader(key string, value string)
	SetContent(content []byte)
	SetContentString(content string)
	RandomUserAgent()
	SetUserAgent(userAgent string)
	Execute() (HTTPResponse, error)
}

type HTTPResponse added in v1.2.3

type HTTPResponse interface {
	GetContent() (*StringBox, error)
	WriteTo(path string) error
	WriteToWithProgress(path string, handler HTTPResponseWriteToProgressHandler) error
}

type HTTPResponseWriteToProgressHandler added in v1.13.5

type HTTPResponseWriteToProgressHandler interface {
	Update(progress int64, total int64)
}

type ImportRemoteProfile added in v1.3.5

type ImportRemoteProfile struct {
	Name string
	URL  string
	Host string
}
func ParseRemoteProfileImportLink(importLink string) (*ImportRemoteProfile, error)

type Int32Iterator added in v1.13.0

type Int32Iterator interface {
	Len() int32
	HasNext() bool
	Next() int32
}

type InterfaceUpdateListener added in v1.2.5

type InterfaceUpdateListener interface {
	UpdateDefaultInterface(interfaceName string, interfaceIndex int32, isExpensive bool, isConstrained bool)
}

type LocalDNSTransport added in v1.3.0

type LocalDNSTransport interface {
	Raw() bool
	Lookup(ctx *ExchangeContext, network string, domain string) error
	Exchange(ctx *ExchangeContext, message []byte) error
}

type LogEntry added in v1.13.0

type LogEntry struct {
	Level   int32
	Message string
}

type LogIterator added in v1.13.0

type LogIterator interface {
	Len() int32
	HasNext() bool
	Next() *LogEntry
}

type NeighborEntry added in v1.14.0

type NeighborEntry struct {
	Address    string
	MacAddress string
	Hostname   string
}

type NeighborEntryIterator added in v1.14.0

type NeighborEntryIterator interface {
	Next() *NeighborEntry
	HasNext() bool
}

type NeighborSubscription added in v1.14.0

type NeighborSubscription struct {
	// contains filtered or unexported fields
}

func SubscribeNeighborTable added in v1.14.0

func SubscribeNeighborTable(listener NeighborUpdateListener) (*NeighborSubscription, error)

func (*NeighborSubscription) Close added in v1.14.0

func (s *NeighborSubscription) Close()

type NeighborUpdateListener added in v1.14.0

type NeighborUpdateListener interface {
	UpdateNeighborTable(entries NeighborEntryIterator)
}

type NetworkInterface added in v1.2.5

type NetworkInterface struct {
	Index     int32
	MTU       int32
	Name      string
	Addresses StringIterator
	Flags     int32

	Type      int32
	DNSServer StringIterator
	Gateway   StringIterator
	Metered   bool
}

type NetworkInterfaceIterator added in v1.2.5

type NetworkInterfaceIterator interface {
	Next() *NetworkInterface
	HasNext() bool
}

type NetworkQualityProgress added in v1.14.0

type NetworkQualityProgress struct {
	Phase                    int32
	DownloadCapacity         int64
	UploadCapacity           int64
	DownloadRPM              int32
	UploadRPM                int32
	IdleLatencyMs            int32
	ElapsedMs                int64
	DownloadCapacityAccuracy int32
	UploadCapacityAccuracy   int32
	DownloadRPMAccuracy      int32
	UploadRPMAccuracy        int32
}

type NetworkQualityResult added in v1.14.0

type NetworkQualityResult struct {
	DownloadCapacity         int64
	UploadCapacity           int64
	DownloadRPM              int32
	UploadRPM                int32
	IdleLatencyMs            int32
	DownloadCapacityAccuracy int32
	UploadCapacityAccuracy   int32
	DownloadRPMAccuracy      int32
	UploadRPMAccuracy        int32
}

type NetworkQualityTest added in v1.14.0

type NetworkQualityTest struct {
	// contains filtered or unexported fields
}

func NewNetworkQualityTest added in v1.14.0

func NewNetworkQualityTest() *NetworkQualityTest

func (*NetworkQualityTest) Cancel added in v1.14.0

func (t *NetworkQualityTest) Cancel()

func (*NetworkQualityTest) Start added in v1.14.0

func (t *NetworkQualityTest) Start(configURL string, serial bool, maxRuntimeSeconds int32, http3 bool, handler NetworkQualityTestHandler)

type NetworkQualityTestHandler added in v1.14.0

type NetworkQualityTestHandler interface {
	OnProgress(progress *NetworkQualityProgress)
	OnResult(result *NetworkQualityResult)
	OnError(message string)
}

type NetworkQualityTestSession added in v1.14.0

type NetworkQualityTestSession struct {
	// contains filtered or unexported fields
}

func (*NetworkQualityTestSession) Close added in v1.14.0

func (s *NetworkQualityTestSession) Close() error

type Notification added in v1.10.2

type Notification struct {
	Identifier string
	TypeName   string
	TypeID     int32
	Title      string
	Subtitle   string
	Body       string
	OpenURL    string
}

type OnDemandRule

type OnDemandRule interface {
	Target() int32
	DNSSearchDomainMatch() StringIterator
	DNSServerAddressMatch() StringIterator
	InterfaceTypeMatch() int32
	SSIDMatch() StringIterator
	ProbeURL() string
}

type OnDemandRuleIterator

type OnDemandRuleIterator interface {
	Next() OnDemandRule
	HasNext() bool
}

type OpenConnectAuthChallenge added in v1.14.0

type OpenConnectAuthChallenge struct {
	ID      string
	Banner  string
	Message string
	Error   string
	Form    *OpenConnectAuthForm
	Browser *OpenConnectBrowserRequest
}

type OpenConnectAuthForm added in v1.14.0

type OpenConnectAuthForm struct {
	// contains filtered or unexported fields
}

func (*OpenConnectAuthForm) Fields added in v1.14.0

type OpenConnectAuthFormChoice added in v1.14.0

type OpenConnectAuthFormChoice struct {
	Value string
	Label string
}

type OpenConnectAuthFormChoiceIterator added in v1.14.0

type OpenConnectAuthFormChoiceIterator interface {
	Next() *OpenConnectAuthFormChoice
	HasNext() bool
}

type OpenConnectAuthFormField added in v1.14.0

type OpenConnectAuthFormField struct {
	SubmissionKey string
	Name          string
	Label         string
	Kind          string
	Value         string
	// contains filtered or unexported fields
}

func (*OpenConnectAuthFormField) Options added in v1.14.0

type OpenConnectAuthFormFieldIterator added in v1.14.0

type OpenConnectAuthFormFieldIterator interface {
	Next() *OpenConnectAuthFormField
	HasNext() bool
}

type OpenConnectAuthResponse added in v1.14.0

type OpenConnectAuthResponse struct {
	// contains filtered or unexported fields
}

func NewOpenConnectAuthFormResponse added in v1.14.0

func NewOpenConnectAuthFormResponse(values *OpenConnectFormValues) *OpenConnectAuthResponse

func NewOpenConnectBrowserAuthResponse added in v1.14.0

func NewOpenConnectBrowserAuthResponse(result *OpenConnectBrowserResult) *OpenConnectAuthResponse

type OpenConnectBrowserRequest added in v1.14.0

type OpenConnectBrowserRequest struct {
	URL      string
	FinalURL string
	CacheID  string
	// contains filtered or unexported fields
}

func (*OpenConnectBrowserRequest) CallbackURLPrefixes added in v1.14.0

func (r *OpenConnectBrowserRequest) CallbackURLPrefixes() StringIterator

func (*OpenConnectBrowserRequest) CookieNames added in v1.14.0

func (r *OpenConnectBrowserRequest) CookieNames() StringIterator

func (*OpenConnectBrowserRequest) EarlyCookieNames added in v1.14.0

func (r *OpenConnectBrowserRequest) EarlyCookieNames() StringIterator

func (*OpenConnectBrowserRequest) HeaderNames added in v1.14.0

func (r *OpenConnectBrowserRequest) HeaderNames() StringIterator

type OpenConnectBrowserResult added in v1.14.0

type OpenConnectBrowserResult struct {
	FinalURL string
	// contains filtered or unexported fields
}

func NewOpenConnectBrowserResult added in v1.14.0

func NewOpenConnectBrowserResult(finalURL string) *OpenConnectBrowserResult

func (*OpenConnectBrowserResult) AddCookie added in v1.14.0

func (r *OpenConnectBrowserResult) AddCookie(name string, value string)

func (*OpenConnectBrowserResult) AddHeader added in v1.14.0

func (r *OpenConnectBrowserResult) AddHeader(name string, value string)

type OpenConnectEndpointStatus added in v1.14.0

type OpenConnectEndpointStatus struct {
	EndpointTag   string
	State         string
	StateText     string
	AuthChallenge *OpenConnectAuthChallenge
	Error         string
	TunnelInfo    *OpenConnectTunnelInfo
}

type OpenConnectEndpointStatusIterator added in v1.14.0

type OpenConnectEndpointStatusIterator interface {
	Next() *OpenConnectEndpointStatus
	HasNext() bool
}

type OpenConnectFormValues added in v1.14.0

type OpenConnectFormValues struct {
	// contains filtered or unexported fields
}

func NewOpenConnectFormValues added in v1.14.0

func NewOpenConnectFormValues() *OpenConnectFormValues

func (*OpenConnectFormValues) Add added in v1.14.0

func (v *OpenConnectFormValues) Add(key string, value string)

type OpenConnectStatusHandler added in v1.14.0

type OpenConnectStatusHandler interface {
	OnStatusUpdate(status *OpenConnectStatusUpdate)
	OnError(message string)
}

type OpenConnectStatusSubscription added in v1.14.0

type OpenConnectStatusSubscription struct {
	// contains filtered or unexported fields
}

func (*OpenConnectStatusSubscription) Close added in v1.14.0

func (s *OpenConnectStatusSubscription) Close() error

type OpenConnectStatusUpdate added in v1.14.0

type OpenConnectStatusUpdate struct {
	// contains filtered or unexported fields
}

func (*OpenConnectStatusUpdate) Endpoints added in v1.14.0

type OpenConnectTunnelInfo added in v1.14.0

type OpenConnectTunnelInfo struct {
	Server    string
	Flavor    string
	Transport string

	MTU            int32
	ConnectedSince int64
	// contains filtered or unexported fields
}

func (*OpenConnectTunnelInfo) DNS added in v1.14.0

func (*OpenConnectTunnelInfo) IPv4 added in v1.14.0

func (*OpenConnectTunnelInfo) IPv6 added in v1.14.0

type OpenVPNChallenge added in v1.14.0

type OpenVPNChallenge struct {
	ID            string
	Kind          string
	Username      string
	Message       string
	URL           string
	SecretMessage string
	Echo          bool
	PreviousError string
	Deadline      int64
}

type OpenVPNChallengeResponse added in v1.14.0

type OpenVPNChallengeResponse struct {
	Username string
	Password string
	Secret   string
}

type OpenVPNEndpointStatus added in v1.14.0

type OpenVPNEndpointStatus struct {
	EndpointTag string
	State       string
	StateText   string
	Challenge   *OpenVPNChallenge
	Error       string
	TunnelInfo  *OpenVPNTunnelInfo
}

type OpenVPNEndpointStatusIterator added in v1.14.0

type OpenVPNEndpointStatusIterator interface {
	Next() *OpenVPNEndpointStatus
	HasNext() bool
}

type OpenVPNStatusHandler added in v1.14.0

type OpenVPNStatusHandler interface {
	OnStatusUpdate(status *OpenVPNStatusUpdate)
	OnError(message string)
}

type OpenVPNStatusSubscription added in v1.14.0

type OpenVPNStatusSubscription struct {
	// contains filtered or unexported fields
}

func (*OpenVPNStatusSubscription) Close added in v1.14.0

func (s *OpenVPNStatusSubscription) Close() error

type OpenVPNStatusUpdate added in v1.14.0

type OpenVPNStatusUpdate struct {
	// contains filtered or unexported fields
}

func (*OpenVPNStatusUpdate) Endpoints added in v1.14.0

type OpenVPNTunnelInfo added in v1.14.0

type OpenVPNTunnelInfo struct {
	Server  string
	Network string
	Cipher  string

	MTU            int32
	ConnectedSince int64
	// contains filtered or unexported fields
}

func (*OpenVPNTunnelInfo) DNS added in v1.14.0

func (*OpenVPNTunnelInfo) IPv4 added in v1.14.0

func (*OpenVPNTunnelInfo) IPv6 added in v1.14.0

type OutboundGroup added in v1.3.3

type OutboundGroup struct {
	Tag        string
	Type       string
	Selectable bool
	Selected   string
	IsExpand   bool
	// contains filtered or unexported fields
}

func (*OutboundGroup) GetItems added in v1.3.3

type OutboundGroupItem added in v1.3.3

type OutboundGroupItem struct {
	Tag          string
	Type         string
	URLTestTime  int64
	URLTestDelay int32
}

type OutboundGroupItemIterator added in v1.3.3

type OutboundGroupItemIterator interface {
	Next() *OutboundGroupItem
	HasNext() bool
}

type OutboundGroupIterator added in v1.3.3

type OutboundGroupIterator interface {
	Next() *OutboundGroup
	HasNext() bool
}

type OverrideOptions added in v1.13.0

type OverrideOptions struct {
	AutoRedirect   bool
	IncludePackage StringIterator
	ExcludePackage StringIterator
}

type PProfServer

type PProfServer struct {
	// contains filtered or unexported fields
}

func NewPProfServer

func NewPProfServer(port int) *PProfServer

func (*PProfServer) Close

func (s *PProfServer) Close() error

func (*PProfServer) Start

func (s *PProfServer) Start() error

type PlatformInterface

type PlatformInterface interface {
	LocalDNSTransport() LocalDNSTransport
	UsePlatformAutoDetectInterfaceControl() bool
	AutoDetectInterfaceControl(fd int32) error
	OpenTun(options TunOptions) (int32, error)
	UseProcFS() bool
	FindConnectionOwner(ipProtocol int32, sourceAddress string, sourcePort int32, destinationAddress string, destinationPort int32) (*ConnectionOwner, error)
	StartDefaultInterfaceMonitor(listener InterfaceUpdateListener) error
	CloseDefaultInterfaceMonitor(listener InterfaceUpdateListener) error
	GetInterfaces() (NetworkInterfaceIterator, error)
	UnderNetworkExtension() bool
	IncludeAllNetworks() bool
	ReadWIFIState() *WIFIState
	ClearDNSCache()
	SendNotification(notification *Notification) error
	CancelNotification(identifier string, typeID int32) error
	StartNeighborMonitor(listener NeighborUpdateListener) error
	CloseNeighborMonitor(listener NeighborUpdateListener) error
	RegisterMyInterface(name string)
	UsePlatformShell() bool
	CheckPlatformShell() error
	OpenShellSession(user *PlatformUser, command string, environ StringIterator, term string, rows int32, cols int32) (ShellSession, error)
	LookupUser(username string) (*PlatformUser, error)
	LookupSFTPServer() (string, error)
	ReadSystemSSHHostKey() (string, error)
	TailscaleHostname() string
	UsePlatformBridge() bool
	CreateBridge(options *BridgeOptions) (BridgeSession, error)
}

type PlatformUser added in v1.14.0

type PlatformUser struct {
	Username string
	Uid      int32
	Gid      int32
	HomeDir  string
	Shell    string
	// contains filtered or unexported fields
}

func (*PlatformUser) Groups added in v1.14.0

func (u *PlatformUser) Groups() Int32Iterator

func (*PlatformUser) SetGroups added in v1.14.0

func (u *PlatformUser) SetGroups(groups Int32Iterator)

type ProcessInfo added in v1.13.0

type ProcessInfo struct {
	ProcessID   int64
	UserID      int32
	UserName    string
	ProcessPath string
	// contains filtered or unexported fields
}

func (*ProcessInfo) PackageNames added in v1.13.4

func (p *ProcessInfo) PackageNames() StringIterator

type ProfileContent added in v1.3.5

type ProfileContent struct {
	Name               string
	Type               int32
	Config             string
	RemotePath         string
	AutoUpdate         bool
	AutoUpdateInterval int32
	LastUpdated        int64
}

func DecodeProfileContent added in v1.3.5

func DecodeProfileContent(data []byte) (*ProfileContent, error)

func (*ProfileContent) Encode added in v1.3.5

func (c *ProfileContent) Encode() []byte

type ProfileContentRequest added in v1.3.5

type ProfileContentRequest struct {
	ProfileID int64
}

func DecodeProfileContentRequest added in v1.3.5

func DecodeProfileContentRequest(data []byte) (*ProfileContentRequest, error)

func (*ProfileContentRequest) Encode added in v1.3.5

func (r *ProfileContentRequest) Encode() []byte

type ProfileDecoder added in v1.3.5

type ProfileDecoder struct {
	// contains filtered or unexported fields
}

func (*ProfileDecoder) Decode added in v1.3.5

func (d *ProfileDecoder) Decode(data []byte) error

func (*ProfileDecoder) Iterator added in v1.3.5

func (d *ProfileDecoder) Iterator() ProfilePreviewIterator

type ProfileEncoder added in v1.3.5

type ProfileEncoder struct {
	// contains filtered or unexported fields
}

func (*ProfileEncoder) Append added in v1.3.5

func (e *ProfileEncoder) Append(profile *ProfilePreview)

func (*ProfileEncoder) Encode added in v1.3.5

func (e *ProfileEncoder) Encode() []byte

type ProfilePreview added in v1.3.5

type ProfilePreview struct {
	ProfileID int64
	Name      string
	Type      int32
}

type ProfilePreviewIterator added in v1.3.5

type ProfilePreviewIterator interface {
	Next() *ProfilePreview
	HasNext() bool
}

type RemoteConnectionOptions added in v1.14.0

type RemoteConnectionOptions struct {
	URL    string
	Secret string
}

type RoutePrefix

type RoutePrefix struct {
	// contains filtered or unexported fields
}

func (*RoutePrefix) Address

func (p *RoutePrefix) Address() string

func (*RoutePrefix) Mask

func (p *RoutePrefix) Mask() string

func (*RoutePrefix) Prefix

func (p *RoutePrefix) Prefix() int32

func (*RoutePrefix) String added in v1.7.5

func (p *RoutePrefix) String() string

type RoutePrefixIterator

type RoutePrefixIterator interface {
	Next() *RoutePrefix
	HasNext() bool
}

type STUNTest added in v1.14.0

type STUNTest struct {
	// contains filtered or unexported fields
}

func NewSTUNTest added in v1.14.0

func NewSTUNTest() *STUNTest

func (*STUNTest) Cancel added in v1.14.0

func (t *STUNTest) Cancel()

func (*STUNTest) Start added in v1.14.0

func (t *STUNTest) Start(server string, handler STUNTestHandler)

type STUNTestHandler added in v1.14.0

type STUNTestHandler interface {
	OnProgress(progress *STUNTestProgress)
	OnResult(result *STUNTestResult)
	OnError(message string)
}

type STUNTestProgress added in v1.14.0

type STUNTestProgress struct {
	Phase        int32
	ExternalAddr string
	LatencyMs    int32
	NATMapping   int32
	NATFiltering int32
}

type STUNTestResult added in v1.14.0

type STUNTestResult struct {
	ExternalAddr     string
	LatencyMs        int32
	NATMapping       int32
	NATFiltering     int32
	NATTypeSupported bool
}

type STUNTestSession added in v1.14.0

type STUNTestSession struct {
	// contains filtered or unexported fields
}

func (*STUNTestSession) Close added in v1.14.0

func (s *STUNTestSession) Close() error

type SetupOptions added in v1.10.6

type SetupOptions struct {
	BasePath                string
	WorkingPath             string
	TempPath                string
	FixAndroidStack         bool
	CommandServerListenPort int32
	CommandServerSecret     string
	LogMaxLines             int
	Debug                   bool
	CrashReportSource       string
	AppVersion              string
	AppMarketingVersion     string
	OomKillerEnabled        bool
	OomKillerDisabled       bool
	OomMemoryLimit          int64
	PowerReportEnabled      bool
}

type ShellSession added in v1.14.0

type ShellSession interface {
	MasterFD() int32
	Resize(rows int32, cols int32) error
	Signal(signal int32) error
	WaitExit() (int32, error)
	Close() error
}

func OpenNativePipeSession added in v1.14.0

func OpenNativePipeSession(
	shell, cwd string,
	args, environ StringIterator,
	uid, gid int32,
	groups Int32Iterator,
) (ShellSession, error)

func OpenNativeShellSession added in v1.14.0

func OpenNativeShellSession(
	shell, cwd string,
	args, environ StringIterator,
	term string,
	rows, cols, uid, gid int32,
	groups Int32Iterator,
) (ShellSession, error)

type StatusMessage added in v1.2.3

type StatusMessage struct {
	Memory           int64
	Goroutines       int32
	ConnectionsIn    int32
	ConnectionsOut   int32
	TrafficAvailable bool
	Uplink           int64
	Downlink         int64
	UplinkTotal      int64
	DownlinkTotal    int64
}

type StringBox added in v1.10.4

type StringBox struct {
	Value string
}

func FormatConfig added in v1.2.3

func FormatConfig(configContent string) (*StringBox, error)

func GenerateConfigSchema added in v1.14.0

func GenerateConfigSchema() (*StringBox, error)

func RandomHex added in v1.13.0

func RandomHex(length int32) *StringBox

type StringIterator

type StringIterator interface {
	Len() int32
	HasNext() bool
	Next() string
}

type SystemProxyStatus added in v1.4.2

type SystemProxyStatus struct {
	Available bool
	Enabled   bool
}

type TaildropDownloadHandler added in v1.14.0

type TaildropDownloadHandler interface {
	OnProgress(downloaded int64, total int64)
	OnFinish(errorMessage string)
}

type TaildropDownloadSession added in v1.14.0

type TaildropDownloadSession struct {
	// contains filtered or unexported fields
}

func (*TaildropDownloadSession) Close added in v1.14.0

func (s *TaildropDownloadSession) Close() error

type TaildropFile added in v1.14.0

type TaildropFile struct {
	Name       string
	Size       int64
	SenderName string
	ModifiedAt int64
}

type TaildropFileIterator added in v1.14.0

type TaildropFileIterator interface {
	Next() *TaildropFile
	HasNext() bool
}

type TaildropInbox added in v1.14.0

type TaildropInbox struct {
	EndpointTag string
	// contains filtered or unexported fields
}

func (*TaildropInbox) Files added in v1.14.0

func (*TaildropInbox) Receiving added in v1.14.0

type TaildropInboxHandler added in v1.14.0

type TaildropInboxHandler interface {
	OnInboxUpdate(inbox *TaildropInbox)
	OnError(message string)
}

type TaildropInboxSubscription added in v1.14.0

type TaildropInboxSubscription struct {
	// contains filtered or unexported fields
}

func (*TaildropInboxSubscription) Close added in v1.14.0

func (s *TaildropInboxSubscription) Close() error

type TaildropReceivingFile added in v1.14.0

type TaildropReceivingFile struct {
	Name          string
	Size          int64
	ReceivedBytes int64
	SenderID      string
	SenderName    string
}

type TaildropReceivingFileIterator added in v1.14.0

type TaildropReceivingFileIterator interface {
	Next() *TaildropReceivingFile
	HasNext() bool
}

type TaildropSendHandler added in v1.14.0

type TaildropSendHandler interface {
	OnProgress(fileIndex int32, sentBytes int64)
	OnFileCompleted(fileIndex int32, sentBytes int64)
	OnFinish(errorMessage string)
}

type TaildropSendOptions added in v1.14.0

type TaildropSendOptions struct {
	EndpointTag  string
	PeerStableID string
	// contains filtered or unexported fields
}

func NewTaildropSendOptions added in v1.14.0

func NewTaildropSendOptions() *TaildropSendOptions

func (*TaildropSendOptions) AddFile added in v1.14.0

func (o *TaildropSendOptions) AddFile(name string, size int64)

AddFile queues a file whose content the caller writes through TaildropSendSession.WriteChunk in queue order, terminated by FinishFile. A negative size declares the size as unknown; a non-negative size is verified against the written byte count.

type TaildropSendSession added in v1.14.0

type TaildropSendSession struct {
	// contains filtered or unexported fields
}

func (*TaildropSendSession) Close added in v1.14.0

func (s *TaildropSendSession) Close() error

func (*TaildropSendSession) FinishFile added in v1.14.0

func (s *TaildropSendSession) FinishFile() error

func (*TaildropSendSession) WriteChunk added in v1.14.0

func (s *TaildropSendSession) WriteChunk(data []byte) error

type TailscaleEndpointStatus added in v1.14.0

type TailscaleEndpointStatus struct {
	EndpointTag        string
	BackendState       string
	StateText          string
	AuthURL            string
	NetworkName        string
	MagicDNSSuffix     string
	Self               *TailscalePeer
	ExitNode           *TailscalePeer
	KeyAuth            bool
	CanShareFiles      bool
	WaitingFileCount   int32
	ReceivingFileCount int32
	UnreadFileCount    int32
	// contains filtered or unexported fields
}

func (*TailscaleEndpointStatus) UserGroups added in v1.14.0

type TailscaleEndpointStatusIterator added in v1.14.0

type TailscaleEndpointStatusIterator interface {
	Next() *TailscaleEndpointStatus
	HasNext() bool
}

type TailscalePeer added in v1.14.0

type TailscalePeer struct {
	StableID string
	HostName string
	DNSName  string
	OS       string

	Online          bool
	ExitNode        bool
	ExitNodeOption  bool
	ShareeNode      bool
	Expired         bool
	Active          bool
	CanReceiveFiles bool
	RxBytes         int64
	TxBytes         int64
	KeyExpiry       int64
	LastSeen        int64
	// contains filtered or unexported fields
}

func (*TailscalePeer) SSHHostKeys added in v1.14.0

func (p *TailscalePeer) SSHHostKeys() StringIterator

func (*TailscalePeer) TailscaleIPs added in v1.14.0

func (p *TailscalePeer) TailscaleIPs() StringIterator

type TailscalePeerIterator added in v1.14.0

type TailscalePeerIterator interface {
	Next() *TailscalePeer
	HasNext() bool
}

type TailscalePingHandler added in v1.14.0

type TailscalePingHandler interface {
	OnPingResult(result *TailscalePingResult)
	OnError(message string)
}

type TailscalePingResult added in v1.14.0

type TailscalePingResult struct {
	LatencyMs      float64
	IsDirect       bool
	Endpoint       string
	PeerRelay      string
	DERPRegionID   int32
	DERPRegionCode string
	Error          string
}

type TailscalePingSession added in v1.14.0

type TailscalePingSession struct {
	// contains filtered or unexported fields
}

func (*TailscalePingSession) Close added in v1.14.0

func (s *TailscalePingSession) Close() error

type TailscaleSSHHandler added in v1.14.0

type TailscaleSSHHandler interface {
	OnReady()
	OnOutput(data []byte)
	OnAuthBanner(message string)
	OnExit(exitCode int32, signal string, errorMessage string)
	OnError(message string)
}

type TailscaleSSHOptions added in v1.14.0

type TailscaleSSHOptions struct {
	EndpointTag  string
	PeerAddress  string
	Username     string
	TerminalType string
	Columns      int32
	Rows         int32
	WidthPixels  int32
	HeightPixels int32
	HostKeys     StringIterator
	ForwardAgent bool
}

type TailscaleSSHSession added in v1.14.0

type TailscaleSSHSession struct {
	// contains filtered or unexported fields
}

func (*TailscaleSSHSession) Close added in v1.14.0

func (s *TailscaleSSHSession) Close() error

func (*TailscaleSSHSession) SendInput added in v1.14.0

func (s *TailscaleSSHSession) SendInput(data []byte) error

func (*TailscaleSSHSession) SendResize added in v1.14.0

func (s *TailscaleSSHSession) SendResize(columns int32, rows int32, widthPixels int32, heightPixels int32) error

type TailscaleStatusHandler added in v1.14.0

type TailscaleStatusHandler interface {
	OnStatusUpdate(status *TailscaleStatusUpdate)
	OnError(message string)
}

type TailscaleStatusSubscription added in v1.14.0

type TailscaleStatusSubscription struct {
	// contains filtered or unexported fields
}

func (*TailscaleStatusSubscription) Close added in v1.14.0

func (s *TailscaleStatusSubscription) Close() error

type TailscaleStatusUpdate added in v1.14.0

type TailscaleStatusUpdate struct {
	// contains filtered or unexported fields
}

func (*TailscaleStatusUpdate) Endpoints added in v1.14.0

type TailscaleUserGroup added in v1.14.0

type TailscaleUserGroup struct {
	UserID        int64
	LoginName     string
	DisplayName   string
	ProfilePicURL string
	// contains filtered or unexported fields
}

func (*TailscaleUserGroup) Peers added in v1.14.0

type TailscaleUserGroupIterator added in v1.14.0

type TailscaleUserGroupIterator interface {
	Next() *TailscaleUserGroup
	HasNext() bool
}

type TunOptions

type TunOptions interface {
	GetInet4Address() RoutePrefixIterator
	GetInet6Address() RoutePrefixIterator
	GetDNSMode() *StringBox
	GetDNSServerAddress() (StringIterator, error)
	GetMTU() int32
	GetAutoRoute() bool
	GetStrictRoute() bool
	GetInet4RouteAddress() RoutePrefixIterator
	GetInet6RouteAddress() RoutePrefixIterator
	GetInet4RouteExcludeAddress() RoutePrefixIterator
	GetInet6RouteExcludeAddress() RoutePrefixIterator
	GetInet4RouteRange() RoutePrefixIterator
	GetInet6RouteRange() RoutePrefixIterator
	GetIncludePackage() StringIterator
	GetExcludePackage() StringIterator
	IsHTTPProxyEnabled() bool
	GetHTTPProxyServer() string
	GetHTTPProxyServerPort() int32
	GetHTTPProxyBypassDomain() StringIterator
	GetHTTPProxyMatchDomain() StringIterator
}

type USBDeviceDescriptor added in v1.14.0

type USBDeviceDescriptor struct {
	ServerTag          string
	DeviceID           string
	BusNum             int32
	DevNum             int32
	Speed              int32
	VendorID           int32
	ProductID          int32
	BCDDevice          int32
	DeviceClass        int32
	DeviceSubClass     int32
	DeviceProtocol     int32
	ConfigurationValue int32
	NumConfigurations  int32
	Serial             string
	Product            string
	// contains filtered or unexported fields
}

func NewUSBDeviceDescriptor added in v1.14.0

func NewUSBDeviceDescriptor(serverTag string, deviceID string) *USBDeviceDescriptor

func (*USBDeviceDescriptor) AddInterface added in v1.14.0

func (d *USBDeviceDescriptor) AddInterface(interfaceClass int32, interfaceSubClass int32, interfaceProtocol int32)

type USBIPServerStatus added in v1.14.0

type USBIPServerStatus struct {
	ServerTag string
	// contains filtered or unexported fields
}

func (*USBIPServerStatus) Devices added in v1.14.0

type USBIPServerStatusHandler added in v1.14.0

type USBIPServerStatusHandler interface {
	OnStatusUpdate(status *USBIPServerStatusUpdate)
	OnError(message string)
}

type USBIPServerStatusIterator added in v1.14.0

type USBIPServerStatusIterator interface {
	Next() *USBIPServerStatus
	HasNext() bool
}

type USBIPServerStatusSubscription added in v1.14.0

type USBIPServerStatusSubscription struct {
	// contains filtered or unexported fields
}

func (*USBIPServerStatusSubscription) Close added in v1.14.0

func (s *USBIPServerStatusSubscription) Close() error

type USBIPServerStatusUpdate added in v1.14.0

type USBIPServerStatusUpdate struct {
	// contains filtered or unexported fields
}

func (*USBIPServerStatusUpdate) Servers added in v1.14.0

type USBIsoPacket added in v1.14.0

type USBIsoPacket struct {
	Offset       int32
	Length       int32
	ActualLength int32
	Status       int32
}

type USBLocalDeviceInfo added in v1.14.0

type USBLocalDeviceInfo struct {
	StableID           string
	BusID              string
	Backend            int32
	BusNum             int32
	DevNum             int32
	Speed              int32
	VendorID           int32
	ProductID          int32
	BCDDevice          int32
	DeviceClass        int32
	DeviceSubClass     int32
	DeviceProtocol     int32
	ConfigurationValue int32
	NumConfigurations  int32
	Serial             string
	Product            string
	// contains filtered or unexported fields
}

func (*USBLocalDeviceInfo) Interfaces added in v1.14.0

type USBLocalDeviceInfoIterator added in v1.14.0

type USBLocalDeviceInfoIterator interface {
	Next() *USBLocalDeviceInfo
	HasNext() bool
}

type USBLocalProvidedDevice added in v1.14.0

type USBLocalProvidedDevice struct {
	ServerTag     string
	DeviceID      string
	LocalDeviceID string
	Label         string
	VendorID      int32
	ProductID     int32
}

type USBLocalProviderHandler added in v1.14.0

type USBLocalProviderHandler interface {
	OnDeviceError(serverTag string, deviceID string, message string)
	OnSessionError(serverTag string, message string)
	OnLocalDevicesChanged()
}

type USBLocalProviderManager added in v1.14.0

type USBLocalProviderManager struct{}

func (*USBLocalProviderManager) Attach added in v1.14.0

func (m *USBLocalProviderManager) Attach(serverTag string, localDeviceID string) (*USBLocalProvidedDevice, error)

func (*USBLocalProviderManager) Close added in v1.14.0

func (m *USBLocalProviderManager) Close() error

func (*USBLocalProviderManager) Detach added in v1.14.0

func (m *USBLocalProviderManager) Detach(deviceID string) error

func (*USBLocalProviderManager) ListDevices added in v1.14.0

type USBProviderHandler added in v1.14.0

type USBProviderHandler interface {
	OnReady(deviceID string, busID string)
	OnURBRequest(request *USBURBRequest)
	OnAbort(deviceID string, endpoint int32)
	OnError(deviceID string, message string)
}

type USBProviderSession added in v1.14.0

type USBProviderSession struct {
	// contains filtered or unexported fields
}

func (*USBProviderSession) AttachDevice added in v1.14.0

func (s *USBProviderSession) AttachDevice(descriptor *USBDeviceDescriptor) error

func (*USBProviderSession) Close added in v1.14.0

func (s *USBProviderSession) Close() error

func (*USBProviderSession) DetachDevice added in v1.14.0

func (s *USBProviderSession) DetachDevice(deviceID string) error

func (*USBProviderSession) SendURBResponse added in v1.14.0

func (s *USBProviderSession) SendURBResponse(response *USBURBResponse) error

type USBSharedDevice added in v1.14.0

type USBSharedDevice struct {
	BusID              string
	StableID           string
	Backend            int32
	State              int32
	DeviceID           string
	BusNum             int32
	DevNum             int32
	Speed              int32
	VendorID           int32
	ProductID          int32
	BCDDevice          int32
	DeviceClass        int32
	DeviceSubClass     int32
	DeviceProtocol     int32
	ConfigurationValue int32
	NumConfigurations  int32
	Serial             string
	Product            string
	// contains filtered or unexported fields
}

func (*USBSharedDevice) Interfaces added in v1.14.0

type USBSharedDeviceInterface added in v1.14.0

type USBSharedDeviceInterface struct {
	InterfaceClass    int32
	InterfaceSubClass int32
	InterfaceProtocol int32
}

type USBSharedDeviceInterfaceIterator added in v1.14.0

type USBSharedDeviceInterfaceIterator interface {
	Next() *USBSharedDeviceInterface
	HasNext() bool
}

type USBSharedDeviceIterator added in v1.14.0

type USBSharedDeviceIterator interface {
	Next() *USBSharedDevice
	HasNext() bool
}

type USBURBRequest added in v1.14.0

type USBURBRequest struct {
	DeviceID             string
	Seq                  int64
	Endpoint             int32
	DirectionIn          bool
	TransferFlags        int32
	Setup                []byte
	TransferBufferLength int32
	OutData              []byte
	NumberOfPackets      int32
	StartFrame           int32
	Interval             int32
	// contains filtered or unexported fields
}

func (*USBURBRequest) GetIsoPacket added in v1.14.0

func (r *USBURBRequest) GetIsoPacket(index int32) *USBIsoPacket

func (*USBURBRequest) IsoPacketCount added in v1.14.0

func (r *USBURBRequest) IsoPacketCount() int32

type USBURBResponse added in v1.14.0

type USBURBResponse struct {
	DeviceID     string
	Seq          int64
	Status       int32
	ActualLength int32
	InData       []byte
	// contains filtered or unexported fields
}

func NewUSBURBResponse added in v1.14.0

func NewUSBURBResponse(deviceID string, seq int64) *USBURBResponse

func (*USBURBResponse) AddIsoPacket added in v1.14.0

func (r *USBURBResponse) AddIsoPacket(offset int32, length int32, actualLength int32, status int32)

type WIFIState added in v1.7.0

type WIFIState struct {
	SSID  string
	BSSID string
}

func NewWIFIState added in v1.7.0

func NewWIFIState(wifiSSID string, wifiBSSID string) *WIFIState

type XPCDialer added in v1.13.0

type XPCDialer interface {
	DialXPC() (int32, error)
}

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL