Versions in this module Expand all Collapse all v1 v1.0.0 Oct 10, 2023 Changes in this version + const AF_INET6 — windows/amd64 + const HTTPHostHeaderFlag + const HelloWorldFlag + const HelloWorldService + const Http2OriginFlag + const HttpStatusService + const NoChunkedEncodingFlag + const NoTLSVerifyFlag + const OriginServerNameFlag + const ProxyAddressFlag + const ProxyConnectTimeoutFlag + const ProxyKeepAliveConnectionsFlag + const ProxyKeepAliveTimeoutFlag + const ProxyNoHappyEyeballsFlag + const ProxyPortFlag + const ProxyTCPKeepAliveFlag + const ProxyTLSTimeoutFlag + const SSHServerFlag + const ServiceBastion + const ServiceSocksProxy + const ServiceWarpRouting + const Socks5Flag + var ErrNoIngressRules = errors.New("The config file doesn't contain any ingress rules") + var ErrNoIngressRulesCLI = errors.New(...) + var ErrURLIncompatibleWithIngress = errors.New(...) + var Icmp6CreateFile_proc = Iphlpapi.NewProc("Icmp6CreateFile") — windows/amd64 + var Icmp6SendEcho_proc = Iphlpapi.NewProc("Icmp6SendEcho2") — windows/amd64 + var IcmpCreateFile_proc = Iphlpapi.NewProc("IcmpCreateFile") — windows/amd64 + var IcmpSendEcho_proc = Iphlpapi.NewProc("IcmpSendEcho") — windows/amd64 + var Iphlpapi = syscall.NewLazyDLL("Iphlpapi.dll") — windows/amd64 + func ConvertToRawOriginConfig(c OriginRequestConfig) config.OriginRequestConfig + func DefaultStreamHandler(originConn io.ReadWriter, remoteConn net.Conn, log *zerolog.Logger) + func NewICMPRouter(ipv4Addr, ipv6Addr netip.Addr, ipv6Zone string, logger *zerolog.Logger) (*icmpRouter, error) + type GlobalRouterConfig struct + ICMPRouter *icmpRouter + IPv4Src netip.Addr + IPv6Src netip.Addr + Zone string + type HTTPLocalProxy interface + type HTTPOriginProxy interface + type Ingress struct + Defaults OriginRequestConfig + InternalRules []Rule + Rules []Rule + func ParseIngress(conf *config.Configuration) (Ingress, error) + func ParseIngressFromConfigAndCLI(conf *config.Configuration, c *cli.Context, log *zerolog.Logger) (Ingress, error) + func (ing Ingress) CatchAll() *Rule + func (ing Ingress) FindMatchingRule(hostname, path string) (*Rule, int) + func (ing Ingress) IsEmpty() bool + func (ing Ingress) IsSingleRule() bool + func (ing Ingress) StartOrigins(log *zerolog.Logger, shutdownC <-chan struct{}) error + type ManagementService struct + func (o *ManagementService) String() string + func (o ManagementService) MarshalJSON() ([]byte, error) + type MockOriginHTTPService struct + Transport http.RoundTripper + func (mos MockOriginHTTPService) MarshalJSON() ([]byte, error) + func (mos MockOriginHTTPService) RoundTrip(req *http.Request) (*http.Response, error) + func (mos MockOriginHTTPService) String() string + type NopReadCloser struct + func (nrc *NopReadCloser) Close() error + func (nrc *NopReadCloser) Read(buf []byte) (int, error) + type OriginConnection interface + Close func() + Stream func(ctx context.Context, tunnelConn io.ReadWriter, log *zerolog.Logger) + type OriginRequestConfig struct + Access config.AccessConfig + BastionMode bool + CAPool string + ConnectTimeout config.CustomDuration + DisableChunkedEncoding bool + HTTPHostHeader string + Http2Origin bool + IPRules []ipaccess.Rule + KeepAliveConnections int + KeepAliveTimeout config.CustomDuration + NoHappyEyeballs bool + NoTLSVerify bool + OriginServerName string + ProxyAddress string + ProxyPort uint + ProxyType string + TCPKeepAlive config.CustomDuration + TLSTimeout config.CustomDuration + type OriginService interface + MarshalJSON func() ([]byte, error) + String func() string + type PacketRouter struct + func NewPacketRouter(globalConfig *GlobalRouterConfig, muxer muxer, logger *zerolog.Logger) *PacketRouter + func (r *PacketRouter) Serve(ctx context.Context) error + type Regexp struct + func (r *Regexp) MarshalJSON() ([]byte, error) + type RemoteConfig struct + Ingress Ingress + WarpRouting WarpRoutingConfig + func (rc *RemoteConfig) UnmarshalJSON(b []byte) error + type RemoteConfigJSON struct + GlobalOriginRequest *config.OriginRequestConfig + IngressRules []config.UnvalidatedIngressRule + WarpRouting config.WarpRoutingConfig + type Rule struct + Config OriginRequestConfig + Handlers []middleware.Handler + Hostname string + Path *Regexp + Service OriginService + func GetDefaultIngressRules(log *zerolog.Logger) []Rule + func NewManagementRule(management *management.ManagementService) Rule + func (r *Rule) Matches(hostname, path string) bool + func (r Rule) MultiLineString() string + type StreamBasedOriginProxy interface + EstablishConnection func(ctx context.Context, dest string) (OriginConnection, error) + type UDPProxy interface + LocalAddr func() net.Addr + func DialUDP(dstIP net.IP, dstPort uint16) (UDPProxy, error) + type WarpRoutingConfig struct + ConnectTimeout config.CustomDuration + TCPKeepAlive config.CustomDuration + func NewWarpRoutingConfig(raw *config.WarpRoutingConfig) WarpRoutingConfig + func (c *WarpRoutingConfig) RawConfig() config.WarpRoutingConfig + type WarpRoutingService struct + Proxy StreamBasedOriginProxy + func NewWarpRoutingService(config WarpRoutingConfig) *WarpRoutingService