intercept

package
v0.21.148 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2022 License: Apache-2.0 Imports: 24 Imported by: 1

Documentation

Index

Constants

View Source
const (
	A   = 1
	MX  = 15
	TXT = 16
	SRV = 33
)

record type

View Source
const (
	NOERROR  = 0
	FORMERR  = 1
	SERVFAIL = 2
	NXDOMAIN = 3
	NOTIMP   = 4
	REFUSED  = 5
)

response code

Variables

This section is empty.

Functions

func GetInterceptAddresses added in v0.19.63

func GetInterceptAddresses(service *entities.Service, protocols []string, resolver dns.Resolver, addressCB InterceptAddrCB) error

func SetDnsInterceptIpRange added in v0.16.45

func SetDnsInterceptIpRange(cidr string) error

Types

type AddressTracker added in v0.19.63

type AddressTracker interface {
	AddAddress(addr string)
	RemoveAddress(addr string) bool
}

type DnsAnswer added in v0.21.102

type DnsAnswer struct {
	Name     string `json:"name"`
	Type     int    `json:"type"`
	TTL      int    `json:"ttl"`
	Data     string `json:"data"`
	Port     uint16 `json:"port,omitempty"`
	Priority uint16 `json:"priority,omitempty"`
	Weight   uint16 `json:"weight,omitempty"`
}

type DnsMessage added in v0.21.102

type DnsMessage struct {
	Id       int            `json:"id"`
	Status   int            `json:"status"`
	Question []*DnsQuestion `json:"question"`
	Answer   []*DnsAnswer   `json:"answer"`
	Comment  string         `json:"comment,omitempty"`
}

type DnsQuestion added in v0.21.102

type DnsQuestion struct {
	Name string `json:"name"`
	Type int    `json:"type"`
}

type InterceptAddrCB added in v0.20.72

type InterceptAddrCB interface {
	Apply(*InterceptAddress)
}

type InterceptAddress added in v0.19.63

type InterceptAddress struct {
	TproxySpec []string
	AcceptSpec []string
	// contains filtered or unexported fields
}

func (*InterceptAddress) Contains added in v0.19.63

func (addr *InterceptAddress) Contains(ip net.IP, port uint16) bool

func (*InterceptAddress) HighPort added in v0.19.63

func (addr *InterceptAddress) HighPort() uint16

func (*InterceptAddress) IpNet added in v0.19.63

func (addr *InterceptAddress) IpNet() *net.IPNet

func (*InterceptAddress) LowPort added in v0.19.63

func (addr *InterceptAddress) LowPort() uint16

func (*InterceptAddress) Proto added in v0.19.63

func (addr *InterceptAddress) Proto() string

func (*InterceptAddress) String added in v0.19.163

func (addr *InterceptAddress) String() string

type Interceptor

type Interceptor interface {
	Start(provider tunnel.FabricProvider)
	Stop()
	Intercept(service *entities.Service, resolver dns.Resolver, tracker AddressTracker) error
	StopIntercepting(serviceName string, tracker AddressTracker) error
}

type Protocol

type Protocol int
const (
	TCP Protocol = 2
	UDP Protocol = 17
)

type ServiceListener added in v0.17.54

type ServiceListener struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func NewServiceListener added in v0.17.54

func NewServiceListener(interceptor Interceptor, resolver dns.Resolver) *ServiceListener

func (*ServiceListener) HandleProviderReady added in v0.19.10

func (self *ServiceListener) HandleProviderReady(provider tunnel.FabricProvider)

func (*ServiceListener) HandleServicesChange added in v0.17.54

func (self *ServiceListener) HandleServicesChange(eventType ziti.ServiceEventType, service *edge.Service)

func (*ServiceListener) WaitForShutdown added in v0.17.54

func (self *ServiceListener) WaitForShutdown()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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