compat

package
v1.6.23 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2024 License: GPL-3.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// SystemIntegrationCheckDstIP is the IP address to send a packet to for the
	// system integration test.
	SystemIntegrationCheckDstIP = net.IPv4(127, 65, 67, 75)
	// SystemIntegrationCheckProtocol is the IP protocol to use for the system
	// integration test.
	SystemIntegrationCheckProtocol = packet.AnyHostInternalProtocol61

	// DNSCheckInternalDomainScope is the domain scope to use for dns checks.
	DNSCheckInternalDomainScope = ".self-check." + resolver.InternalSpecialUseDomain
)

Functions

func AddToDebugInfo

func AddToDebugInfo(di *debug.Info)

AddToDebugInfo adds compatibility data to the given debug.Info.

func GetIPTablesChains

func GetIPTablesChains() ([]string, error)

GetIPTablesChains returns the chain names currently in ip(6)tables.

func ReportMultiPeerUDPTunnelIssue

func ReportMultiPeerUDPTunnelIssue(p *process.Process)

ReportMultiPeerUDPTunnelIssue reports a multi-peer UDP tunnel for the given process.

func ReportSecureDNSBypassIssue

func ReportSecureDNSBypassIssue(p *process.Process)

ReportSecureDNSBypassIssue reports a DNS bypassing issue for the given process.

func SelfCheckIsFailing

func SelfCheckIsFailing() bool

SelfCheckIsFailing returns whether the self check is currently failing. This returns true after the first check fails, and does not wait for the failing threshold to be met.

func SetNameserverListenIP

func SetNameserverListenIP(ip net.IP)

SetNameserverListenIP sets the IP address the nameserver is listening on. The IP address is used in compatibility notifications.

func SubmitDNSCheckDomain

func SubmitDNSCheckDomain(subdomain string) (respondWith net.IP)

SubmitDNSCheckDomain submits a subdomain for the dns check.

func SubmitSystemIntegrationCheckPacket

func SubmitSystemIntegrationCheckPacket(p packet.Packet)

SubmitSystemIntegrationCheckPacket submit a packet for the system integrity check.

Types

type Compat added in v1.6.19

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

Compat is the compatibility check module.

func New added in v1.6.19

func New(instance instance) (*Compat, error)

New returns a new Compat module.

func (*Compat) Manager added in v1.6.19

func (u *Compat) Manager() *mgr.Manager

Manager returns the module manager.

func (*Compat) Start added in v1.6.19

func (u *Compat) Start() error

Start starts the module.

func (*Compat) States added in v1.6.19

func (u *Compat) States() *mgr.StateMgr

States returns the module state manager.

func (*Compat) Stop added in v1.6.19

func (u *Compat) Stop() error

Stop stops the module.

type SimplifiedWFPState

type SimplifiedWFPState struct {
	Providers []*WFPProvider
	SubLayers []*WFPSubLayer
	Callouts  []*WFPCallout
	Filters   []*WFPFilter
}

SimplifiedWFPState is a simplified version of the full WFP state.

func GetWFPState

func GetWFPState() (*SimplifiedWFPState, error)

GetWFPState queries the system for the WFP state and returns a simplified and cleaned version.

func (*SimplifiedWFPState) AsTable

func (sw *SimplifiedWFPState) AsTable() string

AsTable formats the simplified WFP state as a table.

func (*SimplifiedWFPState) Keys

func (sw *SimplifiedWFPState) Keys() map[string]struct{}

Keys returns all keys found in the WFP state.

type WFPCallout

type WFPCallout struct {
	Name            string
	Description     string
	CalloutKey      string
	ProviderKey     string
	ApplicableLayer string
}

WFPCallout represents a WFP Callout.

type WFPFilter

type WFPFilter struct {
	Name        string
	Description string
	FilterKey   string
	ProviderKey string
	LayerKey    string
	SubLayerKey string
}

WFPFilter represents a WFP Filter.

type WFPProvider

type WFPProvider struct {
	Name        string
	Description string
	ProviderKey string
}

WFPProvider represents a WFP Provider.

type WFPSubLayer

type WFPSubLayer struct {
	Name        string
	Description string
	SubLayerKey string
}

WFPSubLayer represents a WFP SubLayer.

Jump to

Keyboard shortcuts

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