SYMBOL INDEX (5675 symbols across 689 files) FILE: adapter/certificate.go type CertificateStore (line 10) | type CertificateStore interface function RootPoolFromContext (line 15) | func RootPoolFromContext(ctx context.Context) *x509.CertPool { FILE: adapter/connections.go type ConnectionManager (line 10) | type ConnectionManager interface FILE: adapter/dns.go type DNSRouter (line 17) | type DNSRouter interface type DNSClient (line 26) | type DNSClient interface type DNSQueryOptions (line 33) | type DNSQueryOptions struct function DNSQueryOptionsFrom (line 42) | func DNSQueryOptionsFrom(ctx context.Context, options *option.DomainReso... type RDRCStore (line 60) | type RDRCStore interface type DNSTransport (line 66) | type DNSTransport interface type LegacyDNSTransport (line 75) | type LegacyDNSTransport interface type DNSTransportRegistry (line 80) | type DNSTransportRegistry interface type DNSTransportManager (line 85) | type DNSTransportManager interface FILE: adapter/endpoint.go type Endpoint (line 10) | type Endpoint interface type EndpointRegistry (line 17) | type EndpointRegistry interface type EndpointManager (line 22) | type EndpointManager interface FILE: adapter/endpoint/adapter.go type Adapter (line 5) | type Adapter struct method Type (line 29) | func (a *Adapter) Type() string { method Tag (line 33) | func (a *Adapter) Tag() string { method Network (line 37) | func (a *Adapter) Network() []string { method Dependencies (line 41) | func (a *Adapter) Dependencies() []string { function NewAdapter (line 12) | func NewAdapter(endpointType string, endpointTag string, network []strin... function NewAdapterWithDialerOptions (line 21) | func NewAdapterWithDialerOptions(endpointType string, endpointTag string... FILE: adapter/endpoint/manager.go type Manager (line 20) | type Manager struct method Start (line 38) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 63) | func (m *Manager) Close() error { method Endpoints (line 88) | func (m *Manager) Endpoints() []adapter.Endpoint { method Get (line 94) | func (m *Manager) Get(tag string) (adapter.Endpoint, bool) { method Remove (line 101) | func (m *Manager) Remove(tag string) error { method Create (line 124) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 30) | func NewManager(logger log.ContextLogger, registry adapter.EndpointRegis... FILE: adapter/endpoint/registry.go type ConstructorFunc (line 13) | type ConstructorFunc function Register (line 15) | func Register[Options any](registry *Registry, outboundType string, cons... type optionsConstructorFunc (line 30) | type optionsConstructorFunc type constructorFunc (line 31) | type constructorFunc type Registry (line 34) | type Registry struct method CreateOptions (line 47) | func (m *Registry) CreateOptions(outboundType string) (any, bool) { method Create (line 57) | func (m *Registry) Create(ctx context.Context, router adapter.Router, ... method register (line 67) | func (m *Registry) register(outboundType string, optionsConstructor op... function NewRegistry (line 40) | func NewRegistry() *Registry { FILE: adapter/experimental.go type ClashServer (line 14) | type ClashServer interface type URLTestHistory (line 23) | type URLTestHistory struct type URLTestHistoryStorage (line 28) | type URLTestHistoryStorage interface type V2RayServer (line 36) | type V2RayServer interface type CacheFile (line 41) | type CacheFile interface type SavedBinary (line 60) | type SavedBinary struct method MarshalBinary (line 66) | func (s *SavedBinary) MarshalBinary() ([]byte, error) { method UnmarshalBinary (line 95) | func (s *SavedBinary) UnmarshalBinary(data []byte) error { type OutboundGroup (line 130) | type OutboundGroup interface type URLTestGroup (line 136) | type URLTestGroup interface function OutboundTag (line 141) | func OutboundTag(detour Outbound) string { FILE: adapter/fakeip.go type FakeIPStore (line 9) | type FakeIPStore interface type FakeIPStorage (line 17) | type FakeIPStorage interface type FakeIPTransport (line 28) | type FakeIPTransport interface FILE: adapter/fakeip_metadata.go type FakeIPMetadata (line 13) | type FakeIPMetadata struct method MarshalBinary (line 20) | func (m *FakeIPMetadata) MarshalBinary() (data []byte, err error) { method UnmarshalBinary (line 34) | func (m *FakeIPMetadata) UnmarshalBinary(data []byte) error { FILE: adapter/handler.go type ConnectionHandler (line 14) | type ConnectionHandler interface type ConnectionHandlerEx (line 18) | type ConnectionHandlerEx interface type PacketHandler (line 23) | type PacketHandler interface type PacketHandlerEx (line 27) | type PacketHandlerEx interface type OOBPacketHandler (line 32) | type OOBPacketHandler interface type OOBPacketHandlerEx (line 36) | type OOBPacketHandlerEx interface type PacketConnectionHandler (line 41) | type PacketConnectionHandler interface type PacketConnectionHandlerEx (line 45) | type PacketConnectionHandlerEx interface type UpstreamHandlerAdapter (line 52) | type UpstreamHandlerAdapter interface type UpstreamHandlerAdapterEx (line 58) | type UpstreamHandlerAdapterEx interface FILE: adapter/inbound.go type Inbound (line 15) | type Inbound interface type TCPInjectableInbound (line 21) | type TCPInjectableInbound interface type UDPInjectableInbound (line 26) | type UDPInjectableInbound interface type InboundRegistry (line 31) | type InboundRegistry interface type InboundManager (line 36) | type InboundManager interface type InboundContext (line 44) | type InboundContext struct method ResetRuleCache (line 104) | func (c *InboundContext) ResetRuleCache() { type inboundContextKey (line 114) | type inboundContextKey struct function WithContext (line 116) | func WithContext(ctx context.Context, inboundContext *InboundContext) co... function ContextFrom (line 120) | func ContextFrom(ctx context.Context) *InboundContext { function ExtendContext (line 128) | func ExtendContext(ctx context.Context) (context.Context, *InboundContex... function OverrideContext (line 136) | func OverrideContext(ctx context.Context) context.Context { FILE: adapter/inbound/adapter.go type Adapter (line 3) | type Adapter struct method Type (line 15) | func (a *Adapter) Type() string { method Tag (line 19) | func (a *Adapter) Tag() string { function NewAdapter (line 8) | func NewAdapter(inboundType string, inboundTag string) Adapter { FILE: adapter/inbound/manager.go type Manager (line 20) | type Manager struct method Start (line 40) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 62) | func (m *Manager) Close() error { method Inbounds (line 87) | func (m *Manager) Inbounds() []adapter.Inbound { method Get (line 93) | func (m *Manager) Get(tag string) (adapter.Inbound, bool) { method Remove (line 103) | func (m *Manager) Remove(tag string) error { method Create (line 126) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 31) | func NewManager(logger log.ContextLogger, registry adapter.InboundRegist... FILE: adapter/inbound/registry.go type ConstructorFunc (line 13) | type ConstructorFunc function Register (line 15) | func Register[Options any](registry *Registry, outboundType string, cons... type optionsConstructorFunc (line 30) | type optionsConstructorFunc type constructorFunc (line 31) | type constructorFunc type Registry (line 34) | type Registry struct method CreateOptions (line 47) | func (m *Registry) CreateOptions(outboundType string) (any, bool) { method Create (line 57) | func (m *Registry) Create(ctx context.Context, router adapter.Router, ... method register (line 67) | func (m *Registry) register(outboundType string, optionsConstructor op... function NewRegistry (line 40) | func NewRegistry() *Registry { FILE: adapter/lifecycle.go type SimpleLifecycle (line 13) | type SimpleLifecycle interface type StartStage (line 18) | type StartStage method String (line 34) | func (s StartStage) String() string { constant StartStateInitialize (line 21) | StartStateInitialize StartStage = iota constant StartStateStart (line 22) | StartStateStart constant StartStatePostStart (line 23) | StartStatePostStart constant StartStateStarted (line 24) | StartStateStarted type Lifecycle (line 49) | type Lifecycle interface type LifecycleService (line 54) | type LifecycleService interface function getServiceName (line 59) | func getServiceName(service any) string { function Start (line 77) | func Start(logger log.ContextLogger, stage StartStage, services ...Lifec... function StartNamed (line 91) | func StartNamed(logger log.ContextLogger, stage StartStage, services []L... FILE: adapter/lifecycle_legacy.go function LegacyStart (line 3) | func LegacyStart(starter any, stage StartStage) error { type lifecycleServiceWrapper (line 30) | type lifecycleServiceWrapper struct method Name (line 42) | func (l *lifecycleServiceWrapper) Name() string { method Start (line 46) | func (l *lifecycleServiceWrapper) Start(stage StartStage) error { method Close (line 50) | func (l *lifecycleServiceWrapper) Close() error { function NewLifecycleService (line 35) | func NewLifecycleService(service SimpleLifecycle, name string) Lifecycle... FILE: adapter/neighbor.go type NeighborEntry (line 8) | type NeighborEntry struct type NeighborResolver (line 14) | type NeighborResolver interface type NeighborUpdateListener (line 21) | type NeighborUpdateListener interface FILE: adapter/network.go type NetworkManager (line 11) | type NetworkManager interface type NetworkOptions (line 34) | type NetworkOptions struct type InterfaceUpdateListener (line 45) | type InterfaceUpdateListener interface type WIFIState (line 49) | type WIFIState struct type NetworkInterface (line 54) | type NetworkInterface struct FILE: adapter/outbound.go type Outbound (line 16) | type Outbound interface type OutboundWithPreferredRoutes (line 24) | type OutboundWithPreferredRoutes interface type DirectRouteOutbound (line 30) | type DirectRouteOutbound interface type OutboundRegistry (line 35) | type OutboundRegistry interface type OutboundManager (line 40) | type OutboundManager interface FILE: adapter/outbound/adapter.go type Adapter (line 7) | type Adapter struct method Type (line 31) | func (a *Adapter) Type() string { method Tag (line 35) | func (a *Adapter) Tag() string { method Network (line 39) | func (a *Adapter) Network() []string { method Dependencies (line 43) | func (a *Adapter) Dependencies() []string { function NewAdapter (line 14) | func NewAdapter(outboundType string, outboundTag string, network []strin... function NewAdapterWithDialerOptions (line 23) | func NewAdapterWithDialerOptions(outboundType string, outboundTag string... FILE: adapter/outbound/manager.go type Manager (line 23) | type Manager struct method Initialize (line 49) | func (m *Manager) Initialize(defaultOutboundFallback func() (adapter.O... method Start (line 53) | func (m *Manager) Start(stage adapter.StartStage) error { method startOutbounds (line 99) | func (m *Manager) startOutbounds(outbounds []adapter.Outbound) error { method Close (line 173) | func (m *Manager) Close() error { method Outbounds (line 201) | func (m *Manager) Outbounds() []adapter.Outbound { method Outbound (line 207) | func (m *Manager) Outbound(tag string) (adapter.Outbound, bool) { method Default (line 217) | func (m *Manager) Default() adapter.Outbound { method Remove (line 223) | func (m *Manager) Remove(tag string) error { method Create (line 267) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 38) | func NewManager(logger logger.ContextLogger, registry adapter.OutboundRe... FILE: adapter/outbound/registry.go type ConstructorFunc (line 13) | type ConstructorFunc function Register (line 15) | func Register[Options any](registry *Registry, outboundType string, cons... type optionsConstructorFunc (line 30) | type optionsConstructorFunc type constructorFunc (line 31) | type constructorFunc type Registry (line 34) | type Registry struct method CreateOptions (line 47) | func (r *Registry) CreateOptions(outboundType string) (any, bool) { method CreateOutbound (line 57) | func (r *Registry) CreateOutbound(ctx context.Context, router adapter.... method register (line 67) | func (r *Registry) register(outboundType string, optionsConstructor op... function NewRegistry (line 40) | func NewRegistry() *Registry { FILE: adapter/platform.go type PlatformInterface (line 9) | type PlatformInterface interface type FindConnectionOwnerRequest (line 45) | type FindConnectionOwnerRequest struct type ConnectionOwner (line 53) | type ConnectionOwner struct type Notification (line 61) | type Notification struct type SystemProxyStatus (line 71) | type SystemProxyStatus struct FILE: adapter/router.go type Router (line 21) | type Router interface type ConnectionTracker (line 35) | type ConnectionTracker interface type ConnectionRouter (line 41) | type ConnectionRouter interface type ConnectionRouterEx (line 46) | type ConnectionRouterEx interface type RuleSet (line 52) | type RuleSet interface type RuleSetUpdateCallback (line 67) | type RuleSetUpdateCallback type RuleSetMetadata (line 69) | type RuleSetMetadata struct type HTTPStartContext (line 74) | type HTTPStartContext struct method HTTPClient (line 87) | func (c *HTTPStartContext) HTTPClient(detour string, dialer N.Dialer) ... method Close (line 110) | func (c *HTTPStartContext) Close() { function NewHTTPStartContext (line 80) | func NewHTTPStartContext(ctx context.Context) *HTTPStartContext { FILE: adapter/rule.go type HeadlessRule (line 7) | type HeadlessRule interface type Rule (line 12) | type Rule interface type DNSRule (line 19) | type DNSRule interface type RuleAction (line 25) | type RuleAction interface function IsFinalAction (line 30) | func IsFinalAction(action RuleAction) bool { FILE: adapter/service.go type Service (line 10) | type Service interface type ServiceRegistry (line 16) | type ServiceRegistry interface type ServiceManager (line 21) | type ServiceManager interface FILE: adapter/service/adapter.go type Adapter (line 3) | type Adapter struct method Type (line 15) | func (a *Adapter) Type() string { method Tag (line 19) | func (a *Adapter) Tag() string { function NewAdapter (line 8) | func NewAdapter(serviceType string, serviceTag string) Adapter { FILE: adapter/service/manager.go type Manager (line 20) | type Manager struct method Start (line 38) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 60) | func (m *Manager) Close() error { method Services (line 85) | func (m *Manager) Services() []adapter.Service { method Get (line 91) | func (m *Manager) Get(tag string) (adapter.Service, bool) { method Remove (line 98) | func (m *Manager) Remove(tag string) error { method Create (line 121) | func (m *Manager) Create(ctx context.Context, logger log.ContextLogger... function NewManager (line 30) | func NewManager(logger log.ContextLogger, registry adapter.ServiceRegist... FILE: adapter/service/registry.go type ConstructorFunc (line 13) | type ConstructorFunc function Register (line 15) | func Register[Options any](registry *Registry, outboundType string, cons... type optionsConstructorFunc (line 30) | type optionsConstructorFunc type constructorFunc (line 31) | type constructorFunc type Registry (line 34) | type Registry struct method CreateOptions (line 47) | func (m *Registry) CreateOptions(outboundType string) (any, bool) { method Create (line 57) | func (m *Registry) Create(ctx context.Context, logger log.ContextLogge... method register (line 67) | func (m *Registry) register(outboundType string, optionsConstructor op... function NewRegistry (line 40) | func NewRegistry() *Registry { FILE: adapter/ssm.go type ManagedSSMServer (line 9) | type ManagedSSMServer interface type SSMTracker (line 15) | type SSMTracker interface FILE: adapter/time.go type TimeService (line 5) | type TimeService interface FILE: adapter/upstream.go function NewUpstreamHandlerEx (line 16) | func NewUpstreamHandlerEx( type myUpstreamHandlerWrapperEx (line 30) | type myUpstreamHandlerWrapperEx struct method NewConnectionEx (line 36) | func (w *myUpstreamHandlerWrapperEx) NewConnectionEx(ctx context.Conte... method NewPacketConnectionEx (line 47) | func (w *myUpstreamHandlerWrapperEx) NewPacketConnectionEx(ctx context... type myUpstreamContextHandlerWrapperEx (line 60) | type myUpstreamContextHandlerWrapperEx struct method NewConnectionEx (line 75) | func (w *myUpstreamContextHandlerWrapperEx) NewConnectionEx(ctx contex... method NewPacketConnectionEx (line 86) | func (w *myUpstreamContextHandlerWrapperEx) NewPacketConnectionEx(ctx ... function NewUpstreamContextHandlerEx (line 65) | func NewUpstreamContextHandlerEx( function NewRouteHandlerEx (line 97) | func NewRouteHandlerEx( type routeHandlerWrapperEx (line 109) | type routeHandlerWrapperEx struct method NewConnectionEx (line 114) | func (r *routeHandlerWrapperEx) NewConnectionEx(ctx context.Context, c... method NewPacketConnectionEx (line 124) | func (r *routeHandlerWrapperEx) NewPacketConnectionEx(ctx context.Cont... function NewRouteContextHandlerEx (line 134) | func NewRouteContextHandlerEx( type routeContextHandlerWrapperEx (line 144) | type routeContextHandlerWrapperEx struct method NewConnectionEx (line 148) | func (r *routeContextHandlerWrapperEx) NewConnectionEx(ctx context.Con... method NewPacketConnectionEx (line 159) | func (r *routeContextHandlerWrapperEx) NewPacketConnectionEx(ctx conte... FILE: adapter/upstream_legacy.go function NewUpstreamHandler (line 23) | func NewUpstreamHandler( type myUpstreamHandlerWrapper (line 42) | type myUpstreamHandlerWrapper struct method NewConnection (line 50) | func (w *myUpstreamHandlerWrapper) NewConnection(ctx context.Context, ... method NewPacketConnection (line 62) | func (w *myUpstreamHandlerWrapper) NewPacketConnection(ctx context.Con... method NewError (line 74) | func (w *myUpstreamHandlerWrapper) NewError(ctx context.Context, err e... function UpstreamMetadata (line 79) | func UpstreamMetadata(metadata InboundContext) M.Metadata { type myUpstreamContextHandlerWrapper (line 87) | type myUpstreamContextHandlerWrapper struct method NewConnection (line 107) | func (w *myUpstreamContextHandlerWrapper) NewConnection(ctx context.Co... method NewPacketConnection (line 119) | func (w *myUpstreamContextHandlerWrapper) NewPacketConnection(ctx cont... method NewError (line 131) | func (w *myUpstreamContextHandlerWrapper) NewError(ctx context.Context... function NewUpstreamContextHandler (line 94) | func NewUpstreamContextHandler( function NewRouteHandler (line 136) | func NewRouteHandler( function NewRouteContextHandler (line 149) | func NewRouteContextHandler( type routeHandlerWrapper (line 164) | type routeHandlerWrapper struct method NewConnection (line 171) | func (w *routeHandlerWrapper) NewConnection(ctx context.Context, conn ... method NewPacketConnection (line 183) | func (w *routeHandlerWrapper) NewPacketConnection(ctx context.Context,... method NewError (line 195) | func (w *routeHandlerWrapper) NewError(ctx context.Context, err error) { type routeContextHandlerWrapper (line 202) | type routeContextHandlerWrapper struct method NewConnection (line 208) | func (w *routeContextHandlerWrapper) NewConnection(ctx context.Context... method NewPacketConnection (line 220) | func (w *routeContextHandlerWrapper) NewPacketConnection(ctx context.C... method NewError (line 232) | func (w *routeContextHandlerWrapper) NewError(ctx context.Context, err... FILE: adapter/v2ray.go type V2RayServerTransport (line 10) | type V2RayServerTransport interface type V2RayServerTransportHandler (line 17) | type V2RayServerTransportHandler interface type V2RayClientTransport (line 21) | type V2RayClientTransport interface FILE: box.go type Box (line 39) | type Box struct method PreStart (line 403) | func (s *Box) PreStart() error { method Start (line 422) | func (s *Box) Start() error { method preStart (line 441) | func (s *Box) preStart() error { method start (line 464) | func (s *Box) start() error { method Close (line 496) | func (s *Box) Close() error { method Network (line 542) | func (s *Box) Network() adapter.NetworkManager { method Router (line 546) | func (s *Box) Router() adapter.Router { method Inbound (line 550) | func (s *Box) Inbound() adapter.InboundManager { method Outbound (line 554) | func (s *Box) Outbound() adapter.OutboundManager { method LogFactory (line 558) | func (s *Box) LogFactory() log.Factory { type Options (line 56) | type Options struct function Context (line 62) | func Context( function New (line 96) | func New(options Options) (*Box, error) { FILE: cmd/internal/app_store_connect/main.go function main (line 19) | func main() { constant appID (line 53) | appID = "6673731168" constant groupID (line 54) | groupID = "5c5f3b78-b7a0-40c0-bcad-e6ef87bbefda" function createClient (line 57) | func createClient(expireDuration time.Duration) *asc.Client { function fetchMacOSVersion (line 69) | func fetchMacOSVersion(ctx context.Context) error { function publishTestflight (line 102) | func publishTestflight(ctx context.Context) error { function cancelAppStore (line 213) | func cancelAppStore(ctx context.Context, platform string) error { function prepareAppStore (line 262) | func prepareAppStore(ctx context.Context) error { function publishAppStore (line 402) | func publishAppStore(ctx context.Context) error { function isRetryable (line 442) | func isRetryable(response *asc.Response) bool { FILE: cmd/internal/build/main.go function main (line 12) | func main() { FILE: cmd/internal/build_libbox/main.go function init (line 26) | func init() { function main (line 33) | func main() { function init (line 56) | func init() { type AndroidBuildConfig (line 74) | type AndroidBuildConfig struct function filterTags (line 80) | func filterTags(tags []string, exclude ...string) []string { function checkJavaVersion (line 94) | func checkJavaVersion() { function getAndroidBindTarget (line 112) | func getAndroidBindTarget() string { function buildAndroidVariant (line 121) | func buildAndroidVariant(config AndroidBuildConfig, bindTarget string) { function buildAndroid (line 160) | func buildAndroid() { function buildApple (line 191) | func buildApple() { FILE: cmd/internal/build_shared/sdk.go function FindSDK (line 22) | func FindSDK() { function findNDK (line 50) | func findNDK() bool { function FindMobile (line 94) | func FindMobile() { FILE: cmd/internal/build_shared/tag.go function ReadTag (line 9) | func ReadTag() (string, error) { function ReadTagVersionRev (line 23) | func ReadTagVersionRev() (badversion.Version, error) { function ReadTagVersion (line 28) | func ReadTagVersion() (badversion.Version, error) { FILE: cmd/internal/format_docs/main.go function main (line 12) | func main() { function processFile (line 30) | func processFile(path string) error { FILE: cmd/internal/protogen/main.go function envFile (line 18) | func envFile() (string, error) { function GetRuntimeEnv (line 37) | func GetRuntimeEnv(key string) (string, error) { function GetGOBIN (line 63) | func GetGOBIN() string { function main (line 82) | func main() { function NormalizeGeneratedProtoFile (line 184) | func NormalizeGeneratedProtoFile(path string) error { FILE: cmd/internal/read_tag/main.go function init (line 17) | func init() { function main (line 22) | func main() { function setGitHubEnv (line 55) | func setGitHubEnv(name string, value string) error { FILE: cmd/internal/tun_bench/main.go function main (line 26) | func main() { function main0 (line 33) | func main0() error { function runTests (line 47) | func runTests() ([]TestResult, error) { type TestResult (line 93) | type TestResult struct function testOnce (line 103) | func testOnce(boxPath string, stackName string, mtu int, multiThread boo... type stderrWriter (line 280) | type stderrWriter struct method Write (line 282) | func (w *stderrWriter) Write(p []byte) (n int, err error) { FILE: cmd/internal/update_android_version/main.go function init (line 21) | func init() { function main (line 26) | func main() { FILE: cmd/internal/update_apple_version/main.go function init (line 19) | func init() { function main (line 23) | func main() { function findAndReplace (line 60) | func findAndReplace(objectsMap map[string]any, projectContent string, bu... function findAndReplaceProjectVersion (line 84) | func findAndReplaceProjectVersion(objectsMap map[string]any, projectCont... function findObjectKey (line 108) | func findObjectKey(objectsMap map[string]any, bundleIDList []string) []s... function findObjectKeyByDirectory (line 126) | func findObjectKeyByDirectory(objectsMap map[string]any, directoryList [... FILE: cmd/internal/update_certificates/main.go function main (line 15) | func main() { function updateMozillaIncludedRootCAs (line 26) | func updateMozillaIncludedRootCAs() error { function fetchChinaFingerprints (line 77) | func fetchChinaFingerprints() (map[string]bool, error) { function updateChromeIncludedRootCAs (line 106) | func updateChromeIncludedRootCAs() error { FILE: cmd/sing-box/cmd.go function init (line 32) | func init() { function preRun (line 39) | func preRun(cmd *cobra.Command, args []string) { FILE: cmd/sing-box/cmd_check.go function init (line 24) | func init() { function check (line 28) | func check() error { FILE: cmd/sing-box/cmd_format.go function init (line 30) | func init() { function format (line 35) | func format() error { FILE: cmd/sing-box/cmd_generate.go function init (line 21) | func init() { function init (line 45) | func init() { function generateRandom (line 50) | func generateRandom(args []string) error { function generateUUID (line 85) | func generateUUID() error { FILE: cmd/sing-box/cmd_generate_ech.go function init (line 24) | func init() { function generateECHKeyPair (line 28) | func generateECHKeyPair(serverName string) error { FILE: cmd/sing-box/cmd_generate_tls.go function init (line 27) | func init() { function generateTLSKeyPair (line 32) | func generateTLSKeyPair(serverName string) error { FILE: cmd/sing-box/cmd_generate_vapid.go function init (line 27) | func init() { function generateVAPIDKeyPair (line 31) | func generateVAPIDKeyPair() error { FILE: cmd/sing-box/cmd_generate_wireguard.go function init (line 13) | func init() { function generateWireGuardKey (line 30) | func generateWireGuardKey() error { function generateRealityKey (line 52) | func generateRealityKey() error { FILE: cmd/sing-box/cmd_geoip.go function init (line 27) | func init() { function geoipPreRun (line 32) | func geoipPreRun() error { FILE: cmd/sing-box/cmd_geoip_export.go constant flagGeoipExportDefaultOutput (line 21) | flagGeoipExportDefaultOutput = "geoip-.srs" function init (line 35) | func init() { function geoipExport (line 40) | func geoipExport(countryCode string) error { FILE: cmd/sing-box/cmd_geoip_list.go function init (line 22) | func init() { function listGeoip (line 26) | func listGeoip() error { FILE: cmd/sing-box/cmd_geoip_lookup.go function init (line 26) | func init() { function geoipLookup (line 30) | func geoipLookup(address string) error { FILE: cmd/sing-box/cmd_geosite.go function init (line 28) | func init() { function geositePreRun (line 33) | func geositePreRun() error { FILE: cmd/sing-box/cmd_geosite_export.go constant commandGeositeExportDefaultOutput (line 18) | commandGeositeExportDefaultOutput = "geosite-.json" function init (line 32) | func init() { function geositeExport (line 37) | func geositeExport(category string) error { FILE: cmd/sing-box/cmd_geosite_list.go function init (line 24) | func init() { function geositeList (line 28) | func geositeList() error { FILE: cmd/sing-box/cmd_geosite_lookup.go function init (line 36) | func init() { function geositeLookup (line 40) | func geositeLookup(source string, target string) error { FILE: cmd/sing-box/cmd_geosite_matcher.go type searchGeositeMatcher (line 10) | type searchGeositeMatcher struct method Match (line 32) | func (r *searchGeositeMatcher) Match(domain string) string { function newSearchGeositeMatcher (line 17) | func newSearchGeositeMatcher(items []geosite.Item) (*searchGeositeMatche... FILE: cmd/sing-box/cmd_merge.go function init (line 32) | func init() { function merge (line 36) | func merge(outputPath string) error { function mergePathResources (line 70) | func mergePathResources(options *option.Options) error { function mergeTLSInboundOptions (line 88) | func mergeTLSInboundOptions(options *option.InboundTLSOptions) *option.I... function mergeTLSOutboundOptions (line 112) | func mergeTLSOutboundOptions(options *option.OutboundTLSOptions) *option... function mergeSSHOutboundOptions (line 131) | func mergeSSHOutboundOptions(options *option.SSHOutboundOptions) { function trimStringArray (line 139) | func trimStringArray(array []string) []string { FILE: cmd/sing-box/cmd_rule_set.go function init (line 12) | func init() { FILE: cmd/sing-box/cmd_rule_set_compile.go constant flagRuleSetCompileDefaultOutput (line 20) | flagRuleSetCompileDefaultOutput = ".srs" function init (line 34) | func init() { function compileRuleSet (line 39) | func compileRuleSet(sourcePath string) error { function downgradeRuleSetVersion (line 84) | func downgradeRuleSetVersion(version uint8, options option.PlainRuleSet)... FILE: cmd/sing-box/cmd_rule_set_convert.go function init (line 35) | func init() { function convertRuleSet (line 41) | func convertRuleSet(sourcePath string) error { FILE: cmd/sing-box/cmd_rule_set_decompile.go constant flagRuleSetDecompileDefaultOutput (line 20) | flagRuleSetDecompileDefaultOutput = ".json" function init (line 34) | func init() { function decompileRuleSet (line 39) | func decompileRuleSet(sourcePath string) error { function hasRule (line 87) | func hasRule(rules []option.HeadlessRule, cond func(rule option.DefaultH... FILE: cmd/sing-box/cmd_rule_set_format.go function init (line 31) | func init() { function formatRuleSet (line 36) | func formatRuleSet(sourcePath string) error { FILE: cmd/sing-box/cmd_rule_set_match.go function init (line 38) | func init() { function ruleSetMatch (line 43) | func ruleSetMatch(sourcePath string, domain string) error { FILE: cmd/sing-box/cmd_rule_set_merge.go function init (line 38) | func init() { type RuleSetEntry (line 44) | type RuleSetEntry struct function readRuleSetAt (line 50) | func readRuleSetAt(path string) (*RuleSetEntry, error) { function readRuleSet (line 74) | func readRuleSet() ([]*RuleSetEntry, error) { function readRuleSetAndMerge (line 105) | func readRuleSetAndMerge() (option.PlainRuleSetCompat, error) { function mergeRuleSet (line 134) | func mergeRuleSet(outputPath string) error { FILE: cmd/sing-box/cmd_rule_set_upgrade.go function init (line 32) | func init() { function upgradeRuleSet (line 37) | func upgradeRuleSet(sourcePath string) error { FILE: cmd/sing-box/cmd_run.go function init (line 37) | func init() { type OptionsEntry (line 41) | type OptionsEntry struct function readConfigAt (line 47) | func readConfigAt(path string) (*OptionsEntry, error) { function readConfig (line 71) | func readConfig() ([]*OptionsEntry, error) { function readConfigAndMerge (line 102) | func readConfigAndMerge() (option.Options, error) { function create (line 125) | func create() (*box.Box, context.CancelFunc, error) { function run (line 169) | func run() error { function closeMonitor (line 204) | func closeMonitor(ctx context.Context) { FILE: cmd/sing-box/cmd_tools.go function init (line 21) | func init() { function createPreStartedClient (line 26) | func createPreStartedClient() (*box.Box, error) { function createDialer (line 44) | func createDialer(instance *box.Box, outboundTag string) (N.Dialer, erro... FILE: cmd/sing-box/cmd_tools_connect.go function init (line 32) | func init() { function connect (line 37) | func connect(address string) error { FILE: cmd/sing-box/cmd_tools_fetch.go function init (line 33) | func init() { function fetch (line 42) | func fetch(args []string) error { function fetchHTTP (line 99) | func fetchHTTP(httpClient *http.Client, parsedURL *url.URL) error { FILE: cmd/sing-box/cmd_tools_fetch_http3.go function initializeHTTP3Client (line 18) | func initializeHTTP3Client(instance *box.Box) error { FILE: cmd/sing-box/cmd_tools_fetch_http3_stub.go function initializeHTTP3Client (line 12) | func initializeHTTP3Client(instance *box.Box) error { function fetchHTTP3 (line 16) | func fetchHTTP3(parsedURL *url.URL) error { FILE: cmd/sing-box/cmd_tools_synctime.go function init (line 34) | func init() { function syncTime (line 41) | func syncTime() error { FILE: cmd/sing-box/cmd_version.go function init (line 22) | func init() { function printVersion (line 27) | func printVersion(cmd *cobra.Command, args []string) { FILE: cmd/sing-box/generate_completions.go function main (line 7) | func main() { function generateCompletions (line 14) | func generateCompletions() error { FILE: cmd/sing-box/main.go function main (line 7) | func main() { FILE: common/badtls/raw_conn.go type RawConn (line 16) | type RawConn struct method ReadRecord (line 166) | func (c *RawConn) ReadRecord() error { method HandlePostHandshakeMessage (line 170) | func (c *RawConn) HandlePostHandshakeMessage() error { method WriteRecordLocked (line 174) | func (c *RawConn) WriteRecordLocked(typ uint16, data []byte) (int, err... function NewRawConn (line 42) | func NewRawConn(rawTLSConn tls.Conn) (*RawConn, error) { FILE: common/badtls/raw_half_conn.go type RawHalfConn (line 14) | type RawHalfConn struct method Decrypt (line 107) | func (hc *RawHalfConn) Decrypt(record []byte) ([]byte, uint8, error) { method SetErrorLocked (line 111) | func (hc *RawHalfConn) SetErrorLocked(err error) error { method SetTrafficSecret (line 115) | func (hc *RawHalfConn) SetTrafficSecret(suite unsafe.Pointer, level in... method ExplicitNonceLen (line 119) | func (hc *RawHalfConn) ExplicitNonceLen() int { function NewRawHalfConn (line 30) | func NewRawHalfConn(rawHalfConn reflect.Value, methods *Methods) (*RawHa... FILE: common/badtls/read_wait.go type ReadWaitConn (line 13) | type ReadWaitConn struct method InitializeReadWaiter (line 33) | func (c *ReadWaitConn) InitializeReadWaiter(options N.ReadWaitOptions)... method WaitReadBuffer (line 38) | func (c *ReadWaitConn) WaitReadBuffer() (buffer *buf.Buffer, err error) { method Upstream (line 76) | func (c *ReadWaitConn) Upstream() any { method ReaderReplaceable (line 80) | func (c *ReadWaitConn) ReaderReplaceable() bool { function NewReadWaitConn (line 19) | func NewReadWaitConn(conn tls.Conn) (tls.Conn, error) { FILE: common/badtls/read_wait_stub.go function NewReadWaitConn (line 11) | func NewReadWaitConn(conn tls.Conn) (tls.Conn, error) { FILE: common/badtls/registry.go type Methods (line 11) | type Methods struct function init (line 24) | func init() { function stdTLSReadRecord (line 44) | func stdTLSReadRecord(c unsafe.Pointer) error function stdTLSHandlePostHandshakeMessage (line 47) | func stdTLSHandlePostHandshakeMessage(c unsafe.Pointer) error function stdWriteRecordLocked (line 50) | func stdWriteRecordLocked(c unsafe.Pointer, typ uint16, data []byte) (in... function stdSetErrorLocked (line 53) | func stdSetErrorLocked(hc unsafe.Pointer, err error) error function stdDecrypt (line 56) | func stdDecrypt(hc unsafe.Pointer, record []byte) ([]byte, uint8, error) function stdSetTrafficSecret (line 59) | func stdSetTrafficSecret(hc unsafe.Pointer, suite unsafe.Pointer, level ... function stdExplicitNonceLen (line 62) | func stdExplicitNonceLen(hc unsafe.Pointer) int FILE: common/badtls/registry_utls.go function init (line 14) | func init() { function utlsReadRecord (line 38) | func utlsReadRecord(c unsafe.Pointer) error function utlsHandlePostHandshakeMessage (line 41) | func utlsHandlePostHandshakeMessage(c unsafe.Pointer) error function utlsWriteRecordLocked (line 44) | func utlsWriteRecordLocked(hc unsafe.Pointer, typ uint16, data []byte) (... function utlsSetErrorLocked (line 47) | func utlsSetErrorLocked(hc unsafe.Pointer, err error) error function utlsDecrypt (line 50) | func utlsDecrypt(hc unsafe.Pointer, record []byte) ([]byte, uint8, error) function utlsSetTrafficSecret (line 53) | func utlsSetTrafficSecret(hc unsafe.Pointer, suite unsafe.Pointer, level... function utlsExplicitNonceLen (line 56) | func utlsExplicitNonceLen(hc unsafe.Pointer) int FILE: common/badversion/version.go type Version (line 12) | type Version struct method LessThan (line 21) | func (v Version) LessThan(anotherVersion Version) bool { method LessThanOrEqual (line 25) | func (v Version) LessThanOrEqual(anotherVersion Version) bool { method GreaterThanOrEqual (line 29) | func (v Version) GreaterThanOrEqual(anotherVersion Version) bool { method GreaterThan (line 33) | func (v Version) GreaterThan(anotherVersion Version) bool { method VersionString (line 84) | func (v Version) VersionString() string { method String (line 88) | func (v Version) String() string { method BadString (line 96) | func (v Version) BadString() string { function parsePreReleaseIdentifier (line 73) | func parsePreReleaseIdentifier(identifier string) int { function IsValid (line 110) | func IsValid(versionName string) bool { function Parse (line 114) | func Parse(versionName string) (version Version) { FILE: common/badversion/version_json.go method MarshalJSON (line 5) | func (v Version) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 9) | func (v *Version) UnmarshalJSON(data []byte) error { FILE: common/badversion/version_test.go function TestCompareVersion (line 9) | func TestCompareVersion(t *testing.T) { FILE: common/certificate/chrome.go function init (line 9) | func init() { FILE: common/certificate/mozilla.go function init (line 9) | func init() { FILE: common/certificate/store.go type Store (line 23) | type Store struct method Name (line 99) | func (s *Store) Name() string { method Start (line 103) | func (s *Store) Start(stage adapter.StartStage) error { method Close (line 113) | func (s *Store) Close() error { method Pool (line 120) | func (s *Store) Pool() *x509.CertPool { method update (line 126) | func (s *Store) update() error { function NewStore (line 33) | func NewStore(ctx context.Context, logger logger.Logger, options option.... function readUniqueDirectoryEntries (line 172) | func readUniqueDirectoryEntries(dir string) ([]fs.DirEntry, error) { function isSameDirSymlink (line 186) | func isSameDirSymlink(f fs.DirEntry, dir string) bool { FILE: common/compatible/map.go type Map (line 6) | type Map struct method Len (line 10) | func (m *Map[K, V]) Len() int { method Load (line 19) | func (m *Map[K, V]) Load(key K) (V, bool) { method Store (line 28) | func (m *Map[K, V]) Store(key K, value V) { method Delete (line 32) | func (m *Map[K, V]) Delete(key K) { method Range (line 36) | func (m *Map[K, V]) Range(f func(key K, value V) bool) { method LoadOrStore (line 42) | func (m *Map[K, V]) LoadOrStore(key K, value V) (V, bool) { method LoadAndDelete (line 47) | func (m *Map[K, V]) LoadAndDelete(key K) (V, bool) { function New (line 56) | func New[K comparable, V any]() *Map[K, V] { FILE: common/convertor/adguard/convertor.go type agdguardRuleLine (line 20) | type agdguardRuleLine struct function ToOptions (line 31) | func ToOptions(reader io.Reader, logger logger.Logger) ([]option.Headles... function FromOptions (line 306) | func FromOptions(rules []option.HeadlessRule) ([]byte, error) { function ignoreIPCIDRRegexp (line 404) | func ignoreIPCIDRRegexp(ruleLine string) bool { function parseAdGuardHostLine (line 416) | func parseAdGuardHostLine(ruleLine string) (string, error) { function parseADGuardIPCIDRLine (line 435) | func parseADGuardIPCIDRLine(ruleLine string) (netip.Prefix, error) { FILE: common/convertor/adguard/convertor_test.go function TestConverter (line 15) | func TestConverter(t *testing.T) { function TestHosts (line 84) | func TestHosts(t *testing.T) { function TestSimpleHosts (line 115) | func TestSimpleHosts(t *testing.T) { FILE: common/dialer/default.go type DefaultDialer (line 30) | type DefaultDialer struct method DialContext (line 239) | func (d *DefaultDialer) DialContext(ctx context.Context, network strin... method DialParallelInterface (line 266) | func (d *DefaultDialer) DialParallelInterface(ctx context.Context, net... method ListenPacket (line 314) | func (d *DefaultDialer) ListenPacket(ctx context.Context, destination ... method DialerForICMPDestination (line 330) | func (d *DefaultDialer) DialerForICMPDestination(destination netip.Add... method ListenSerialInterfacePacket (line 338) | func (d *DefaultDialer) ListenSerialInterfacePacket(ctx context.Contex... method WireGuardControl (line 371) | func (d *DefaultDialer) WireGuardControl() control.Func { method trackConn (line 375) | func (d *DefaultDialer) trackConn(conn net.Conn, err error) (net.Conn,... method trackPacketConn (line 382) | func (d *DefaultDialer) trackPacketConn(conn net.PacketConn, err error... function NewDefault (line 49) | func NewDefault(ctx context.Context, options option.DialerOptions) (*Def... function setMarkWrapper (line 223) | func setMarkWrapper(networkManager adapter.NetworkManager, mark uint32, ... FILE: common/dialer/default_parallel_interface.go method dialParallelInterface (line 16) | func (d *DefaultDialer) dialParallelInterface(ctx context.Context, diale... method dialParallelInterfaceFastFallback (line 90) | func (d *DefaultDialer) dialParallelInterfaceFastFallback(ctx context.Co... method listenSerialInterfacePacket (line 153) | func (d *DefaultDialer) listenSerialInterfacePacket(ctx context.Context,... function selectInterfaces (line 185) | func selectInterfaces(networkManager adapter.NetworkManager, strategy C.... FILE: common/dialer/default_parallel_network.go function DialSerialNetwork (line 16) | func DialSerialNetwork(ctx context.Context, dialer N.Dialer, network str... function DialParallelNetwork (line 47) | func DialParallelNetwork(ctx context.Context, dialer ParallelInterfaceDi... function ListenSerialNetworkPacket (line 132) | func ListenSerialNetworkPacket(ctx context.Context, dialer N.Dialer, des... FILE: common/dialer/detour.go type DirectDialer (line 15) | type DirectDialer interface type DetourDialer (line 19) | type DetourDialer struct method Dialer (line 44) | func (d *DetourDialer) Dialer() (N.Dialer, error) { method init (line 49) | func (d *DetourDialer) init() { method DialContext (line 66) | func (d *DetourDialer) DialContext(ctx context.Context, network string... method ListenPacket (line 74) | func (d *DetourDialer) ListenPacket(ctx context.Context, destination M... method Upstream (line 82) | func (d *DetourDialer) Upstream() any { function NewDetour (line 28) | func NewDetour(outboundManager adapter.OutboundManager, detour string, l... function InitializeDetour (line 36) | func InitializeDetour(dialer N.Dialer) error { FILE: common/dialer/dialer.go type Options (line 19) | type Options struct function New (line 31) | func New(ctx context.Context, options option.DialerOptions, remoteIsDoma... function NewWithOptions (line 39) | func NewWithOptions(options Options) (N.Dialer, error) { type ParallelInterfaceDialer (line 138) | type ParallelInterfaceDialer interface type ParallelNetworkDialer (line 144) | type ParallelNetworkDialer interface type PacketDialerWithDestination (line 149) | type PacketDialerWithDestination interface FILE: common/dialer/resolve.go type ResolveDialer (line 24) | type ResolveDialer interface type ParallelInterfaceResolveDialer (line 29) | type ParallelInterfaceResolveDialer interface type resolveDialer (line 34) | type resolveDialer struct method initialize (line 77) | func (d *resolveDialer) initialize() error { method initServer (line 82) | func (d *resolveDialer) initServer() { method DialContext (line 94) | func (d *resolveDialer) DialContext(ctx context.Context, network strin... method ListenPacket (line 114) | func (d *resolveDialer) ListenPacket(ctx context.Context, destination ... method QueryOptions (line 134) | func (d *resolveDialer) QueryOptions() adapter.DNSQueryOptions { method Upstream (line 138) | func (d *resolveDialer) Upstream() any { function NewResolveDialer (line 46) | func NewResolveDialer(ctx context.Context, dialer N.Dialer, parallel boo... type resolveParallelNetworkDialer (line 72) | type resolveParallelNetworkDialer struct method DialParallelInterface (line 142) | func (d *resolveParallelNetworkDialer) DialParallelInterface(ctx conte... method ListenSerialInterfacePacket (line 165) | func (d *resolveParallelNetworkDialer) ListenSerialInterfacePacket(ctx... method QueryOptions (line 188) | func (d *resolveParallelNetworkDialer) QueryOptions() adapter.DNSQuery... method Upstream (line 192) | func (d *resolveParallelNetworkDialer) Upstream() any { FILE: common/dialer/router.go type DefaultOutboundDialer (line 13) | type DefaultOutboundDialer struct method DialContext (line 23) | func (d *DefaultOutboundDialer) DialContext(ctx context.Context, netwo... method ListenPacket (line 27) | func (d *DefaultOutboundDialer) ListenPacket(ctx context.Context, dest... method Upstream (line 31) | func (d *DefaultOutboundDialer) Upstream() any { function NewDefaultOutbound (line 17) | func NewDefaultOutbound(ctx context.Context) N.Dialer { FILE: common/dialer/tfo.go type slowOpenConn (line 20) | type slowOpenConn struct method Read (line 52) | func (c *slowOpenConn) Read(b []byte) (n int, err error) { method Write (line 68) | func (c *slowOpenConn) Write(b []byte) (n int, err error) { method Close (line 96) | func (c *slowOpenConn) Close() error { method LocalAddr (line 107) | func (c *slowOpenConn) LocalAddr() net.Addr { method RemoteAddr (line 115) | func (c *slowOpenConn) RemoteAddr() net.Addr { method SetDeadline (line 123) | func (c *slowOpenConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 131) | func (c *slowOpenConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 139) | func (c *slowOpenConn) SetWriteDeadline(t time.Time) error { method Upstream (line 147) | func (c *slowOpenConn) Upstream() any { method ReaderReplaceable (line 151) | func (c *slowOpenConn) ReaderReplaceable() bool { method WriterReplaceable (line 155) | func (c *slowOpenConn) WriterReplaceable() bool { method LazyHeadroom (line 159) | func (c *slowOpenConn) LazyHeadroom() bool { method NeedHandshake (line 163) | func (c *slowOpenConn) NeedHandshake() bool { method WriteTo (line 167) | func (c *slowOpenConn) WriteTo(w io.Writer) (n int64, err error) { function DialSlowContext (line 33) | func DialSlowContext(dialer *tfo.Dialer, ctx context.Context, network st... FILE: common/dialer/wireguard.go type WireGuardListener (line 7) | type WireGuardListener interface FILE: common/geoip/reader.go type Reader (line 11) | type Reader struct method Lookup (line 27) | func (r *Reader) Lookup(addr netip.Addr) string { method Close (line 36) | func (r *Reader) Close() error { function Open (line 15) | func Open(path string) (*Reader, []string, error) { FILE: common/geosite/compat_test.go function oldWriteString (line 17) | func oldWriteString(writer varbin.Writer, value string) error { function oldWriteItem (line 22) | func oldWriteItem(writer varbin.Writer, item Item) error { function oldReadString (line 27) | func oldReadString(reader varbin.Reader) (string, error) { function oldReadItem (line 32) | func oldReadItem(reader varbin.Reader) (Item, error) { function TestStringCompat (line 37) | func TestStringCompat(t *testing.T) { function TestItemCompat (line 86) | func TestItemCompat(t *testing.T) { function TestGeositeWriteReadCompat (line 140) | func TestGeositeWriteReadCompat(t *testing.T) { function generateLargeItems (line 225) | func generateLargeItems(count int) map[string][]Item { FILE: common/geosite/geosite_test.go function TestGeosite (line 12) | func TestGeosite(t *testing.T) { FILE: common/geosite/reader.go type Reader (line 14) | type Reader struct method readMetadata (line 57) | func (r *Reader) readMetadata() error { method Read (line 103) | func (r *Reader) Read(code string) ([]Item, error) { method Upstream (line 128) | func (r *Reader) Upstream() any { function Open (line 23) | func Open(path string) (*Reader, []string, error) { function NewReader (line 36) | func NewReader(readSeeker io.ReadSeeker) (*Reader, []string, error) { type geositeMetadata (line 51) | type geositeMetadata struct type readCounter (line 132) | type readCounter struct method Read (line 137) | func (r *readCounter) Read(p []byte) (n int, err error) { function readString (line 145) | func readString(reader io.ByteReader) (string, error) { FILE: common/geosite/rule.go constant RuleTypeDomain (line 8) | RuleTypeDomain ItemType = iota constant RuleTypeDomainSuffix (line 9) | RuleTypeDomainSuffix constant RuleTypeDomainKeyword (line 10) | RuleTypeDomainKeyword constant RuleTypeDomainRegex (line 11) | RuleTypeDomainRegex type Item (line 14) | type Item struct function Compile (line 19) | func Compile(code []Item) option.DefaultRule { function Merge (line 64) | func Merge(rules []option.DefaultRule) option.DefaultRule { FILE: common/geosite/writer.go function Write (line 10) | func Write(writer varbin.Writer, domains map[string][]Item) error { function writeString (line 66) | func writeString(writer varbin.Writer, value string) error { FILE: common/interrupt/conn.go type Conn (line 19) | type Conn struct method Close (line 29) | func (c *Conn) Close() error { method ReaderReplaceable (line 36) | func (c *Conn) ReaderReplaceable() bool { method WriterReplaceable (line 40) | func (c *Conn) WriterReplaceable() bool { method Upstream (line 44) | func (c *Conn) Upstream() any { type PacketConn (line 48) | type PacketConn struct method Close (line 58) | func (c *PacketConn) Close() error { method ReaderReplaceable (line 65) | func (c *PacketConn) ReaderReplaceable() bool { method WriterReplaceable (line 69) | func (c *PacketConn) WriterReplaceable() bool { method Upstream (line 73) | func (c *PacketConn) Upstream() any { FILE: common/interrupt/context.go type contextKeyIsExternalConnection (line 5) | type contextKeyIsExternalConnection struct function ContextWithIsExternalConnection (line 7) | func ContextWithIsExternalConnection(ctx context.Context) context.Context { function IsExternalConnectionFromContext (line 11) | func IsExternalConnectionFromContext(ctx context.Context) bool { FILE: common/interrupt/group.go type Group (line 11) | type Group struct method NewConn (line 25) | func (g *Group) NewConn(conn net.Conn, isExternal bool) net.Conn { method NewPacketConn (line 32) | func (g *Group) NewPacketConn(conn net.PacketConn, isExternal bool) ne... method Interrupt (line 39) | func (g *Group) Interrupt(interruptExternalConnections bool) { type groupConnItem (line 16) | type groupConnItem struct function NewGroup (line 21) | func NewGroup() *Group { FILE: common/ja3/error.go constant LengthErr (line 13) | LengthErr string = "length check %v failed" constant ContentTypeErr (line 14) | ContentTypeErr string = "content type not matching" constant VersionErr (line 15) | VersionErr string = "version check %v failed" constant HandshakeTypeErr (line 16) | HandshakeTypeErr string = "handshake type not matching" constant SNITypeErr (line 17) | SNITypeErr string = "SNI type not supported" type ParseError (line 21) | type ParseError struct method Error (line 26) | func (e *ParseError) Error() string { FILE: common/ja3/ja3.go type ClientHello (line 16) | type ClientHello struct method Equals (line 29) | func (j *ClientHello) Equals(another *ClientHello, ignoreExtensionsSeq... method sortedExtensions (line 54) | func (j *ClientHello) sortedExtensions() []uint16 { method String (line 67) | func (j *ClientHello) String() string { method Hash (line 74) | func (j *ClientHello) Hash() string { function Compute (line 61) | func Compute(payload []byte) (*ClientHello, error) { FILE: common/ja3/parser.go constant recordLayerHeaderLen (line 16) | recordLayerHeaderLen int = 5 constant handshakeHeaderLen (line 17) | handshakeHeaderLen int = 6 constant randomDataLen (line 18) | randomDataLen int = 32 constant sessionIDHeaderLen (line 19) | sessionIDHeaderLen int = 1 constant cipherSuiteHeaderLen (line 20) | cipherSuiteHeaderLen int = 2 constant compressMethodHeaderLen (line 21) | compressMethodHeaderLen int = 1 constant extensionsHeaderLen (line 22) | extensionsHeaderLen int = 2 constant extensionHeaderLen (line 23) | extensionHeaderLen int = 4 constant sniExtensionHeaderLen (line 24) | sniExtensionHeaderLen int = 5 constant ecExtensionHeaderLen (line 25) | ecExtensionHeaderLen int = 2 constant ecpfExtensionHeaderLen (line 26) | ecpfExtensionHeaderLen int = 1 constant versionExtensionHeaderLen (line 27) | versionExtensionHeaderLen int = 1 constant signatureAlgorithmsExtensionHeaderLen (line 28) | signatureAlgorithmsExtensionHeaderLen int = 2 constant contentType (line 29) | contentType uint8 = 22 constant handshakeType (line 30) | handshakeType uint8 = 1 constant sniExtensionType (line 31) | sniExtensionType uint16 = 0 constant sniNameDNSHostnameType (line 32) | sniNameDNSHostnameType uint8 = 0 constant ecExtensionType (line 33) | ecExtensionType uint16 = 10 constant ecpfExtensionType (line 34) | ecpfExtensionType uint16 = 11 constant versionExtensionType (line 35) | versionExtensionType uint16 = 43 constant signatureAlgorithmsExtensionType (line 36) | signatureAlgorithmsExtensionType uint16 = 13 constant tlsVersionBitmask (line 40) | tlsVersionBitmask uint16 = 0xFFFC constant tls13 (line 41) | tls13 uint16 = 0x0304 constant GreaseBitmask (line 45) | GreaseBitmask uint16 = 0x0F0F constant dashByte (line 48) | dashByte = byte(45) constant commaByte (line 49) | commaByte = byte(44) method parseSegment (line 53) | func (j *ClientHello) parseSegment(segment []byte) error { method parseHandshake (line 85) | func (j *ClientHello) parseHandshake(hs []byte) error { method parseExtensions (line 155) | func (j *ClientHello) parseExtensions(exs []byte) error { method marshalJA3 (line 291) | func (j *ClientHello) marshalJA3() { FILE: common/ktls/ktls.go type Conn (line 24) | type Conn struct method Upstream (line 89) | func (c *Conn) Upstream() any { method SyscallConnForRead (line 93) | func (c *Conn) SyscallConnForRead() syscall.RawConn { method HandleSyscallReadError (line 105) | func (c *Conn) HandleSyscallReadError(inputErr error) ([]byte, error) { method SyscallConnForWrite (line 127) | func (c *Conn) SyscallConnForWrite() syscall.RawConn { function NewConn (line 38) | func NewConn(ctx context.Context, logger logger.ContextLogger, conn aTLS... FILE: common/ktls/ktls_alert.go constant alertLevelWarning (line 16) | alertLevelWarning = 1 constant alertLevelError (line 17) | alertLevelError = 2 constant alertCloseNotify (line 21) | alertCloseNotify = 0 constant alertUnexpectedMessage (line 22) | alertUnexpectedMessage = 10 constant alertBadRecordMAC (line 23) | alertBadRecordMAC = 20 constant alertDecryptionFailed (line 24) | alertDecryptionFailed = 21 constant alertRecordOverflow (line 25) | alertRecordOverflow = 22 constant alertDecompressionFailure (line 26) | alertDecompressionFailure = 30 constant alertHandshakeFailure (line 27) | alertHandshakeFailure = 40 constant alertBadCertificate (line 28) | alertBadCertificate = 42 constant alertUnsupportedCertificate (line 29) | alertUnsupportedCertificate = 43 constant alertCertificateRevoked (line 30) | alertCertificateRevoked = 44 constant alertCertificateExpired (line 31) | alertCertificateExpired = 45 constant alertCertificateUnknown (line 32) | alertCertificateUnknown = 46 constant alertIllegalParameter (line 33) | alertIllegalParameter = 47 constant alertUnknownCA (line 34) | alertUnknownCA = 48 constant alertAccessDenied (line 35) | alertAccessDenied = 49 constant alertDecodeError (line 36) | alertDecodeError = 50 constant alertDecryptError (line 37) | alertDecryptError = 51 constant alertExportRestriction (line 38) | alertExportRestriction = 60 constant alertProtocolVersion (line 39) | alertProtocolVersion = 70 constant alertInsufficientSecurity (line 40) | alertInsufficientSecurity = 71 constant alertInternalError (line 41) | alertInternalError = 80 constant alertInappropriateFallback (line 42) | alertInappropriateFallback = 86 constant alertUserCanceled (line 43) | alertUserCanceled = 90 constant alertNoRenegotiation (line 44) | alertNoRenegotiation = 100 constant alertMissingExtension (line 45) | alertMissingExtension = 109 constant alertUnsupportedExtension (line 46) | alertUnsupportedExtension = 110 constant alertCertificateUnobtainable (line 47) | alertCertificateUnobtainable = 111 constant alertUnrecognizedName (line 48) | alertUnrecognizedName = 112 constant alertBadCertificateStatusResponse (line 49) | alertBadCertificateStatusResponse = 113 constant alertBadCertificateHashValue (line 50) | alertBadCertificateHashValue = 114 constant alertUnknownPSKIdentity (line 51) | alertUnknownPSKIdentity = 115 constant alertCertificateRequired (line 52) | alertCertificateRequired = 116 constant alertNoApplicationProtocol (line 53) | alertNoApplicationProtocol = 120 constant alertECHRequired (line 54) | alertECHRequired = 121 method sendAlertLocked (line 57) | func (c *Conn) sendAlertLocked(err uint8) error { method sendAlert (line 76) | func (c *Conn) sendAlert(err uint8) error { FILE: common/ktls/ktls_cipher_suites_linux.go type kernelCryptoCipherType (line 16) | type kernelCryptoCipherType constant TLS_CIPHER_AES_GCM_128 (line 19) | TLS_CIPHER_AES_GCM_128 kernelCryptoCipherType = 51 constant TLS_CIPHER_AES_GCM_128_IV_SIZE (line 20) | TLS_CIPHER_AES_GCM_128_IV_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_AES_GCM_128_KEY_SIZE (line 21) | TLS_CIPHER_AES_GCM_128_KEY_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_AES_GCM_128_SALT_SIZE (line 22) | TLS_CIPHER_AES_GCM_128_SALT_SIZE kernelCryptoCipherType = 4 constant TLS_CIPHER_AES_GCM_128_TAG_SIZE (line 23) | TLS_CIPHER_AES_GCM_128_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE (line 24) | TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_AES_GCM_256 (line 26) | TLS_CIPHER_AES_GCM_256 kernelCryptoCipherType = 52 constant TLS_CIPHER_AES_GCM_256_IV_SIZE (line 27) | TLS_CIPHER_AES_GCM_256_IV_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_AES_GCM_256_KEY_SIZE (line 28) | TLS_CIPHER_AES_GCM_256_KEY_SIZE kernelCryptoCipherType = 32 constant TLS_CIPHER_AES_GCM_256_SALT_SIZE (line 29) | TLS_CIPHER_AES_GCM_256_SALT_SIZE kernelCryptoCipherType = 4 constant TLS_CIPHER_AES_GCM_256_TAG_SIZE (line 30) | TLS_CIPHER_AES_GCM_256_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_AES_GCM_256_REC_SEQ_SIZE (line 31) | TLS_CIPHER_AES_GCM_256_REC_SEQ_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_AES_CCM_128 (line 33) | TLS_CIPHER_AES_CCM_128 kernelCryptoCipherType = 53 constant TLS_CIPHER_AES_CCM_128_IV_SIZE (line 34) | TLS_CIPHER_AES_CCM_128_IV_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_AES_CCM_128_KEY_SIZE (line 35) | TLS_CIPHER_AES_CCM_128_KEY_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_AES_CCM_128_SALT_SIZE (line 36) | TLS_CIPHER_AES_CCM_128_SALT_SIZE kernelCryptoCipherType = 4 constant TLS_CIPHER_AES_CCM_128_TAG_SIZE (line 37) | TLS_CIPHER_AES_CCM_128_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_AES_CCM_128_REC_SEQ_SIZE (line 38) | TLS_CIPHER_AES_CCM_128_REC_SEQ_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_CHACHA20_POLY1305 (line 40) | TLS_CIPHER_CHACHA20_POLY1305 kernelCryptoCipherType = 54 constant TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE (line 41) | TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE kernelCryptoCipherType = 12 constant TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE (line 42) | TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE kernelCryptoCipherType = 32 constant TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE (line 43) | TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE kernelCryptoCipherType = 0 constant TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE (line 44) | TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE (line 45) | TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_ARIA_GCM_128 (line 61) | TLS_CIPHER_ARIA_GCM_128 kernelCryptoCipherType = 57 constant TLS_CIPHER_ARIA_GCM_128_IV_SIZE (line 62) | TLS_CIPHER_ARIA_GCM_128_IV_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_ARIA_GCM_128_KEY_SIZE (line 63) | TLS_CIPHER_ARIA_GCM_128_KEY_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_ARIA_GCM_128_SALT_SIZE (line 64) | TLS_CIPHER_ARIA_GCM_128_SALT_SIZE kernelCryptoCipherType = 4 constant TLS_CIPHER_ARIA_GCM_128_TAG_SIZE (line 65) | TLS_CIPHER_ARIA_GCM_128_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_ARIA_GCM_128_REC_SEQ_SIZE (line 66) | TLS_CIPHER_ARIA_GCM_128_REC_SEQ_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_ARIA_GCM_256 (line 68) | TLS_CIPHER_ARIA_GCM_256 kernelCryptoCipherType = 58 constant TLS_CIPHER_ARIA_GCM_256_IV_SIZE (line 69) | TLS_CIPHER_ARIA_GCM_256_IV_SIZE kernelCryptoCipherType = 8 constant TLS_CIPHER_ARIA_GCM_256_KEY_SIZE (line 70) | TLS_CIPHER_ARIA_GCM_256_KEY_SIZE kernelCryptoCipherType = 32 constant TLS_CIPHER_ARIA_GCM_256_SALT_SIZE (line 71) | TLS_CIPHER_ARIA_GCM_256_SALT_SIZE kernelCryptoCipherType = 4 constant TLS_CIPHER_ARIA_GCM_256_TAG_SIZE (line 72) | TLS_CIPHER_ARIA_GCM_256_TAG_SIZE kernelCryptoCipherType = 16 constant TLS_CIPHER_ARIA_GCM_256_REC_SEQ_SIZE (line 73) | TLS_CIPHER_ARIA_GCM_256_REC_SEQ_SIZE kernelCryptoCipherType = 8 type kernelCrypto (line 76) | type kernelCrypto interface type kernelCryptoInfo (line 80) | type kernelCryptoInfo struct type kernelCryptoAES128GCM (line 87) | type kernelCryptoAES128GCM struct method String (line 95) | func (crypto *kernelCryptoAES128GCM) String() string { type kernelCryptoAES256GCM (line 102) | type kernelCryptoAES256GCM struct method String (line 110) | func (crypto *kernelCryptoAES256GCM) String() string { type kernelCryptoAES128CCM (line 117) | type kernelCryptoAES128CCM struct method String (line 125) | func (crypto *kernelCryptoAES128CCM) String() string { type kernelCryptoChacha20Poly1035 (line 132) | type kernelCryptoChacha20Poly1035 struct method String (line 140) | func (crypto *kernelCryptoChacha20Poly1035) String() string { type kernelCryptoARIA128GCM (line 177) | type kernelCryptoARIA128GCM struct method String (line 185) | func (crypto *kernelCryptoARIA128GCM) String() string { type kernelCryptoARIA256GCM (line 192) | type kernelCryptoARIA256GCM struct method String (line 200) | func (crypto *kernelCryptoARIA256GCM) String() string { function kernelCipher (line 205) | func kernelCipher(kernel *Support, hc *badtls.RawHalfConn, cipherSuite u... FILE: common/ktls/ktls_close.go method Close (line 15) | func (c *Conn) Close() error { method closeNotify (line 54) | func (c *Conn) closeNotify() error { FILE: common/ktls/ktls_const.go constant maxPlaintext (line 10) | maxPlaintext = 16384 constant maxCiphertext (line 11) | maxCiphertext = 16384 + 2048 constant maxCiphertextTLS13 (line 12) | maxCiphertextTLS13 = 16384 + 256 constant recordHeaderLen (line 13) | recordHeaderLen = 5 constant maxHandshake (line 14) | maxHandshake = 65536 constant maxHandshakeCertificateMsg (line 15) | maxHandshakeCertificateMsg = 262144 constant maxUselessRecords (line 16) | maxUselessRecords = 16 constant recordTypeChangeCipherSpec (line 20) | recordTypeChangeCipherSpec = 20 constant recordTypeAlert (line 21) | recordTypeAlert = 21 constant recordTypeHandshake (line 22) | recordTypeHandshake = 22 constant recordTypeApplicationData (line 23) | recordTypeApplicationData = 23 FILE: common/ktls/ktls_handshake_messages.go type marshalingFunction (line 17) | type marshalingFunction method Marshal (line 19) | func (f marshalingFunction) Marshal(b *cryptobyte.Builder) error { function addBytesWithLength (line 25) | func addBytesWithLength(b *cryptobyte.Builder, v []byte, n int) { function addUint64 (line 36) | func addUint64(b *cryptobyte.Builder, v uint64) { function readUint64 (line 43) | func readUint64(s *cryptobyte.String, out *uint64) bool { function readUint8LengthPrefixed (line 54) | func readUint8LengthPrefixed(s *cryptobyte.String, out *[]byte) bool { function readUint16LengthPrefixed (line 60) | func readUint16LengthPrefixed(s *cryptobyte.String, out *[]byte) bool { function readUint24LengthPrefixed (line 66) | func readUint24LengthPrefixed(s *cryptobyte.String, out *[]byte) bool { type keyUpdateMsg (line 70) | type keyUpdateMsg struct method marshal (line 74) | func (m *keyUpdateMsg) marshal() ([]byte, error) { method unmarshal (line 88) | func (m *keyUpdateMsg) unmarshal(data []byte) bool { constant typeHelloRequest (line 109) | typeHelloRequest uint8 = 0 constant typeClientHello (line 110) | typeClientHello uint8 = 1 constant typeServerHello (line 111) | typeServerHello uint8 = 2 constant typeNewSessionTicket (line 112) | typeNewSessionTicket uint8 = 4 constant typeEndOfEarlyData (line 113) | typeEndOfEarlyData uint8 = 5 constant typeEncryptedExtensions (line 114) | typeEncryptedExtensions uint8 = 8 constant typeCertificate (line 115) | typeCertificate uint8 = 11 constant typeServerKeyExchange (line 116) | typeServerKeyExchange uint8 = 12 constant typeCertificateRequest (line 117) | typeCertificateRequest uint8 = 13 constant typeServerHelloDone (line 118) | typeServerHelloDone uint8 = 14 constant typeCertificateVerify (line 119) | typeCertificateVerify uint8 = 15 constant typeClientKeyExchange (line 120) | typeClientKeyExchange uint8 = 16 constant typeFinished (line 121) | typeFinished uint8 = 20 constant typeCertificateStatus (line 122) | typeCertificateStatus uint8 = 22 constant typeKeyUpdate (line 123) | typeKeyUpdate uint8 = 24 constant typeCompressedCertificate (line 124) | typeCompressedCertificate uint8 = 25 constant typeMessageHash (line 125) | typeMessageHash uint8 = 254 constant compressionNone (line 130) | compressionNone uint8 = 0 constant extensionServerName (line 135) | extensionServerName uint16 = 0 constant extensionStatusRequest (line 136) | extensionStatusRequest uint16 = 5 constant extensionSupportedCurves (line 137) | extensionSupportedCurves uint16 = 10 constant extensionSupportedPoints (line 138) | extensionSupportedPoints uint16 = 11 constant extensionSignatureAlgorithms (line 139) | extensionSignatureAlgorithms uint16 = 13 constant extensionALPN (line 140) | extensionALPN uint16 = 16 constant extensionSCT (line 141) | extensionSCT uint16 = 18 constant extensionPadding (line 142) | extensionPadding uint16 = 21 constant extensionExtendedMasterSecret (line 143) | extensionExtendedMasterSecret uint16 = 23 constant extensionCompressCertificate (line 144) | extensionCompressCertificate uint16 = 27 constant extensionSessionTicket (line 145) | extensionSessionTicket uint16 = 35 constant extensionPreSharedKey (line 146) | extensionPreSharedKey uint16 = 41 constant extensionEarlyData (line 147) | extensionEarlyData uint16 = 42 constant extensionSupportedVersions (line 148) | extensionSupportedVersions uint16 = 43 constant extensionCookie (line 149) | extensionCookie uint16 = 44 constant extensionPSKModes (line 150) | extensionPSKModes uint16 = 45 constant extensionCertificateAuthorities (line 151) | extensionCertificateAuthorities uint16 = 47 constant extensionSignatureAlgorithmsCert (line 152) | extensionSignatureAlgorithmsCert uint16 = 50 constant extensionKeyShare (line 153) | extensionKeyShare uint16 = 51 constant extensionQUICTransportParameters (line 154) | extensionQUICTransportParameters uint16 = 57 constant extensionALPS (line 155) | extensionALPS uint16 = 17513 constant extensionRenegotiationInfo (line 156) | extensionRenegotiationInfo uint16 = 0xff01 constant extensionECHOuterExtensions (line 157) | extensionECHOuterExtensions uint16 = 0xfd00 constant extensionEncryptedClientHello (line 158) | extensionEncryptedClientHello uint16 = 0xfe0d type handshakeMessage (line 161) | type handshakeMessage interface type newSessionTicketMsgTLS13 (line 165) | type newSessionTicketMsgTLS13 struct method marshal (line 173) | func (m *newSessionTicketMsgTLS13) marshal() ([]byte, error) { method unmarshal (line 199) | func (m *newSessionTicketMsgTLS13) unmarshal(data []byte) bool { FILE: common/ktls/ktls_key_update.go method handlePostHandshakeMessage (line 19) | func (c *Conn) handlePostHandshakeMessage() error { method handleKeyUpdate (line 49) | func (c *Conn) handleKeyUpdate(keyUpdate *keyUpdateMsg) error { method readHandshakeBytes (line 103) | func (c *Conn) readHandshakeBytes(n int) error { method readHandshake (line 115) | func (c *Conn) readHandshake(transcript io.Writer) (any, error) { method unmarshalHandshakeMessage (line 144) | func (c *Conn) unmarshalHandshakeMessage(data []byte, transcript io.Writ... FILE: common/ktls/ktls_linux.go constant TLS_TX (line 26) | TLS_TX = 1 constant TLS_RX (line 27) | TLS_RX = 2 constant TLS_TX_ZEROCOPY_RO (line 28) | TLS_TX_ZEROCOPY_RO = 3 constant TLS_RX_EXPECT_NO_PAD (line 29) | TLS_RX_EXPECT_NO_PAD = 4 constant TLS_SET_RECORD_TYPE (line 31) | TLS_SET_RECORD_TYPE = 1 constant TLS_GET_RECORD_TYPE (line 32) | TLS_GET_RECORD_TYPE = 2 type Support (line 35) | type Support struct function Load (line 114) | func Load() error { method setupKernel (line 125) | func (c *Conn) setupKernel(txOffload, rxOffload bool) error { method resetupTX (line 193) | func (c *Conn) resetupTX() (func() error, error) { method resetupRX (line 215) | func (c *Conn) resetupRX() error { method readKernelRecord (line 235) | func (c *Conn) readKernelRecord() (uint8, []byte, error) { method writeKernelRecord (line 290) | func (c *Conn) writeKernelRecord(typ uint16, data []byte) (int, error) { function recvmsg (line 326) | func recvmsg(fd int, msg *unix.Msghdr, flags int) (n int, err error) function sendmsg (line 329) | func sendmsg(fd int, msg *unix.Msghdr, flags int) (n int, err error) FILE: common/ktls/ktls_prf.go function cipherSuiteByID (line 12) | func cipherSuiteByID(id uint16) unsafe.Pointer function keysFromMasterSecret (line 15) | func keysFromMasterSecret(version uint16, suite unsafe.Pointer, masterSe... function cipherSuiteTLS13ByID (line 18) | func cipherSuiteTLS13ByID(id uint16) unsafe.Pointer function nextTrafficSecret (line 21) | func nextTrafficSecret(cs unsafe.Pointer, trafficSecret []byte) []byte function trafficKey (line 24) | func trafficKey(cs unsafe.Pointer, trafficSecret []byte) (key, iv []byte) FILE: common/ktls/ktls_read.go method Read (line 18) | func (c *Conn) Read(b []byte) (int, error) { method readRecord (line 62) | func (c *Conn) readRecord() error { method readRawRecord (line 170) | func (c *Conn) readRawRecord() (typ uint8, data []byte, err error) { method retryReadRecord (line 241) | func (c *Conn) retryReadRecord( /*expectChangeCipherSpec bool*/ ) error { type atLeastReader (line 253) | type atLeastReader struct method Read (line 258) | func (r *atLeastReader) Read(p []byte) (int, error) { method readFromUntil (line 275) | func (c *Conn) readFromUntil(r io.Reader, n int) error { method newRecordHeaderError (line 288) | func (c *Conn) newRecordHeaderError(conn net.Conn, msg string) (err tls.... FILE: common/ktls/ktls_read_wait.go method InitializeReadWaiter (line 14) | func (c *Conn) InitializeReadWaiter(options N.ReadWaitOptions) (needCopy... method WaitReadBuffer (line 19) | func (c *Conn) WaitReadBuffer() (buffer *buf.Buffer, err error) { FILE: common/ktls/ktls_stub_nolinkname.go function NewConn (line 13) | func NewConn(ctx context.Context, logger logger.ContextLogger, conn aTLS... FILE: common/ktls/ktls_stub_nonlinux.go function NewConn (line 13) | func NewConn(ctx context.Context, logger logger.ContextLogger, conn aTLS... FILE: common/ktls/ktls_stub_oldgo.go function NewConn (line 13) | func NewConn(ctx context.Context, logger logger.ContextLogger, conn aTLS... FILE: common/ktls/ktls_write.go method Write (line 16) | func (c *Conn) Write(b []byte) (int, error) { method writeRecordLocked (line 76) | func (c *Conn) writeRecordLocked(typ uint16, data []byte) (n int, err er... constant tcpMSSEstimate (line 101) | tcpMSSEstimate = 1208 constant recordSizeBoostThreshold (line 106) | recordSizeBoostThreshold = 128 * 1024 method maxPayloadSizeForWrite (line 109) | func (c *Conn) maxPayloadSizeForWrite(typ uint16) int { FILE: common/listener/listener.go type Listener (line 23) | type Listener struct method Start (line 80) | func (l *Listener) Start() error { method Close (line 122) | func (l *Listener) Close() error { method TCPListener (line 134) | func (l *Listener) TCPListener() net.Listener { method UDPConn (line 138) | func (l *Listener) UDPConn() *net.UDPConn { method ListenOptions (line 142) | func (l *Listener) ListenOptions() option.ListenOptions { type Options (line 46) | type Options struct function New (line 61) | func New( function ListenNetworkNamespace (line 146) | func ListenNetworkNamespace[T any](nameOrPath string, block func() (T, e... FILE: common/listener/listener_tcp.go method ListenTCP (line 23) | func (l *Listener) ListenTCP() (net.Listener, error) { method loopTCPIn (line 82) | func (l *Listener) loopTCPIn() { FILE: common/listener/listener_udp.go method ListenUDP (line 21) | func (l *Listener) ListenUDP() (net.PacketConn, error) { method DialContext (line 61) | func (l *Listener) DialContext(dialer net.Dialer, ctx context.Context, n... method ListenPacket (line 76) | func (l *Listener) ListenPacket(listenConfig net.ListenConfig, ctx conte... method UDPAddr (line 91) | func (l *Listener) UDPAddr() M.Socksaddr { method PacketWriter (line 95) | func (l *Listener) PacketWriter() N.PacketWriter { method loopUDPIn (line 99) | func (l *Listener) loopUDPIn() { method loopUDPOut (line 156) | func (l *Listener) loopUDPOut() { type packetWriter (line 186) | type packetWriter method WritePacket (line 188) | func (w *packetWriter) WritePacket(buffer *buf.Buffer, destination M.S... method WriteIsThreadUnsafe (line 206) | func (w *packetWriter) WriteIsThreadUnsafe() { FILE: common/mux/client.go function NewClientWithOptions (line 19) | func NewClientWithOptions(dialer N.Dialer, logger logger.Logger, options... type clientDialer (line 49) | type clientDialer struct method DialContext (line 53) | func (d *clientDialer) DialContext(ctx context.Context, network string... method ListenPacket (line 57) | func (d *clientDialer) ListenPacket(ctx context.Context, destination M... FILE: common/mux/router.go type Router (line 17) | type Router struct method RouteConnection (line 56) | func (r *Router) RouteConnection(ctx context.Context, conn net.Conn, m... method RoutePacketConnection (line 66) | func (r *Router) RoutePacketConnection(ctx context.Context, conn N.Pac... method RouteConnectionEx (line 70) | func (r *Router) RouteConnectionEx(ctx context.Context, conn net.Conn,... method RoutePacketConnectionEx (line 78) | func (r *Router) RoutePacketConnectionEx(ctx context.Context, conn N.P... function NewRouterWithOptions (line 22) | func NewRouterWithOptions(router adapter.ConnectionRouterEx, logger logg... FILE: common/pipelistener/listener.go type Listener (line 10) | type Listener struct method Serve (line 22) | func (l *Listener) Serve(conn net.Conn) { method Accept (line 26) | func (l *Listener) Accept() (net.Conn, error) { method Close (line 35) | func (l *Listener) Close() error { method Addr (line 45) | func (l *Listener) Addr() net.Addr { function New (line 15) | func New(channelSize int) *Listener { type addr (line 49) | type addr struct method Network (line 51) | func (a addr) Network() string { method String (line 55) | func (a addr) String() string { FILE: common/process/searcher.go type Searcher (line 15) | type Searcher interface type Config (line 21) | type Config struct function FindProcessInfo (line 26) | func FindProcessInfo(searcher Searcher, ctx context.Context, network str... FILE: common/process/searcher_android.go type androidSearcher (line 13) | type androidSearcher struct method FindProcessInfo (line 21) | func (s *androidSearcher) FindProcessInfo(ctx context.Context, network... function NewSearcher (line 17) | func NewSearcher(config Config) (Searcher, error) { FILE: common/process/searcher_darwin.go type darwinSearcher (line 21) | type darwinSearcher struct method FindProcessInfo (line 27) | func (d *darwinSearcher) FindProcessInfo(ctx context.Context, network ... function NewSearcher (line 23) | func NewSearcher(_ Config) (Searcher, error) { function findProcessName (line 51) | func findProcessName(network string, ip netip.Addr, port int) (string, e... function getExecPathFromPID (line 129) | func getExecPathFromPID(pid uint32) (string, error) { function readNativeUint32 (line 151) | func readNativeUint32(b []byte) uint32 { FILE: common/process/searcher_linux.go type linuxSearcher (line 15) | type linuxSearcher struct method FindProcessInfo (line 23) | func (s *linuxSearcher) FindProcessInfo(ctx context.Context, network s... function NewSearcher (line 19) | func NewSearcher(config Config) (Searcher, error) { FILE: common/process/searcher_linux_shared.go constant sizeOfSocketDiagRequest (line 34) | sizeOfSocketDiagRequest = syscall.SizeofNlMsghdr + 8 + 48 constant socketDiagByFamily (line 35) | socketDiagByFamily = 20 constant pathProc (line 36) | pathProc = "/proc" function resolveSocketByNetlink (line 39) | func resolveSocketByNetlink(network string, source netip.AddrPort, desti... function packSocketDiagRequest (line 110) | func packSocketDiagRequest(family, protocol byte, source netip.AddrPort)... function unpackSocketDiagResponse (line 140) | func unpackSocketDiagResponse(msg *syscall.NetlinkMessage) (inode, uid u... function resolveProcessNameByProcSearch (line 153) | func resolveProcessNameByProcSearch(inode, uid uint32) (string, error) { function isPid (line 198) | func isPid(s string) bool { FILE: common/process/searcher_stub.go function NewSearcher (line 9) | func NewSearcher(_ Config) (Searcher, error) { FILE: common/process/searcher_windows.go type windowsSearcher (line 17) | type windowsSearcher struct method FindProcessInfo (line 31) | func (s *windowsSearcher) FindProcessInfo(ctx context.Context, network... function NewSearcher (line 19) | func NewSearcher(_ Config) (Searcher, error) { function initWin32API (line 27) | func initWin32API() error { function getProcessPath (line 43) | func getProcessPath(pid uint32) (string, error) { FILE: common/redir/redir_darwin.go constant PF_OUT (line 13) | PF_OUT = 0x2 constant DIOCNATLOOK (line 14) | DIOCNATLOOK = 0xc0544417 function GetOriginalDestination (line 17) | func GetOriginalDestination(conn net.Conn) (destination netip.AddrPort, ... FILE: common/redir/redir_linux.go function GetOriginalDestination (line 15) | func GetOriginalDestination(conn net.Conn) (destination netip.AddrPort, ... FILE: common/redir/redir_other.go function GetOriginalDestination (line 11) | func GetOriginalDestination(conn net.Conn) (destination netip.AddrPort, ... FILE: common/redir/tproxy_linux.go function TProxy (line 15) | func TProxy(fd uintptr, isIPv6 bool, isUDP bool) error { function TProxyWriteBack (line 34) | func TProxyWriteBack() control.Func { function GetOriginalDestinationFromOOB (line 46) | func GetOriginalDestinationFromOOB(oob []byte) (netip.AddrPort, error) { FILE: common/redir/tproxy_other.go function TProxy (line 12) | func TProxy(fd uintptr, isIPv6 bool, isUDP bool) error { function TProxyWriteBack (line 16) | func TProxyWriteBack() control.Func { function GetOriginalDestinationFromOOB (line 20) | func GetOriginalDestinationFromOOB(oob []byte) (netip.AddrPort, error) { FILE: common/settings/proxy_android.go type AndroidSystemProxy (line 15) | type AndroidSystemProxy struct method IsEnabled (line 45) | func (p *AndroidSystemProxy) IsEnabled() bool { method Enable (line 49) | func (p *AndroidSystemProxy) Enable() error { method Disable (line 58) | func (p *AndroidSystemProxy) Disable() error { method runAndroidShell (line 67) | func (p *AndroidSystemProxy) runAndroidShell(name string, args ...stri... function NewSystemProxy (line 23) | func NewSystemProxy(ctx context.Context, serverAddr M.Socksaddr, support... FILE: common/settings/proxy_darwin.go type DarwinSystemProxy (line 18) | type DarwinSystemProxy struct method IsEnabled (line 41) | func (p *DarwinSystemProxy) IsEnabled() bool { method Enable (line 45) | func (p *DarwinSystemProxy) Enable() error { method Disable (line 49) | func (p *DarwinSystemProxy) Disable() error { method routeUpdate (line 69) | func (p *DarwinSystemProxy) routeUpdate(defaultInterface *control.Inte... method update0 (line 76) | func (p *DarwinSystemProxy) update0() error { function NewSystemProxy (line 27) | func NewSystemProxy(ctx context.Context, serverAddr M.Socksaddr, support... function getInterfaceDisplayName (line 107) | func getInterfaceDisplayName(name string) (string, error) { FILE: common/settings/proxy_linux.go type LinuxSystemProxy (line 18) | type LinuxSystemProxy struct method IsEnabled (line 56) | func (p *LinuxSystemProxy) IsEnabled() bool { method Enable (line 60) | func (p *LinuxSystemProxy) Enable() error { method Disable (line 109) | func (p *LinuxSystemProxy) Disable() error { method runAsUser (line 130) | func (p *LinuxSystemProxy) runAsUser(name string, args ...string) error { method setGnomeProxy (line 140) | func (p *LinuxSystemProxy) setGnomeProxy(proxyTypes ...string) error { method setKDEProxy (line 154) | func (p *LinuxSystemProxy) setKDEProxy(proxyTypes ...string) error { function NewSystemProxy (line 27) | func NewSystemProxy(ctx context.Context, serverAddr M.Socksaddr, support... FILE: common/settings/proxy_stub.go function NewSystemProxy (line 12) | func NewSystemProxy(ctx context.Context, serverAddr M.Socksaddr, support... FILE: common/settings/proxy_windows.go type WindowsSystemProxy (line 10) | type WindowsSystemProxy struct method IsEnabled (line 23) | func (p *WindowsSystemProxy) IsEnabled() bool { method Enable (line 27) | func (p *WindowsSystemProxy) Enable() error { method Disable (line 36) | func (p *WindowsSystemProxy) Disable() error { function NewSystemProxy (line 16) | func NewSystemProxy(ctx context.Context, serverAddr M.Socksaddr, support... FILE: common/settings/system_proxy.go type SystemProxy (line 3) | type SystemProxy interface FILE: common/settings/wifi.go type WIFIMonitor (line 5) | type WIFIMonitor interface FILE: common/settings/wifi_linux.go type LinuxWIFIMonitor (line 8) | type LinuxWIFIMonitor struct method ReadWIFIState (line 30) | func (m *LinuxWIFIMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 34) | func (m *LinuxWIFIMonitor) Start() error { method Close (line 41) | func (m *LinuxWIFIMonitor) Close() error { function NewWIFIMonitor (line 12) | func NewWIFIMonitor(callback func(adapter.WIFIState)) (WIFIMonitor, erro... FILE: common/settings/wifi_linux_connman.go type connmanMonitor (line 15) | type connmanMonitor struct method ReadWIFIState (line 38) | func (m *connmanMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 105) | func (m *connmanMonitor) Start() error { method monitorSignals (line 130) | func (m *connmanMonitor) monitorSignals(ctx context.Context, signalCha... method Close (line 152) | func (m *connmanMonitor) Close() error { function newConnManMonitor (line 22) | func newConnManMonitor(callback func(adapter.WIFIState)) (WIFIMonitor, e... FILE: common/settings/wifi_linux_iwd.go type iwdMonitor (line 15) | type iwdMonitor struct method ReadWIFIState (line 38) | func (m *iwdMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 129) | func (m *iwdMonitor) Start() error { method monitorSignals (line 154) | func (m *iwdMonitor) monitorSignals(ctx context.Context, signalChan ch... method Close (line 174) | func (m *iwdMonitor) Close() error { function newIWDMonitor (line 22) | func newIWDMonitor(callback func(adapter.WIFIState)) (WIFIMonitor, error) { FILE: common/settings/wifi_linux_nm.go type networkManagerMonitor (line 15) | type networkManagerMonitor struct method ReadWIFIState (line 39) | func (m *networkManagerMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 104) | func (m *networkManagerMonitor) Start() error { method monitorSignals (line 129) | func (m *networkManagerMonitor) monitorSignals(ctx context.Context, si... method Close (line 149) | func (m *networkManagerMonitor) Close() error { function newNetworkManagerMonitor (line 22) | func newNetworkManagerMonitor(callback func(adapter.WIFIState)) (WIFIMon... FILE: common/settings/wifi_linux_wpa.go type wpaSupplicantMonitor (line 20) | type wpaSupplicantMonitor struct method ReadWIFIState (line 54) | func (m *wpaSupplicantMonitor) ReadWIFIState() adapter.WIFIState { method sendCommand (line 99) | func (m *wpaSupplicantMonitor) sendCommand(conn *net.UnixConn, command... method Start (line 119) | func (m *wpaSupplicantMonitor) Start() error { method monitorEvents (line 133) | func (m *wpaSupplicantMonitor) monitorEvents(ctx context.Context, last... method Close (line 215) | func (m *wpaSupplicantMonitor) Close() error { function newWpaSupplicantMonitor (line 28) | func newWpaSupplicantMonitor(callback func(adapter.WIFIState)) (WIFIMoni... FILE: common/settings/wifi_stub.go type stubWIFIMonitor (line 11) | type stubWIFIMonitor struct method ReadWIFIState (line 17) | func (m *stubWIFIMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 21) | func (m *stubWIFIMonitor) Start() error { method Close (line 25) | func (m *stubWIFIMonitor) Close() error { function NewWIFIMonitor (line 13) | func NewWIFIMonitor(callback func(adapter.WIFIState)) (WIFIMonitor, erro... FILE: common/settings/wifi_windows.go type windowsWIFIMonitor (line 18) | type windowsWIFIMonitor struct method ReadWIFIState (line 48) | func (m *windowsWIFIMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 87) | func (m *windowsWIFIMonitor) Start() error { method checkAndNotify (line 125) | func (m *windowsWIFIMonitor) checkAndNotify() { method Close (line 138) | func (m *windowsWIFIMonitor) Close() error { function NewWIFIMonitor (line 26) | func NewWIFIMonitor(callback func(adapter.WIFIState)) (WIFIMonitor, erro... function formatBSSID (line 82) | func formatBSSID(mac winwlanapi.Dot11MacAddress) string { FILE: common/sniff/bittorrent.go constant trackerConnectFlag (line 16) | trackerConnectFlag = 0 constant trackerProtocolID (line 17) | trackerProtocolID = 0x41727101980 constant trackerConnectMinSize (line 18) | trackerConnectMinSize = 16 function BitTorrent (line 23) | func BitTorrent(_ context.Context, metadata *adapter.InboundContext, rea... function UTP (line 56) | func UTP(_ context.Context, metadata *adapter.InboundContext, packet []b... function UDPTracker (line 95) | func UDPTracker(_ context.Context, metadata *adapter.InboundContext, pac... FILE: common/sniff/bittorrent_test.go function TestSniffBittorrent (line 16) | func TestSniffBittorrent(t *testing.T) { function TestSniffIncompleteBittorrent (line 35) | func TestSniffIncompleteBittorrent(t *testing.T) { function TestSniffNotBittorrent (line 45) | func TestSniffNotBittorrent(t *testing.T) { function TestSniffUTP (line 56) | func TestSniffUTP(t *testing.T) { function TestSniffUDPTracker (line 76) | func TestSniffUDPTracker(t *testing.T) { function TestSniffNotUTP (line 96) | func TestSniffNotUTP(t *testing.T) { FILE: common/sniff/dns.go function StreamDomainNameQuery (line 17) | func StreamDomainNameQuery(readCtx context.Context, metadata *adapter.In... function DomainNameQuery (line 49) | func DomainNameQuery(ctx context.Context, metadata *adapter.InboundConte... FILE: common/sniff/dns_test.go function TestSniffDNS (line 16) | func TestSniffDNS(t *testing.T) { function TestSniffStreamDNS (line 26) | func TestSniffStreamDNS(t *testing.T) { function TestSniffIncompleteStreamDNS (line 36) | func TestSniffIncompleteStreamDNS(t *testing.T) { function TestSniffNotStreamDNS (line 45) | func TestSniffNotStreamDNS(t *testing.T) { FILE: common/sniff/dtls.go function DTLSRecord (line 11) | func DTLSRecord(ctx context.Context, metadata *adapter.InboundContext, p... FILE: common/sniff/dtls_test.go function TestSniffDTLSClientHello (line 15) | func TestSniffDTLSClientHello(t *testing.T) { function TestSniffDTLSClientApplicationData (line 25) | func TestSniffDTLSClientApplicationData(t *testing.T) { FILE: common/sniff/http.go function HTTPHost (line 16) | func HTTPHost(_ context.Context, metadata *adapter.InboundContext, reade... FILE: common/sniff/http_test.go function TestSniffHTTP1 (line 14) | func TestSniffHTTP1(t *testing.T) { function TestSniffHTTP1WithPort (line 23) | func TestSniffHTTP1WithPort(t *testing.T) { FILE: common/sniff/internal/qtls/qtls.go constant VersionDraft29 (line 14) | VersionDraft29 = 0xff00001d constant Version1 (line 15) | Version1 = 0x1 constant Version2 (line 16) | Version2 = 0x6b3343cf constant HKDFLabelKeyV1 (line 26) | HKDFLabelKeyV1 = "quic key" constant HKDFLabelKeyV2 (line 27) | HKDFLabelKeyV2 = "quicv2 key" constant HKDFLabelIVV1 (line 28) | HKDFLabelIVV1 = "quic iv" constant HKDFLabelIVV2 (line 29) | HKDFLabelIVV2 = "quicv2 iv" constant HKDFLabelHeaderProtectionV1 (line 30) | HKDFLabelHeaderProtectionV1 = "quic hp" constant HKDFLabelHeaderProtectionV2 (line 31) | HKDFLabelHeaderProtectionV2 = "quicv2 hp" function AEADAESGCMTLS13 (line 34) | func AEADAESGCMTLS13(key, nonceMask []byte) cipher.AEAD { type xorNonceAEAD (line 52) | type xorNonceAEAD struct method NonceSize (line 57) | func (f *xorNonceAEAD) NonceSize() int { return 8 } method Overhead (line 58) | func (f *xorNonceAEAD) Overhead() int { return f.aead.Overhead... method explicitNonceLen (line 59) | func (f *xorNonceAEAD) explicitNonceLen() int { return 0 } method Seal (line 61) | func (f *xorNonceAEAD) Seal(out, nonce, plaintext, additionalData []by... method Open (line 73) | func (f *xorNonceAEAD) Open(out, nonce, ciphertext, additionalData []b... function HKDFExpandLabel (line 85) | func HKDFExpandLabel(hash crypto.Hash, secret, context []byte, label str... function ReadUvarint (line 102) | func ReadUvarint(r io.ByteReader) (uint64, error) { FILE: common/sniff/ntp.go function NTP (line 12) | func NTP(ctx context.Context, metadata *adapter.InboundContext, packet [... FILE: common/sniff/ntp_test.go function TestSniffNTP (line 16) | func TestSniffNTP(t *testing.T) { function TestSniffNTPFailed (line 26) | func TestSniffNTPFailed(t *testing.T) { FILE: common/sniff/quic.go function QUICClientHello (line 23) | func QUICClientHello(ctx context.Context, metadata *adapter.InboundConte... function isZero (line 350) | func isZero(slices []uint8) bool { function count (line 359) | func count(slices []uint8, value uint8) int { type qCryptoFragment (line 369) | type qCryptoFragment struct FILE: common/sniff/quic_blacklist.go constant x25519Kyber768Draft00 (line 9) | x25519Kyber768Draft00 uint16 = 0x11EC constant extensionRenegotiationInfo (line 11) | extensionRenegotiationInfo uint16 = 0xFF01 function isQUICGo (line 17) | func isQUICGo(fingerprint *ja3.ClientHello) bool { FILE: common/sniff/quic_capture_test.go function TestSniffQUICQuicGoFingerprint (line 19) | func TestSniffQUICQuicGoFingerprint(t *testing.T) { function TestSniffQUICInitialFromQuicGo (line 88) | func TestSniffQUICInitialFromQuicGo(t *testing.T) { FILE: common/sniff/quic_test.go function TestSniffQUICChromeNew (line 15) | func TestSniffQUICChromeNew(t *testing.T) { function TestSniffQUICChromium (line 35) | func TestSniffQUICChromium(t *testing.T) { function TestSniffUQUICChrome115 (line 51) | func TestSniffUQUICChrome115(t *testing.T) { function TestSniffQUICFirefox (line 63) | func TestSniffQUICFirefox(t *testing.T) { function TestSniffQUICSafari (line 75) | func TestSniffQUICSafari(t *testing.T) { function FuzzSniffQUIC (line 87) | func FuzzSniffQUIC(f *testing.F) { FILE: common/sniff/rdp.go function RDP (line 15) | func RDP(_ context.Context, metadata *adapter.InboundContext, reader io.... FILE: common/sniff/rdp_test.go function TestSniffRDP (line 16) | func TestSniffRDP(t *testing.T) { FILE: common/sniff/sniff.go function Skip (line 25) | func Skip(metadata *adapter.InboundContext) bool { function PeekStream (line 41) | func PeekStream(ctx context.Context, metadata *adapter.InboundContext, c... function PeekPacket (line 78) | func PeekPacket(ctx context.Context, metadata *adapter.InboundContext, p... FILE: common/sniff/ssh.go function SSH (line 14) | func SSH(_ context.Context, metadata *adapter.InboundContext, reader io.... FILE: common/sniff/ssh_test.go function TestSniffSSH (line 16) | func TestSniffSSH(t *testing.T) { function TestSniffIncompleteSSH (line 28) | func TestSniffIncompleteSSH(t *testing.T) { function TestSniffNotSSH (line 38) | func TestSniffNotSSH(t *testing.T) { FILE: common/sniff/stun.go function STUNMessage (line 12) | func STUNMessage(_ context.Context, metadata *adapter.InboundContext, pa... FILE: common/sniff/stun_test.go function TestSniffSTUN (line 15) | func TestSniffSTUN(t *testing.T) { function FuzzSniffSTUN (line 25) | func FuzzSniffSTUN(f *testing.F) { FILE: common/sniff/tls.go function TLSClientHello (line 15) | func TLSClientHello(ctx context.Context, metadata *adapter.InboundContex... FILE: common/srs/binary.go constant ruleItemQueryType (line 26) | ruleItemQueryType uint8 = iota constant ruleItemNetwork (line 27) | ruleItemNetwork constant ruleItemDomain (line 28) | ruleItemDomain constant ruleItemDomainKeyword (line 29) | ruleItemDomainKeyword constant ruleItemDomainRegex (line 30) | ruleItemDomainRegex constant ruleItemSourceIPCIDR (line 31) | ruleItemSourceIPCIDR constant ruleItemIPCIDR (line 32) | ruleItemIPCIDR constant ruleItemSourcePort (line 33) | ruleItemSourcePort constant ruleItemSourcePortRange (line 34) | ruleItemSourcePortRange constant ruleItemPort (line 35) | ruleItemPort constant ruleItemPortRange (line 36) | ruleItemPortRange constant ruleItemProcessName (line 37) | ruleItemProcessName constant ruleItemProcessPath (line 38) | ruleItemProcessPath constant ruleItemPackageName (line 39) | ruleItemPackageName constant ruleItemWIFISSID (line 40) | ruleItemWIFISSID constant ruleItemWIFIBSSID (line 41) | ruleItemWIFIBSSID constant ruleItemAdGuardDomain (line 42) | ruleItemAdGuardDomain constant ruleItemProcessPathRegex (line 43) | ruleItemProcessPathRegex constant ruleItemNetworkType (line 44) | ruleItemNetworkType constant ruleItemNetworkIsExpensive (line 45) | ruleItemNetworkIsExpensive constant ruleItemNetworkIsConstrained (line 46) | ruleItemNetworkIsConstrained constant ruleItemNetworkInterfaceAddress (line 47) | ruleItemNetworkInterfaceAddress constant ruleItemDefaultInterfaceAddress (line 48) | ruleItemDefaultInterfaceAddress constant ruleItemFinal (line 49) | ruleItemFinal uint8 = 0xFF function Read (line 52) | func Read(reader io.Reader, recover bool) (ruleSetCompat option.PlainRul... function Write (line 91) | func Write(writer io.Writer, ruleSet option.PlainRuleSet, generateVersio... function readRule (line 122) | func readRule(reader varbin.Reader, recover bool) (rule option.HeadlessR... function writeRule (line 141) | func writeRule(writer varbin.Writer, rule option.HeadlessRule, generateV... function readDefaultRule (line 152) | func readDefaultRule(reader varbin.Reader, recover bool) (rule option.De... function writeDefaultRule (line 296) | func writeDefaultRule(writer varbin.Writer, rule option.DefaultHeadlessR... function readRuleItemString (line 508) | func readRuleItemString(reader varbin.Reader) ([]string, error) { function writeRuleItemString (line 529) | func writeRuleItemString(writer varbin.Writer, itemType uint8, value []s... function readRuleItemUint8 (line 551) | func readRuleItemUint8[E ~uint8](reader varbin.Reader) ([]E, error) { function writeRuleItemUint8 (line 564) | func writeRuleItemUint8[E ~uint8](writer varbin.Writer, itemType uint8, ... function readRuleItemUint16 (line 577) | func readRuleItemUint16(reader varbin.Reader) ([]uint16, error) { function writeRuleItemUint16 (line 590) | func writeRuleItemUint16(writer varbin.Writer, itemType uint8, value []u... function writeRuleItemCIDR (line 602) | func writeRuleItemCIDR(writer varbin.Writer, itemType uint8, value []str... function readLogicalRule (line 628) | func readLogicalRule(reader varbin.Reader, recovery bool) (logicalRule o... function writeLogicalRule (line 661) | func writeLogicalRule(writer varbin.Writer, logicalRule option.LogicalHe... FILE: common/srs/compat_test.go function oldWriteStringSlice (line 21) | func oldWriteStringSlice(writer varbin.Writer, value []string) error { function oldReadStringSlice (line 26) | func oldReadStringSlice(reader varbin.Reader) ([]string, error) { function oldWriteUint8Slice (line 31) | func oldWriteUint8Slice[E ~uint8](writer varbin.Writer, value []E) error { function oldReadUint8Slice (line 36) | func oldReadUint8Slice[E ~uint8](reader varbin.Reader) ([]E, error) { function oldWriteUint16Slice (line 41) | func oldWriteUint16Slice(writer varbin.Writer, value []uint16) error { function oldReadUint16Slice (line 46) | func oldReadUint16Slice(reader varbin.Reader) ([]uint16, error) { function oldWritePrefix (line 51) | func oldWritePrefix(writer varbin.Writer, prefix netip.Prefix) error { type oldIPRangeData (line 60) | type oldIPRangeData struct function oldReadIPSet (line 78) | func oldReadIPSet(reader varbin.Reader) (*netipx.IPSet, error) { function newWriteStringSlice (line 109) | func newWriteStringSlice(writer varbin.Writer, value []string) error { function newWriteUint8Slice (line 127) | func newWriteUint8Slice[E ~uint8](writer varbin.Writer, value []E) error { function newWriteUint16Slice (line 136) | func newWriteUint16Slice(writer varbin.Writer, value []uint16) error { function newWritePrefix (line 144) | func newWritePrefix(writer varbin.Writer, prefix netip.Prefix) error { function TestStringSliceCompat (line 159) | func TestStringSliceCompat(t *testing.T) { function TestUint8SliceCompat (line 212) | func TestUint8SliceCompat(t *testing.T) { function TestUint16SliceCompat (line 261) | func TestUint16SliceCompat(t *testing.T) { function TestPrefixCompat (line 310) | func TestPrefixCompat(t *testing.T) { function TestIPSetCompat (line 361) | func TestIPSetCompat(t *testing.T) { function generateStrings (line 409) | func generateStrings(count int) []string { function generateUint8Slice (line 417) | func generateUint8Slice(count int) []uint8 { function generateUint16Slice (line 425) | func generateUint16Slice(count int) []uint16 { function buildIPSet (line 433) | func buildIPSet(cidrs ...string) *netipx.IPSet { function buildLargeIPSet (line 451) | func buildLargeIPSet(count int) *netipx.IPSet { function requireStringSliceEqual (line 461) | func requireStringSliceEqual(t *testing.T, expected, actual []string) { function requireUint8SliceEqual (line 469) | func requireUint8SliceEqual(t *testing.T, expected, actual []uint8) { function requireUint16SliceEqual (line 477) | func requireUint16SliceEqual(t *testing.T, expected, actual []uint16) { function requireIPSetEqual (line 485) | func requireIPSetEqual(t *testing.T, expected, actual *netipx.IPSet) { FILE: common/srs/ip_cidr.go function readPrefix (line 12) | func readPrefix(reader varbin.Reader) (netip.Prefix, error) { function writePrefix (line 29) | func writePrefix(writer varbin.Writer, prefix netip.Prefix) error { FILE: common/srs/ip_set.go type myIPSet (line 16) | type myIPSet struct type myIPRange (line 20) | type myIPRange struct function readIPSet (line 25) | func readIPSet(reader varbin.Reader) (*netipx.IPSet, error) { function writeIPSet (line 67) | func writeIPSet(writer varbin.Writer, set *netipx.IPSet) error { FILE: common/taskmonitor/monitor.go type Monitor (line 10) | type Monitor struct method Start (line 23) | func (m *Monitor) Start(taskName ...any) { method Finish (line 29) | func (m *Monitor) Finish() { function New (line 16) | func New(logger logger.Logger, timeout time.Duration) *Monitor { FILE: common/tls/acme.go type acmeWrapper (line 25) | type acmeWrapper struct method Start (line 32) | func (w *acmeWrapper) Start() error { method Close (line 36) | func (w *acmeWrapper) Close() error { type acmeLogWriter (line 41) | type acmeLogWriter struct method Write (line 45) | func (w *acmeLogWriter) Write(p []byte) (n int, err error) { method Sync (line 62) | func (w *acmeLogWriter) Sync() error { function encoderConfig (line 66) | func encoderConfig() zapcore.EncoderConfig { function startACME (line 72) | func startACME(ctx context.Context, logger logger.Logger, options option... FILE: common/tls/acme_contstant.go constant ACMETLS1Protocol (line 3) | ACMETLS1Protocol = "acme-tls/1" FILE: common/tls/acme_stub.go function startACME (line 15) | func startACME(ctx context.Context, logger logger.Logger, options option... FILE: common/tls/client.go function NewDialerFromOptions (line 19) | func NewDialerFromOptions(ctx context.Context, logger logger.ContextLogg... function NewClient (line 35) | func NewClient(ctx context.Context, logger logger.ContextLogger, serverA... type ClientOptions (line 44) | type ClientOptions struct function NewClientWithOptions (line 52) | func NewClientWithOptions(options ClientOptions) (Config, error) { function ClientHandshake (line 72) | func ClientHandshake(ctx context.Context, conn net.Conn, config Config) ... type Dialer (line 88) | type Dialer interface type defaultDialer (line 93) | type defaultDialer struct method DialContext (line 102) | func (d *defaultDialer) DialContext(ctx context.Context, network strin... method ListenPacket (line 109) | func (d *defaultDialer) ListenPacket(ctx context.Context, destination ... method DialTLSContext (line 113) | func (d *defaultDialer) DialTLSContext(ctx context.Context, destinatio... method dialContext (line 117) | func (d *defaultDialer) dialContext(ctx context.Context, destination M... method Upstream (line 137) | func (d *defaultDialer) Upstream() any { function NewDialer (line 98) | func NewDialer(dialer N.Dialer, config Config) Dialer { FILE: common/tls/common.go constant VersionTLS10 (line 4) | VersionTLS10 = 0x0301 constant VersionTLS11 (line 5) | VersionTLS11 = 0x0302 constant VersionTLS12 (line 6) | VersionTLS12 = 0x0303 constant VersionTLS13 (line 7) | VersionTLS13 = 0x0304 constant VersionSSL30 (line 11) | VersionSSL30 = 0x0300 FILE: common/tls/config.go function ParseTLSVersion (line 24) | func ParseTLSVersion(version string) (uint16, error) { FILE: common/tls/ech.go function parseECHClientConfig (line 27) | func parseECHClientConfig(ctx context.Context, clientConfig ECHCapableCo... function parseECHServerConfig (line 58) | func parseECHServerConfig(ctx context.Context, options option.InboundTLS... method setECHServerConfig (line 84) | func (c *STDServerConfig) setECHServerConfig(echKey []byte) error { function parseECHKeys (line 97) | func parseECHKeys(echKey []byte) ([]tls.EncryptedClientHelloKey, error) { type ECHClientConfig (line 109) | type ECHClientConfig struct method ClientHandshake (line 118) | func (s *ECHClientConfig) ClientHandshake(ctx context.Context, conn ne... method fetchAndHandshake (line 130) | func (s *ECHClientConfig) fetchAndHandshake(ctx context.Context, conn ... method Clone (line 182) | func (s *ECHClientConfig) Clone() Config { function UnmarshalECHKeys (line 191) | func UnmarshalECHKeys(raw []byte) ([]tls.EncryptedClientHelloKey, error) { FILE: common/tls/ech_shared.go type ECHCapableConfig (line 11) | type ECHCapableConfig interface function ECHKeygenDefault (line 17) | func ECHKeygenDefault(publicName string) (configPem string, keyPem strin... function marshalECHConfig (line 50) | func marshalECHConfig(id uint8, pubKey []byte, publicName string, maxNam... FILE: common/tls/ktls.go type KTLSClientConfig (line 13) | type KTLSClientConfig struct method ClientHandshake (line 19) | func (w *KTLSClientConfig) ClientHandshake(ctx context.Context, conn n... method Clone (line 32) | func (w *KTLSClientConfig) Clone() Config { type KTlSServerConfig (line 41) | type KTlSServerConfig struct method ServerHandshake (line 47) | func (w *KTlSServerConfig) ServerHandshake(ctx context.Context, conn n... method Clone (line 60) | func (w *KTlSServerConfig) Clone() Config { FILE: common/tls/mkcert.go function GenerateKeyPair (line 14) | func GenerateKeyPair(parent *x509.Certificate, parentKey any, timeFunc f... function GenerateCertificate (line 29) | func GenerateCertificate(parent *x509.Certificate, parentKey any, timeFu... FILE: common/tls/reality_client.go type RealityClientConfig (line 47) | type RealityClientConfig struct method ServerName (line 95) | func (e *RealityClientConfig) ServerName() string { method SetServerName (line 99) | func (e *RealityClientConfig) SetServerName(serverName string) { method NextProtos (line 103) | func (e *RealityClientConfig) NextProtos() []string { method SetNextProtos (line 107) | func (e *RealityClientConfig) SetNextProtos(nextProto []string) { method STDConfig (line 111) | func (e *RealityClientConfig) STDConfig() (*STDConfig, error) { method Client (line 115) | func (e *RealityClientConfig) Client(conn net.Conn) (Conn, error) { method ClientHandshake (line 119) | func (e *RealityClientConfig) ClientHandshake(ctx context.Context, con... method Clone (line 253) | func (e *RealityClientConfig) Clone() Config { function NewRealityClient (line 54) | func NewRealityClient(ctx context.Context, logger logger.ContextLogger, ... function realityClientFallback (line 229) | func realityClientFallback(ctx context.Context, uConn net.Conn, serverNa... type realityVerifier (line 262) | type realityVerifier struct method VerifyPeerCertificate (line 269) | func (c *realityVerifier) VerifyPeerCertificate(rawCerts [][]byte, ver... type realityClientConnWrapper (line 293) | type realityClientConnWrapper struct method ConnectionState (line 297) | func (c *realityClientConnWrapper) ConnectionState() tls.ConnectionSta... method Upstream (line 316) | func (c *realityClientConnWrapper) Upstream() any { method CloseWrite (line 322) | func (c *realityClientConnWrapper) CloseWrite() error { method ReaderReplaceable (line 326) | func (c *realityClientConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 330) | func (c *realityClientConnWrapper) WriterReplaceable() bool { FILE: common/tls/reality_server.go type RealityServerConfig (line 28) | type RealityServerConfig struct method ServerName (line 144) | func (c *RealityServerConfig) ServerName() string { method SetServerName (line 148) | func (c *RealityServerConfig) SetServerName(serverName string) { method NextProtos (line 152) | func (c *RealityServerConfig) NextProtos() []string { method SetNextProtos (line 156) | func (c *RealityServerConfig) SetNextProtos(nextProto []string) { method STDConfig (line 160) | func (c *RealityServerConfig) STDConfig() (*tls.Config, error) { method Client (line 164) | func (c *RealityServerConfig) Client(conn net.Conn) (Conn, error) { method Start (line 168) | func (c *RealityServerConfig) Start() error { method Close (line 172) | func (c *RealityServerConfig) Close() error { method Server (line 176) | func (c *RealityServerConfig) Server(conn net.Conn) (Conn, error) { method ServerHandshake (line 180) | func (c *RealityServerConfig) ServerHandshake(ctx context.Context, con... method Clone (line 188) | func (c *RealityServerConfig) Clone() Config { function NewRealityServer (line 32) | func NewRealityServer(ctx context.Context, logger log.ContextLogger, opt... type realityConnWrapper (line 196) | type realityConnWrapper struct method ConnectionState (line 200) | func (c *realityConnWrapper) ConnectionState() ConnectionState { method Upstream (line 219) | func (c *realityConnWrapper) Upstream() any { method CloseWrite (line 225) | func (c *realityConnWrapper) CloseWrite() error { method ReaderReplaceable (line 229) | func (c *realityConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 233) | func (c *realityConnWrapper) WriterReplaceable() bool { FILE: common/tls/server.go type ServerOptions (line 15) | type ServerOptions struct function NewServer (line 22) | func NewServer(ctx context.Context, logger log.ContextLogger, options op... function NewServerWithOptions (line 30) | func NewServerWithOptions(options ServerOptions) (ServerConfig, error) { function ServerHandshake (line 48) | func ServerHandshake(ctx context.Context, conn net.Conn, config ServerCo... FILE: common/tls/std_client.go type STDClientConfig (line 24) | type STDClientConfig struct method ServerName (line 32) | func (c *STDClientConfig) ServerName() string { method SetServerName (line 36) | func (c *STDClientConfig) SetServerName(serverName string) { method NextProtos (line 40) | func (c *STDClientConfig) NextProtos() []string { method SetNextProtos (line 44) | func (c *STDClientConfig) SetNextProtos(nextProto []string) { method STDConfig (line 48) | func (c *STDClientConfig) STDConfig() (*STDConfig, error) { method Client (line 52) | func (c *STDClientConfig) Client(conn net.Conn) (Conn, error) { method Clone (line 59) | func (c *STDClientConfig) Clone() Config { method ECHConfigList (line 69) | func (c *STDClientConfig) ECHConfigList() []byte { method SetECHConfigList (line 73) | func (c *STDClientConfig) SetECHConfigList(EncryptedClientHelloConfigL... function NewSTDClient (line 77) | func NewSTDClient(ctx context.Context, logger logger.ContextLogger, serv... function verifyPublicKeySHA256 (line 223) | func verifyPublicKeySHA256(knownHashValues [][]byte, rawCerts [][]byte, ... FILE: common/tls/std_server.go type STDServerConfig (line 25) | type STDServerConfig struct method ServerName (line 39) | func (c *STDServerConfig) ServerName() string { method SetServerName (line 45) | func (c *STDServerConfig) SetServerName(serverName string) { method NextProtos (line 53) | func (c *STDServerConfig) NextProtos() []string { method SetNextProtos (line 63) | func (c *STDServerConfig) SetNextProtos(nextProto []string) { method STDConfig (line 75) | func (c *STDServerConfig) STDConfig() (*STDConfig, error) { method Client (line 79) | func (c *STDServerConfig) Client(conn net.Conn) (Conn, error) { method Server (line 83) | func (c *STDServerConfig) Server(conn net.Conn) (Conn, error) { method Clone (line 87) | func (c *STDServerConfig) Clone() Config { method Start (line 93) | func (c *STDServerConfig) Start() error { method startWatcher (line 105) | func (c *STDServerConfig) startWatcher() error { method certificateUpdated (line 142) | func (c *STDServerConfig) certificateUpdated(path string) error { method Close (line 205) | func (c *STDServerConfig) Close() error { function NewSTDServer (line 215) | func NewSTDServer(ctx context.Context, logger log.ContextLogger, options... FILE: common/tls/time_wrapper.go type TimeServiceWrapper (line 9) | type TimeServiceWrapper struct method TimeFunc (line 13) | func (w *TimeServiceWrapper) TimeFunc() func() time.Time { method Upstream (line 23) | func (w *TimeServiceWrapper) Upstream() any { FILE: common/tls/utls_client.go type UTLSClientConfig (line 28) | type UTLSClientConfig struct method ServerName (line 37) | func (c *UTLSClientConfig) ServerName() string { method SetServerName (line 41) | func (c *UTLSClientConfig) SetServerName(serverName string) { method NextProtos (line 45) | func (c *UTLSClientConfig) NextProtos() []string { method SetNextProtos (line 49) | func (c *UTLSClientConfig) SetNextProtos(nextProto []string) { method STDConfig (line 56) | func (c *UTLSClientConfig) STDConfig() (*STDConfig, error) { method Client (line 60) | func (c *UTLSClientConfig) Client(conn net.Conn) (Conn, error) { method SetSessionIDGenerator (line 67) | func (c *UTLSClientConfig) SetSessionIDGenerator(generator func(client... method Clone (line 71) | func (c *UTLSClientConfig) Clone() Config { method ECHConfigList (line 77) | func (c *UTLSClientConfig) ECHConfigList() []byte { method SetECHConfigList (line 81) | func (c *UTLSClientConfig) SetECHConfigList(EncryptedClientHelloConfig... type utlsConnWrapper (line 85) | type utlsConnWrapper struct method ConnectionState (line 89) | func (c *utlsConnWrapper) ConnectionState() tls.ConnectionState { method Upstream (line 108) | func (c *utlsConnWrapper) Upstream() any { method ReaderReplaceable (line 112) | func (c *utlsConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 116) | func (c *utlsConnWrapper) WriterReplaceable() bool { type utlsALPNWrapper (line 120) | type utlsALPNWrapper struct method HandshakeContext (line 125) | func (c *utlsALPNWrapper) HandshakeContext(ctx context.Context) error { function NewUTLSClient (line 145) | func NewUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function init (line 287) | func init() { function uTLSClientHelloID (line 305) | func uTLSClientHelloID(name string) (utls.ClientHelloID, error) { FILE: common/tls/utls_stub.go function NewUTLSClient (line 14) | func NewUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function NewRealityClient (line 18) | func NewRealityClient(ctx context.Context, logger logger.ContextLogger, ... function NewRealityServer (line 22) | func NewRealityServer(ctx context.Context, logger log.Logger, options op... FILE: common/tlsfragment/conn.go type Conn (line 18) | type Conn struct method Write (line 43) | func (c *Conn) Write(b []byte) (n int, err error) { method ReaderReplaceable (line 136) | func (c *Conn) ReaderReplaceable() bool { method WriterReplaceable (line 140) | func (c *Conn) WriterReplaceable() bool { method Upstream (line 144) | func (c *Conn) Upstream() any { function NewConn (line 28) | func NewConn(conn net.Conn, ctx context.Context, splitPacket bool, split... FILE: common/tlsfragment/conn_test.go function TestTLSFragment (line 14) | func TestTLSFragment(t *testing.T) { function TestTLSRecordFragment (line 24) | func TestTLSRecordFragment(t *testing.T) { function TestTLS2Fragment (line 34) | func TestTLS2Fragment(t *testing.T) { FILE: common/tlsfragment/index.go constant recordLayerHeaderLen (line 8) | recordLayerHeaderLen int = 5 constant handshakeHeaderLen (line 9) | handshakeHeaderLen int = 6 constant randomDataLen (line 10) | randomDataLen int = 32 constant sessionIDHeaderLen (line 11) | sessionIDHeaderLen int = 1 constant cipherSuiteHeaderLen (line 12) | cipherSuiteHeaderLen int = 2 constant compressMethodHeaderLen (line 13) | compressMethodHeaderLen int = 1 constant extensionsHeaderLen (line 14) | extensionsHeaderLen int = 2 constant extensionHeaderLen (line 15) | extensionHeaderLen int = 4 constant sniExtensionHeaderLen (line 16) | sniExtensionHeaderLen int = 5 constant contentType (line 17) | contentType uint8 = 22 constant handshakeType (line 18) | handshakeType uint8 = 1 constant sniExtensionType (line 19) | sniExtensionType uint16 = 0 constant sniNameDNSHostnameType (line 20) | sniNameDNSHostnameType uint8 = 0 constant tlsVersionBitmask (line 21) | tlsVersionBitmask uint16 = 0xFFFC constant tls13 (line 22) | tls13 uint16 = 0x0304 type MyServerName (line 25) | type MyServerName struct function IndexTLSServerName (line 31) | func IndexTLSServerName(payload []byte) *MyServerName { function indexTLSServerNameFromHandshake (line 47) | func indexTLSServerNameFromHandshake(handshake []byte) *MyServerName { function indexTLSServerNameFromExtensions (line 88) | func indexTLSServerNameFromExtensions(exs []byte) *MyServerName { FILE: common/tlsfragment/index_test.go function TestIndexTLSServerName (line 12) | func TestIndexTLSServerName(t *testing.T) { FILE: common/tlsfragment/wait_darwin.go function writeAndWaitAck (line 66) | func writeAndWaitAck(ctx context.Context, conn *net.TCPConn, payload []b... FILE: common/tlsfragment/wait_linux.go function writeAndWaitAck (line 13) | func writeAndWaitAck(ctx context.Context, conn *net.TCPConn, payload []b... FILE: common/tlsfragment/wait_stub.go function writeAndWaitAck (line 11) | func writeAndWaitAck(ctx context.Context, conn *net.TCPConn, payload []b... FILE: common/tlsfragment/wait_windows.go function writeAndWaitAck (line 14) | func writeAndWaitAck(ctx context.Context, conn *net.TCPConn, payload []b... FILE: common/uot/router.go type Router (line 18) | type Router struct method RouteConnection (line 27) | func (r *Router) RouteConnection(ctx context.Context, conn net.Conn, m... method RoutePacketConnection (line 51) | func (r *Router) RoutePacketConnection(ctx context.Context, conn N.Pac... method RouteConnectionEx (line 55) | func (r *Router) RouteConnectionEx(ctx context.Context, conn net.Conn,... method RoutePacketConnectionEx (line 84) | func (r *Router) RoutePacketConnectionEx(ctx context.Context, conn N.P... function NewRouter (line 23) | func NewRouter(router adapter.ConnectionRouterEx, logger logger.ContextL... FILE: common/urltest/urltest.go type HistoryStorage (line 22) | type HistoryStorage struct method SetHook (line 34) | func (s *HistoryStorage) SetHook(hook *observable.Subscriber[struct{}]) { method LoadURLTestHistory (line 38) | func (s *HistoryStorage) LoadURLTestHistory(tag string) *adapter.URLTe... method DeleteURLTestHistory (line 47) | func (s *HistoryStorage) DeleteURLTestHistory(tag string) { method StoreURLTestHistory (line 54) | func (s *HistoryStorage) StoreURLTestHistory(tag string, history *adap... method notifyUpdated (line 61) | func (s *HistoryStorage) notifyUpdated() { method Close (line 68) | func (s *HistoryStorage) Close() error { function NewHistoryStorage (line 28) | func NewHistoryStorage() *HistoryStorage { function URLTest (line 75) | func URLTest(ctx context.Context, link string, detour N.Dialer) (t uint1... FILE: constant/certificate.go constant CertificateStoreSystem (line 4) | CertificateStoreSystem = "system" constant CertificateStoreMozilla (line 5) | CertificateStoreMozilla = "mozilla" constant CertificateStoreChrome (line 6) | CertificateStoreChrome = "chrome" constant CertificateStoreNone (line 7) | CertificateStoreNone = "none" FILE: constant/cgo.go constant CGO_ENABLED (line 5) | CGO_ENABLED = true FILE: constant/cgo_disabled.go constant CGO_ENABLED (line 5) | CGO_ENABLED = false FILE: constant/dhcp.go constant DHCPTTL (line 6) | DHCPTTL = time.Hour constant DHCPTimeout (line 7) | DHCPTimeout = 5 * time.Second FILE: constant/dns.go constant DefaultDNSTTL (line 4) | DefaultDNSTTL = 600 constant DomainStrategyAsIS (line 10) | DomainStrategyAsIS DomainStrategy = iota constant DomainStrategyPreferIPv4 (line 11) | DomainStrategyPreferIPv4 constant DomainStrategyPreferIPv6 (line 12) | DomainStrategyPreferIPv6 constant DomainStrategyIPv4Only (line 13) | DomainStrategyIPv4Only constant DomainStrategyIPv6Only (line 14) | DomainStrategyIPv6Only constant DNSTypeLegacy (line 18) | DNSTypeLegacy = "legacy" constant DNSTypeLegacyRcode (line 19) | DNSTypeLegacyRcode = "legacy_rcode" constant DNSTypeUDP (line 20) | DNSTypeUDP = "udp" constant DNSTypeTCP (line 21) | DNSTypeTCP = "tcp" constant DNSTypeTLS (line 22) | DNSTypeTLS = "tls" constant DNSTypeHTTPS (line 23) | DNSTypeHTTPS = "https" constant DNSTypeQUIC (line 24) | DNSTypeQUIC = "quic" constant DNSTypeHTTP3 (line 25) | DNSTypeHTTP3 = "h3" constant DNSTypeLocal (line 26) | DNSTypeLocal = "local" constant DNSTypeHosts (line 27) | DNSTypeHosts = "hosts" constant DNSTypeFakeIP (line 28) | DNSTypeFakeIP = "fakeip" constant DNSTypeDHCP (line 29) | DNSTypeDHCP = "dhcp" constant DNSTypeTailscale (line 30) | DNSTypeTailscale = "tailscale" constant DNSProviderAliDNS (line 34) | DNSProviderAliDNS = "alidns" constant DNSProviderCloudflare (line 35) | DNSProviderCloudflare = "cloudflare" constant DNSProviderACMEDNS (line 36) | DNSProviderACMEDNS = "acmedns" FILE: constant/goos/gengoos.go function main (line 20) | func main() { FILE: constant/goos/zgoos_aix.go constant GOOS (line 7) | GOOS = `aix` constant IsAix (line 9) | IsAix = 1 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_android.go constant GOOS (line 7) | GOOS = `android` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 1 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_darwin.go constant GOOS (line 7) | GOOS = `darwin` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 1 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_dragonfly.go constant GOOS (line 7) | GOOS = `dragonfly` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 1 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_freebsd.go constant GOOS (line 7) | GOOS = `freebsd` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 1 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_hurd.go constant GOOS (line 7) | GOOS = `hurd` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 1 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_illumos.go constant GOOS (line 7) | GOOS = `illumos` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 1 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_ios.go constant GOOS (line 7) | GOOS = `ios` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 1 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_js.go constant GOOS (line 7) | GOOS = `js` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 1 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_linux.go constant GOOS (line 7) | GOOS = `linux` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 1 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_netbsd.go constant GOOS (line 7) | GOOS = `netbsd` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 1 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_openbsd.go constant GOOS (line 7) | GOOS = `openbsd` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 1 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_plan9.go constant GOOS (line 7) | GOOS = `plan9` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 1 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_solaris.go constant GOOS (line 7) | GOOS = `solaris` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 1 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_windows.go constant GOOS (line 7) | GOOS = `windows` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 1 constant IsZos (line 25) | IsZos = 0 FILE: constant/goos/zgoos_zos.go constant GOOS (line 7) | GOOS = `zos` constant IsAix (line 9) | IsAix = 0 constant IsAndroid (line 10) | IsAndroid = 0 constant IsDarwin (line 11) | IsDarwin = 0 constant IsDragonfly (line 12) | IsDragonfly = 0 constant IsFreebsd (line 13) | IsFreebsd = 0 constant IsHurd (line 14) | IsHurd = 0 constant IsIllumos (line 15) | IsIllumos = 0 constant IsIos (line 16) | IsIos = 0 constant IsJs (line 17) | IsJs = 0 constant IsLinux (line 18) | IsLinux = 0 constant IsNacl (line 19) | IsNacl = 0 constant IsNetbsd (line 20) | IsNetbsd = 0 constant IsOpenbsd (line 21) | IsOpenbsd = 0 constant IsPlan9 (line 22) | IsPlan9 = 0 constant IsSolaris (line 23) | IsSolaris = 0 constant IsWindows (line 24) | IsWindows = 0 constant IsZos (line 25) | IsZos = 1 FILE: constant/hysteria2.go constant Hysterai2MasqueradeTypeFile (line 4) | Hysterai2MasqueradeTypeFile = "file" constant Hysterai2MasqueradeTypeProxy (line 5) | Hysterai2MasqueradeTypeProxy = "proxy" constant Hysterai2MasqueradeTypeString (line 6) | Hysterai2MasqueradeTypeString = "string" FILE: constant/network.go type InterfaceType (line 8) | type InterfaceType method String (line 27) | func (t InterfaceType) String() string { constant InterfaceTypeWIFI (line 11) | InterfaceTypeWIFI InterfaceType = iota constant InterfaceTypeCellular (line 12) | InterfaceTypeCellular constant InterfaceTypeEthernet (line 13) | InterfaceTypeEthernet constant InterfaceTypeOther (line 14) | InterfaceTypeOther type NetworkStrategy (line 35) | type NetworkStrategy method String (line 52) | func (s NetworkStrategy) String() string { constant NetworkStrategyDefault (line 38) | NetworkStrategyDefault NetworkStrategy = iota constant NetworkStrategyFallback (line 39) | NetworkStrategyFallback constant NetworkStrategyHybrid (line 40) | NetworkStrategyHybrid FILE: constant/os.go constant IsAndroid (line 7) | IsAndroid = goos.IsAndroid == 1 constant IsDarwin (line 9) | IsDarwin = goos.IsDarwin == 1 || goos.IsIos == 1 constant IsDragonfly (line 11) | IsDragonfly = goos.IsDragonfly == 1 constant IsFreebsd (line 13) | IsFreebsd = goos.IsFreebsd == 1 constant IsHurd (line 15) | IsHurd = goos.IsHurd == 1 constant IsIllumos (line 17) | IsIllumos = goos.IsIllumos == 1 constant IsIos (line 19) | IsIos = goos.IsIos == 1 constant IsJs (line 21) | IsJs = goos.IsJs == 1 constant IsLinux (line 23) | IsLinux = goos.IsLinux == 1 || goos.IsAndroid == 1 constant IsNacl (line 25) | IsNacl = goos.IsNacl == 1 constant IsNetbsd (line 27) | IsNetbsd = goos.IsNetbsd == 1 constant IsOpenbsd (line 29) | IsOpenbsd = goos.IsOpenbsd == 1 constant IsPlan9 (line 31) | IsPlan9 = goos.IsPlan9 == 1 constant IsSolaris (line 33) | IsSolaris = goos.IsSolaris == 1 constant IsWindows (line 35) | IsWindows = goos.IsWindows == 1 constant IsZos (line 37) | IsZos = goos.IsZos == 1 FILE: constant/path.go constant dirName (line 10) | dirName = "sing-box" function FindPath (line 14) | func FindPath(name string) (string, bool) { function init (line 30) | func init() { FILE: constant/path_unix.go function init (line 9) | func init() { FILE: constant/protocol.go constant ProtocolTLS (line 4) | ProtocolTLS = "tls" constant ProtocolHTTP (line 5) | ProtocolHTTP = "http" constant ProtocolQUIC (line 6) | ProtocolQUIC = "quic" constant ProtocolDNS (line 7) | ProtocolDNS = "dns" constant ProtocolSTUN (line 8) | ProtocolSTUN = "stun" constant ProtocolBitTorrent (line 9) | ProtocolBitTorrent = "bittorrent" constant ProtocolDTLS (line 10) | ProtocolDTLS = "dtls" constant ProtocolSSH (line 11) | ProtocolSSH = "ssh" constant ProtocolRDP (line 12) | ProtocolRDP = "rdp" constant ProtocolNTP (line 13) | ProtocolNTP = "ntp" constant ClientChromium (line 17) | ClientChromium = "chromium" constant ClientSafari (line 18) | ClientSafari = "safari" constant ClientFirefox (line 19) | ClientFirefox = "firefox" constant ClientQUICGo (line 20) | ClientQUICGo = "quic-go" constant ClientUnknown (line 21) | ClientUnknown = "unknown" FILE: constant/proxy.go constant TypeTun (line 4) | TypeTun = "tun" constant TypeRedirect (line 5) | TypeRedirect = "redirect" constant TypeTProxy (line 6) | TypeTProxy = "tproxy" constant TypeDirect (line 7) | TypeDirect = "direct" constant TypeBlock (line 8) | TypeBlock = "block" constant TypeDNS (line 9) | TypeDNS = "dns" constant TypeSOCKS (line 10) | TypeSOCKS = "socks" constant TypeHTTP (line 11) | TypeHTTP = "http" constant TypeMixed (line 12) | TypeMixed = "mixed" constant TypeShadowsocks (line 13) | TypeShadowsocks = "shadowsocks" constant TypeVMess (line 14) | TypeVMess = "vmess" constant TypeTrojan (line 15) | TypeTrojan = "trojan" constant TypeNaive (line 16) | TypeNaive = "naive" constant TypeWireGuard (line 17) | TypeWireGuard = "wireguard" constant TypeHysteria (line 18) | TypeHysteria = "hysteria" constant TypeTor (line 19) | TypeTor = "tor" constant TypeSSH (line 20) | TypeSSH = "ssh" constant TypeShadowTLS (line 21) | TypeShadowTLS = "shadowtls" constant TypeAnyTLS (line 22) | TypeAnyTLS = "anytls" constant TypeShadowsocksR (line 23) | TypeShadowsocksR = "shadowsocksr" constant TypeVLESS (line 24) | TypeVLESS = "vless" constant TypeTUIC (line 25) | TypeTUIC = "tuic" constant TypeHysteria2 (line 26) | TypeHysteria2 = "hysteria2" constant TypeTailscale (line 27) | TypeTailscale = "tailscale" constant TypeDERP (line 28) | TypeDERP = "derp" constant TypeResolved (line 29) | TypeResolved = "resolved" constant TypeSSMAPI (line 30) | TypeSSMAPI = "ssm-api" constant TypeCCM (line 31) | TypeCCM = "ccm" constant TypeOCM (line 32) | TypeOCM = "ocm" constant TypeOOMKiller (line 33) | TypeOOMKiller = "oom-killer" constant TypeSelector (line 37) | TypeSelector = "selector" constant TypeURLTest (line 38) | TypeURLTest = "urltest" function ProxyDisplayName (line 41) | func ProxyDisplayName(proxyType string) string { FILE: constant/quic.go constant WithQUIC (line 5) | WithQUIC = true FILE: constant/quic_stub.go constant WithQUIC (line 5) | WithQUIC = false FILE: constant/rule.go constant RuleTypeDefault (line 4) | RuleTypeDefault = "default" constant RuleTypeLogical (line 5) | RuleTypeLogical = "logical" constant LogicalTypeAnd (line 9) | LogicalTypeAnd = "and" constant LogicalTypeOr (line 10) | LogicalTypeOr = "or" constant RuleSetTypeInline (line 14) | RuleSetTypeInline = "inline" constant RuleSetTypeLocal (line 15) | RuleSetTypeLocal = "local" constant RuleSetTypeRemote (line 16) | RuleSetTypeRemote = "remote" constant RuleSetFormatSource (line 17) | RuleSetFormatSource = "source" constant RuleSetFormatBinary (line 18) | RuleSetFormatBinary = "binary" constant RuleSetVersion1 (line 22) | RuleSetVersion1 = 1 + iota constant RuleSetVersion2 (line 23) | RuleSetVersion2 constant RuleSetVersion3 (line 24) | RuleSetVersion3 constant RuleSetVersion4 (line 25) | RuleSetVersion4 constant RuleSetVersionCurrent (line 26) | RuleSetVersionCurrent = RuleSetVersion4 constant RuleActionTypeRoute (line 30) | RuleActionTypeRoute = "route" constant RuleActionTypeRouteOptions (line 31) | RuleActionTypeRouteOptions = "route-options" constant RuleActionTypeDirect (line 32) | RuleActionTypeDirect = "direct" constant RuleActionTypeBypass (line 33) | RuleActionTypeBypass = "bypass" constant RuleActionTypeReject (line 34) | RuleActionTypeReject = "reject" constant RuleActionTypeHijackDNS (line 35) | RuleActionTypeHijackDNS = "hijack-dns" constant RuleActionTypeSniff (line 36) | RuleActionTypeSniff = "sniff" constant RuleActionTypeResolve (line 37) | RuleActionTypeResolve = "resolve" constant RuleActionTypePredefined (line 38) | RuleActionTypePredefined = "predefined" constant RuleActionRejectMethodDefault (line 42) | RuleActionRejectMethodDefault = "default" constant RuleActionRejectMethodDrop (line 43) | RuleActionRejectMethodDrop = "drop" constant RuleActionRejectMethodReply (line 44) | RuleActionRejectMethodReply = "reply" FILE: constant/speed.go constant MbpsToBps (line 3) | MbpsToBps = 125000 FILE: constant/time.go constant TimeLayout (line 3) | TimeLayout = "2006-01-02 15:04:05 -0700" FILE: constant/timeout.go constant TCPKeepAliveInitial (line 6) | TCPKeepAliveInitial = 5 * time.Minute constant TCPKeepAliveInterval (line 7) | TCPKeepAliveInterval = 75 * time.Second constant TCPConnectTimeout (line 8) | TCPConnectTimeout = 5 * time.Second constant TCPTimeout (line 9) | TCPTimeout = 15 * time.Second constant ReadPayloadTimeout (line 10) | ReadPayloadTimeout = 300 * time.Millisecond constant DNSTimeout (line 11) | DNSTimeout = 10 * time.Second constant UDPTimeout (line 12) | UDPTimeout = 5 * time.Minute constant DefaultURLTestInterval (line 13) | DefaultURLTestInterval = 3 * time.Minute constant DefaultURLTestIdleTimeout (line 14) | DefaultURLTestIdleTimeout = 30 * time.Minute constant StartTimeout (line 15) | StartTimeout = 10 * time.Second constant StopTimeout (line 16) | StopTimeout = 5 * time.Second constant FatalStopTimeout (line 17) | FatalStopTimeout = 10 * time.Second constant FakeIPMetadataSaveInterval (line 18) | FakeIPMetadataSaveInterval = 10 * time.Second constant TLSFragmentFallbackDelay (line 19) | TLSFragmentFallbackDelay = 500 * time.Millisecond FILE: constant/v2ray.go constant V2RayTransportTypeHTTP (line 4) | V2RayTransportTypeHTTP = "http" constant V2RayTransportTypeWebsocket (line 5) | V2RayTransportTypeWebsocket = "ws" constant V2RayTransportTypeQUIC (line 6) | V2RayTransportTypeQUIC = "quic" constant V2RayTransportTypeGRPC (line 7) | V2RayTransportTypeGRPC = "grpc" constant V2RayTransportTypeHTTPUpgrade (line 8) | V2RayTransportTypeHTTPUpgrade = "httpupgrade" FILE: daemon/deprecated.go type deprecatedManager (line 12) | type deprecatedManager struct method ReportDeprecated (line 17) | func (m *deprecatedManager) ReportDeprecated(feature deprecated.Note) { method Get (line 23) | func (m *deprecatedManager) Get() []deprecated.Note { FILE: daemon/instance.go type Instance (line 22) | type Instance struct method Start (line 124) | func (i *Instance) Start() error { method Close (line 128) | func (i *Instance) Close() error { method Box (line 134) | func (i *Instance) Box() *box.Box { method PauseManager (line 138) | func (i *Instance) PauseManager() pause.Manager { method CheckConfig (line 33) | func (s *StartedService) CheckConfig(configContent string) error { method FormatConfig (line 50) | func (s *StartedService) FormatConfig(configContent string) (string, err... type OverrideOptions (line 65) | type OverrideOptions struct method newInstance (line 71) | func (s *StartedService) newInstance(profileContent string, overrideOpti... function parseConfig (line 142) | func parseConfig(ctx context.Context, configContent string) (option.Opti... FILE: daemon/platform.go type PlatformHandler (line 3) | type PlatformHandler interface FILE: daemon/started_service.go type StartedService (line 32) | type StartedService struct method resetLogs (line 107) | func (s *StartedService) resetLogs() { method updateStatus (line 114) | func (s *StartedService) updateStatus(newStatus ServiceStatus_Type) { method updateStatusError (line 120) | func (s *StartedService) updateStatusError(err error) error { method waitForStarted (line 128) | func (s *StartedService) waitForStarted(ctx context.Context) error { method StartOrReloadService (line 168) | func (s *StartedService) StartOrReloadService(profileContent string, o... method Close (line 212) | func (s *StartedService) Close() { method CloseService (line 220) | func (s *StartedService) CloseService() error { method SetError (line 243) | func (s *StartedService) SetError(err error) { method StopService (line 249) | func (s *StartedService) StopService(ctx context.Context, empty *empty... method ReloadService (line 257) | func (s *StartedService) ReloadService(ctx context.Context, empty *emp... method SubscribeServiceStatus (line 265) | func (s *StartedService) SubscribeServiceStatus(empty *emptypb.Empty, ... method SubscribeLog (line 292) | func (s *StartedService) SubscribeLog(empty *emptypb.Empty, server grp... method GetDefaultLogLevel (line 360) | func (s *StartedService) GetDefaultLogLevel(ctx context.Context, empty... method ClearLogs (line 373) | func (s *StartedService) ClearLogs(ctx context.Context, empty *emptypb... method SubscribeStatus (line 378) | func (s *StartedService) SubscribeStatus(request *SubscribeStatusReque... method readStatus (line 410) | func (s *StartedService) readStatus() *Status { method SubscribeGroups (line 431) | func (s *StartedService) SubscribeGroups(empty *emptypb.Empty, server ... method readGroups (line 465) | func (s *StartedService) readGroups() *Groups { method GetClashModeStatus (line 511) | func (s *StartedService) GetClashModeStatus(ctx context.Context, empty... method SubscribeClashMode (line 528) | func (s *StartedService) SubscribeClashMode(empty *emptypb.Empty, serv... method SetClashMode (line 562) | func (s *StartedService) SetClashMode(ctx context.Context, request *Cl... method URLTest (line 574) | func (s *StartedService) URLTest(ctx context.Context, request *URLTest... method SelectOutbound (line 631) | func (s *StartedService) SelectOutbound(ctx context.Context, request *... method SetGroupExpand (line 656) | func (s *StartedService) SetGroupExpand(ctx context.Context, request *... method GetSystemProxyStatus (line 675) | func (s *StartedService) GetSystemProxyStatus(ctx context.Context, emp... method SetSystemProxyEnabled (line 679) | func (s *StartedService) SetSystemProxyEnabled(ctx context.Context, re... method SubscribeConnections (line 687) | func (s *StartedService) SubscribeConnections(request *SubscribeConnec... method buildInitialConnectionState (line 776) | func (s *StartedService) buildInitialConnectionState(manager *traffico... method applyConnectionEvent (line 804) | func (s *StartedService) applyConnectionEvent(event trafficontrol.Conn... method buildTrafficUpdates (line 844) | func (s *StartedService) buildTrafficUpdates(manager *trafficontrol.Ma... method CloseConnection (line 982) | func (s *StartedService) CloseConnection(ctx context.Context, request ... method CloseAllConnections (line 999) | func (s *StartedService) CloseAllConnections(ctx context.Context, empt... method GetDeprecatedWarnings (line 1009) | func (s *StartedService) GetDeprecatedWarnings(ctx context.Context, em... method GetStartedAt (line 1029) | func (s *StartedService) GetStartedAt(ctx context.Context, empty *empt... method mustEmbedUnimplementedStartedServiceServer (line 1035) | func (s *StartedService) mustEmbedUnimplementedStartedServiceServer() { method WriteMessage (line 1038) | func (s *StartedService) WriteMessage(level log.Level, message string) { method Instance (line 1052) | func (s *StartedService) Instance() *Instance { type ServiceOptions (line 64) | type ServiceOptions struct function NewStartedService (line 78) | func NewStartedService(options ServiceOptions) *StartedService { type connectionSnapshot (line 770) | type connectionSnapshot struct function buildConnectionProto (line 942) | func buildConnectionProto(metadata *trafficontrol.TrackerMetadata) *Conn... FILE: daemon/started_service.pb.go constant _ (line 15) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) constant _ (line 17) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) type LogLevel (line 20) | type LogLevel method Enum (line 54) | func (x LogLevel) Enum() *LogLevel { method String (line 60) | func (x LogLevel) String() string { method Descriptor (line 64) | func (LogLevel) Descriptor() protoreflect.EnumDescriptor { method Type (line 68) | func (LogLevel) Type() protoreflect.EnumType { method Number (line 72) | func (x LogLevel) Number() protoreflect.EnumNumber { method EnumDescriptor (line 77) | func (LogLevel) EnumDescriptor() ([]byte, []int) { constant LogLevel_PANIC (line 23) | LogLevel_PANIC LogLevel = 0 constant LogLevel_FATAL (line 24) | LogLevel_FATAL LogLevel = 1 constant LogLevel_ERROR (line 25) | LogLevel_ERROR LogLevel = 2 constant LogLevel_WARN (line 26) | LogLevel_WARN LogLevel = 3 constant LogLevel_INFO (line 27) | LogLevel_INFO LogLevel = 4 constant LogLevel_DEBUG (line 28) | LogLevel_DEBUG LogLevel = 5 constant LogLevel_TRACE (line 29) | LogLevel_TRACE LogLevel = 6 type ConnectionEventType (line 81) | type ConnectionEventType method Enum (line 103) | func (x ConnectionEventType) Enum() *ConnectionEventType { method String (line 109) | func (x ConnectionEventType) String() string { method Descriptor (line 113) | func (ConnectionEventType) Descriptor() protoreflect.EnumDescriptor { method Type (line 117) | func (ConnectionEventType) Type() protoreflect.EnumType { method Number (line 121) | func (x ConnectionEventType) Number() protoreflect.EnumNumber { method EnumDescriptor (line 126) | func (ConnectionEventType) EnumDescriptor() ([]byte, []int) { constant ConnectionEventType_CONNECTION_EVENT_NEW (line 84) | ConnectionEventType_CONNECTION_EVENT_NEW ConnectionEventType = 0 constant ConnectionEventType_CONNECTION_EVENT_UPDATE (line 85) | ConnectionEventType_CONNECTION_EVENT_UPDATE ConnectionEventType = 1 constant ConnectionEventType_CONNECTION_EVENT_CLOSED (line 86) | ConnectionEventType_CONNECTION_EVENT_CLOSED ConnectionEventType = 2 type ServiceStatus_Type (line 130) | type ServiceStatus_Type method Enum (line 158) | func (x ServiceStatus_Type) Enum() *ServiceStatus_Type { method String (line 164) | func (x ServiceStatus_Type) String() string { method Descriptor (line 168) | func (ServiceStatus_Type) Descriptor() protoreflect.EnumDescriptor { method Type (line 172) | func (ServiceStatus_Type) Type() protoreflect.EnumType { method Number (line 176) | func (x ServiceStatus_Type) Number() protoreflect.EnumNumber { method EnumDescriptor (line 181) | func (ServiceStatus_Type) EnumDescriptor() ([]byte, []int) { constant ServiceStatus_IDLE (line 133) | ServiceStatus_IDLE ServiceStatus_Type = 0 constant ServiceStatus_STARTING (line 134) | ServiceStatus_STARTING ServiceStatus_Type = 1 constant ServiceStatus_STARTED (line 135) | ServiceStatus_STARTED ServiceStatus_Type = 2 constant ServiceStatus_STOPPING (line 136) | ServiceStatus_STOPPING ServiceStatus_Type = 3 constant ServiceStatus_FATAL (line 137) | ServiceStatus_FATAL ServiceStatus_Type = 4 type ServiceStatus (line 185) | type ServiceStatus struct method Reset (line 193) | func (x *ServiceStatus) Reset() { method String (line 200) | func (x *ServiceStatus) String() string { method ProtoMessage (line 204) | func (*ServiceStatus) ProtoMessage() {} method ProtoReflect (line 206) | func (x *ServiceStatus) ProtoReflect() protoreflect.Message { method Descriptor (line 219) | func (*ServiceStatus) Descriptor() ([]byte, []int) { method GetStatus (line 223) | func (x *ServiceStatus) GetStatus() ServiceStatus_Type { method GetErrorMessage (line 230) | func (x *ServiceStatus) GetErrorMessage() string { type ReloadServiceRequest (line 237) | type ReloadServiceRequest struct method Reset (line 244) | func (x *ReloadServiceRequest) Reset() { method String (line 251) | func (x *ReloadServiceRequest) String() string { method ProtoMessage (line 255) | func (*ReloadServiceRequest) ProtoMessage() {} method ProtoReflect (line 257) | func (x *ReloadServiceRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 270) | func (*ReloadServiceRequest) Descriptor() ([]byte, []int) { method GetNewProfileContent (line 274) | func (x *ReloadServiceRequest) GetNewProfileContent() string { type SubscribeStatusRequest (line 281) | type SubscribeStatusRequest struct method Reset (line 288) | func (x *SubscribeStatusRequest) Reset() { method String (line 295) | func (x *SubscribeStatusRequest) String() string { method ProtoMessage (line 299) | func (*SubscribeStatusRequest) ProtoMessage() {} method ProtoReflect (line 301) | func (x *SubscribeStatusRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 314) | func (*SubscribeStatusRequest) Descriptor() ([]byte, []int) { method GetInterval (line 318) | func (x *SubscribeStatusRequest) GetInterval() int64 { type Log (line 325) | type Log struct method Reset (line 333) | func (x *Log) Reset() { method String (line 340) | func (x *Log) String() string { method ProtoMessage (line 344) | func (*Log) ProtoMessage() {} method ProtoReflect (line 346) | func (x *Log) ProtoReflect() protoreflect.Message { method Descriptor (line 359) | func (*Log) Descriptor() ([]byte, []int) { method GetMessages (line 363) | func (x *Log) GetMessages() []*Log_Message { method GetReset_ (line 370) | func (x *Log) GetReset_() bool { type DefaultLogLevel (line 377) | type DefaultLogLevel struct method Reset (line 384) | func (x *DefaultLogLevel) Reset() { method String (line 391) | func (x *DefaultLogLevel) String() string { method ProtoMessage (line 395) | func (*DefaultLogLevel) ProtoMessage() {} method ProtoReflect (line 397) | func (x *DefaultLogLevel) ProtoReflect() protoreflect.Message { method Descriptor (line 410) | func (*DefaultLogLevel) Descriptor() ([]byte, []int) { method GetLevel (line 414) | func (x *DefaultLogLevel) GetLevel() LogLevel { type Status (line 421) | type Status struct method Reset (line 436) | func (x *Status) Reset() { method String (line 443) | func (x *Status) String() string { method ProtoMessage (line 447) | func (*Status) ProtoMessage() {} method ProtoReflect (line 449) | func (x *Status) ProtoReflect() protoreflect.Message { method Descriptor (line 462) | func (*Status) Descriptor() ([]byte, []int) { method GetMemory (line 466) | func (x *Status) GetMemory() uint64 { method GetGoroutines (line 473) | func (x *Status) GetGoroutines() int32 { method GetConnectionsIn (line 480) | func (x *Status) GetConnectionsIn() int32 { method GetConnectionsOut (line 487) | func (x *Status) GetConnectionsOut() int32 { method GetTrafficAvailable (line 494) | func (x *Status) GetTrafficAvailable() bool { method GetUplink (line 501) | func (x *Status) GetUplink() int64 { method GetDownlink (line 508) | func (x *Status) GetDownlink() int64 { method GetUplinkTotal (line 515) | func (x *Status) GetUplinkTotal() int64 { method GetDownlinkTotal (line 522) | func (x *Status) GetDownlinkTotal() int64 { type Groups (line 529) | type Groups struct method Reset (line 536) | func (x *Groups) Reset() { method String (line 543) | func (x *Groups) String() string { method ProtoMessage (line 547) | func (*Groups) ProtoMessage() {} method ProtoReflect (line 549) | func (x *Groups) ProtoReflect() protoreflect.Message { method Descriptor (line 562) | func (*Groups) Descriptor() ([]byte, []int) { method GetGroup (line 566) | func (x *Groups) GetGroup() []*Group { type Group (line 573) | type Group struct method Reset (line 585) | func (x *Group) Reset() { method String (line 592) | func (x *Group) String() string { method ProtoMessage (line 596) | func (*Group) ProtoMessage() {} method ProtoReflect (line 598) | func (x *Group) ProtoReflect() protoreflect.Message { method Descriptor (line 611) | func (*Group) Descriptor() ([]byte, []int) { method GetTag (line 615) | func (x *Group) GetTag() string { method GetType (line 622) | func (x *Group) GetType() string { method GetSelectable (line 629) | func (x *Group) GetSelectable() bool { method GetSelected (line 636) | func (x *Group) GetSelected() string { method GetIsExpand (line 643) | func (x *Group) GetIsExpand() bool { method GetItems (line 650) | func (x *Group) GetItems() []*GroupItem { type GroupItem (line 657) | type GroupItem struct method Reset (line 667) | func (x *GroupItem) Reset() { method String (line 674) | func (x *GroupItem) String() string { method ProtoMessage (line 678) | func (*GroupItem) ProtoMessage() {} method ProtoReflect (line 680) | func (x *GroupItem) ProtoReflect() protoreflect.Message { method Descriptor (line 693) | func (*GroupItem) Descriptor() ([]byte, []int) { method GetTag (line 697) | func (x *GroupItem) GetTag() string { method GetType (line 704) | func (x *GroupItem) GetType() string { method GetUrlTestTime (line 711) | func (x *GroupItem) GetUrlTestTime() int64 { method GetUrlTestDelay (line 718) | func (x *GroupItem) GetUrlTestDelay() int32 { type URLTestRequest (line 725) | type URLTestRequest struct method Reset (line 732) | func (x *URLTestRequest) Reset() { method String (line 739) | func (x *URLTestRequest) String() string { method ProtoMessage (line 743) | func (*URLTestRequest) ProtoMessage() {} method ProtoReflect (line 745) | func (x *URLTestRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 758) | func (*URLTestRequest) Descriptor() ([]byte, []int) { method GetOutboundTag (line 762) | func (x *URLTestRequest) GetOutboundTag() string { type SelectOutboundRequest (line 769) | type SelectOutboundRequest struct method Reset (line 777) | func (x *SelectOutboundRequest) Reset() { method String (line 784) | func (x *SelectOutboundRequest) String() string { method ProtoMessage (line 788) | func (*SelectOutboundRequest) ProtoMessage() {} method ProtoReflect (line 790) | func (x *SelectOutboundRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 803) | func (*SelectOutboundRequest) Descriptor() ([]byte, []int) { method GetGroupTag (line 807) | func (x *SelectOutboundRequest) GetGroupTag() string { method GetOutboundTag (line 814) | func (x *SelectOutboundRequest) GetOutboundTag() string { type SetGroupExpandRequest (line 821) | type SetGroupExpandRequest struct method Reset (line 829) | func (x *SetGroupExpandRequest) Reset() { method String (line 836) | func (x *SetGroupExpandRequest) String() string { method ProtoMessage (line 840) | func (*SetGroupExpandRequest) ProtoMessage() {} method ProtoReflect (line 842) | func (x *SetGroupExpandRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 855) | func (*SetGroupExpandRequest) Descriptor() ([]byte, []int) { method GetGroupTag (line 859) | func (x *SetGroupExpandRequest) GetGroupTag() string { method GetIsExpand (line 866) | func (x *SetGroupExpandRequest) GetIsExpand() bool { type ClashMode (line 873) | type ClashMode struct method Reset (line 880) | func (x *ClashMode) Reset() { method String (line 887) | func (x *ClashMode) String() string { method ProtoMessage (line 891) | func (*ClashMode) ProtoMessage() {} method ProtoReflect (line 893) | func (x *ClashMode) ProtoReflect() protoreflect.Message { method Descriptor (line 906) | func (*ClashMode) Descriptor() ([]byte, []int) { method GetMode (line 910) | func (x *ClashMode) GetMode() string { type ClashModeStatus (line 917) | type ClashModeStatus struct method Reset (line 925) | func (x *ClashModeStatus) Reset() { method String (line 932) | func (x *ClashModeStatus) String() string { method ProtoMessage (line 936) | func (*ClashModeStatus) ProtoMessage() {} method ProtoReflect (line 938) | func (x *ClashModeStatus) ProtoReflect() protoreflect.Message { method Descriptor (line 951) | func (*ClashModeStatus) Descriptor() ([]byte, []int) { method GetModeList (line 955) | func (x *ClashModeStatus) GetModeList() []string { method GetCurrentMode (line 962) | func (x *ClashModeStatus) GetCurrentMode() string { type SystemProxyStatus (line 969) | type SystemProxyStatus struct method Reset (line 977) | func (x *SystemProxyStatus) Reset() { method String (line 984) | func (x *SystemProxyStatus) String() string { method ProtoMessage (line 988) | func (*SystemProxyStatus) ProtoMessage() {} method ProtoReflect (line 990) | func (x *SystemProxyStatus) ProtoReflect() protoreflect.Message { method Descriptor (line 1003) | func (*SystemProxyStatus) Descriptor() ([]byte, []int) { method GetAvailable (line 1007) | func (x *SystemProxyStatus) GetAvailable() bool { method GetEnabled (line 1014) | func (x *SystemProxyStatus) GetEnabled() bool { type SetSystemProxyEnabledRequest (line 1021) | type SetSystemProxyEnabledRequest struct method Reset (line 1028) | func (x *SetSystemProxyEnabledRequest) Reset() { method String (line 1035) | func (x *SetSystemProxyEnabledRequest) String() string { method ProtoMessage (line 1039) | func (*SetSystemProxyEnabledRequest) ProtoMessage() {} method ProtoReflect (line 1041) | func (x *SetSystemProxyEnabledRequest) ProtoReflect() protoreflect.Mes... method Descriptor (line 1054) | func (*SetSystemProxyEnabledRequest) Descriptor() ([]byte, []int) { method GetEnabled (line 1058) | func (x *SetSystemProxyEnabledRequest) GetEnabled() bool { type SubscribeConnectionsRequest (line 1065) | type SubscribeConnectionsRequest struct method Reset (line 1072) | func (x *SubscribeConnectionsRequest) Reset() { method String (line 1079) | func (x *SubscribeConnectionsRequest) String() string { method ProtoMessage (line 1083) | func (*SubscribeConnectionsRequest) ProtoMessage() {} method ProtoReflect (line 1085) | func (x *SubscribeConnectionsRequest) ProtoReflect() protoreflect.Mess... method Descriptor (line 1098) | func (*SubscribeConnectionsRequest) Descriptor() ([]byte, []int) { method GetInterval (line 1102) | func (x *SubscribeConnectionsRequest) GetInterval() int64 { type ConnectionEvent (line 1109) | type ConnectionEvent struct method Reset (line 1121) | func (x *ConnectionEvent) Reset() { method String (line 1128) | func (x *ConnectionEvent) String() string { method ProtoMessage (line 1132) | func (*ConnectionEvent) ProtoMessage() {} method ProtoReflect (line 1134) | func (x *ConnectionEvent) ProtoReflect() protoreflect.Message { method Descriptor (line 1147) | func (*ConnectionEvent) Descriptor() ([]byte, []int) { method GetType (line 1151) | func (x *ConnectionEvent) GetType() ConnectionEventType { method GetId (line 1158) | func (x *ConnectionEvent) GetId() string { method GetConnection (line 1165) | func (x *ConnectionEvent) GetConnection() *Connection { method GetUplinkDelta (line 1172) | func (x *ConnectionEvent) GetUplinkDelta() int64 { method GetDownlinkDelta (line 1179) | func (x *ConnectionEvent) GetDownlinkDelta() int64 { method GetClosedAt (line 1186) | func (x *ConnectionEvent) GetClosedAt() int64 { type ConnectionEvents (line 1193) | type ConnectionEvents struct method Reset (line 1201) | func (x *ConnectionEvents) Reset() { method String (line 1208) | func (x *ConnectionEvents) String() string { method ProtoMessage (line 1212) | func (*ConnectionEvents) ProtoMessage() {} method ProtoReflect (line 1214) | func (x *ConnectionEvents) ProtoReflect() protoreflect.Message { method Descriptor (line 1227) | func (*ConnectionEvents) Descriptor() ([]byte, []int) { method GetEvents (line 1231) | func (x *ConnectionEvents) GetEvents() []*ConnectionEvent { method GetReset_ (line 1238) | func (x *ConnectionEvents) GetReset_() bool { type Connection (line 1245) | type Connection struct method Reset (line 1273) | func (x *Connection) Reset() { method String (line 1280) | func (x *Connection) String() string { method ProtoMessage (line 1284) | func (*Connection) ProtoMessage() {} method ProtoReflect (line 1286) | func (x *Connection) ProtoReflect() protoreflect.Message { method Descriptor (line 1299) | func (*Connection) Descriptor() ([]byte, []int) { method GetId (line 1303) | func (x *Connection) GetId() string { method GetInbound (line 1310) | func (x *Connection) GetInbound() string { method GetInboundType (line 1317) | func (x *Connection) GetInboundType() string { method GetIpVersion (line 1324) | func (x *Connection) GetIpVersion() int32 { method GetNetwork (line 1331) | func (x *Connection) GetNetwork() string { method GetSource (line 1338) | func (x *Connection) GetSource() string { method GetDestination (line 1345) | func (x *Connection) GetDestination() string { method GetDomain (line 1352) | func (x *Connection) GetDomain() string { method GetProtocol (line 1359) | func (x *Connection) GetProtocol() string { method GetUser (line 1366) | func (x *Connection) GetUser() string { method GetFromOutbound (line 1373) | func (x *Connection) GetFromOutbound() string { method GetCreatedAt (line 1380) | func (x *Connection) GetCreatedAt() int64 { method GetClosedAt (line 1387) | func (x *Connection) GetClosedAt() int64 { method GetUplink (line 1394) | func (x *Connection) GetUplink() int64 { method GetDownlink (line 1401) | func (x *Connection) GetDownlink() int64 { method GetUplinkTotal (line 1408) | func (x *Connection) GetUplinkTotal() int64 { method GetDownlinkTotal (line 1415) | func (x *Connection) GetDownlinkTotal() int64 { method GetRule (line 1422) | func (x *Connection) GetRule() string { method GetOutbound (line 1429) | func (x *Connection) GetOutbound() string { method GetOutboundType (line 1436) | func (x *Connection) GetOutboundType() string { method GetChainList (line 1443) | func (x *Connection) GetChainList() []string { method GetProcessInfo (line 1450) | func (x *Connection) GetProcessInfo() *ProcessInfo { type ProcessInfo (line 1457) | type ProcessInfo struct method Reset (line 1468) | func (x *ProcessInfo) Reset() { method String (line 1475) | func (x *ProcessInfo) String() string { method ProtoMessage (line 1479) | func (*ProcessInfo) ProtoMessage() {} method ProtoReflect (line 1481) | func (x *ProcessInfo) ProtoReflect() protoreflect.Message { method Descriptor (line 1494) | func (*ProcessInfo) Descriptor() ([]byte, []int) { method GetProcessId (line 1498) | func (x *ProcessInfo) GetProcessId() uint32 { method GetUserId (line 1505) | func (x *ProcessInfo) GetUserId() int32 { method GetUserName (line 1512) | func (x *ProcessInfo) GetUserName() string { method GetProcessPath (line 1519) | func (x *ProcessInfo) GetProcessPath() string { method GetPackageName (line 1526) | func (x *ProcessInfo) GetPackageName() string { type CloseConnectionRequest (line 1533) | type CloseConnectionRequest struct method Reset (line 1540) | func (x *CloseConnectionRequest) Reset() { method String (line 1547) | func (x *CloseConnectionRequest) String() string { method ProtoMessage (line 1551) | func (*CloseConnectionRequest) ProtoMessage() {} method ProtoReflect (line 1553) | func (x *CloseConnectionRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 1566) | func (*CloseConnectionRequest) Descriptor() ([]byte, []int) { method GetId (line 1570) | func (x *CloseConnectionRequest) GetId() string { type DeprecatedWarnings (line 1577) | type DeprecatedWarnings struct method Reset (line 1584) | func (x *DeprecatedWarnings) Reset() { method String (line 1591) | func (x *DeprecatedWarnings) String() string { method ProtoMessage (line 1595) | func (*DeprecatedWarnings) ProtoMessage() {} method ProtoReflect (line 1597) | func (x *DeprecatedWarnings) ProtoReflect() protoreflect.Message { method Descriptor (line 1610) | func (*DeprecatedWarnings) Descriptor() ([]byte, []int) { method GetWarnings (line 1614) | func (x *DeprecatedWarnings) GetWarnings() []*DeprecatedWarning { type DeprecatedWarning (line 1621) | type DeprecatedWarning struct method Reset (line 1630) | func (x *DeprecatedWarning) Reset() { method String (line 1637) | func (x *DeprecatedWarning) String() string { method ProtoMessage (line 1641) | func (*DeprecatedWarning) ProtoMessage() {} method ProtoReflect (line 1643) | func (x *DeprecatedWarning) ProtoReflect() protoreflect.Message { method Descriptor (line 1656) | func (*DeprecatedWarning) Descriptor() ([]byte, []int) { method GetMessage (line 1660) | func (x *DeprecatedWarning) GetMessage() string { method GetImpending (line 1667) | func (x *DeprecatedWarning) GetImpending() bool { method GetMigrationLink (line 1674) | func (x *DeprecatedWarning) GetMigrationLink() string { type StartedAt (line 1681) | type StartedAt struct method Reset (line 1688) | func (x *StartedAt) Reset() { method String (line 1695) | func (x *StartedAt) String() string { method ProtoMessage (line 1699) | func (*StartedAt) ProtoMessage() {} method ProtoReflect (line 1701) | func (x *StartedAt) ProtoReflect() protoreflect.Message { method Descriptor (line 1714) | func (*StartedAt) Descriptor() ([]byte, []int) { method GetStartedAt (line 1718) | func (x *StartedAt) GetStartedAt() int64 { type Log_Message (line 1725) | type Log_Message struct method Reset (line 1733) | func (x *Log_Message) Reset() { method String (line 1740) | func (x *Log_Message) String() string { method ProtoMessage (line 1744) | func (*Log_Message) ProtoMessage() {} method ProtoReflect (line 1746) | func (x *Log_Message) ProtoReflect() protoreflect.Message { method Descriptor (line 1759) | func (*Log_Message) Descriptor() ([]byte, []int) { method GetLevel (line 1763) | func (x *Log_Message) GetLevel() LogLevel { method GetMessage (line 1770) | func (x *Log_Message) GetMessage() string { constant file_daemon_started_service_proto_rawDesc (line 1779) | file_daemon_started_service_proto_rawDesc = "" + function file_daemon_started_service_proto_rawDescGZIP (line 1944) | func file_daemon_started_service_proto_rawDescGZIP() []byte { function init (line 2049) | func init() { file_daemon_started_service_proto_init() } function file_daemon_started_service_proto_init (line 2050) | func file_daemon_started_service_proto_init() { FILE: daemon/started_service_grpc.pb.go constant _ (line 15) | _ = grpc.SupportPackageIsVersion9 constant StartedService_StopService_FullMethodName (line 18) | StartedService_StopService_FullMethodName = "/daemon.StartedS... constant StartedService_ReloadService_FullMethodName (line 19) | StartedService_ReloadService_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeServiceStatus_FullMethodName (line 20) | StartedService_SubscribeServiceStatus_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeLog_FullMethodName (line 21) | StartedService_SubscribeLog_FullMethodName = "/daemon.StartedS... constant StartedService_GetDefaultLogLevel_FullMethodName (line 22) | StartedService_GetDefaultLogLevel_FullMethodName = "/daemon.StartedS... constant StartedService_ClearLogs_FullMethodName (line 23) | StartedService_ClearLogs_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeStatus_FullMethodName (line 24) | StartedService_SubscribeStatus_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeGroups_FullMethodName (line 25) | StartedService_SubscribeGroups_FullMethodName = "/daemon.StartedS... constant StartedService_GetClashModeStatus_FullMethodName (line 26) | StartedService_GetClashModeStatus_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeClashMode_FullMethodName (line 27) | StartedService_SubscribeClashMode_FullMethodName = "/daemon.StartedS... constant StartedService_SetClashMode_FullMethodName (line 28) | StartedService_SetClashMode_FullMethodName = "/daemon.StartedS... constant StartedService_URLTest_FullMethodName (line 29) | StartedService_URLTest_FullMethodName = "/daemon.StartedS... constant StartedService_SelectOutbound_FullMethodName (line 30) | StartedService_SelectOutbound_FullMethodName = "/daemon.StartedS... constant StartedService_SetGroupExpand_FullMethodName (line 31) | StartedService_SetGroupExpand_FullMethodName = "/daemon.StartedS... constant StartedService_GetSystemProxyStatus_FullMethodName (line 32) | StartedService_GetSystemProxyStatus_FullMethodName = "/daemon.StartedS... constant StartedService_SetSystemProxyEnabled_FullMethodName (line 33) | StartedService_SetSystemProxyEnabled_FullMethodName = "/daemon.StartedS... constant StartedService_SubscribeConnections_FullMethodName (line 34) | StartedService_SubscribeConnections_FullMethodName = "/daemon.StartedS... constant StartedService_CloseConnection_FullMethodName (line 35) | StartedService_CloseConnection_FullMethodName = "/daemon.StartedS... constant StartedService_CloseAllConnections_FullMethodName (line 36) | StartedService_CloseAllConnections_FullMethodName = "/daemon.StartedS... constant StartedService_GetDeprecatedWarnings_FullMethodName (line 37) | StartedService_GetDeprecatedWarnings_FullMethodName = "/daemon.StartedS... constant StartedService_GetStartedAt_FullMethodName (line 38) | StartedService_GetStartedAt_FullMethodName = "/daemon.StartedS... type StartedServiceClient (line 44) | type StartedServiceClient interface type startedServiceClient (line 68) | type startedServiceClient struct method StopService (line 76) | func (c *startedServiceClient) StopService(ctx context.Context, in *em... method ReloadService (line 86) | func (c *startedServiceClient) ReloadService(ctx context.Context, in *... method SubscribeServiceStatus (line 96) | func (c *startedServiceClient) SubscribeServiceStatus(ctx context.Cont... method SubscribeLog (line 115) | func (c *startedServiceClient) SubscribeLog(ctx context.Context, in *e... method GetDefaultLogLevel (line 134) | func (c *startedServiceClient) GetDefaultLogLevel(ctx context.Context,... method ClearLogs (line 144) | func (c *startedServiceClient) ClearLogs(ctx context.Context, in *empt... method SubscribeStatus (line 154) | func (c *startedServiceClient) SubscribeStatus(ctx context.Context, in... method SubscribeGroups (line 173) | func (c *startedServiceClient) SubscribeGroups(ctx context.Context, in... method GetClashModeStatus (line 192) | func (c *startedServiceClient) GetClashModeStatus(ctx context.Context,... method SubscribeClashMode (line 202) | func (c *startedServiceClient) SubscribeClashMode(ctx context.Context,... method SetClashMode (line 221) | func (c *startedServiceClient) SetClashMode(ctx context.Context, in *C... method URLTest (line 231) | func (c *startedServiceClient) URLTest(ctx context.Context, in *URLTes... method SelectOutbound (line 241) | func (c *startedServiceClient) SelectOutbound(ctx context.Context, in ... method SetGroupExpand (line 251) | func (c *startedServiceClient) SetGroupExpand(ctx context.Context, in ... method GetSystemProxyStatus (line 261) | func (c *startedServiceClient) GetSystemProxyStatus(ctx context.Contex... method SetSystemProxyEnabled (line 271) | func (c *startedServiceClient) SetSystemProxyEnabled(ctx context.Conte... method SubscribeConnections (line 281) | func (c *startedServiceClient) SubscribeConnections(ctx context.Contex... method CloseConnection (line 300) | func (c *startedServiceClient) CloseConnection(ctx context.Context, in... method CloseAllConnections (line 310) | func (c *startedServiceClient) CloseAllConnections(ctx context.Context... method GetDeprecatedWarnings (line 320) | func (c *startedServiceClient) GetDeprecatedWarnings(ctx context.Conte... method GetStartedAt (line 330) | func (c *startedServiceClient) GetStartedAt(ctx context.Context, in *e... function NewStartedServiceClient (line 72) | func NewStartedServiceClient(cc grpc.ClientConnInterface) StartedService... type StartedServiceServer (line 343) | type StartedServiceServer interface type UnimplementedStartedServiceServer (line 373) | type UnimplementedStartedServiceServer struct method StopService (line 375) | func (UnimplementedStartedServiceServer) StopService(context.Context, ... method ReloadService (line 379) | func (UnimplementedStartedServiceServer) ReloadService(context.Context... method SubscribeServiceStatus (line 383) | func (UnimplementedStartedServiceServer) SubscribeServiceStatus(*empty... method SubscribeLog (line 387) | func (UnimplementedStartedServiceServer) SubscribeLog(*emptypb.Empty, ... method GetDefaultLogLevel (line 391) | func (UnimplementedStartedServiceServer) GetDefaultLogLevel(context.Co... method ClearLogs (line 395) | func (UnimplementedStartedServiceServer) ClearLogs(context.Context, *e... method SubscribeStatus (line 399) | func (UnimplementedStartedServiceServer) SubscribeStatus(*SubscribeSta... method SubscribeGroups (line 403) | func (UnimplementedStartedServiceServer) SubscribeGroups(*emptypb.Empt... method GetClashModeStatus (line 407) | func (UnimplementedStartedServiceServer) GetClashModeStatus(context.Co... method SubscribeClashMode (line 411) | func (UnimplementedStartedServiceServer) SubscribeClashMode(*emptypb.E... method SetClashMode (line 415) | func (UnimplementedStartedServiceServer) SetClashMode(context.Context,... method URLTest (line 419) | func (UnimplementedStartedServiceServer) URLTest(context.Context, *URL... method SelectOutbound (line 423) | func (UnimplementedStartedServiceServer) SelectOutbound(context.Contex... method SetGroupExpand (line 427) | func (UnimplementedStartedServiceServer) SetGroupExpand(context.Contex... method GetSystemProxyStatus (line 431) | func (UnimplementedStartedServiceServer) GetSystemProxyStatus(context.... method SetSystemProxyEnabled (line 435) | func (UnimplementedStartedServiceServer) SetSystemProxyEnabled(context... method SubscribeConnections (line 439) | func (UnimplementedStartedServiceServer) SubscribeConnections(*Subscri... method CloseConnection (line 443) | func (UnimplementedStartedServiceServer) CloseConnection(context.Conte... method CloseAllConnections (line 447) | func (UnimplementedStartedServiceServer) CloseAllConnections(context.C... method GetDeprecatedWarnings (line 451) | func (UnimplementedStartedServiceServer) GetDeprecatedWarnings(context... method GetStartedAt (line 455) | func (UnimplementedStartedServiceServer) GetStartedAt(context.Context,... method mustEmbedUnimplementedStartedServiceServer (line 458) | func (UnimplementedStartedServiceServer) mustEmbedUnimplementedStarted... method testEmbeddedByValue (line 459) | func (UnimplementedStartedServiceServer) testEmbeddedByValue() ... type UnsafeStartedServiceServer (line 464) | type UnsafeStartedServiceServer interface function RegisterStartedServiceServer (line 468) | func RegisterStartedServiceServer(s grpc.ServiceRegistrar, srv StartedSe... function _StartedService_StopService_Handler (line 479) | func _StartedService_StopService_Handler(srv interface{}, ctx context.Co... function _StartedService_ReloadService_Handler (line 497) | func _StartedService_ReloadService_Handler(srv interface{}, ctx context.... function _StartedService_SubscribeServiceStatus_Handler (line 515) | func _StartedService_SubscribeServiceStatus_Handler(srv interface{}, str... function _StartedService_SubscribeLog_Handler (line 526) | func _StartedService_SubscribeLog_Handler(srv interface{}, stream grpc.S... function _StartedService_GetDefaultLogLevel_Handler (line 537) | func _StartedService_GetDefaultLogLevel_Handler(srv interface{}, ctx con... function _StartedService_ClearLogs_Handler (line 555) | func _StartedService_ClearLogs_Handler(srv interface{}, ctx context.Cont... function _StartedService_SubscribeStatus_Handler (line 573) | func _StartedService_SubscribeStatus_Handler(srv interface{}, stream grp... function _StartedService_SubscribeGroups_Handler (line 584) | func _StartedService_SubscribeGroups_Handler(srv interface{}, stream grp... function _StartedService_GetClashModeStatus_Handler (line 595) | func _StartedService_GetClashModeStatus_Handler(srv interface{}, ctx con... function _StartedService_SubscribeClashMode_Handler (line 613) | func _StartedService_SubscribeClashMode_Handler(srv interface{}, stream ... function _StartedService_SetClashMode_Handler (line 624) | func _StartedService_SetClashMode_Handler(srv interface{}, ctx context.C... function _StartedService_URLTest_Handler (line 642) | func _StartedService_URLTest_Handler(srv interface{}, ctx context.Contex... function _StartedService_SelectOutbound_Handler (line 660) | func _StartedService_SelectOutbound_Handler(srv interface{}, ctx context... function _StartedService_SetGroupExpand_Handler (line 678) | func _StartedService_SetGroupExpand_Handler(srv interface{}, ctx context... function _StartedService_GetSystemProxyStatus_Handler (line 696) | func _StartedService_GetSystemProxyStatus_Handler(srv interface{}, ctx c... function _StartedService_SetSystemProxyEnabled_Handler (line 714) | func _StartedService_SetSystemProxyEnabled_Handler(srv interface{}, ctx ... function _StartedService_SubscribeConnections_Handler (line 732) | func _StartedService_SubscribeConnections_Handler(srv interface{}, strea... function _StartedService_CloseConnection_Handler (line 743) | func _StartedService_CloseConnection_Handler(srv interface{}, ctx contex... function _StartedService_CloseAllConnections_Handler (line 761) | func _StartedService_CloseAllConnections_Handler(srv interface{}, ctx co... function _StartedService_GetDeprecatedWarnings_Handler (line 779) | func _StartedService_GetDeprecatedWarnings_Handler(srv interface{}, ctx ... function _StartedService_GetStartedAt_Handler (line 797) | func _StartedService_GetStartedAt_Handler(srv interface{}, ctx context.C... FILE: debug.go function applyDebugOptions (line 10) | func applyDebugOptions(options option.DebugOptions) error { FILE: debug_http.go function applyDebugListenOption (line 22) | func applyDebugListenOption(options option.DebugOptions) { FILE: debug_stub.go function rusageMaxRSS (line 5) | func rusageMaxRSS() float64 { FILE: debug_unix.go function rusageMaxRSS (line 10) | func rusageMaxRSS() float64 { FILE: dns/client.go type Client (line 34) | type Client struct method Start (line 92) | func (c *Client) Start() { method Exchange (line 112) | func (c *Client) Exchange(ctx context.Context, transport adapter.DNSTr... method Lookup (line 318) | func (c *Client) Lookup(ctx context.Context, transport adapter.DNSTran... method ClearCache (line 362) | func (c *Client) ClearCache() { method storeCache (line 378) | func (c *Client) storeCache(transport adapter.DNSTransport, question d... method lookupToExchange (line 403) | func (c *Client) lookupToExchange(ctx context.Context, transport adapt... method questionCache (line 432) | func (c *Client) questionCache(question dns.Question, transport adapte... method loadResponse (line 443) | func (c *Client) loadResponse(question dns.Question, transport adapter... type ClientOptions (line 49) | type ClientOptions struct function NewClient (line 60) | func NewClient(options ClientOptions) *Client { type transportCacheKey (line 87) | type transportCacheKey struct function extractNegativeTTL (line 98) | func extractNegativeTTL(response *dns.Msg) (uint32, bool) { function sortAddresses (line 370) | func sortAddresses(response4 []netip.Addr, response6 []netip.Addr, strat... function MessageToAddresses (line 517) | func MessageToAddresses(response *dns.Msg) []netip.Addr { function wrapError (line 539) | func wrapError(err error) error { type transportKey (line 551) | type transportKey struct function contextWithTransportTag (line 553) | func contextWithTransportTag(ctx context.Context, transportTag string) c... function transportTagFromContext (line 557) | func transportTagFromContext(ctx context.Context) (string, bool) { function FixedResponseStatus (line 562) | func FixedResponseStatus(message *dns.Msg, rcode int) *dns.Msg { function FixedResponse (line 576) | func FixedResponse(id uint16, question dns.Question, addresses []netip.A... function FixedResponseCNAME (line 614) | func FixedResponseCNAME(id uint16, question dns.Question, record string,... function FixedResponseTXT (line 640) | func FixedResponseTXT(id uint16, question dns.Question, records []string... function FixedResponseMX (line 666) | func FixedResponseMX(id uint16, question dns.Question, records []*net.MX... FILE: dns/client_log.go function logCachedResponse (line 12) | func logCachedResponse(logger logger.ContextLogger, ctx context.Context,... function logExchangedResponse (line 25) | func logExchangedResponse(logger logger.ContextLogger, ctx context.Conte... function logRejectedResponse (line 38) | func logRejectedResponse(logger logger.ContextLogger, ctx context.Contex... function FqdnToDomain (line 49) | func FqdnToDomain(fqdn string) string { function FormatQuestion (line 56) | func FormatQuestion(string string) string { FILE: dns/client_truncate.go function TruncateDNSMessage (line 9) | func TruncateDNSMessage(request *dns.Msg, response *dns.Msg, headroom in... FILE: dns/extension_edns0_subnet.go function SetClientSubnet (line 9) | func SetClientSubnet(message *dns.Msg, clientSubnet netip.Prefix) *dns.M... function setClientSubnet (line 13) | func setClientSubnet(message *dns.Msg, clientSubnet netip.Prefix, clone ... FILE: dns/rcode.go constant RcodeSuccess (line 8) | RcodeSuccess RcodeError = mDNS.RcodeSuccess constant RcodeFormatError (line 9) | RcodeFormatError RcodeError = mDNS.RcodeFormatError constant RcodeNameError (line 10) | RcodeNameError RcodeError = mDNS.RcodeNameError constant RcodeRefused (line 11) | RcodeRefused RcodeError = mDNS.RcodeRefused type RcodeError (line 14) | type RcodeError method Error (line 16) | func (e RcodeError) Error() string { FILE: dns/router.go type Router (line 31) | type Router struct method Initialize (line 76) | func (r *Router) Initialize(rules []option.DNSRule) error { method Start (line 87) | func (r *Router) Start(stage adapter.StartStage) error { method Close (line 107) | func (r *Router) Close() error { method matchDNS (line 120) | func (r *Router) matchDNS(ctx context.Context, allowFakeIP bool, ruleI... method Exchange (line 210) | func (r *Router) Exchange(ctx context.Context, message *mDNS.Msg, opti... method Lookup (line 327) | func (r *Router) Lookup(ctx context.Context, domain string, options ad... method ClearCache (line 440) | func (r *Router) ClearCache() { method LookupReverseMapping (line 447) | func (r *Router) LookupReverseMapping(ip netip.Addr) (string, bool) { method ResetNetwork (line 455) | func (r *Router) ResetNetwork() { function NewRouter (line 43) | func NewRouter(ctx context.Context, logFactory log.Factory, options opti... function isAddressQuery (line 419) | func isAddressQuery(message *mDNS.Msg) bool { function addressLimitResponseCheck (line 428) | func addressLimitResponseCheck(rule adapter.DNSRule, metadata *adapter.I... FILE: dns/transport/base.go type TransportState (line 14) | type TransportState constant StateNew (line 17) | StateNew TransportState = iota constant StateStarted (line 18) | StateStarted constant StateClosing (line 19) | StateClosing constant StateClosed (line 20) | StateClosed type BaseTransport (line 28) | type BaseTransport struct method State (line 51) | func (t *BaseTransport) State() TransportState { method SetStarted (line 57) | func (t *BaseTransport) SetStarted() error { method BeginQuery (line 71) | func (t *BaseTransport) BeginQuery() bool { method EndQuery (line 81) | func (t *BaseTransport) EndQuery() { method CloseContext (line 93) | func (t *BaseTransport) CloseContext() context.Context { method Shutdown (line 97) | func (t *BaseTransport) Shutdown(ctx context.Context) error { method Close (line 141) | func (t *BaseTransport) Close() error { function NewBaseTransport (line 40) | func NewBaseTransport(adapter dns.TransportAdapter, logger logger.Contex... FILE: dns/transport/connector.go type ConnectorCallbacks (line 12) | type ConnectorCallbacks struct type Connector (line 18) | type Connector struct function NewConnector (line 32) | func NewConnector[T any](closeCtx context.Context, dial func(context.Con... function NewSingleflightConnector (line 40) | func NewSingleflightConnector(closeCtx context.Context, dial func(contex... type contextKeyConnecting (line 54) | type contextKeyConnecting struct type connectorDialResult (line 58) | type connectorDialResult struct method Get (line 64) | func (c *Connector[T]) Get(ctx context.Context) (T, error) { function isRecursiveConnectorDial (line 143) | func isRecursiveConnectorDial[T any](ctx context.Context, connector *Con... method completeDial (line 148) | func (c *Connector[T]) completeDial(ctx context.Context, connecting chan... method dialWithCancellation (line 180) | func (c *Connector[T]) dialWithCancellation(ctx context.Context) (T, con... type valueContext (line 221) | type valueContext struct method Value (line 226) | func (v valueContext) Value(key any) any { method Deadline (line 230) | func (v valueContext) Deadline() (time.Time, bool) { method Close (line 234) | func (c *Connector[T]) Close() error { method Reset (line 255) | func (c *Connector[T]) Reset() { type Connection (line 269) | type Connection struct method Done (line 284) | func (c *Connection) Done() <-chan struct{} { method IsClosed (line 288) | func (c *Connection) IsClosed() bool { method CloseError (line 297) | func (c *Connection) CloseError() error { method Close (line 309) | func (c *Connection) Close() error { method CloseWithError (line 313) | func (c *Connection) CloseWithError(err error) error { function WrapConnection (line 277) | func WrapConnection(conn net.Conn) *Connection { FILE: dns/transport/connector_test.go type testConnectorConnection (line 12) | type testConnectorConnection struct function TestConnectorRecursiveGetFailsFast (line 14) | func TestConnectorRecursiveGetFailsFast(t *testing.T) { function TestConnectorRecursiveGetAcrossConnectorsAllowed (line 50) | func TestConnectorRecursiveGetAcrossConnectorsAllowed(t *testing.T) { function TestConnectorDialContextPreservesValueAndDeadline (line 92) | func TestConnectorDialContextPreservesValueAndDeadline(t *testing.T) { function TestConnectorDialSkipsCanceledRequest (line 126) | func TestConnectorDialSkipsCanceledRequest(t *testing.T) { function TestConnectorCanceledRequestDoesNotCacheConnection (line 149) | func TestConnectorCanceledRequestDoesNotCacheConnection(t *testing.T) { function TestConnectorCanceledRequestReturnsBeforeIgnoredDialCompletes (line 200) | func TestConnectorCanceledRequestReturnsBeforeIgnoredDialCompletes(t *te... function TestConnectorWaiterDoesNotStartNewDialBeforeCanceledDialCompletes (line 259) | func TestConnectorWaiterDoesNotStartNewDialBeforeCanceledDialCompletes(t... function TestConnectorDialContextNotCanceledByRequestContextAfterDial (line 342) | func TestConnectorDialContextNotCanceledByRequestContextAfterDial(t *tes... function TestConnectorDialContextCanceledOnClose (line 374) | func TestConnectorDialContextCanceledOnClose(t *testing.T) { FILE: dns/transport/dhcp/dhcp.go function RegisterTransport (line 36) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 42) | type Transport struct method Start (line 88) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 104) | func (t *Transport) Close() error { method Reset (line 111) | func (t *Transport) Reset() { method Exchange (line 118) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... method Exchange0 (line 129) | func (t *Transport) Exchange0(ctx context.Context, message *mDNS.Msg, ... method Fetch (line 139) | func (t *Transport) Fetch() []M.Socksaddr { method fetch (line 144) | func (t *Transport) fetch() ([]M.Socksaddr, error) { method fetchInterface (line 168) | func (t *Transport) fetchInterface() (*control.Interface, error) { method updateServers (line 183) | func (t *Transport) updateServers() error { method interfaceUpdated (line 206) | func (t *Transport) interfaceUpdated(defaultInterface *control.Interfa... method fetchServers0 (line 213) | func (t *Transport) fetchServers0(ctx context.Context, iface *control.... method fetchServersResponse (line 261) | func (t *Transport) fetchServersResponse(iface *control.Interface, pac... method recreateServers (line 295) | func (t *Transport) recreateServers(iface *control.Interface, dhcpPack... function NewTransport (line 59) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... function NewRawTransport (line 76) | func NewRawTransport(transportAdapter dns.TransportAdapter, ctx context.... FILE: dns/transport/dhcp/dhcp_shared.go method exchangeSingleRequest (line 20) | func (t *Transport) exchangeSingleRequest(ctx context.Context, servers [... method exchangeParallel (line 33) | func (t *Transport) exchangeParallel(ctx context.Context, servers []M.So... method tryOneName (line 79) | func (t *Transport) tryOneName(ctx context.Context, servers []M.Socksadd... method exchangeOne (line 98) | func (t *Transport) exchangeOne(ctx context.Context, server M.Socksaddr,... method exchangeUDP (line 115) | func (t *Transport) exchangeUDP(ctx context.Context, server M.Socksaddr,... method exchangeTCP (line 155) | func (t *Transport) exchangeTCP(ctx context.Context, server M.Socksaddr,... method nameList (line 171) | func (t *Transport) nameList(name string) []string { function avoidDNS (line 205) | func avoidDNS(name string) bool { FILE: dns/transport/fakeip/fakeip.go function RegisterTransport (line 18) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 24) | type Transport struct method Start (line 39) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 46) | func (t *Transport) Close() error { method Reset (line 50) | func (t *Transport) Reset() { method Exchange (line 53) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... method Store (line 65) | func (t *Transport) Store() adapter.FakeIPStore { function NewTransport (line 30) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... FILE: dns/transport/fakeip/memory.go type MemoryStorage (line 13) | type MemoryStorage struct method FakeIPMetadata (line 29) | func (s *MemoryStorage) FakeIPMetadata() *adapter.FakeIPMetadata { method FakeIPSaveMetadata (line 33) | func (s *MemoryStorage) FakeIPSaveMetadata(metadata *adapter.FakeIPMet... method FakeIPSaveMetadataAsync (line 37) | func (s *MemoryStorage) FakeIPSaveMetadataAsync(metadata *adapter.Fake... method FakeIPStore (line 40) | func (s *MemoryStorage) FakeIPStore(address netip.Addr, domain string)... method FakeIPStoreAsync (line 61) | func (s *MemoryStorage) FakeIPStoreAsync(address netip.Addr, domain st... method FakeIPLoad (line 65) | func (s *MemoryStorage) FakeIPLoad(address netip.Addr) (string, bool) { method FakeIPLoadDomain (line 72) | func (s *MemoryStorage) FakeIPLoadDomain(domain string, isIPv6 bool) (... method FakeIPReset (line 84) | func (s *MemoryStorage) FakeIPReset() error { function NewMemoryStorage (line 21) | func NewMemoryStorage() *MemoryStorage { FILE: dns/transport/fakeip/store.go type Store (line 16) | type Store struct method Start (line 62) | func (s *Store) Start() error { method Contains (line 88) | func (s *Store) Contains(address netip.Addr) bool { method Close (line 92) | func (s *Store) Close() error { method Create (line 107) | func (s *Store) Create(domain string, isIPv6 bool) (netip.Addr, error) { method Lookup (line 155) | func (s *Store) Lookup(address netip.Addr) (string, bool) { method Reset (line 159) | func (s *Store) Reset() error { function NewStore (line 30) | func NewStore(ctx context.Context, logger logger.Logger, inet4Range neti... function broadcastAddress (line 46) | func broadcastAddress(prefix netip.Prefix) netip.Addr { FILE: dns/transport/hosts/hosts.go function RegisterTransport (line 18) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 24) | type Transport struct method Start (line 54) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 58) | func (t *Transport) Close() error { method Reset (line 62) | func (t *Transport) Reset() { method Exchange (line 65) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... function NewTransport (line 30) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... FILE: dns/transport/hosts/hosts_file.go constant cacheMaxAge (line 16) | cacheMaxAge = 5 * time.Second type File (line 18) | type File struct method Lookup (line 33) | func (f *File) Lookup(name string) []netip.Addr { method update (line 40) | func (f *File) update() { function NewFile (line 27) | func NewFile(path string) *File { FILE: dns/transport/hosts/hosts_test.go function TestHosts (line 12) | func TestHosts(t *testing.T) { FILE: dns/transport/hosts/hosts_windows.go function init (line 11) | func init() { FILE: dns/transport/https.go constant MimeType (line 34) | MimeType = "application/dns-message" function RegisterHTTPS (line 38) | func RegisterHTTPS(registry *dns.TransportRegistry) { type HTTPSTransport (line 42) | type HTTPSTransport struct method Start (line 133) | func (t *HTTPSTransport) Start(stage adapter.StartStage) error { method Close (line 140) | func (t *HTTPSTransport) Close() error { method Reset (line 148) | func (t *HTTPSTransport) Reset() { method Exchange (line 155) | func (t *HTTPSTransport) Exchange(ctx context.Context, message *mDNS.M... method exchange (line 174) | func (t *HTTPSTransport) exchange(ctx context.Context, message *mDNS.M... function NewHTTPS (line 53) | func NewHTTPS(ctx context.Context, logger log.ContextLogger, tag string,... function NewHTTPSRaw (line 114) | func NewHTTPSRaw( FILE: dns/transport/https_transport.go type HTTPSTransportWrapper (line 19) | type HTTPSTransportWrapper struct method RoundTrip (line 52) | func (h *HTTPSTransportWrapper) RoundTrip(request *http.Request) (*htt... method CloseIdleConnections (line 67) | func (h *HTTPSTransportWrapper) CloseIdleConnections() { method Clone (line 72) | func (h *HTTPSTransportWrapper) Clone() *HTTPSTransportWrapper { function NewHTTPSTransportWrapper (line 25) | func NewHTTPSTransportWrapper(dialer tls.Dialer, serverAddr M.Socksaddr)... FILE: dns/transport/local/local.go function RegisterTransport (line 21) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 27) | type Transport struct method Start (line 52) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 72) | func (t *Transport) Close() error { method Reset (line 79) | func (t *Transport) Reset() { method Exchange (line 82) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... function NewTransport (line 37) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... FILE: dns/transport/local/local_darwin.go function RegisterTransport (line 26) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 32) | type Transport struct method Start (line 66) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 89) | func (t *Transport) Close() error { method Reset (line 95) | func (t *Transport) Reset() { method Exchange (line 101) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... type dhcpTransport (line 44) | type dhcpTransport interface function NewTransport (line 50) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... FILE: dns/transport/local/local_darwin_dhcp.go function newDHCPTransport (line 14) | func newDHCPTransport(transportAdapter dns.TransportAdapter, ctx context... FILE: dns/transport/local/local_darwin_nodhcp.go function newDHCPTransport (line 13) | func newDHCPTransport(transportAdapter dns.TransportAdapter, ctx context... FILE: dns/transport/local/local_resolved.go type ResolvedResolver (line 9) | type ResolvedResolver interface FILE: dns/transport/local/local_resolved_linux.go function isSystemdResolvedManaged (line 34) | func isSystemdResolvedManaged() bool { type DBusResolvedResolver (line 53) | type DBusResolvedResolver struct method Start (line 95) | func (t *DBusResolvedResolver) Start() error { method Close (line 120) | func (t *DBusResolvedResolver) Close() error { method Exchange (line 137) | func (t *DBusResolvedResolver) Exchange(ctx context.Context, message *... method loopUpdateStatus (line 162) | func (t *DBusResolvedResolver) loopUpdateStatus() { method updateStatus (line 185) | func (t *DBusResolvedResolver) updateStatus() { method exchangeServerSet (line 205) | func (t *DBusResolvedResolver) exchangeServerSet(ctx context.Context, ... method checkResolved (line 224) | func (t *DBusResolvedResolver) checkResolved(ctx context.Context) (*re... method createResolvedServer (line 314) | func (t *DBusResolvedResolver) createResolvedServer(serverDialer N.Dia... method createResolvedTransport (line 348) | func (t *DBusResolvedResolver) createResolvedTransport(serverDialer N.... method updateDefaultInterface (line 499) | func (t *DBusResolvedResolver) updateDefaultInterface(defaultInterface... type resolvedServerSet (line 63) | type resolvedServerSet struct method Close (line 383) | func (s *resolvedServerSet) Close() error { type resolvedServer (line 67) | type resolvedServer struct type resolvedServerSpecification (line 72) | type resolvedServerSpecification struct function NewResolvedResolver (line 78) | func NewResolvedResolver(ctx context.Context, logger logger.ContextLogge... function buildResolvedServerSpecification (line 394) | func buildResolvedServerSpecification(interfaceName string, rawAddress [... function resolvedServerPort (line 409) | func resolvedServerPort(port uint16, useTLS bool) uint16 { function loadResolvedLinkDNS (line 419) | func loadResolvedLinkDNS(linkObject dbus.BusObject) ([]resolved.LinkDNS,... function loadResolvedLinkDNSEx (line 435) | func loadResolvedLinkDNSEx(linkObject dbus.BusObject) ([]resolved.LinkDN... function loadResolvedLinkDNSOverTLS (line 451) | func loadResolvedLinkDNSOverTLS(linkObject dbus.BusObject) (string, erro... function isResolvedUnknownPropertyError (line 467) | func isResolvedUnknownPropertyError(err error) bool { function shouldUpdateResolvedServerSet (line 472) | func shouldUpdateResolvedServerSet(signal *dbus.Signal) bool { FILE: dns/transport/local/local_resolved_stub.go function isSystemdResolvedManaged (line 12) | func isSystemdResolvedManaged() bool { function NewResolvedResolver (line 16) | func NewResolvedResolver(ctx context.Context, logger logger.ContextLogge... FILE: dns/transport/local/local_shared.go method exchange (line 20) | func (t *Transport) exchange(ctx context.Context, message *mDNS.Msg, dom... method exchangeSingleRequest (line 29) | func (t *Transport) exchangeSingleRequest(ctx context.Context, systemCon... method exchangeParallel (line 42) | func (t *Transport) exchangeParallel(ctx context.Context, systemConfig *... method tryOneName (line 88) | func (t *Transport) tryOneName(ctx context.Context, config *dnsConfig, f... method exchangeOne (line 108) | func (t *Transport) exchangeOne(ctx context.Context, server M.Socksaddr,... method exchangeUDP (line 129) | func (t *Transport) exchangeUDP(ctx context.Context, server M.Socksaddr,... method exchangeTCP (line 173) | func (t *Transport) exchangeTCP(ctx context.Context, server M.Socksaddr,... FILE: dns/transport/local/resolv.go type resolverConfig (line 13) | type resolverConfig struct method init (line 27) | func (conf *resolverConfig) init(ctx context.Context) { method tryUpdate (line 33) | func (conf *resolverConfig) tryUpdate(ctx context.Context, name string) { method tryAcquireSema (line 64) | func (conf *resolverConfig) tryAcquireSema() bool { method releaseSema (line 73) | func (conf *resolverConfig) releaseSema() { function getSystemDNSConfig (line 22) | func getSystemDNSConfig(ctx context.Context) *dnsConfig { type dnsConfig (line 77) | type dnsConfig struct method serverOffset (line 95) | func (c *dnsConfig) serverOffset() uint32 { method nameList (line 102) | func (c *dnsConfig) nameList(name string) []string { function avoidDNS (line 136) | func avoidDNS(name string) bool { FILE: dns/transport/local/resolv_default.go function dnsDefaultSearch (line 14) | func dnsDefaultSearch() []string { FILE: dns/transport/local/resolv_test.go function TestDNSReadConfig (line 10) | func TestDNSReadConfig(t *testing.T) { FILE: dns/transport/local/resolv_unix.go function dnsReadConfig (line 17) | func dnsReadConfig(_ context.Context, name string) *dnsConfig { constant big (line 142) | big = 0xFFFFFF function dtoi (line 144) | func dtoi(s string) (n int, i int, ok bool) { FILE: dns/transport/local/resolv_windows.go function dnsReadConfig (line 19) | func dnsReadConfig(ctx context.Context, _ string) *dnsConfig { function adapterAddresses (line 93) | func adapterAddresses() ([]*windows.IpAdapterAddresses, error) { FILE: dns/transport/quic/http3.go function RegisterHTTP3Transport (line 37) | func RegisterHTTP3Transport(registry *dns.TransportRegistry) { type HTTP3Transport (line 41) | type HTTP3Transport struct method newTransport (line 117) | func (t *HTTP3Transport) newTransport() *http3.Transport { method Start (line 135) | func (t *HTTP3Transport) Start(stage adapter.StartStage) error { method Close (line 142) | func (t *HTTP3Transport) Close() error { method Reset (line 148) | func (t *HTTP3Transport) Reset() { method Exchange (line 155) | func (t *HTTP3Transport) Exchange(ctx context.Context, message *mDNS.M... function NewHTTP3 (line 53) | func NewHTTP3(ctx context.Context, logger log.ContextLogger, tag string,... FILE: dns/transport/quic/quic.go function RegisterTransport (line 29) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 33) | type Transport struct method dial (line 92) | func (t *Transport) dial(ctx context.Context) (*quic.Conn, error) { method Start (line 111) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 122) | func (t *Transport) Close() error { method Reset (line 126) | func (t *Transport) Reset() { method Exchange (line 130) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... method exchange (line 159) | func (t *Transport) exchange(ctx context.Context, message *mDNS.Msg, c... function NewQUIC (line 44) | func NewQUIC(ctx context.Context, logger log.ContextLogger, tag string, ... function isQUICRetryError (line 179) | func isQUICRetryError(err error) (ok bool) { FILE: dns/transport/tcp.go function RegisterTCP (line 25) | func RegisterTCP(registry *dns.TransportRegistry) { type TCPTransport (line 29) | type TCPTransport struct method Start (line 54) | func (t *TCPTransport) Start(stage adapter.StartStage) error { method Close (line 61) | func (t *TCPTransport) Close() error { method Reset (line 65) | func (t *TCPTransport) Reset() { method Exchange (line 68) | func (t *TCPTransport) Exchange(ctx context.Context, message *mDNS.Msg... function NewTCP (line 35) | func NewTCP(ctx context.Context, logger log.ContextLogger, tag string, o... function ReadMessage (line 85) | func ReadMessage(reader io.Reader) (*mDNS.Msg, error) { function WriteMessage (line 105) | func WriteMessage(writer io.Writer, messageId uint16, message *mDNS.Msg)... FILE: dns/transport/tls.go function RegisterTLS (line 27) | func RegisterTLS(registry *dns.TransportRegistry) { type TLSTransport (line 31) | type TLSTransport struct method Start (line 76) | func (t *TLSTransport) Start(stage adapter.StartStage) error { method Close (line 87) | func (t *TLSTransport) Close() error { method Reset (line 97) | func (t *TLSTransport) Reset() { method Exchange (line 106) | func (t *TLSTransport) Exchange(ctx context.Context, message *mDNS.Msg... method exchange (line 129) | func (t *TLSTransport) exchange(ctx context.Context, message *mDNS.Msg... type tlsDNSConn (line 41) | type tlsDNSConn struct function NewTLS (line 46) | func NewTLS(ctx context.Context, logger log.ContextLogger, tag string, o... function NewTLSRaw (line 67) | func NewTLSRaw(logger logger.ContextLogger, adapter dns.TransportAdapter... FILE: dns/transport/udp.go function RegisterUDP (line 25) | func RegisterUDP(registry *dns.TransportRegistry) { type UDPTransport (line 29) | type UDPTransport struct method dial (line 76) | func (t *UDPTransport) dial(ctx context.Context) (*Connection, error) { method Start (line 86) | func (t *UDPTransport) Start(stage adapter.StartStage) error { method Close (line 97) | func (t *UDPTransport) Close() error { method Reset (line 101) | func (t *UDPTransport) Reset() { method nextAvailableQueryId (line 105) | func (t *UDPTransport) nextAvailableQueryId() (uint16, error) { method Exchange (line 118) | func (t *UDPTransport) Exchange(ctx context.Context, message *mDNS.Msg... method exchangeTCP (line 135) | func (t *UDPTransport) exchangeTCP(ctx context.Context, message *mDNS.... method exchange (line 152) | func (t *UDPTransport) exchange(ctx context.Context, message *mDNS.Msg... method recvLoop (line 223) | func (t *UDPTransport) recvLoop(conn *Connection) { type udpCallback (line 43) | type udpCallback struct function NewUDP (line 49) | func NewUDP(ctx context.Context, logger log.ContextLogger, tag string, o... function NewUDPRaw (line 64) | func NewUDPRaw(logger logger.ContextLogger, adapter dns.TransportAdapter... FILE: dns/transport_adapter.go type TransportAdapter (line 13) | type TransportAdapter struct method Type (line 60) | func (a *TransportAdapter) Type() string { method Tag (line 64) | func (a *TransportAdapter) Tag() string { method Dependencies (line 68) | func (a *TransportAdapter) Dependencies() []string { method LegacyStrategy (line 72) | func (a *TransportAdapter) LegacyStrategy() C.DomainStrategy { method LegacyClientSubnet (line 76) | func (a *TransportAdapter) LegacyClientSubnet() netip.Prefix { function NewTransportAdapter (line 21) | func NewTransportAdapter(transportType string, transportTag string, depe... function NewTransportAdapterWithLocalOptions (line 29) | func NewTransportAdapterWithLocalOptions(transportType string, transport... function NewTransportAdapterWithRemoteOptions (line 43) | func NewTransportAdapterWithRemoteOptions(transportType string, transpor... FILE: dns/transport_dialer.go function NewLocalDialer (line 18) | func NewLocalDialer(ctx context.Context, options option.LocalDNSServerOp... function NewRemoteDialer (line 31) | func NewRemoteDialer(ctx context.Context, options option.RemoteDNSServer... type legacyTransportDialer (line 56) | type legacyTransportDialer struct method DialContext (line 74) | func (d *legacyTransportDialer) DialContext(ctx context.Context, netwo... method ListenPacket (line 88) | func (d *legacyTransportDialer) ListenPacket(ctx context.Context, dest... method Upstream (line 103) | func (d *legacyTransportDialer) Upstream() any { function newTransportDialer (line 64) | func newTransportDialer(dialer N.Dialer, dnsRouter adapter.DNSRouter, tr... FILE: dns/transport_manager.go type TransportManager (line 21) | type TransportManager struct method Initialize (line 48) | func (m *TransportManager) Initialize(defaultTransportFallback func() ... method Start (line 52) | func (m *TransportManager) Start(stage adapter.StartStage) error { method startTransports (line 90) | func (m *TransportManager) startTransports(transports []adapter.DNSTra... method Close (line 148) | func (m *TransportManager) Close() error { method Transports (line 172) | func (m *TransportManager) Transports() []adapter.DNSTransport { method Transport (line 178) | func (m *TransportManager) Transport(tag string) (adapter.DNSTransport... method Default (line 185) | func (m *TransportManager) Default() adapter.DNSTransport { method FakeIP (line 191) | func (m *TransportManager) FakeIP() adapter.FakeIPTransport { method Remove (line 197) | func (m *TransportManager) Remove(tag string) error { method Create (line 245) | func (m *TransportManager) Create(ctx context.Context, logger log.Cont... function NewTransportManager (line 37) | func NewTransportManager(logger logger.ContextLogger, registry adapter.D... FILE: dns/transport_registry.go type TransportConstructorFunc (line 13) | type TransportConstructorFunc function RegisterTransport (line 15) | func RegisterTransport[Options any](registry *TransportRegistry, transpo... type optionsConstructorFunc (line 30) | type optionsConstructorFunc type constructorFunc (line 31) | type constructorFunc type TransportRegistry (line 34) | type TransportRegistry struct method CreateOptions (line 47) | func (r *TransportRegistry) CreateOptions(transportType string) (any, ... method CreateDNSTransport (line 57) | func (r *TransportRegistry) CreateDNSTransport(ctx context.Context, lo... method register (line 67) | func (r *TransportRegistry) register(transportType string, optionsCons... function NewTransportRegistry (line 40) | func NewTransportRegistry() *TransportRegistry { FILE: experimental/cachefile/cache.go type CacheFile (line 40) | type CacheFile struct method Name (line 97) | func (c *CacheFile) Name() string { method Dependencies (line 101) | func (c *CacheFile) Dependencies() []string { method Start (line 105) | func (c *CacheFile) Start(stage adapter.StartStage) error { method Close (line 166) | func (c *CacheFile) Close() error { method view (line 173) | func (c *CacheFile) view(fn func(tx *bbolt.Tx) error) (err error) { method batch (line 183) | func (c *CacheFile) batch(fn func(tx *bbolt.Tx) error) (err error) { method update (line 193) | func (c *CacheFile) update(fn func(tx *bbolt.Tx) error) (err error) { method resetDB (line 203) | func (c *CacheFile) resetDB() { method StoreFakeIP (line 215) | func (c *CacheFile) StoreFakeIP() bool { method LoadMode (line 219) | func (c *CacheFile) LoadMode() string { method StoreMode (line 238) | func (c *CacheFile) StoreMode(mode string) error { method bucket (line 252) | func (c *CacheFile) bucket(t *bbolt.Tx, key []byte) *bbolt.Bucket { method createBucket (line 263) | func (c *CacheFile) createBucket(t *bbolt.Tx, key []byte) (*bbolt.Buck... method LoadSelected (line 274) | func (c *CacheFile) LoadSelected(group string) string { method StoreSelected (line 290) | func (c *CacheFile) StoreSelected(group, selected string) error { method LoadGroupExpand (line 300) | func (c *CacheFile) LoadGroupExpand(group string) (isExpand bool, load... method StoreGroupExpand (line 316) | func (c *CacheFile) StoreGroupExpand(group string, isExpand bool) error { method LoadRuleSet (line 330) | func (c *CacheFile) LoadRuleSet(tag string) *adapter.SavedBinary { method SaveRuleSet (line 349) | func (c *CacheFile) SaveRuleSet(tag string, set *adapter.SavedBinary) ... type saveRDRCCacheKey (line 58) | type saveRDRCCacheKey struct function New (line 64) | func New(ctx context.Context, options option.CacheFileOptions) *CacheFile { FILE: experimental/cachefile/fakeip.go constant fakeipBucketPrefix (line 15) | fakeipBucketPrefix = "fakeip_" method FakeIPMetadata (line 24) | func (c *CacheFile) FakeIPMetadata() *adapter.FakeIPMetadata { method FakeIPSaveMetadata (line 47) | func (c *CacheFile) FakeIPSaveMetadata(metadata *adapter.FakeIPMetadata)... method FakeIPSaveMetadataAsync (line 61) | func (c *CacheFile) FakeIPSaveMetadataAsync(metadata *adapter.FakeIPMeta... method FakeIPStore (line 71) | func (c *CacheFile) FakeIPStore(address netip.Addr, domain string) error { method FakeIPStoreAsync (line 99) | func (c *CacheFile) FakeIPStoreAsync(address netip.Addr, domain string, ... method FakeIPLoad (line 131) | func (c *CacheFile) FakeIPLoad(address netip.Addr) (string, bool) { method FakeIPLoadDomain (line 150) | func (c *CacheFile) FakeIPLoadDomain(domain string, isIPv6 bool) (netip.... method FakeIPReset (line 182) | func (c *CacheFile) FakeIPReset() error { FILE: experimental/cachefile/rdrc.go method StoreRDRC (line 14) | func (c *CacheFile) StoreRDRC() bool { method RDRCTimeout (line 18) | func (c *CacheFile) RDRCTimeout() time.Duration { method LoadRDRC (line 22) | func (c *CacheFile) LoadRDRC(transportName string, qName string, qType u... method SaveRDRC (line 74) | func (c *CacheFile) SaveRDRC(transportName string, qName string, qType u... method SaveRDRCAsync (line 95) | func (c *CacheFile) SaveRDRCAsync(transportName string, qName string, qT... FILE: experimental/clashapi.go function RegisterClashServerConstructor (line 19) | func RegisterClashServerConstructor(constructor ClashServerConstructor) { function NewClashServer (line 23) | func NewClashServer(ctx context.Context, logFactory log.ObservableFactor... function CalculateClashModeList (line 30) | func CalculateClashModeList(options option.Options) []string { function extraClashModeFromRule (line 53) | func extraClashModeFromRule(rules []option.Rule) []string { function extraClashModeFromDNSRule (line 68) | func extraClashModeFromDNSRule(rules []option.DNSRule) []string { FILE: experimental/clashapi/api_meta.go method setupMetaAPI (line 23) | func (s *Server) setupMetaAPI(r chi.Router) { type Memory (line 36) | type Memory struct function memory (line 41) | func memory(ctx context.Context, trafficManager *trafficontrol.Manager) ... FILE: experimental/clashapi/api_meta_group.go function groupRouter (line 22) | func groupRouter(server *Server) http.Handler { function getGroups (line 33) | func getGroups(server *Server) func(w http.ResponseWriter, r *http.Reque... function getGroup (line 47) | func getGroup(server *Server) func(w http.ResponseWriter, r *http.Reques... function getGroupDelay (line 59) | func getGroupDelay(server *Server) func(w http.ResponseWriter, r *http.R... FILE: experimental/clashapi/api_meta_upgrade.go function upgradeRouter (line 12) | func upgradeRouter(server *Server) http.Handler { function updateExternalUI (line 18) | func updateExternalUI(server *Server) func(w http.ResponseWriter, r *htt... FILE: experimental/clashapi/cache.go function cacheRouter (line 14) | func cacheRouter(ctx context.Context) http.Handler { function flushFakeip (line 21) | func flushFakeip(ctx context.Context) func(w http.ResponseWriter, r *htt... function flushDNS (line 36) | func flushDNS(ctx context.Context) func(w http.ResponseWriter, r *http.R... FILE: experimental/clashapi/common.go function getEscapeParam (line 11) | func getEscapeParam(r *http.Request, paramName string) string { FILE: experimental/clashapi/configs.go function configRouter (line 12) | func configRouter(server *Server, logFactory log.Factory) http.Handler { type configSchema (line 20) | type configSchema struct function getConfigs (line 36) | func getConfigs(server *Server, logFactory log.Factory) func(w http.Resp... function patchConfigs (line 53) | func patchConfigs(server *Server) func(w http.ResponseWriter, r *http.Re... function updateConfigs (line 69) | func updateConfigs(w http.ResponseWriter, r *http.Request) { FILE: experimental/clashapi/connections.go function connectionRouter (line 21) | func connectionRouter(ctx context.Context, router adapter.Router, traffi... function getConnections (line 29) | func getConnections(ctx context.Context, trafficManager *trafficontrol.M... function closeConnection (line 85) | func closeConnection(trafficManager *trafficontrol.Manager) func(w http.... function closeAllConnections (line 99) | func closeAllConnections(router adapter.Router, trafficManager *traffico... FILE: experimental/clashapi/ctxkeys.go type contextKey (line 10) | type contextKey method String (line 12) | func (c contextKey) String() string { FILE: experimental/clashapi/dns.go function dnsRouter (line 16) | func dnsRouter(router adapter.DNSRouter) http.Handler { function queryDNS (line 22) | func queryDNS(router adapter.DNSRouter) func(w http.ResponseWriter, r *h... FILE: experimental/clashapi/errors.go type HTTPError (line 12) | type HTTPError struct method Error (line 16) | func (e *HTTPError) Error() string { function newError (line 20) | func newError(msg string) *HTTPError { FILE: experimental/clashapi/profile.go function profileRouter (line 10) | func profileRouter() http.Handler { function subscribeTracing (line 16) | func subscribeTracing(w http.ResponseWriter, r *http.Request) { FILE: experimental/clashapi/provider.go function proxyProviderRouter (line 11) | func proxyProviderRouter() http.Handler { function getProviders (line 24) | func getProviders(w http.ResponseWriter, r *http.Request) { function getProvider (line 30) | func getProvider(w http.ResponseWriter, r *http.Request) { function updateProvider (line 36) | func updateProvider(w http.ResponseWriter, r *http.Request) { function healthCheckProvider (line 46) | func healthCheckProvider(w http.ResponseWriter, r *http.Request) { function parseProviderName (line 52) | func parseProviderName(next http.Handler) http.Handler { function findProviderByName (line 60) | func findProviderByName(next http.Handler) http.Handler { FILE: experimental/clashapi/proxies.go function proxyRouter (line 24) | func proxyRouter(server *Server, router adapter.Router) http.Handler { function parseProxyName (line 37) | func parseProxyName(next http.Handler) http.Handler { function findProxyByName (line 45) | func findProxyByName(server *Server) func(next http.Handler) http.Handler { function proxyInfo (line 61) | func proxyInfo(server *Server, detour adapter.Outbound) *badjson.JSONObj... function getProxies (line 86) | func getProxies(server *Server) func(w http.ResponseWriter, r *http.Requ... function getProxy (line 145) | func getProxy(server *Server) func(w http.ResponseWriter, r *http.Reques... type UpdateProxyRequest (line 158) | type UpdateProxyRequest struct function updateProxy (line 162) | func updateProxy(w http.ResponseWriter, r *http.Request) { function getProxyDelay (line 187) | func getProxyDelay(server *Server) func(w http.ResponseWriter, r *http.R... FILE: experimental/clashapi/ruleprovider.go function ruleProviderRouter (line 10) | func ruleProviderRouter() http.Handler { function getRuleProviders (line 22) | func getRuleProviders(w http.ResponseWriter, r *http.Request) { function getRuleProvider (line 28) | func getRuleProvider(w http.ResponseWriter, r *http.Request) { function updateRuleProvider (line 34) | func updateRuleProvider(w http.ResponseWriter, r *http.Request) { function findRuleProviderByName (line 44) | func findRuleProviderByName(next http.Handler) http.Handler { FILE: experimental/clashapi/rules.go function ruleRouter (line 12) | func ruleRouter(router adapter.Router) http.Handler { type Rule (line 18) | type Rule struct function getRules (line 24) | func getRules(router adapter.Router) func(w http.ResponseWriter, r *http... FILE: experimental/clashapi/script.go function scriptRouter (line 10) | func scriptRouter() http.Handler { function testScript (line 22) | func testScript(w http.ResponseWriter, r *http.Request) { type PatchScriptRequest (line 77) | type PatchScriptRequest struct function patchScript (line 81) | func patchScript(w http.ResponseWriter, r *http.Request) { FILE: experimental/clashapi/server.go function init (line 37) | func init() { type Server (line 43) | type Server struct method Name (line 144) | func (s *Server) Name() string { method Start (line 148) | func (s *Server) Start(stage adapter.StartStage) error { method Close (line 191) | func (s *Server) Close() error { method Mode (line 199) | func (s *Server) Mode() string { method ModeList (line 203) | func (s *Server) ModeList() []string { method SetModeUpdateHook (line 207) | func (s *Server) SetModeUpdateHook(hook *observable.Subscriber[struct{... method SetMode (line 211) | func (s *Server) SetMode(newMode string) { method HistoryStorage (line 238) | func (s *Server) HistoryStorage() adapter.URLTestHistoryStorage { method TrafficManager (line 242) | func (s *Server) TrafficManager() *trafficontrol.Manager { method RoutedConnection (line 246) | func (s *Server) RoutedConnection(ctx context.Context, conn net.Conn, ... method RoutedPacketConnection (line 250) | func (s *Server) RoutedPacketConnection(ctx context.Context, conn N.Pa... function NewServer (line 65) | func NewServer(ctx context.Context, logFactory log.ObservableFactory, op... function authentication (line 254) | func authentication(serverSecret string) func(next http.Handler) http.Ha... function hello (line 290) | func hello(redirect bool) func(w http.ResponseWriter, r *http.Request) { type Traffic (line 301) | type Traffic struct function traffic (line 306) | func traffic(ctx context.Context, trafficManager *trafficontrol.Manager)... type Log (line 358) | type Log struct function getLogs (line 363) | func getLogs(ctx context.Context, logFactory log.ObservableFactory) func... function version (line 433) | func version(w http.ResponseWriter, r *http.Request) { FILE: experimental/clashapi/server_fs.go type Dir (line 5) | type Dir method Open (line 7) | func (d Dir) Open(name string) (http.File, error) { type fileWrapper (line 16) | type fileWrapper struct FILE: experimental/clashapi/server_resources.go method checkAndDownloadExternalUI (line 23) | func (s *Server) checkAndDownloadExternalUI() { method downloadExternalUI (line 39) | func (s *Server) downloadExternalUI() error { method downloadZIP (line 87) | func (s *Server) downloadZIP(body io.Reader, output string) error { function downloadZIPEntry (line 129) | func downloadZIPEntry(ctx context.Context, zipFile *zip.File, savePath s... function removeAllInDirectory (line 143) | func removeAllInDirectory(directory string) { function zipIsInSingleDirectory (line 153) | func zipIsInSingleDirectory(files []*zip.File) bool { FILE: experimental/clashapi/trafficontrol/manager.go type ConnectionEventType (line 19) | type ConnectionEventType constant ConnectionEventNew (line 22) | ConnectionEventNew ConnectionEventType = iota constant ConnectionEventUpdate (line 23) | ConnectionEventUpdate constant ConnectionEventClosed (line 24) | ConnectionEventClosed type ConnectionEvent (line 27) | type ConnectionEvent struct constant closedConnectionsLimit (line 36) | closedConnectionsLimit = 1000 type Manager (line 38) | type Manager struct method SetEventHook (line 54) | func (m *Manager) SetEventHook(subscriber *observable.Subscriber[Conne... method Join (line 58) | func (m *Manager) Join(c Tracker) { method Leave (line 70) | func (m *Manager) Leave(c Tracker) { method PushUploaded (line 94) | func (m *Manager) PushUploaded(size int64) { method PushDownloaded (line 98) | func (m *Manager) PushDownloaded(size int64) { method Total (line 102) | func (m *Manager) Total() (up int64, down int64) { method ConnectionsLen (line 106) | func (m *Manager) ConnectionsLen() int { method Connections (line 110) | func (m *Manager) Connections() []*TrackerMetadata { method ClosedConnections (line 119) | func (m *Manager) ClosedConnections() []*TrackerMetadata { method Connection (line 133) | func (m *Manager) Connection(id uuid.UUID) Tracker { method Snapshot (line 141) | func (m *Manager) Snapshot() *Snapshot { method ResetStatistic (line 162) | func (m *Manager) ResetStatistic() { function NewManager (line 50) | func NewManager() *Manager { type Snapshot (line 167) | type Snapshot struct method MarshalJSON (line 174) | func (s *Snapshot) MarshalJSON() ([]byte, error) { FILE: experimental/clashapi/trafficontrol/tracker.go type TrackerMetadata (line 18) | type TrackerMetadata struct method MarshalJSON (line 31) | func (t TrackerMetadata) MarshalJSON() ([]byte, error) { type Tracker (line 89) | type Tracker interface type TCPConn (line 94) | type TCPConn struct method Metadata (line 100) | func (tt *TCPConn) Metadata() *TrackerMetadata { method Close (line 104) | func (tt *TCPConn) Close() error { method Upstream (line 109) | func (tt *TCPConn) Upstream() any { method ReaderReplaceable (line 113) | func (tt *TCPConn) ReaderReplaceable() bool { method WriterReplaceable (line 117) | func (tt *TCPConn) WriterReplaceable() bool { function NewTCPTracker (line 121) | func NewTCPTracker(conn net.Conn, manager *Manager, metadata adapter.Inb... type UDPConn (line 175) | type UDPConn struct method Metadata (line 181) | func (ut *UDPConn) Metadata() *TrackerMetadata { method Close (line 185) | func (ut *UDPConn) Close() error { method Upstream (line 190) | func (ut *UDPConn) Upstream() any { method ReaderReplaceable (line 194) | func (ut *UDPConn) ReaderReplaceable() bool { method WriterReplaceable (line 198) | func (ut *UDPConn) WriterReplaceable() bool { function NewUDPTracker (line 202) | func NewUDPTracker(conn N.PacketConn, manager *Manager, metadata adapter... FILE: experimental/deprecated/constants.go type Note (line 14) | type Note struct method Impending (line 23) | func (n Note) Impending() bool { method Message (line 38) | func (n Note) Message() string { method MessageWithLink (line 46) | func (n Note) MessageWithLink() string { FILE: experimental/deprecated/manager.go type Manager (line 9) | type Manager interface function Report (line 13) | func Report(ctx context.Context, feature Note) { FILE: experimental/deprecated/stderr.go type stderrManager (line 10) | type stderrManager struct method ReportDeprecated (line 22) | func (f *stderrManager) ReportDeprecated(feature Note) { function NewStderrManager (line 15) | func NewStderrManager(logger logger.Logger) Manager { FILE: experimental/libbox/build_info.go constant androidVPNCoreTypeOpenVPN (line 17) | androidVPNCoreTypeOpenVPN = "OpenVPN" constant androidVPNCoreTypeShadowsocks (line 18) | androidVPNCoreTypeShadowsocks = "Shadowsocks" constant androidVPNCoreTypeClash (line 19) | androidVPNCoreTypeClash = "Clash" constant androidVPNCoreTypeV2Ray (line 20) | androidVPNCoreTypeV2Ray = "V2Ray" constant androidVPNCoreTypeWireGuard (line 21) | androidVPNCoreTypeWireGuard = "WireGuard" constant androidVPNCoreTypeSingBox (line 22) | androidVPNCoreTypeSingBox = "sing-box" constant androidVPNCoreTypeUnknown (line 23) | androidVPNCoreTypeUnknown = "Unknown" type AndroidVPNType (line 26) | type AndroidVPNType struct function ReadAndroidVPNType (line 32) | func ReadAndroidVPNType(publicSourceDirList StringIterator) (*AndroidVPN... function readAndroidVPNType (line 48) | func readAndroidVPNType(publicSourceDir string) (*AndroidVPNType, error) { function readAndroidVPNTypeEntry (line 80) | func readAndroidVPNTypeEntry(zipFile *zip.File) (*AndroidVPNType, error) { function determinePkgType (line 142) | func determinePkgType(pkgName string) (string, bool) { function determinePkgTypeSecondary (line 157) | func determinePkgTypeSecondary(pkgName string) (string, bool) { function determineCorePath (line 165) | func determineCorePath(pkgInfo *buildinfo.BuildInfo, pkgType string) (st... function determineCorePathForPkgs (line 196) | func determineCorePathForPkgs(pkgInfo *buildinfo.BuildInfo, pkgs []strin... function isValidVersion (line 226) | func isValidVersion(version string) bool { FILE: experimental/libbox/command.go constant CommandLog (line 4) | CommandLog int32 = iota constant CommandStatus (line 5) | CommandStatus constant CommandGroup (line 6) | CommandGroup constant CommandClashMode (line 7) | CommandClashMode constant CommandConnections (line 8) | CommandConnections FILE: experimental/libbox/command_client.go type CommandClient (line 22) | type CommandClient struct method dialWithRetry (line 145) | func (c *CommandClient) dialWithRetry(target string, contextDialer fun... method Connect (line 188) | func (c *CommandClient) Connect() error { method ConnectWithFD (line 207) | func (c *CommandClient) ConnectWithFD(fd int32) error { method dispatchCommands (line 233) | func (c *CommandClient) dispatchCommands() error { method Disconnect (line 253) | func (c *CommandClient) Disconnect() error { method getClientForCall (line 262) | func (c *CommandClient) getClientForCall() (daemon.StartedServiceClien... method closeConnection (line 290) | func (c *CommandClient) closeConnection() { method getStreamContext (line 312) | func (c *CommandClient) getStreamContext() (daemon.StartedServiceClien... method handleLogStream (line 318) | func (c *CommandClient) handleLogStream() { method handleStatusStream (line 351) | func (c *CommandClient) handleStatusStream() { method handleGroupStream (line 373) | func (c *CommandClient) handleGroupStream() { method handleClashModeStream (line 392) | func (c *CommandClient) handleClashModeStream() { method handleConnectionsStream (line 436) | func (c *CommandClient) handleConnectionsStream() { method SelectOutbound (line 459) | func (c *CommandClient) SelectOutbound(groupTag string, outboundTag st... method URLTest (line 469) | func (c *CommandClient) URLTest(groupTag string) error { method SetClashMode (line 478) | func (c *CommandClient) SetClashMode(newMode string) error { method CloseConnection (line 487) | func (c *CommandClient) CloseConnection(connId string) error { method CloseConnections (line 496) | func (c *CommandClient) CloseConnections() error { method ServiceReload (line 503) | func (c *CommandClient) ServiceReload() error { method ServiceClose (line 510) | func (c *CommandClient) ServiceClose() error { method ClearLogs (line 517) | func (c *CommandClient) ClearLogs() error { method GetSystemProxyStatus (line 524) | func (c *CommandClient) GetSystemProxyStatus() (*SystemProxyStatus, er... method SetSystemProxyEnabled (line 534) | func (c *CommandClient) SetSystemProxyEnabled(isEnabled bool) error { method GetDeprecatedNotes (line 543) | func (c *CommandClient) GetDeprecatedNotes() (DeprecatedNoteIterator, ... method GetStartedAt (line 560) | func (c *CommandClient) GetStartedAt() (int64, error) { method SetGroupExpand (line 570) | func (c *CommandClient) SetGroupExpand(groupTag string, isExpand bool)... type CommandClientOptions (line 33) | type CommandClientOptions struct method AddCommand (line 38) | func (o *CommandClientOptions) AddCommand(command int32) { type CommandClientHandler (line 42) | type CommandClientHandler interface type LogEntry (line 55) | type LogEntry struct type LogIterator (line 60) | type LogIterator interface type XPCDialer (line 66) | type XPCDialer interface function SetXPCDialer (line 72) | func SetXPCDialer(dialer XPCDialer) { function NewStandaloneCommandClient (line 76) | func NewStandaloneCommandClient() *CommandClient { function NewCommandClient (line 80) | func NewCommandClient(handler CommandClientHandler, options *CommandClie... function unaryClientAuthInterceptor (line 87) | func unaryClientAuthInterceptor(ctx context.Context, method string, req,... function streamClientAuthInterceptor (line 94) | func streamClientAuthInterceptor(ctx context.Context, desc *grpc.StreamD... constant commandClientDialAttempts (line 102) | commandClientDialAttempts = 10 constant commandClientDialBaseDelay (line 103) | commandClientDialBaseDelay = 100 * time.Millisecond constant commandClientDialStepDelay (line 104) | commandClientDialStepDelay = 50 * time.Millisecond function commandClientDialDelay (line 107) | func commandClientDialDelay(attempt int) time.Duration { function dialTarget (line 111) | func dialTarget() (string, func(context.Context, string) (net.Conn, erro... function networkConnectionFromFileDescriptor (line 131) | func networkConnectionFromFileDescriptor(fileDescriptor int32) (net.Conn... function callWithResult (line 300) | func callWithResult[T any](c *CommandClient, call func(client daemon.Sta... FILE: experimental/libbox/command_server.go type CommandServer (line 27) | type CommandServer struct method Start (line 109) | func (s *CommandServer) Start() error { method Close (line 158) | func (s *CommandServer) Close() { method StartOrReloadService (line 172) | func (s *CommandServer) StartOrReloadService(configContent string, opt... method CloseService (line 180) | func (s *CommandServer) CloseService() error { method WriteMessage (line 184) | func (s *CommandServer) WriteMessage(level int32, message string) { method SetError (line 188) | func (s *CommandServer) SetError(message string) { method NeedWIFIState (line 192) | func (s *CommandServer) NeedWIFIState() bool { method NeedFindProcess (line 200) | func (s *CommandServer) NeedFindProcess() bool { method Pause (line 208) | func (s *CommandServer) Pause() { method Wake (line 223) | func (s *CommandServer) Wake() { method ResetNetwork (line 233) | func (s *CommandServer) ResetNetwork() { method UpdateWIFIState (line 241) | func (s *CommandServer) UpdateWIFIState() { type CommandServerHandler (line 37) | type CommandServerHandler interface function NewCommandServer (line 45) | func NewCommandServer(handler CommandServerHandler, platformInterface Pl... function unaryAuthInterceptor (line 73) | func unaryAuthInterceptor(ctx context.Context, req any, info *grpc.Unary... function streamAuthInterceptor (line 91) | func streamAuthInterceptor(srv any, ss grpc.ServerStream, info *grpc.Str... type OverrideOptions (line 166) | type OverrideOptions struct type platformHandler (line 249) | type platformHandler method ServiceStop (line 251) | func (h *platformHandler) ServiceStop() error { method ServiceReload (line 255) | func (h *platformHandler) ServiceReload() error { method SystemProxyStatus (line 259) | func (h *platformHandler) SystemProxyStatus() (*daemon.SystemProxyStat... method SetSystemProxyEnabled (line 270) | func (h *platformHandler) SetSystemProxyEnabled(enabled bool) error { method WriteDebugMessage (line 274) | func (h *platformHandler) WriteDebugMessage(message string) { FILE: experimental/libbox/command_types.go type StatusMessage (line 12) | type StatusMessage struct type SystemProxyStatus (line 24) | type SystemProxyStatus struct type OutboundGroup (line 29) | type OutboundGroup struct method GetItems (line 38) | func (g *OutboundGroup) GetItems() OutboundGroupItemIterator { type OutboundGroupIterator (line 42) | type OutboundGroupIterator interface type OutboundGroupItem (line 47) | type OutboundGroupItem struct type OutboundGroupItemIterator (line 54) | type OutboundGroupItemIterator interface constant ConnectionStateAll (line 60) | ConnectionStateAll = iota constant ConnectionStateActive (line 61) | ConnectionStateActive constant ConnectionStateClosed (line 62) | ConnectionStateClosed constant ConnectionEventNew (line 66) | ConnectionEventNew = iota constant ConnectionEventUpdate (line 67) | ConnectionEventUpdate constant ConnectionEventClosed (line 68) | ConnectionEventClosed constant closedConnectionMaxAge (line 72) | closedConnectionMaxAge = int64((5 * time.Minute) / time.Millisecond) type ConnectionEvent (line 75) | type ConnectionEvent struct type ConnectionEvents (line 84) | type ConnectionEvents struct method Iterator (line 89) | func (c *ConnectionEvents) Iterator() ConnectionEventIterator { type ConnectionEventIterator (line 93) | type ConnectionEventIterator interface type Connections (line 98) | type Connections struct method ApplyEvents (line 112) | func (c *Connections) ApplyEvents(events *ConnectionEvents) { method evictClosedConnections (line 164) | func (c *Connections) evictClosedConnections(nowMilliseconds int64) { method FilterState (line 175) | func (c *Connections) FilterState(state int32) { method SortByDate (line 197) | func (c *Connections) SortByDate() { method SortByTraffic (line 209) | func (c *Connections) SortByTraffic() { method SortByTrafficTotal (line 223) | func (c *Connections) SortByTrafficTotal() { method Iterator (line 237) | func (c *Connections) Iterator() ConnectionIterator { function NewConnections (line 106) | func NewConnections() *Connections { type ProcessInfo (line 241) | type ProcessInfo struct type Connection (line 249) | type Connection struct method Chain (line 274) | func (c *Connection) Chain() StringIterator { method DisplayDestination (line 278) | func (c *Connection) DisplayDestination() string { type ConnectionIterator (line 290) | type ConnectionIterator interface function statusMessageFromGRPC (line 295) | func statusMessageFromGRPC(status *daemon.Status) *StatusMessage { function outboundGroupIteratorFromGRPC (line 312) | func outboundGroupIteratorFromGRPC(groups *daemon.Groups) OutboundGroupI... function connectionFromGRPC (line 338) | func connectionFromGRPC(conn *daemon.Connection) Connection { function connectionEventFromGRPC (line 375) | func connectionEventFromGRPC(event *daemon.ConnectionEvent) *ConnectionE... function connectionEventsFromGRPC (line 393) | func connectionEventsFromGRPC(events *daemon.ConnectionEvents) *Connecti... function systemProxyStatusFromGRPC (line 408) | func systemProxyStatusFromGRPC(status *daemon.SystemProxyStatus) *System... function systemProxyStatusToGRPC (line 418) | func systemProxyStatusToGRPC(status *SystemProxyStatus) *daemon.SystemPr... FILE: experimental/libbox/config.go function baseContext (line 25) | func baseContext(platformInterface PlatformInterface) context.Context { function parseConfig (line 39) | func parseConfig(ctx context.Context, configContent string) (option.Opti... function CheckConfig (line 47) | func CheckConfig(configContent string) error { type platformInterfaceStub (line 66) | type platformInterfaceStub struct method Initialize (line 68) | func (s *platformInterfaceStub) Initialize(networkManager adapter.Netw... method UsePlatformAutoDetectInterfaceControl (line 72) | func (s *platformInterfaceStub) UsePlatformAutoDetectInterfaceControl(... method AutoDetectInterfaceControl (line 76) | func (s *platformInterfaceStub) AutoDetectInterfaceControl(fd int) err... method UsePlatformInterface (line 80) | func (s *platformInterfaceStub) UsePlatformInterface() bool { method OpenInterface (line 84) | func (s *platformInterfaceStub) OpenInterface(options *tun.Options, pl... method UsePlatformDefaultInterfaceMonitor (line 88) | func (s *platformInterfaceStub) UsePlatformDefaultInterfaceMonitor() b... method CreateDefaultInterfaceMonitor (line 92) | func (s *platformInterfaceStub) CreateDefaultInterfaceMonitor(logger l... method UsePlatformNetworkInterfaces (line 96) | func (s *platformInterfaceStub) UsePlatformNetworkInterfaces() bool { method NetworkInterfaces (line 100) | func (s *platformInterfaceStub) NetworkInterfaces() ([]adapter.Network... method UnderNetworkExtension (line 104) | func (s *platformInterfaceStub) UnderNetworkExtension() bool { method NetworkExtensionIncludeAllNetworks (line 108) | func (s *platformInterfaceStub) NetworkExtensionIncludeAllNetworks() b... method ClearDNSCache (line 112) | func (s *platformInterfaceStub) ClearDNSCache() { method RequestPermissionForWIFIState (line 115) | func (s *platformInterfaceStub) RequestPermissionForWIFIState() error { method UsePlatformWIFIMonitor (line 119) | func (s *platformInterfaceStub) UsePlatformWIFIMonitor() bool { method ReadWIFIState (line 123) | func (s *platformInterfaceStub) ReadWIFIState() adapter.WIFIState { method SystemCertificates (line 127) | func (s *platformInterfaceStub) SystemCertificates() []string { method UsePlatformConnectionOwnerFinder (line 131) | func (s *platformInterfaceStub) UsePlatformConnectionOwnerFinder() bool { method FindConnectionOwner (line 135) | func (s *platformInterfaceStub) FindConnectionOwner(request *adapter.F... method UsePlatformNotification (line 139) | func (s *platformInterfaceStub) UsePlatformNotification() bool { method SendNotification (line 143) | func (s *platformInterfaceStub) SendNotification(notification *adapter... method UsePlatformNeighborResolver (line 147) | func (s *platformInterfaceStub) UsePlatformNeighborResolver() bool { method StartNeighborMonitor (line 151) | func (s *platformInterfaceStub) StartNeighborMonitor(listener adapter.... method CloseNeighborMonitor (line 155) | func (s *platformInterfaceStub) CloseNeighborMonitor(listener adapter.... method UsePlatformLocalDNSTransport (line 159) | func (s *platformInterfaceStub) UsePlatformLocalDNSTransport() bool { method LocalDNSTransport (line 163) | func (s *platformInterfaceStub) LocalDNSTransport() dns.TransportConst... type interfaceMonitorStub (line 167) | type interfaceMonitorStub struct method Start (line 169) | func (s *interfaceMonitorStub) Start() error { method Close (line 173) | func (s *interfaceMonitorStub) Close() error { method DefaultInterface (line 177) | func (s *interfaceMonitorStub) DefaultInterface() *control.Interface { method OverrideAndroidVPN (line 181) | func (s *interfaceMonitorStub) OverrideAndroidVPN() bool { method AndroidVPNEnabled (line 185) | func (s *interfaceMonitorStub) AndroidVPNEnabled() bool { method RegisterCallback (line 189) | func (s *interfaceMonitorStub) RegisterCallback(callback tun.DefaultIn... method UnregisterCallback (line 193) | func (s *interfaceMonitorStub) UnregisterCallback(element *list.Elemen... method RegisterMyInterface (line 196) | func (s *interfaceMonitorStub) RegisterMyInterface(interfaceName strin... method MyInterface (line 199) | func (s *interfaceMonitorStub) MyInterface() string { function FormatConfig (line 203) | func FormatConfig(configContent string) (*StringBox, error) { FILE: experimental/libbox/deprecated.go type DeprecatedNote (line 9) | type DeprecatedNote struct method Impending (line 18) | func (n DeprecatedNote) Impending() bool { method Message (line 22) | func (n DeprecatedNote) Message() string { method MessageWithLink (line 26) | func (n DeprecatedNote) MessageWithLink() string { type DeprecatedNoteIterator (line 30) | type DeprecatedNoteIterator interface FILE: experimental/libbox/dns.go type LocalDNSTransport (line 21) | type LocalDNSTransport interface type platformTransport (line 29) | type platformTransport struct method Start (line 41) | func (p *platformTransport) Start(stage adapter.StartStage) error { method Close (line 45) | func (p *platformTransport) Close() error { method Reset (line 49) | func (p *platformTransport) Reset() { method Exchange (line 52) | func (p *platformTransport) Exchange(ctx context.Context, message *mDN... function newPlatformTransport (line 34) | func newPlatformTransport(iif LocalDNSTransport, tag string, options opt... type Func (line 111) | type Func interface type ExchangeContext (line 115) | type ExchangeContext struct method OnCancel (line 122) | func (c *ExchangeContext) OnCancel(callback Func) { method Success (line 129) | func (c *ExchangeContext) Success(result string) { method RawSuccess (line 137) | func (c *ExchangeContext) RawSuccess(result []byte) { method ErrorCode (line 144) | func (c *ExchangeContext) ErrorCode(code int32) { method ErrnoCode (line 148) | func (c *ExchangeContext) ErrnoCode(code int32) { FILE: experimental/libbox/fdroid.go constant fdroidUserAgent (line 23) | fdroidUserAgent = "F-Droid 1.21.1" type FDroidUpdateInfo (line 25) | type FDroidUpdateInfo struct type FDroidPingResult (line 33) | type FDroidPingResult struct type FDroidPingResultIterator (line 39) | type FDroidPingResultIterator interface type fdroidAPIResponse (line 45) | type fdroidAPIResponse struct type fdroidAPIPackage (line 51) | type fdroidAPIPackage struct type fdroidEntry (line 56) | type fdroidEntry struct type fdroidEntryFile (line 63) | type fdroidEntryFile struct type fdroidIndexV2 (line 70) | type fdroidIndexV2 struct type fdroidV2Package (line 74) | type fdroidV2Package struct type fdroidV2Version (line 78) | type fdroidV2Version struct type fdroidV2Manifest (line 83) | type fdroidV2Manifest struct type fdroidV2File (line 88) | type fdroidV2File struct type fdroidIndexV1 (line 94) | type fdroidIndexV1 struct type fdroidV1Package (line 98) | type fdroidV1Package struct type fdroidCache (line 107) | type fdroidCache struct function CheckFDroidUpdate (line 114) | func CheckFDroidUpdate(mirrorURL, packageName string, currentVersionCode... function PingFDroidMirrors (line 128) | func PingFDroidMirrors(mirrorURLs string) (FDroidPingResultIterator, err... function PingFDroidMirror (line 161) | func PingFDroidMirror(mirrorURL string) *FDroidPingResult { function newFDroidHTTPClient (line 174) | func newFDroidHTTPClient() *http.Client { function newFDroidRequest (line 180) | func newFDroidRequest(requestURL string) (*http.Request, error) { function checkFDroidAPI (line 189) | func checkFDroidAPI(mirrorURL, packageName string, currentVersionCode in... function checkFDroidV2 (line 240) | func checkFDroidV2(client *http.Client, mirrorURL, packageName string, c... function checkFDroidV1 (line 354) | func checkFDroidV1(client *http.Client, mirrorURL, packageName string, c... function readJSONFromJar (line 419) | func readJSONFromJar(jarData []byte, fileName string, destination any) e... function pingTLS (line 442) | func pingTLS(mirrorURL string) (time.Duration, error) { function loadFDroidCache (line 463) | func loadFDroidCache(cachePath, mirrorURL string) *fdroidCache { function writeFDroidCache (line 480) | func writeFDroidCache(cachePath, mirrorURL string, timestamp int64, etag... FILE: experimental/libbox/fdroid_mirrors.go type FDroidMirror (line 3) | type FDroidMirror struct type FDroidMirrorIterator (line 9) | type FDroidMirrorIterator interface function GetFDroidMirrors (line 90) | func GetFDroidMirrors() FDroidMirrorIterator { FILE: experimental/libbox/http.go type HTTPClient (line 30) | type HTTPClient interface type HTTPRequest (line 41) | type HTTPRequest interface type HTTPResponse (line 52) | type HTTPResponse interface type httpClient (line 63) | type httpClient struct method ModernTLS (line 79) | func (c *httpClient) ModernTLS() { method RestrictedTLS (line 83) | func (c *httpClient) RestrictedTLS() { method setTLSVersion (line 89) | func (c *httpClient) setTLSVersion(minVersion, maxVersion uint16, filt... method PinnedTLS12 (line 99) | func (c *httpClient) PinnedTLS12() { method PinnedSHA256 (line 103) | func (c *httpClient) PinnedSHA256(sumHex string) { method TrySocks5 (line 115) | func (c *httpClient) TrySocks5(port int32) { method KeepAlive (line 134) | func (c *httpClient) KeepAlive() { method NewRequest (line 138) | func (c *httpClient) NewRequest() HTTPRequest { method Close (line 147) | func (c *httpClient) Close() { function NewHTTPClient (line 69) | func NewHTTPClient() HTTPClient { type httpRequest (line 151) | type httpRequest struct method SetURL (line 156) | func (r *httpRequest) SetURL(link string) (err error) { method SetMethod (line 169) | func (r *httpRequest) SetMethod(method string) { method SetHeader (line 173) | func (r *httpRequest) SetHeader(key string, value string) { method RandomUserAgent (line 177) | func (r *httpRequest) RandomUserAgent() { method SetUserAgent (line 181) | func (r *httpRequest) SetUserAgent(userAgent string) { method SetContent (line 185) | func (r *httpRequest) SetContent(content []byte) { method SetContentString (line 190) | func (r *httpRequest) SetContentString(content string) { method Execute (line 194) | func (r *httpRequest) Execute() (HTTPResponse, error) { type httpResponse (line 206) | type httpResponse struct method errorString (line 214) | func (h *httpResponse) errorString() string { method GetContent (line 222) | func (h *httpResponse) GetContent() (*StringBox, error) { method WriteTo (line 233) | func (h *httpResponse) WriteTo(path string) error { FILE: experimental/libbox/internal/procfs/procfs.go function init (line 24) | func init() { function ResolveSocketByProcSearch (line 33) | func ResolveSocketByProcSearch(network string, source, _ netip.AddrPort)... function nativeEndianIP (line 91) | func nativeEndianIP(ip net.IP) []byte { function init (line 103) | func init() { FILE: experimental/libbox/iterator.go type StringIterator (line 5) | type StringIterator interface type Int32Iterator (line 11) | type Int32Iterator interface type iterator (line 19) | type iterator struct function newIterator (line 23) | func newIterator[T any](values []T) *iterator[T] { function newPtrIterator (line 28) | func newPtrIterator[T any](values []T) *iterator[*T] { method Len (line 32) | func (i *iterator[T]) Len() int32 { method HasNext (line 36) | func (i *iterator[T]) HasNext() bool { method Next (line 40) | func (i *iterator[T]) Next() T { type abstractIterator (line 49) | type abstractIterator interface function iteratorToArray (line 54) | func iteratorToArray[T any](iterator abstractIterator[T]) []T { FILE: experimental/libbox/link_flags_stub.go function linkFlags (line 9) | func linkFlags(rawFlags uint32) net.Flags { FILE: experimental/libbox/link_flags_unix.go function linkFlags (line 11) | func linkFlags(rawFlags uint32) net.Flags { FILE: experimental/libbox/log.go function RedirectStderr (line 13) | func RedirectStderr(path string) error { FILE: experimental/libbox/memory.go function SetMemoryLimit (line 12) | func SetMemoryLimit(enabled bool) { FILE: experimental/libbox/monitor.go type platformDefaultInterfaceMonitor (line 16) | type platformDefaultInterfaceMonitor struct method Start (line 24) | func (m *platformDefaultInterfaceMonitor) Start() error { method Close (line 28) | func (m *platformDefaultInterfaceMonitor) Close() error { method DefaultInterface (line 32) | func (m *platformDefaultInterfaceMonitor) DefaultInterface() *control.... method OverrideAndroidVPN (line 38) | func (m *platformDefaultInterfaceMonitor) OverrideAndroidVPN() bool { method AndroidVPNEnabled (line 42) | func (m *platformDefaultInterfaceMonitor) AndroidVPNEnabled() bool { method RegisterCallback (line 46) | func (m *platformDefaultInterfaceMonitor) RegisterCallback(callback tu... method UnregisterCallback (line 52) | func (m *platformDefaultInterfaceMonitor) UnregisterCallback(element *... method UpdateDefaultInterface (line 58) | func (m *platformDefaultInterfaceMonitor) UpdateDefaultInterface(inter... method updateDefaultInterface (line 71) | func (m *platformDefaultInterfaceMonitor) updateDefaultInterface(inter... method RegisterMyInterface (line 107) | func (m *platformDefaultInterfaceMonitor) RegisterMyInterface(interfac... method MyInterface (line 113) | func (m *platformDefaultInterfaceMonitor) MyInterface() string { FILE: experimental/libbox/neighbor.go type NeighborEntry (line 8) | type NeighborEntry struct type NeighborEntryIterator (line 14) | type NeighborEntryIterator interface type NeighborSubscription (line 19) | type NeighborSubscription struct method Close (line 23) | func (s *NeighborSubscription) Close() { function tableToIterator (line 27) | func tableToIterator(table map[netip.Addr]net.HardwareAddr) NeighborEntr... type neighborEntryIterator (line 38) | type neighborEntryIterator struct method HasNext (line 42) | func (i *neighborEntryIterator) HasNext() bool { method Next (line 46) | func (i *neighborEntryIterator) Next() *NeighborEntry { FILE: experimental/libbox/neighbor_darwin.go function SubscribeNeighborTable (line 20) | func SubscribeNeighborTable(listener NeighborUpdateListener) (*NeighborS... method loop (line 46) | func (s *NeighborSubscription) loop(listener NeighborUpdateListener, rou... function ReadBootpdLeases (line 107) | func ReadBootpdLeases() NeighborEntryIterator { FILE: experimental/libbox/neighbor_linux.go function SubscribeNeighborTable (line 18) | func SubscribeNeighborTable(listener NeighborUpdateListener) (*NeighborS... method loop (line 41) | func (s *NeighborSubscription) loop(listener NeighborUpdateListener, con... FILE: experimental/libbox/neighbor_stub.go function SubscribeNeighborTable (line 7) | func SubscribeNeighborTable(_ NeighborUpdateListener) (*NeighborSubscrip... FILE: experimental/libbox/panic.go type StringBox (line 6) | type StringBox struct function wrapString (line 10) | func wrapString(value string) *StringBox { FILE: experimental/libbox/pidfd_android.go function init (line 15) | func init() { FILE: experimental/libbox/platform.go type PlatformInterface (line 8) | type PlatformInterface interface type NeighborUpdateListener (line 29) | type NeighborUpdateListener interface type ConnectionOwner (line 33) | type ConnectionOwner struct type InterfaceUpdateListener (line 40) | type InterfaceUpdateListener interface constant InterfaceTypeWIFI (line 45) | InterfaceTypeWIFI = int32(C.InterfaceTypeWIFI) constant InterfaceTypeCellular (line 46) | InterfaceTypeCellular = int32(C.InterfaceTypeCellular) constant InterfaceTypeEthernet (line 47) | InterfaceTypeEthernet = int32(C.InterfaceTypeEthernet) constant InterfaceTypeOther (line 48) | InterfaceTypeOther = int32(C.InterfaceTypeOther) type NetworkInterface (line 51) | type NetworkInterface struct type WIFIState (line 63) | type WIFIState struct function NewWIFIState (line 68) | func NewWIFIState(wifiSSID string, wifiBSSID string) *WIFIState { type NetworkInterfaceIterator (line 72) | type NetworkInterfaceIterator interface type Notification (line 77) | type Notification struct type OnDemandRule (line 87) | type OnDemandRule interface type OnDemandRuleIterator (line 96) | type OnDemandRuleIterator interface type onDemandRule (line 101) | type onDemandRule struct method Target (line 105) | func (r *onDemandRule) Target() int32 { method DNSSearchDomainMatch (line 112) | func (r *onDemandRule) DNSSearchDomainMatch() StringIterator { method DNSServerAddressMatch (line 116) | func (r *onDemandRule) DNSServerAddressMatch() StringIterator { method InterfaceTypeMatch (line 120) | func (r *onDemandRule) InterfaceTypeMatch() int32 { method SSIDMatch (line 127) | func (r *onDemandRule) SSIDMatch() StringIterator { method ProbeURL (line 131) | func (r *onDemandRule) ProbeURL() string { FILE: experimental/libbox/pprof.go type PProfServer (line 10) | type PProfServer struct method Start (line 22) | func (s *PProfServer) Start() error { method Close (line 31) | func (s *PProfServer) Close() error { function NewPProfServer (line 14) | func NewPProfServer(port int) *PProfServer { FILE: experimental/libbox/profile_import.go function EncodeChunkedMessage (line 14) | func EncodeChunkedMessage(data []byte) []byte { function DecodeLengthChunk (line 21) | func DecodeLengthChunk(data []byte) int32 { constant MessageTypeError (line 26) | MessageTypeError = iota constant MessageTypeProfileList (line 27) | MessageTypeProfileList constant MessageTypeProfileContentRequest (line 28) | MessageTypeProfileContentRequest constant MessageTypeProfileContent (line 29) | MessageTypeProfileContent type ErrorMessage (line 32) | type ErrorMessage struct method Encode (line 36) | func (e *ErrorMessage) Encode() []byte { function DecodeErrorMessage (line 43) | func DecodeErrorMessage(data []byte) (*ErrorMessage, error) { constant ProfileTypeLocal (line 61) | ProfileTypeLocal int32 = iota constant ProfileTypeiCloud (line 62) | ProfileTypeiCloud constant ProfileTypeRemote (line 63) | ProfileTypeRemote type ProfilePreview (line 66) | type ProfilePreview struct type ProfilePreviewIterator (line 72) | type ProfilePreviewIterator interface type ProfileEncoder (line 77) | type ProfileEncoder struct method Append (line 81) | func (e *ProfileEncoder) Append(profile *ProfilePreview) { method Encode (line 85) | func (e *ProfileEncoder) Encode() []byte { type ProfileDecoder (line 97) | type ProfileDecoder struct method Decode (line 101) | func (d *ProfileDecoder) Decode(data []byte) error { method Iterator (line 134) | func (d *ProfileDecoder) Iterator() ProfilePreviewIterator { type ProfileContentRequest (line 138) | type ProfileContentRequest struct method Encode (line 142) | func (r *ProfileContentRequest) Encode() []byte { function DecodeProfileContentRequest (line 149) | func DecodeProfileContentRequest(data []byte) (*ProfileContentRequest, e... type ProfileContent (line 166) | type ProfileContent struct method Encode (line 176) | func (c *ProfileContent) Encode() []byte { function DecodeProfileContent (line 199) | func DecodeProfileContent(data []byte) (*ProfileContent, error) { function readString (line 255) | func readString(reader io.ByteReader) (string, error) { function writeString (line 270) | func writeString(buffer *bytes.Buffer, value string) { function writeStringBuffered (line 275) | func writeStringBuffered(writer *bufio.Writer, value string) { FILE: experimental/libbox/remote_profile.go function GenerateRemoteProfileImportLink (line 7) | func GenerateRemoteProfileImportLink(name string, remoteURL string) stri... type ImportRemoteProfile (line 17) | type ImportRemoteProfile struct function ParseRemoteProfileImportLink (line 23) | func ParseRemoteProfileImportLink(importLink string) (*ImportRemoteProfi... FILE: experimental/libbox/semver.go function CompareSemver (line 9) | func CompareSemver(left string, right string) bool { function normalizeSemver (line 21) | func normalizeSemver(version string) string { FILE: experimental/libbox/semver_test.go function TestCompareSemver (line 9) | func TestCompareSemver(t *testing.T) { FILE: experimental/libbox/service.go type platformInterfaceWrapper (line 27) | type platformInterfaceWrapper struct method Initialize (line 38) | func (w *platformInterfaceWrapper) Initialize(networkManager adapter.N... method UsePlatformAutoDetectInterfaceControl (line 43) | func (w *platformInterfaceWrapper) UsePlatformAutoDetectInterfaceContr... method AutoDetectInterfaceControl (line 47) | func (w *platformInterfaceWrapper) AutoDetectInterfaceControl(fd int) ... method UsePlatformInterface (line 51) | func (w *platformInterfaceWrapper) UsePlatformInterface() bool { method OpenInterface (line 55) | func (w *platformInterfaceWrapper) OpenInterface(options *tun.Options,... method UsePlatformDefaultInterfaceMonitor (line 85) | func (w *platformInterfaceWrapper) UsePlatformDefaultInterfaceMonitor(... method CreateDefaultInterfaceMonitor (line 89) | func (w *platformInterfaceWrapper) CreateDefaultInterfaceMonitor(logge... method UsePlatformNetworkInterfaces (line 96) | func (w *platformInterfaceWrapper) UsePlatformNetworkInterfaces() bool { method NetworkInterfaces (line 100) | func (w *platformInterfaceWrapper) NetworkInterfaces() ([]adapter.Netw... method UnderNetworkExtension (line 136) | func (w *platformInterfaceWrapper) UnderNetworkExtension() bool { method NetworkExtensionIncludeAllNetworks (line 140) | func (w *platformInterfaceWrapper) NetworkExtensionIncludeAllNetworks(... method ClearDNSCache (line 144) | func (w *platformInterfaceWrapper) ClearDNSCache() { method RequestPermissionForWIFIState (line 148) | func (w *platformInterfaceWrapper) RequestPermissionForWIFIState() err... method UsePlatformWIFIMonitor (line 152) | func (w *platformInterfaceWrapper) UsePlatformWIFIMonitor() bool { method ReadWIFIState (line 156) | func (w *platformInterfaceWrapper) ReadWIFIState() adapter.WIFIState { method SystemCertificates (line 164) | func (w *platformInterfaceWrapper) SystemCertificates() []string { method UsePlatformConnectionOwnerFinder (line 168) | func (w *platformInterfaceWrapper) UsePlatformConnectionOwnerFinder() ... method FindConnectionOwner (line 172) | func (w *platformInterfaceWrapper) FindConnectionOwner(request *adapte... method DisableColors (line 212) | func (w *platformInterfaceWrapper) DisableColors() bool { method UsePlatformNotification (line 216) | func (w *platformInterfaceWrapper) UsePlatformNotification() bool { method SendNotification (line 220) | func (w *platformInterfaceWrapper) SendNotification(notification *adap... method UsePlatformNeighborResolver (line 224) | func (w *platformInterfaceWrapper) UsePlatformNeighborResolver() bool { method StartNeighborMonitor (line 228) | func (w *platformInterfaceWrapper) StartNeighborMonitor(listener adapt... method CloseNeighborMonitor (line 232) | func (w *platformInterfaceWrapper) CloseNeighborMonitor(listener adapt... type neighborUpdateListenerWrapper (line 236) | type neighborUpdateListenerWrapper struct method UpdateNeighborTable (line 240) | func (w *neighborUpdateListenerWrapper) UpdateNeighborTable(entries Ne... function AvailablePort (line 264) | func AvailablePort(startPort int32) (int32, error) { function RandomHex (line 284) | func RandomHex(length int32) *StringBox { FILE: experimental/libbox/service_other.go function dup (line 7) | func dup(fd int) (nfd int, err error) { FILE: experimental/libbox/service_windows.go function dup (line 5) | func dup(fd int) (nfd int, err error) { FILE: experimental/libbox/setup.go function init (line 27) | func init() { type SetupOptions (line 32) | type SetupOptions struct function Setup (line 43) | func Setup(options *SetupOptions) error { function SetLocale (line 65) | func SetLocale(localeId string) { function Version (line 69) | func Version() string { function FormatBytes (line 73) | func FormatBytes(length int64) string { function FormatMemoryBytes (line 77) | func FormatMemoryBytes(length int64) string { function FormatDuration (line 81) | func FormatDuration(duration int64) string { function ProxyDisplayType (line 85) | func ProxyDisplayType(proxyType string) string { FILE: experimental/libbox/tun.go type TunOptions (line 13) | type TunOptions interface type RoutePrefix (line 35) | type RoutePrefix struct method Address (line 40) | func (p *RoutePrefix) Address() string { method Prefix (line 44) | func (p *RoutePrefix) Prefix() int32 { method Mask (line 48) | func (p *RoutePrefix) Mask() string { method String (line 58) | func (p *RoutePrefix) String() string { type RoutePrefixIterator (line 62) | type RoutePrefixIterator interface function mapRoutePrefix (line 67) | func mapRoutePrefix(prefixes []netip.Prefix) RoutePrefixIterator { type tunOptions (line 78) | type tunOptions struct method GetInet4Address (line 84) | func (o *tunOptions) GetInet4Address() RoutePrefixIterator { method GetInet6Address (line 88) | func (o *tunOptions) GetInet6Address() RoutePrefixIterator { method GetDNSServerAddress (line 92) | func (o *tunOptions) GetDNSServerAddress() (*StringBox, error) { method GetMTU (line 99) | func (o *tunOptions) GetMTU() int32 { method GetAutoRoute (line 103) | func (o *tunOptions) GetAutoRoute() bool { method GetStrictRoute (line 107) | func (o *tunOptions) GetStrictRoute() bool { method GetInet4RouteAddress (line 111) | func (o *tunOptions) GetInet4RouteAddress() RoutePrefixIterator { method GetInet6RouteAddress (line 115) | func (o *tunOptions) GetInet6RouteAddress() RoutePrefixIterator { method GetInet4RouteExcludeAddress (line 119) | func (o *tunOptions) GetInet4RouteExcludeAddress() RoutePrefixIterator { method GetInet6RouteExcludeAddress (line 123) | func (o *tunOptions) GetInet6RouteExcludeAddress() RoutePrefixIterator { method GetInet4RouteRange (line 127) | func (o *tunOptions) GetInet4RouteRange() RoutePrefixIterator { method GetInet6RouteRange (line 133) | func (o *tunOptions) GetInet6RouteRange() RoutePrefixIterator { method GetIncludePackage (line 139) | func (o *tunOptions) GetIncludePackage() StringIterator { method GetExcludePackage (line 143) | func (o *tunOptions) GetExcludePackage() StringIterator { method IsHTTPProxyEnabled (line 147) | func (o *tunOptions) IsHTTPProxyEnabled() bool { method GetHTTPProxyServer (line 154) | func (o *tunOptions) GetHTTPProxyServer() string { method GetHTTPProxyServerPort (line 158) | func (o *tunOptions) GetHTTPProxyServerPort() int32 { method GetHTTPProxyBypassDomain (line 162) | func (o *tunOptions) GetHTTPProxyBypassDomain() StringIterator { method GetHTTPProxyMatchDomain (line 166) | func (o *tunOptions) GetHTTPProxyMatchDomain() StringIterator { FILE: experimental/libbox/tun_darwin.go constant utunControlName (line 9) | utunControlName = "com.apple.net.utun_control" function GetTunnelFileDescriptor (line 11) | func GetTunnelFileDescriptor() int32 { FILE: experimental/libbox/tun_name_darwin.go function getTunnelName (line 5) | func getTunnelName(fd int32) (string, error) { FILE: experimental/libbox/tun_name_linux.go constant ifReqSize (line 11) | ifReqSize = unix.IFNAMSIZ + 64 function getTunnelName (line 13) | func getTunnelName(fd int32) (string, error) { FILE: experimental/libbox/tun_name_other.go function getTunnelName (line 7) | func getTunnelName(fd int32) (string, error) { FILE: experimental/locale/locale.go type Locale (line 8) | type Locale struct function Current (line 21) | func Current() *Locale { function Set (line 25) | func Set(localeId string) bool { FILE: experimental/locale/locale_zh_CN.go function init (line 5) | func init() { FILE: experimental/v2rayapi.go function RegisterV2RayServerConstructor (line 15) | func RegisterV2RayServerConstructor(constructor V2RayServerConstructor) { function NewV2RayServer (line 19) | func NewV2RayServer(logger log.Logger, options option.V2RayAPIOptions) (... FILE: experimental/v2rayapi/server.go function init (line 18) | func init() { type Server (line 24) | type Server struct method Name (line 47) | func (s *Server) Name() string { method Start (line 51) | func (s *Server) Start(stage adapter.StartStage) error { method Close (line 70) | func (s *Server) Close() error { method StatsService (line 80) | func (s *Server) StatsService() adapter.ConnectionTracker { function NewServer (line 32) | func NewServer(logger log.Logger, options option.V2RayAPIOptions) (adapt... FILE: experimental/v2rayapi/stats.go function init (line 20) | func init() { type StatsService (line 29) | type StatsService struct method RoutedConnection (line 63) | func (s *StatsService) RoutedConnection(ctx context.Context, conn net.... method RoutedPacketConnection (line 92) | func (s *StatsService) RoutedPacketConnection(ctx context.Context, con... method GetStats (line 121) | func (s *StatsService) GetStats(ctx context.Context, request *GetStats... method QueryStats (line 137) | func (s *StatsService) QueryStats(ctx context.Context, request *QueryS... method GetSysStats (line 191) | func (s *StatsService) GetSysStats(ctx context.Context, request *SysSt... method mustEmbedUnimplementedStatsServiceServer (line 210) | func (s *StatsService) mustEmbedUnimplementedStatsServiceServer() { method loadOrCreateCounter (line 214) | func (s *StatsService) loadOrCreateCounter(name string) *atomic.Int64 { function NewStatsService (line 38) | func NewStatsService(options option.V2RayStatsServiceOptions) *StatsServ... FILE: experimental/v2rayapi/stats.pb.go constant _ (line 14) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) constant _ (line 16) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) type GetStatsRequest (line 19) | type GetStatsRequest struct method Reset (line 29) | func (x *GetStatsRequest) Reset() { method String (line 36) | func (x *GetStatsRequest) String() string { method ProtoMessage (line 40) | func (*GetStatsRequest) ProtoMessage() {} method ProtoReflect (line 42) | func (x *GetStatsRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 55) | func (*GetStatsRequest) Descriptor() ([]byte, []int) { method GetName (line 59) | func (x *GetStatsRequest) GetName() string { method GetReset_ (line 66) | func (x *GetStatsRequest) GetReset_() bool { type Stat (line 73) | type Stat struct method Reset (line 81) | func (x *Stat) Reset() { method String (line 88) | func (x *Stat) String() string { method ProtoMessage (line 92) | func (*Stat) ProtoMessage() {} method ProtoReflect (line 94) | func (x *Stat) ProtoReflect() protoreflect.Message { method Descriptor (line 107) | func (*Stat) Descriptor() ([]byte, []int) { method GetName (line 111) | func (x *Stat) GetName() string { method GetValue (line 118) | func (x *Stat) GetValue() int64 { type GetStatsResponse (line 125) | type GetStatsResponse struct method Reset (line 132) | func (x *GetStatsResponse) Reset() { method String (line 139) | func (x *GetStatsResponse) String() string { method ProtoMessage (line 143) | func (*GetStatsResponse) ProtoMessage() {} method ProtoReflect (line 145) | func (x *GetStatsResponse) ProtoReflect() protoreflect.Message { method Descriptor (line 158) | func (*GetStatsResponse) Descriptor() ([]byte, []int) { method GetStat (line 162) | func (x *GetStatsResponse) GetStat() *Stat { type QueryStatsRequest (line 169) | type QueryStatsRequest struct method Reset (line 180) | func (x *QueryStatsRequest) Reset() { method String (line 187) | func (x *QueryStatsRequest) String() string { method ProtoMessage (line 191) | func (*QueryStatsRequest) ProtoMessage() {} method ProtoReflect (line 193) | func (x *QueryStatsRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 206) | func (*QueryStatsRequest) Descriptor() ([]byte, []int) { method GetPattern (line 210) | func (x *QueryStatsRequest) GetPattern() string { method GetReset_ (line 217) | func (x *QueryStatsRequest) GetReset_() bool { method GetPatterns (line 224) | func (x *QueryStatsRequest) GetPatterns() []string { method GetRegexp (line 231) | func (x *QueryStatsRequest) GetRegexp() bool { type QueryStatsResponse (line 238) | type QueryStatsResponse struct method Reset (line 245) | func (x *QueryStatsResponse) Reset() { method String (line 252) | func (x *QueryStatsResponse) String() string { method ProtoMessage (line 256) | func (*QueryStatsResponse) ProtoMessage() {} method ProtoReflect (line 258) | func (x *QueryStatsResponse) ProtoReflect() protoreflect.Message { method Descriptor (line 271) | func (*QueryStatsResponse) Descriptor() ([]byte, []int) { method GetStat (line 275) | func (x *QueryStatsResponse) GetStat() []*Stat { type SysStatsRequest (line 282) | type SysStatsRequest struct method Reset (line 288) | func (x *SysStatsRequest) Reset() { method String (line 295) | func (x *SysStatsRequest) String() string { method ProtoMessage (line 299) | func (*SysStatsRequest) ProtoMessage() {} method ProtoReflect (line 301) | func (x *SysStatsRequest) ProtoReflect() protoreflect.Message { method Descriptor (line 314) | func (*SysStatsRequest) Descriptor() ([]byte, []int) { type SysStatsResponse (line 318) | type SysStatsResponse struct method Reset (line 334) | func (x *SysStatsResponse) Reset() { method String (line 341) | func (x *SysStatsResponse) String() string { method ProtoMessage (line 345) | func (*SysStatsResponse) ProtoMessage() {} method ProtoReflect (line 347) | func (x *SysStatsResponse) ProtoReflect() protoreflect.Message { method Descriptor (line 360) | func (*SysStatsResponse) Descriptor() ([]byte, []int) { method GetNumGoroutine (line 364) | func (x *SysStatsResponse) GetNumGoroutine() uint32 { method GetNumGC (line 371) | func (x *SysStatsResponse) GetNumGC() uint32 { method GetAlloc (line 378) | func (x *SysStatsResponse) GetAlloc() uint64 { method GetTotalAlloc (line 385) | func (x *SysStatsResponse) GetTotalAlloc() uint64 { method GetSys (line 392) | func (x *SysStatsResponse) GetSys() uint64 { method GetMallocs (line 399) | func (x *SysStatsResponse) GetMallocs() uint64 { method GetFrees (line 406) | func (x *SysStatsResponse) GetFrees() uint64 { method GetLiveObjects (line 413) | func (x *SysStatsResponse) GetLiveObjects() uint64 { method GetPauseTotalNs (line 420) | func (x *SysStatsResponse) GetPauseTotalNs() uint64 { method GetUptime (line 427) | func (x *SysStatsResponse) GetUptime() uint32 { constant file_experimental_v2rayapi_stats_proto_rawDesc (line 436) | file_experimental_v2rayapi_stats_proto_rawDesc = "" + function file_experimental_v2rayapi_stats_proto_rawDescGZIP (line 480) | func file_experimental_v2rayapi_stats_proto_rawDescGZIP() []byte { function init (line 516) | func init() { file_experimental_v2rayapi_stats_proto_init() } function file_experimental_v2rayapi_stats_proto_init (line 517) | func file_experimental_v2rayapi_stats_proto_init() { FILE: experimental/v2rayapi/stats_grpc.pb.go constant _ (line 14) | _ = grpc.SupportPackageIsVersion9 constant StatsService_GetStats_FullMethodName (line 17) | StatsService_GetStats_FullMethodName = "/experimental.v2rayapi.StatsS... constant StatsService_QueryStats_FullMethodName (line 18) | StatsService_QueryStats_FullMethodName = "/experimental.v2rayapi.StatsS... constant StatsService_GetSysStats_FullMethodName (line 19) | StatsService_GetSysStats_FullMethodName = "/experimental.v2rayapi.StatsS... type StatsServiceClient (line 25) | type StatsServiceClient interface type statsServiceClient (line 31) | type statsServiceClient struct method GetStats (line 39) | func (c *statsServiceClient) GetStats(ctx context.Context, in *GetStat... method QueryStats (line 49) | func (c *statsServiceClient) QueryStats(ctx context.Context, in *Query... method GetSysStats (line 59) | func (c *statsServiceClient) GetSysStats(ctx context.Context, in *SysS... function NewStatsServiceClient (line 35) | func NewStatsServiceClient(cc grpc.ClientConnInterface) StatsServiceClie... type StatsServiceServer (line 72) | type StatsServiceServer interface type UnimplementedStatsServiceServer (line 84) | type UnimplementedStatsServiceServer struct method GetStats (line 86) | func (UnimplementedStatsServiceServer) GetStats(context.Context, *GetS... method QueryStats (line 90) | func (UnimplementedStatsServiceServer) QueryStats(context.Context, *Qu... method GetSysStats (line 94) | func (UnimplementedStatsServiceServer) GetSysStats(context.Context, *S... method mustEmbedUnimplementedStatsServiceServer (line 97) | func (UnimplementedStatsServiceServer) mustEmbedUnimplementedStatsServ... method testEmbeddedByValue (line 98) | func (UnimplementedStatsServiceServer) testEmbeddedByValue() ... type UnsafeStatsServiceServer (line 103) | type UnsafeStatsServiceServer interface function RegisterStatsServiceServer (line 107) | func RegisterStatsServiceServer(s grpc.ServiceRegistrar, srv StatsServic... function _StatsService_GetStats_Handler (line 118) | func _StatsService_GetStats_Handler(srv interface{}, ctx context.Context... function _StatsService_QueryStats_Handler (line 136) | func _StatsService_QueryStats_Handler(srv interface{}, ctx context.Conte... function _StatsService_GetSysStats_Handler (line 154) | func _StatsService_GetSysStats_Handler(srv interface{}, ctx context.Cont... FILE: include/ccm.go function registerCCMService (line 10) | func registerCCMService(registry *service.Registry) { FILE: include/ccm_stub.go function registerCCMService (line 16) | func registerCCMService(registry *service.Registry) { FILE: include/ccm_stub_darwin.go function registerCCMService (line 16) | func registerCCMService(registry *service.Registry) { FILE: include/clashapi_stub.go function init (line 15) | func init() { FILE: include/dhcp.go function registerDHCPTransport (line 10) | func registerDHCPTransport(registry *dns.TransportRegistry) { FILE: include/dhcp_stub.go function registerDHCPTransport (line 16) | func registerDHCPTransport(registry *dns.TransportRegistry) { FILE: include/naive_outbound.go function registerNaiveOutbound (line 10) | func registerNaiveOutbound(registry *outbound.Registry) { FILE: include/naive_outbound_stub.go function registerNaiveOutbound (line 16) | func registerNaiveOutbound(registry *outbound.Registry) { FILE: include/ocm.go function registerOCMService (line 10) | func registerOCMService(registry *service.Registry) { FILE: include/ocm_stub.go function registerOCMService (line 16) | func registerOCMService(registry *service.Registry) { FILE: include/oom_killer.go function registerOOMKillerService (line 8) | func registerOOMKillerService(registry *service.Registry) { FILE: include/quic.go function registerQUICInbounds (line 17) | func registerQUICInbounds(registry *inbound.Registry) { function registerQUICOutbounds (line 23) | func registerQUICOutbounds(registry *outbound.Registry) { function registerQUICTransports (line 29) | func registerQUICTransports(registry *dns.TransportRegistry) { FILE: include/quic_stub.go function init (line 26) | func init() { function registerQUICInbounds (line 37) | func registerQUICInbounds(registry *inbound.Registry) { function registerQUICOutbounds (line 52) | func registerQUICOutbounds(registry *outbound.Registry) { function registerQUICTransports (line 64) | func registerQUICTransports(registry *dns.TransportRegistry) { FILE: include/registry.go function Context (line 42) | func Context(ctx context.Context) context.Context { function InboundRegistry (line 46) | func InboundRegistry() *inbound.Registry { function OutboundRegistry (line 72) | func OutboundRegistry() *outbound.Registry { function EndpointRegistry (line 100) | func EndpointRegistry() *endpoint.Registry { function DNSTransportRegistry (line 109) | func DNSTransportRegistry() *dns.TransportRegistry { function ServiceRegistry (line 128) | func ServiceRegistry() *service.Registry { function registerStubForRemovedInbounds (line 142) | func registerStubForRemovedInbounds(registry *inbound.Registry) { function registerStubForRemovedOutbounds (line 148) | func registerStubForRemovedOutbounds(registry *outbound.Registry) { FILE: include/tailscale.go function registerTailscaleEndpoint (line 13) | func registerTailscaleEndpoint(registry *endpoint.Registry) { function registerTailscaleTransport (line 17) | func registerTailscaleTransport(registry *dns.TransportRegistry) { function registerDERPService (line 21) | func registerDERPService(registry *service.Registry) { FILE: include/tailscale_stub.go function registerTailscaleEndpoint (line 18) | func registerTailscaleEndpoint(registry *endpoint.Registry) { function registerTailscaleTransport (line 24) | func registerTailscaleTransport(registry *dns.TransportRegistry) { function registerDERPService (line 30) | func registerDERPService(registry *service.Registry) { FILE: include/tz_android.go function init (line 13) | func init() { FILE: include/tz_ios.go function init (line 20) | func init() { FILE: include/v2rayapi_stub.go function init (line 13) | func init() { FILE: include/wireguard.go function registerWireGuardEndpoint (line 10) | func registerWireGuardEndpoint(registry *endpoint.Registry) { FILE: include/wireguard_stub.go function registerWireGuardEndpoint (line 16) | func registerWireGuardEndpoint(registry *endpoint.Registry) { FILE: log/export.go function init (line 11) | func init() { function StdLogger (line 22) | func StdLogger() ContextLogger { function SetStdLogger (line 26) | func SetStdLogger(logger ContextLogger) { function Trace (line 30) | func Trace(args ...any) { function Debug (line 34) | func Debug(args ...any) { function Info (line 38) | func Info(args ...any) { function Warn (line 42) | func Warn(args ...any) { function Error (line 46) | func Error(args ...any) { function Fatal (line 50) | func Fatal(args ...any) { function Panic (line 54) | func Panic(args ...any) { function TraceContext (line 58) | func TraceContext(ctx context.Context, args ...any) { function DebugContext (line 62) | func DebugContext(ctx context.Context, args ...any) { function InfoContext (line 66) | func InfoContext(ctx context.Context, args ...any) { function WarnContext (line 70) | func WarnContext(ctx context.Context, args ...any) { function ErrorContext (line 74) | func ErrorContext(ctx context.Context, args ...any) { function FatalContext (line 78) | func FatalContext(ctx context.Context, args ...any) { function PanicContext (line 82) | func PanicContext(ctx context.Context, args ...any) { FILE: log/factory.go type Logger (line 9) | type Logger type ContextLogger (line 10) | type ContextLogger type Factory (line 13) | type Factory interface type ObservableFactory (line 22) | type ObservableFactory interface type Entry (line 27) | type Entry struct FILE: log/format.go type Formatter (line 14) | type Formatter struct method Format (line 23) | func (f Formatter) Format(ctx context.Context, level Level, tag string... method FormatWithSimple (line 92) | func (f Formatter) FormatWithSimple(ctx context.Context, level Level, ... function xd (line 158) | func xd(value int, x int) string { function FormatDuration (line 166) | func FormatDuration(duration time.Duration) string { FILE: log/id.go function init (line 11) | func init() { type idKey (line 15) | type idKey struct type ID (line 17) | type ID struct function ContextWithNewID (line 22) | func ContextWithNewID(ctx context.Context) context.Context { function ContextWithID (line 29) | func ContextWithID(ctx context.Context, id ID) context.Context { function IDFromContext (line 33) | func IDFromContext(ctx context.Context) (ID, bool) { FILE: log/level.go constant LevelPanic (line 10) | LevelPanic Level = iota constant LevelFatal (line 11) | LevelFatal constant LevelError (line 12) | LevelError constant LevelWarn (line 13) | LevelWarn constant LevelInfo (line 14) | LevelInfo constant LevelDebug (line 15) | LevelDebug constant LevelTrace (line 16) | LevelTrace function FormatLevel (line 19) | func FormatLevel(level Level) string { function ParseLevel (line 40) | func ParseLevel(level string) (Level, error) { FILE: log/log.go type Options (line 13) | type Options struct function New (line 22) | func New(options Options) (Factory, error) { FILE: log/nop.go type nopFactory (line 12) | type nopFactory struct method Start (line 18) | func (f *nopFactory) Start() error { method Close (line 22) | func (f *nopFactory) Close() error { method Level (line 26) | func (f *nopFactory) Level() Level { method SetLevel (line 30) | func (f *nopFactory) SetLevel(level Level) { method Logger (line 33) | func (f *nopFactory) Logger() ContextLogger { method NewLogger (line 37) | func (f *nopFactory) NewLogger(tag string) ContextLogger { method Trace (line 41) | func (f *nopFactory) Trace(args ...any) { method Debug (line 44) | func (f *nopFactory) Debug(args ...any) { method Info (line 47) | func (f *nopFactory) Info(args ...any) { method Warn (line 50) | func (f *nopFactory) Warn(args ...any) { method Error (line 53) | func (f *nopFactory) Error(args ...any) { method Fatal (line 56) | func (f *nopFactory) Fatal(args ...any) { method Panic (line 59) | func (f *nopFactory) Panic(args ...any) { method TraceContext (line 62) | func (f *nopFactory) TraceContext(ctx context.Context, args ...any) { method DebugContext (line 65) | func (f *nopFactory) DebugContext(ctx context.Context, args ...any) { method InfoContext (line 68) | func (f *nopFactory) InfoContext(ctx context.Context, args ...any) { method WarnContext (line 71) | func (f *nopFactory) WarnContext(ctx context.Context, args ...any) { method ErrorContext (line 74) | func (f *nopFactory) ErrorContext(ctx context.Context, args ...any) { method FatalContext (line 77) | func (f *nopFactory) FatalContext(ctx context.Context, args ...any) { method PanicContext (line 80) | func (f *nopFactory) PanicContext(ctx context.Context, args ...any) { method Subscribe (line 83) | func (f *nopFactory) Subscribe() (subscription observable.Subscription... method UnSubscribe (line 87) | func (f *nopFactory) UnSubscribe(subscription observable.Subscription[... function NewNOPFactory (line 14) | func NewNOPFactory() ObservableFactory { FILE: log/observable.go type defaultFactory (line 17) | type defaultFactory struct method Start (line 62) | func (f *defaultFactory) Start() error { method Close (line 74) | func (f *defaultFactory) Close() error { method Level (line 81) | func (f *defaultFactory) Level() Level { method SetLevel (line 85) | func (f *defaultFactory) SetLevel(level Level) { method Logger (line 89) | func (f *defaultFactory) Logger() ContextLogger { method NewLogger (line 93) | func (f *defaultFactory) NewLogger(tag string) ContextLogger { method Subscribe (line 97) | func (f *defaultFactory) Subscribe() (subscription observable.Subscrip... method UnSubscribe (line 101) | func (f *defaultFactory) UnSubscribe(sub observable.Subscription[Entry... function NewDefaultFactory (line 31) | func NewDefaultFactory( type observableLogger (line 107) | type observableLogger struct method Log (line 112) | func (l *observableLogger) Log(ctx context.Context, level Level, args ... method Trace (line 145) | func (l *observableLogger) Trace(args ...any) { method Debug (line 149) | func (l *observableLogger) Debug(args ...any) { method Info (line 153) | func (l *observableLogger) Info(args ...any) { method Warn (line 157) | func (l *observableLogger) Warn(args ...any) { method Error (line 161) | func (l *observableLogger) Error(args ...any) { method Fatal (line 165) | func (l *observableLogger) Fatal(args ...any) { method Panic (line 169) | func (l *observableLogger) Panic(args ...any) { method TraceContext (line 173) | func (l *observableLogger) TraceContext(ctx context.Context, args ...a... method DebugContext (line 177) | func (l *observableLogger) DebugContext(ctx context.Context, args ...a... method InfoContext (line 181) | func (l *observableLogger) InfoContext(ctx context.Context, args ...an... method WarnContext (line 185) | func (l *observableLogger) WarnContext(ctx context.Context, args ...an... method ErrorContext (line 189) | func (l *observableLogger) ErrorContext(ctx context.Context, args ...a... method FatalContext (line 193) | func (l *observableLogger) FatalContext(ctx context.Context, args ...a... method PanicContext (line 197) | func (l *observableLogger) PanicContext(ctx context.Context, args ...a... FILE: log/override.go type overrideLevelKey (line 7) | type overrideLevelKey struct function ContextWithOverrideLevel (line 9) | func ContextWithOverrideLevel(ctx context.Context, level Level) context.... function OverrideLevelFromContext (line 13) | func OverrideLevelFromContext(origin Level, ctx context.Context) Level { FILE: log/platform.go type PlatformWriter (line 3) | type PlatformWriter interface FILE: option/anytls.go type AnyTLSInboundOptions (line 5) | type AnyTLSInboundOptions struct type AnyTLSUser (line 12) | type AnyTLSUser struct type AnyTLSOutboundOptions (line 17) | type AnyTLSOutboundOptions struct FILE: option/ccm.go type CCMServiceOptions (line 7) | type CCMServiceOptions struct type CCMUser (line 17) | type CCMUser struct FILE: option/certificate.go type _CertificateOptions (line 9) | type _CertificateOptions struct type CertificateOptions (line 16) | type CertificateOptions method MarshalJSON (line 18) | func (o CertificateOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 26) | func (o *CertificateOptions) UnmarshalJSON(data []byte) error { FILE: option/debug.go type DebugOptions (line 5) | type DebugOptions struct FILE: option/direct.go type DirectInboundOptions (line 10) | type DirectInboundOptions struct type _DirectOutboundOptions (line 17) | type _DirectOutboundOptions struct type DirectOutboundOptions (line 27) | type DirectOutboundOptions method UnmarshalJSONContext (line 29) | func (d *DirectOutboundOptions) UnmarshalJSONContext(ctx context.Conte... FILE: option/dns.go type RawDNSOptions (line 21) | type RawDNSOptions struct type LegacyDNSOptions (line 29) | type LegacyDNSOptions struct type DNSOptions (line 33) | type DNSOptions struct method UnmarshalJSONContext (line 48) | func (o *DNSOptions) UnmarshalJSONContext(ctx context.Context, content... type contextKeyDontUpgrade (line 38) | type contextKeyDontUpgrade struct function ContextWithDontUpgrade (line 40) | func ContextWithDontUpgrade(ctx context.Context) context.Context { function dontUpgradeFromContext (line 44) | func dontUpgradeFromContext(ctx context.Context) bool { function rewriteRcode (line 84) | func rewriteRcode(rcodeMap map[string]int, rule *DNSRule) { function rewriteRcodeAction (line 93) | func rewriteRcodeAction(rcodeMap map[string]int, ruleAction *DNSRuleActi... type DNSClientOptions (line 105) | type DNSClientOptions struct type LegacyDNSFakeIPOptions (line 114) | type LegacyDNSFakeIPOptions struct type DNSTransportOptionsRegistry (line 120) | type DNSTransportOptionsRegistry interface type _DNSServerOptions (line 123) | type _DNSServerOptions struct type DNSServerOptions (line 129) | type DNSServerOptions method MarshalJSONContext (line 131) | func (o *DNSServerOptions) MarshalJSONContext(ctx context.Context) ([]... method UnmarshalJSONContext (line 139) | func (o *DNSServerOptions) UnmarshalJSONContext(ctx context.Context, c... method Upgrade (line 175) | func (o *DNSServerOptions) Upgrade(ctx context.Context) error { type DNSServerAddressOptions (line 332) | type DNSServerAddressOptions struct method Build (line 337) | func (o DNSServerAddressOptions) Build() M.Socksaddr { method ServerIsDomain (line 341) | func (o DNSServerAddressOptions) ServerIsDomain() bool { method TakeServerOptions (line 345) | func (o *DNSServerAddressOptions) TakeServerOptions() ServerOptions { method ReplaceServerOptions (line 349) | func (o *DNSServerAddressOptions) ReplaceServerOptions(options ServerO... type LegacyDNSServerOptions (line 353) | type LegacyDNSServerOptions struct type HostsDNSServerOptions (line 363) | type HostsDNSServerOptions struct type RawLocalDNSServerOptions (line 368) | type RawLocalDNSServerOptions struct type LocalDNSServerOptions (line 376) | type LocalDNSServerOptions struct type RemoteDNSServerOptions (line 381) | type RemoteDNSServerOptions struct type RemoteTLSDNSServerOptions (line 389) | type RemoteTLSDNSServerOptions struct type RemoteHTTPSDNSServerOptions (line 394) | type RemoteHTTPSDNSServerOptions struct type FakeIPDNSServerOptions (line 401) | type FakeIPDNSServerOptions struct type DHCPDNSServerOptions (line 406) | type DHCPDNSServerOptions struct FILE: option/dns_record.go type DNSRCode (line 14) | type DNSRCode method MarshalJSON (line 16) | func (r DNSRCode) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 24) | func (r *DNSRCode) UnmarshalJSON(bytes []byte) error { method Build (line 44) | func (r *DNSRCode) Build() int { type DNSRecordOptions (line 51) | type DNSRecordOptions struct method MarshalJSON (line 56) | func (o DNSRecordOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 69) | func (o *DNSRecordOptions) UnmarshalJSON(data []byte) error { method unmarshalBase64 (line 90) | func (o *DNSRecordOptions) unmarshalBase64(binary []byte) error { method Build (line 100) | func (o DNSRecordOptions) Build() dns.RR { FILE: option/endpoint.go type EndpointOptionsRegistry (line 12) | type EndpointOptionsRegistry interface type _Endpoint (line 16) | type _Endpoint struct type Endpoint (line 22) | type Endpoint method MarshalJSONContext (line 24) | func (h *Endpoint) MarshalJSONContext(ctx context.Context) ([]byte, er... method UnmarshalJSONContext (line 28) | func (h *Endpoint) UnmarshalJSONContext(ctx context.Context, content [... FILE: option/experimental.go type ExperimentalOptions (line 5) | type ExperimentalOptions struct type CacheFileOptions (line 12) | type CacheFileOptions struct type ClashAPIOptions (line 21) | type ClashAPIOptions struct type V2RayAPIOptions (line 44) | type V2RayAPIOptions struct type V2RayStatsServiceOptions (line 49) | type V2RayStatsServiceOptions struct FILE: option/group.go type SelectorOutboundOptions (line 5) | type SelectorOutboundOptions struct type URLTestOutboundOptions (line 11) | type URLTestOutboundOptions struct FILE: option/hysteria.go type HysteriaInboundOptions (line 8) | type HysteriaInboundOptions struct type HysteriaUser (line 23) | type HysteriaUser struct type HysteriaOutboundOptions (line 29) | type HysteriaOutboundOptions struct FILE: option/hysteria2.go type Hysteria2InboundOptions (line 13) | type Hysteria2InboundOptions struct type Hysteria2Obfs (line 25) | type Hysteria2Obfs struct type Hysteria2User (line 30) | type Hysteria2User struct type _Hysteria2Masquerade (line 35) | type _Hysteria2Masquerade struct type Hysteria2Masquerade (line 42) | type Hysteria2Masquerade method MarshalJSON (line 44) | func (m Hysteria2Masquerade) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 59) | func (m *Hysteria2Masquerade) UnmarshalJSON(bytes []byte) error { type Hysteria2MasqueradeFile (line 97) | type Hysteria2MasqueradeFile struct type Hysteria2MasqueradeProxy (line 101) | type Hysteria2MasqueradeProxy struct type Hysteria2MasqueradeString (line 106) | type Hysteria2MasqueradeString struct type Hysteria2OutboundOptions (line 112) | type Hysteria2OutboundOptions struct FILE: option/inbound.go type InboundOptionsRegistry (line 14) | type InboundOptionsRegistry interface type _Inbound (line 18) | type _Inbound struct type Inbound (line 24) | type Inbound method MarshalJSONContext (line 26) | func (h *Inbound) MarshalJSONContext(ctx context.Context) ([]byte, err... method UnmarshalJSONContext (line 30) | func (h *Inbound) UnmarshalJSONContext(ctx context.Context, content []... type InboundOptions (line 52) | type InboundOptions struct type ListenOptions (line 60) | type ListenOptions struct method TakeListenOptions (line 105) | func (o *ListenOptions) TakeListenOptions() ListenOptions { method ReplaceListenOptions (line 109) | func (o *ListenOptions) ReplaceListenOptions(options ListenOptions) { type UDPTimeoutCompat (line 84) | type UDPTimeoutCompat method MarshalJSON (line 86) | func (c UDPTimeoutCompat) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 90) | func (c *UDPTimeoutCompat) UnmarshalJSON(data []byte) error { type ListenOptionsWrapper (line 100) | type ListenOptionsWrapper interface FILE: option/multiplex.go type InboundMultiplexOptions (line 3) | type InboundMultiplexOptions struct type OutboundMultiplexOptions (line 9) | type OutboundMultiplexOptions struct type BrutalOptions (line 19) | type BrutalOptions struct FILE: option/naive.go type QuicheCongestionControl (line 9) | type QuicheCongestionControl constant QuicheCongestionControlDefault (line 12) | QuicheCongestionControlDefault QuicheCongestionControl = "" constant QuicheCongestionControlBBR (line 13) | QuicheCongestionControlBBR QuicheCongestionControl = "TBBR" constant QuicheCongestionControlBBRv2 (line 14) | QuicheCongestionControlBBRv2 QuicheCongestionControl = "B2ON" constant QuicheCongestionControlCubic (line 15) | QuicheCongestionControlCubic QuicheCongestionControl = "QBIC" constant QuicheCongestionControlReno (line 16) | QuicheCongestionControlReno QuicheCongestionControl = "RENO" type NaiveInboundOptions (line 19) | type NaiveInboundOptions struct type NaiveOutboundOptions (line 27) | type NaiveOutboundOptions struct FILE: option/ntp.go type NTPOptions (line 5) | type NTPOptions struct FILE: option/ocm.go type OCMServiceOptions (line 7) | type OCMServiceOptions struct type OCMUser (line 17) | type OCMUser struct FILE: option/oom_killer.go type OOMKillerServiceOptions (line 8) | type OOMKillerServiceOptions struct FILE: option/options.go type _Options (line 12) | type _Options struct type Options (line 27) | type Options method UnmarshalJSONContext (line 29) | func (o *Options) UnmarshalJSONContext(ctx context.Context, content []... type LogOptions (line 40) | type LogOptions struct type StubOptions (line 48) | type StubOptions struct function checkOptions (line 50) | func checkOptions(options *Options) error { function checkInbounds (line 62) | func checkInbounds(inbounds []Inbound) error { function checkOutbounds (line 77) | func checkOutbounds(outbounds []Outbound, endpoints []Endpoint) error { FILE: option/outbound.go type OutboundOptionsRegistry (line 15) | type OutboundOptionsRegistry interface type _Outbound (line 19) | type _Outbound struct type Outbound (line 25) | type Outbound method MarshalJSONContext (line 27) | func (h *Outbound) MarshalJSONContext(ctx context.Context) ([]byte, er... method UnmarshalJSONContext (line 31) | func (h *Outbound) UnmarshalJSONContext(ctx context.Context, content [... type DialerOptionsWrapper (line 62) | type DialerOptionsWrapper interface type DialerOptions (line 67) | type DialerOptions struct method TakeDialerOptions (line 135) | func (o *DialerOptions) TakeDialerOptions() DialerOptions { method ReplaceDialerOptions (line 139) | func (o *DialerOptions) ReplaceDialerOptions(options DialerOptions) { type _DomainResolveOptions (line 95) | type _DomainResolveOptions struct type DomainResolveOptions (line 103) | type DomainResolveOptions method MarshalJSON (line 105) | func (o DomainResolveOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 118) | func (o *DomainResolveOptions) UnmarshalJSON(bytes []byte) error { type ServerOptionsWrapper (line 143) | type ServerOptionsWrapper interface type ServerOptions (line 148) | type ServerOptions struct method Build (line 153) | func (o ServerOptions) Build() M.Socksaddr { method ServerIsDomain (line 157) | func (o ServerOptions) ServerIsDomain() bool { method TakeServerOptions (line 161) | func (o *ServerOptions) TakeServerOptions() ServerOptions { method ReplaceServerOptions (line 165) | func (o *ServerOptions) ReplaceServerOptions(options ServerOptions) { FILE: option/platform.go type OnDemandOptions (line 9) | type OnDemandOptions struct type OnDemandRule (line 14) | type OnDemandRule struct type OnDemandRuleAction (line 23) | type OnDemandRuleAction method MarshalJSON (line 25) | func (r *OnDemandRuleAction) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 44) | func (r *OnDemandRuleAction) UnmarshalJSON(bytes []byte) error { type OnDemandRuleInterfaceType (line 66) | type OnDemandRuleInterfaceType method MarshalJSON (line 68) | func (r *OnDemandRuleInterfaceType) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 87) | func (r *OnDemandRuleInterfaceType) UnmarshalJSON(bytes []byte) error { FILE: option/redir.go type RedirectInboundOptions (line 3) | type RedirectInboundOptions struct type TProxyInboundOptions (line 7) | type TProxyInboundOptions struct FILE: option/resolved.go type _ResolvedServiceOptions (line 12) | type _ResolvedServiceOptions struct type ResolvedServiceOptions (line 16) | type ResolvedServiceOptions method MarshalJSONContext (line 18) | func (r ResolvedServiceOptions) MarshalJSONContext(ctx context.Context... method UnmarshalJSONContext (line 28) | func (r *ResolvedServiceOptions) UnmarshalJSONContext(ctx context.Cont... type ResolvedDNSServerOptions (line 42) | type ResolvedDNSServerOptions struct FILE: option/route.go type RouteOptions (line 5) | type RouteOptions struct type GeoIPOptions (line 25) | type GeoIPOptions struct type GeositeOptions (line 31) | type GeositeOptions struct FILE: option/rule.go type _Rule (line 14) | type _Rule struct type Rule (line 20) | type Rule method MarshalJSON (line 22) | func (r Rule) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 36) | func (r *Rule) UnmarshalJSON(bytes []byte) error { method IsValid (line 58) | func (r Rule) IsValid() bool { type RawDefaultRule (line 69) | type RawDefaultRule struct type DefaultRule (line 117) | type DefaultRule struct method MarshalJSON (line 122) | func (r DefaultRule) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 126) | func (r *DefaultRule) UnmarshalJSON(data []byte) error { method IsValid (line 134) | func (r DefaultRule) IsValid() bool { type RawLogicalRule (line 140) | type RawLogicalRule struct type LogicalRule (line 146) | type LogicalRule struct method MarshalJSON (line 151) | func (r LogicalRule) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 155) | func (r *LogicalRule) UnmarshalJSON(data []byte) error { method IsValid (line 163) | func (r *LogicalRule) IsValid() bool { FILE: option/rule_action.go type _RuleAction (line 16) | type _RuleAction struct type RuleAction (line 27) | type RuleAction method MarshalJSON (line 29) | func (r RuleAction) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 61) | func (r *RuleAction) UnmarshalJSON(data []byte) error { type _DNSRuleAction (line 99) | type _DNSRuleAction struct type DNSRuleAction (line 107) | type DNSRuleAction method MarshalJSON (line 109) | func (r DNSRuleAction) MarshalJSON() ([]byte, error) { method UnmarshalJSONContext (line 130) | func (r *DNSRuleAction) UnmarshalJSONContext(ctx context.Context, data... type RouteActionOptions (line 152) | type RouteActionOptions struct type RawRouteOptionsActionOptions (line 157) | type RawRouteOptionsActionOptions struct type RouteOptionsActionOptions (line 173) | type RouteOptionsActionOptions method UnmarshalJSON (line 175) | func (r *RouteOptionsActionOptions) UnmarshalJSON(data []byte) error { type DNSRouteActionOptions (line 189) | type DNSRouteActionOptions struct type _DNSRouteOptionsActionOptions (line 197) | type _DNSRouteOptionsActionOptions struct type DNSRouteOptionsActionOptions (line 204) | type DNSRouteOptionsActionOptions method UnmarshalJSON (line 206) | func (r *DNSRouteOptionsActionOptions) UnmarshalJSON(data []byte) error { type _DirectActionOptions (line 217) | type _DirectActionOptions type DirectActionOptions (line 219) | type DirectActionOptions method Descriptions (line 221) | func (d DirectActionOptions) Descriptions() []string { method UnmarshalJSON (line 259) | func (d *DirectActionOptions) UnmarshalJSON(data []byte) error { type _RejectActionOptions (line 270) | type _RejectActionOptions struct type RejectActionOptions (line 275) | type RejectActionOptions method MarshalJSON (line 277) | func (r RejectActionOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 285) | func (r *RejectActionOptions) UnmarshalJSON(bytes []byte) error { type RouteActionSniff (line 304) | type RouteActionSniff struct type RouteActionResolve (line 309) | type RouteActionResolve struct type DNSRouteActionPredefined (line 317) | type DNSRouteActionPredefined struct FILE: option/rule_dns.go type _DNSRule (line 15) | type _DNSRule struct type DNSRule (line 21) | type DNSRule method MarshalJSON (line 23) | func (r DNSRule) MarshalJSON() ([]byte, error) { method UnmarshalJSONContext (line 37) | func (r *DNSRule) UnmarshalJSONContext(ctx context.Context, bytes []by... method IsValid (line 59) | func (r DNSRule) IsValid() bool { type RawDefaultDNSRule (line 70) | type RawDefaultDNSRule struct type DefaultDNSRule (line 120) | type DefaultDNSRule struct method MarshalJSON (line 125) | func (r DefaultDNSRule) MarshalJSON() ([]byte, error) { method UnmarshalJSONContext (line 129) | func (r *DefaultDNSRule) UnmarshalJSONContext(ctx context.Context, dat... method IsValid (line 137) | func (r DefaultDNSRule) IsValid() bool { type RawLogicalDNSRule (line 143) | type RawLogicalDNSRule struct type LogicalDNSRule (line 149) | type LogicalDNSRule struct method MarshalJSON (line 154) | func (r LogicalDNSRule) MarshalJSON() ([]byte, error) { method UnmarshalJSONContext (line 158) | func (r *LogicalDNSRule) UnmarshalJSONContext(ctx context.Context, dat... method IsValid (line 166) | func (r *LogicalDNSRule) IsValid() bool { FILE: option/rule_set.go type _RuleSet (line 20) | type _RuleSet struct type RuleSet (line 29) | type RuleSet method MarshalJSON (line 31) | func (r RuleSet) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 59) | func (r *RuleSet) UnmarshalJSON(bytes []byte) error { function ruleSetDefaultFormat (line 105) | func ruleSetDefaultFormat(path string) string { type LocalRuleSet (line 119) | type LocalRuleSet struct type RemoteRuleSet (line 123) | type RemoteRuleSet struct type _HeadlessRule (line 129) | type _HeadlessRule struct type HeadlessRule (line 135) | type HeadlessRule method MarshalJSON (line 137) | func (r HeadlessRule) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 151) | func (r *HeadlessRule) UnmarshalJSON(bytes []byte) error { method IsValid (line 173) | func (r HeadlessRule) IsValid() bool { type DefaultHeadlessRule (line 184) | type DefaultHeadlessRule struct method IsValid (line 219) | func (r DefaultHeadlessRule) IsValid() bool { type LogicalHeadlessRule (line 225) | type LogicalHeadlessRule struct method IsValid (line 231) | func (r LogicalHeadlessRule) IsValid() bool { type _PlainRuleSetCompat (line 235) | type _PlainRuleSetCompat struct type PlainRuleSetCompat (line 241) | type PlainRuleSetCompat method MarshalJSON (line 243) | func (r PlainRuleSetCompat) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 254) | func (r *PlainRuleSetCompat) UnmarshalJSON(bytes []byte) error { method Upgrade (line 276) | func (r PlainRuleSetCompat) Upgrade() (PlainRuleSet, error) { type PlainRuleSet (line 285) | type PlainRuleSet struct FILE: option/service.go type ServiceOptionsRegistry (line 12) | type ServiceOptionsRegistry interface type _Service (line 16) | type _Service struct type Service (line 22) | type Service method MarshalJSONContext (line 24) | func (h *Service) MarshalJSONContext(ctx context.Context) ([]byte, err... method UnmarshalJSONContext (line 28) | func (h *Service) UnmarshalJSONContext(ctx context.Context, content []... FILE: option/shadowsocks.go type ShadowsocksInboundOptions (line 3) | type ShadowsocksInboundOptions struct type ShadowsocksUser (line 14) | type ShadowsocksUser struct type ShadowsocksDestination (line 19) | type ShadowsocksDestination struct type ShadowsocksOutboundOptions (line 25) | type ShadowsocksOutboundOptions struct FILE: option/shadowsocksr.go type ShadowsocksROutboundOptions (line 3) | type ShadowsocksROutboundOptions struct FILE: option/shadowtls.go type ShadowTLSInboundOptions (line 10) | type ShadowTLSInboundOptions struct type WildcardSNI (line 21) | type WildcardSNI method MarshalJSON (line 29) | func (w WildcardSNI) MarshalJSON() ([]byte, error) { method String (line 33) | func (w WildcardSNI) String() string { method UnmarshalJSON (line 46) | func (w *WildcardSNI) UnmarshalJSON(bytes []byte) error { constant ShadowTLSWildcardSNIOff (line 24) | ShadowTLSWildcardSNIOff WildcardSNI = iota constant ShadowTLSWildcardSNIAuthed (line 25) | ShadowTLSWildcardSNIAuthed constant ShadowTLSWildcardSNIAll (line 26) | ShadowTLSWildcardSNIAll type ShadowTLSUser (line 65) | type ShadowTLSUser struct type ShadowTLSHandshakeOptions (line 70) | type ShadowTLSHandshakeOptions struct type ShadowTLSOutboundOptions (line 75) | type ShadowTLSOutboundOptions struct FILE: option/simple.go type SocksInboundOptions (line 8) | type SocksInboundOptions struct type HTTPMixedInboundOptions (line 14) | type HTTPMixedInboundOptions struct type SOCKSOutboundOptions (line 22) | type SOCKSOutboundOptions struct type HTTPOutboundOptions (line 32) | type HTTPOutboundOptions struct FILE: option/ssh.go type SSHOutboundOptions (line 5) | type SSHOutboundOptions struct FILE: option/ssmapi.go type SSMAPIServiceOptions (line 7) | type SSMAPIServiceOptions struct FILE: option/tailscale.go type TailscaleEndpointOptions (line 13) | type TailscaleEndpointOptions struct type TailscaleDNSServerOptions (line 34) | type TailscaleDNSServerOptions struct type DERPServiceOptions (line 39) | type DERPServiceOptions struct type _DERPVerifyClientURLOptions (line 52) | type _DERPVerifyClientURLOptions struct type DERPVerifyClientURLOptions (line 57) | type DERPVerifyClientURLOptions method ServerIsDomain (line 59) | func (d DERPVerifyClientURLOptions) ServerIsDomain() bool { method MarshalJSON (line 67) | func (d DERPVerifyClientURLOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 75) | func (d *DERPVerifyClientURLOptions) UnmarshalJSON(bytes []byte) error { type DERPMeshOptions (line 85) | type DERPMeshOptions struct type _DERPSTUNListenOptions (line 92) | type _DERPSTUNListenOptions struct type DERPSTUNListenOptions (line 97) | type DERPSTUNListenOptions method MarshalJSON (line 99) | func (d DERPSTUNListenOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 113) | func (d *DERPSTUNListenOptions) UnmarshalJSON(bytes []byte) error { FILE: option/tls.go type InboundTLSOptions (line 12) | type InboundTLSOptions struct type ClientAuthType (line 36) | type ClientAuthType method MarshalJSON (line 38) | func (t ClientAuthType) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 57) | func (t *ClientAuthType) UnmarshalJSON(data []byte) error { type InboundTLSOptionsContainer (line 80) | type InboundTLSOptionsContainer struct method TakeInboundTLSOptions (line 89) | func (o *InboundTLSOptionsContainer) TakeInboundTLSOptions() *InboundT... method ReplaceInboundTLSOptions (line 93) | func (o *InboundTLSOptionsContainer) ReplaceInboundTLSOptions(options ... type InboundTLSOptionsWrapper (line 84) | type InboundTLSOptionsWrapper interface type OutboundTLSOptions (line 97) | type OutboundTLSOptions struct type OutboundTLSOptionsContainer (line 124) | type OutboundTLSOptionsContainer struct method TakeOutboundTLSOptions (line 133) | func (o *OutboundTLSOptionsContainer) TakeOutboundTLSOptions() *Outbou... method ReplaceOutboundTLSOptions (line 137) | func (o *OutboundTLSOptionsContainer) ReplaceOutboundTLSOptions(option... type OutboundTLSOptionsWrapper (line 128) | type OutboundTLSOptionsWrapper interface type CurvePreference (line 141) | type CurvePreference method MarshalJSON (line 151) | func (c CurvePreference) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 170) | func (c *CurvePreference) UnmarshalJSON(data []byte) error { constant CurveP256 (line 144) | CurveP256 = 23 constant CurveP384 (line 145) | CurveP384 = 24 constant CurveP521 (line 146) | CurveP521 = 25 constant X25519 (line 147) | X25519 = 29 constant X25519MLKEM768 (line 148) | X25519MLKEM768 = 4588 type InboundRealityOptions (line 193) | type InboundRealityOptions struct type InboundRealityHandshakeOptions (line 201) | type InboundRealityHandshakeOptions struct type InboundECHOptions (line 206) | type InboundECHOptions struct type OutboundECHOptions (line 217) | type OutboundECHOptions struct type OutboundUTLSOptions (line 229) | type OutboundUTLSOptions struct type OutboundRealityOptions (line 234) | type OutboundRealityOptions struct FILE: option/tls_acme.go type InboundACMEOptions (line 11) | type InboundACMEOptions struct type ACMEExternalAccountOptions (line 25) | type ACMEExternalAccountOptions struct type _ACMEDNS01ChallengeOptions (line 30) | type _ACMEDNS01ChallengeOptions struct type ACMEDNS01ChallengeOptions (line 37) | type ACMEDNS01ChallengeOptions method MarshalJSON (line 39) | func (o ACMEDNS01ChallengeOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 56) | func (o *ACMEDNS01ChallengeOptions) UnmarshalJSON(bytes []byte) error { type ACMEDNS01AliDNSOptions (line 79) | type ACMEDNS01AliDNSOptions struct type ACMEDNS01CloudflareOptions (line 86) | type ACMEDNS01CloudflareOptions struct type ACMEDNS01ACMEDNSOptions (line 91) | type ACMEDNS01ACMEDNSOptions struct FILE: option/tor.go type TorOutboundOptions (line 3) | type TorOutboundOptions struct FILE: option/trojan.go type TrojanInboundOptions (line 3) | type TrojanInboundOptions struct type TrojanUser (line 13) | type TrojanUser struct type TrojanOutboundOptions (line 18) | type TrojanOutboundOptions struct FILE: option/tuic.go type TUICInboundOptions (line 5) | type TUICInboundOptions struct type TUICUser (line 15) | type TUICUser struct type TUICOutboundOptions (line 21) | type TUICOutboundOptions struct FILE: option/tun.go type TunInboundOptions (line 13) | type TunInboundOptions struct type FwMark (line 67) | type FwMark method MarshalJSON (line 69) | func (f FwMark) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 73) | func (f *FwMark) UnmarshalJSON(bytes []byte) error { FILE: option/tun_platform.go type TunPlatformOptions (line 5) | type TunPlatformOptions struct type HTTPProxyOptions (line 9) | type HTTPProxyOptions struct FILE: option/types.go type NetworkList (line 15) | type NetworkList method UnmarshalJSON (line 17) | func (v *NetworkList) UnmarshalJSON(content []byte) error { method Build (line 40) | func (v NetworkList) Build() []string { type DomainStrategy (line 47) | type DomainStrategy method String (line 49) | func (s DomainStrategy) String() string { method MarshalJSON (line 66) | func (s DomainStrategy) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 86) | func (s *DomainStrategy) UnmarshalJSON(bytes []byte) error { type DNSQueryType (line 109) | type DNSQueryType method String (line 111) | func (t DNSQueryType) String() string { method MarshalJSON (line 119) | func (t DNSQueryType) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 127) | func (t *DNSQueryType) UnmarshalJSON(bytes []byte) error { function DNSQueryTypeToString (line 146) | func DNSQueryTypeToString(queryType uint16) string { type NetworkStrategy (line 154) | type NetworkStrategy method MarshalJSON (line 156) | func (n NetworkStrategy) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 160) | func (n *NetworkStrategy) UnmarshalJSON(content []byte) error { type InterfaceType (line 174) | type InterfaceType method Build (line 176) | func (t InterfaceType) Build() C.InterfaceType { method MarshalJSON (line 180) | func (t InterfaceType) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 184) | func (t *InterfaceType) UnmarshalJSON(content []byte) error { FILE: option/udp_over_tcp.go type _UDPOverTCPOptions (line 8) | type _UDPOverTCPOptions struct type UDPOverTCPOptions (line 13) | type UDPOverTCPOptions method MarshalJSON (line 15) | func (o UDPOverTCPOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 24) | func (o *UDPOverTCPOptions) UnmarshalJSON(bytes []byte) error { FILE: option/v2ray_transport.go type _V2RayTransportOptions (line 11) | type _V2RayTransportOptions struct type V2RayTransportOptions (line 20) | type V2RayTransportOptions method MarshalJSON (line 22) | func (o V2RayTransportOptions) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 43) | func (o *V2RayTransportOptions) UnmarshalJSON(bytes []byte) error { type V2RayHTTPOptions (line 70) | type V2RayHTTPOptions struct type V2RayWebsocketOptions (line 79) | type V2RayWebsocketOptions struct type V2RayQUICOptions (line 86) | type V2RayQUICOptions struct type V2RayGRPCOptions (line 88) | type V2RayGRPCOptions struct type V2RayHTTPUpgradeOptions (line 96) | type V2RayHTTPUpgradeOptions struct FILE: option/vless.go type VLESSInboundOptions (line 3) | type VLESSInboundOptions struct type VLESSUser (line 11) | type VLESSUser struct type VLESSOutboundOptions (line 17) | type VLESSOutboundOptions struct FILE: option/vmess.go type VMessInboundOptions (line 3) | type VMessInboundOptions struct type VMessUser (line 11) | type VMessUser struct type VMessOutboundOptions (line 17) | type VMessOutboundOptions struct FILE: option/wireguard.go type WireGuardEndpointOptions (line 9) | type WireGuardEndpointOptions struct type WireGuardPeer (line 22) | type WireGuardPeer struct FILE: protocol/anytls/inbound.go function RegisterInbound (line 27) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 31) | type Inbound struct method Start (line 82) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 95) | func (h *Inbound) Close() error { method NewConnectionEx (line 99) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... function NewInbound (line 40) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type inboundHandler (line 116) | type inboundHandler method NewConnectionEx (line 118) | func (h *inboundHandler) NewConnectionEx(ctx context.Context, conn net... FILE: protocol/anytls/outbound.go function RegisterOutbound (line 24) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 28) | type Outbound struct method dialOut (line 102) | func (h *Outbound) dialOut(ctx context.Context) (net.Conn, error) { method DialContext (line 106) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 121) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method Close (line 129) | func (h *Outbound) Close() error { function NewOutbound (line 38) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type anytlsDialer (line 92) | type anytlsDialer method DialContext (line 94) | func (d anytlsDialer) DialContext(ctx context.Context, network string,... method ListenPacket (line 98) | func (d anytlsDialer) ListenPacket(ctx context.Context, destination M.... FILE: protocol/block/outbound.go function RegisterOutbound (line 18) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 22) | type Outbound struct method DialContext (line 34) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 39) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function New (line 27) | func New(ctx context.Context, router adapter.Router, logger log.ContextL... FILE: protocol/direct/inbound.go function RegisterInbound (line 21) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 25) | type Inbound struct method Start (line 72) | func (i *Inbound) Start(stage adapter.StartStage) error { method Close (line 79) | func (i *Inbound) Close() error { method NewPacketEx (line 83) | func (i *Inbound) NewPacketEx(buffer *buf.Buffer, source M.Socksaddr) { method NewConnectionEx (line 87) | func (i *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 106) | func (i *Inbound) NewPacketConnectionEx(ctx context.Context, conn N.Pa... method preparePacketConnection (line 133) | func (i *Inbound) preparePacketConnection(source M.Socksaddr, destinat... function NewInbound (line 36) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type directPacketWriter (line 137) | type directPacketWriter struct method WritePacket (line 142) | func (w *directPacketWriter) WritePacket(buffer *buf.Buffer, addr M.So... FILE: protocol/direct/loopback_detect.go type loopBackDetector (line 13) | type loopBackDetector struct method NewConn (line 29) | func (l *loopBackDetector) NewConn(conn net.Conn) net.Conn { method NewPacketConn (line 56) | func (l *loopBackDetector) NewPacketConn(conn N.NetPacketConn, destina... method CheckConn (line 73) | func (l *loopBackDetector) CheckConn(source netip.AddrPort, local neti... method CheckPacketConn (line 80) | func (l *loopBackDetector) CheckPacketConn(source netip.AddrPort, loca... function newLoopBackDetector (line 21) | func newLoopBackDetector(networkManager adapter.NetworkManager) *loopBac... type loopBackDetectWrapper (line 99) | type loopBackDetectWrapper struct method Close (line 106) | func (w *loopBackDetectWrapper) Close() error { method ReaderReplaceable (line 115) | func (w *loopBackDetectWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 119) | func (w *loopBackDetectWrapper) WriterReplaceable() bool { method Upstream (line 123) | func (w *loopBackDetectWrapper) Upstream() any { type loopBackDetectPacketWrapper (line 127) | type loopBackDetectPacketWrapper struct method Close (line 134) | func (w *loopBackDetectPacketWrapper) Close() error { method ReaderReplaceable (line 143) | func (w *loopBackDetectPacketWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 147) | func (w *loopBackDetectPacketWrapper) WriterReplaceable() bool { method Upstream (line 151) | func (w *loopBackDetectPacketWrapper) Upstream() any { type abstractUDPConn (line 155) | type abstractUDPConn interface type loopBackDetectUDPWrapper (line 160) | type loopBackDetectUDPWrapper struct method Close (line 167) | func (w *loopBackDetectUDPWrapper) Close() error { method ReaderReplaceable (line 176) | func (w *loopBackDetectUDPWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 180) | func (w *loopBackDetectUDPWrapper) WriterReplaceable() bool { method Upstream (line 184) | func (w *loopBackDetectUDPWrapper) Upstream() any { FILE: protocol/direct/outbound.go function RegisterOutbound (line 25) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 36) | type Outbound struct method DialContext (line 79) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 98) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method NewDirectRouteConnection (line 111) | func (h *Outbound) NewDirectRouteConnection(metadata adapter.InboundCo... method DialParallel (line 121) | func (h *Outbound) DialParallel(ctx context.Context, network string, d... method DialParallelNetwork (line 135) | func (h *Outbound) DialParallelNetwork(ctx context.Context, network st... method ListenSerialNetworkPacket (line 149) | func (h *Outbound) ListenSerialNetworkPacket(ctx context.Context, dest... method IsEmpty (line 161) | func (h *Outbound) IsEmpty() bool { function NewOutbound (line 47) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/dns/handle.go function HandleStreamDNSRequest (line 22) | func HandleStreamDNSRequest(ctx context.Context, router adapter.DNSRoute... function NewDNSPacketConnection (line 65) | func NewDNSPacketConnection(ctx context.Context, router adapter.DNSRoute... function newDNSPacketConnection (line 152) | func newDNSPacketConnection(ctx context.Context, router adapter.DNSRoute... FILE: protocol/dns/outbound.go function RegisterOutbound (line 20) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 24) | type Outbound struct method DialContext (line 38) | func (d *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 42) | func (d *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method NewConnectionEx (line 46) | func (d *Outbound) NewConnectionEx(ctx context.Context, conn net.Conn,... method NewPacketConnectionEx (line 61) | func (d *Outbound) NewPacketConnectionEx(ctx context.Context, conn N.P... function NewOutbound (line 30) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/group/selector.go function RegisterSelector (line 23) | func RegisterSelector(registry *outbound.Registry) { type Selector (line 33) | type Selector struct method Network (line 66) | func (s *Selector) Network() []string { method Start (line 74) | func (s *Selector) Start() error { method Now (line 110) | func (s *Selector) Now() string { method All (line 118) | func (s *Selector) All() []string { method SelectOutbound (line 122) | func (s *Selector) SelectOutbound(tag string) bool { method DialContext (line 143) | func (s *Selector) DialContext(ctx context.Context, network string, de... method ListenPacket (line 151) | func (s *Selector) ListenPacket(ctx context.Context, destination M.Soc... method NewConnectionEx (line 159) | func (s *Selector) NewConnectionEx(ctx context.Context, conn net.Conn,... method NewPacketConnectionEx (line 169) | func (s *Selector) NewPacketConnectionEx(ctx context.Context, conn N.P... method NewDirectRouteConnection (line 179) | func (s *Selector) NewDirectRouteConnection(metadata adapter.InboundCo... function NewSelector (line 47) | func NewSelector(ctx context.Context, router adapter.Router, logger log.... function RealTag (line 187) | func RealTag(detour adapter.Outbound) string { FILE: protocol/group/urltest.go function RegisterURLTest (line 28) | func RegisterURLTest(registry *outbound.Registry) { type URLTest (line 34) | type URLTest struct method Start (line 71) | func (s *URLTest) Start() error { method PostStart (line 88) | func (s *URLTest) PostStart() error { method Close (line 93) | func (s *URLTest) Close() error { method Now (line 99) | func (s *URLTest) Now() string { method All (line 108) | func (s *URLTest) All() []string { method URLTest (line 112) | func (s *URLTest) URLTest(ctx context.Context) (map[string]uint16, err... method CheckOutbounds (line 116) | func (s *URLTest) CheckOutbounds() { method DialContext (line 120) | func (s *URLTest) DialContext(ctx context.Context, network string, des... method ListenPacket (line 146) | func (s *URLTest) ListenPacket(ctx context.Context, destination M.Sock... method NewConnectionEx (line 164) | func (s *URLTest) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 169) | func (s *URLTest) NewPacketConnectionEx(ctx context.Context, conn N.Pa... method NewDirectRouteConnection (line 174) | func (s *URLTest) NewDirectRouteConnection(metadata adapter.InboundCon... function NewURLTest (line 50) | func NewURLTest(ctx context.Context, router adapter.Router, logger log.C... type URLTestGroup (line 189) | type URLTestGroup struct method PostStart (line 252) | func (g *URLTestGroup) PostStart() { method Touch (line 260) | func (g *URLTestGroup) Touch() { method Close (line 275) | func (g *URLTestGroup) Close() error { method Select (line 287) | func (g *URLTestGroup) Select(network string) (adapter.Outbound, bool) { method loopCheck (line 331) | func (g *URLTestGroup) loopCheck() { method CheckOutbounds (line 355) | func (g *URLTestGroup) CheckOutbounds(force bool) { method URLTest (line 359) | func (g *URLTestGroup) URLTest(ctx context.Context) (map[string]uint16... method urlTest (line 363) | func (g *URLTestGroup) urlTest(ctx context.Context, force bool) (map[s... method performUpdateCheck (line 412) | func (g *URLTestGroup) performUpdateCheck() { function NewURLTestGroup (line 214) | func NewURLTestGroup(ctx context.Context, outboundManager adapter.Outbou... FILE: protocol/http/inbound.go function RegisterInbound (line 23) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 29) | type Inbound struct method Start (line 69) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 82) | func (h *Inbound) Close() error { method NewConnectionEx (line 89) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newUserConnection (line 106) | func (h *Inbound) newUserConnection(ctx context.Context, conn net.Conn... method streamUserPacketConnection (line 120) | func (h *Inbound) streamUserPacketConnection(ctx context.Context, conn... function NewInbound (line 38) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/http/outbound.go function RegisterOutbound (line 22) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 26) | type Outbound struct method DialContext (line 55) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 63) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 32) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/hysteria/inbound.go function RegisterInbound (line 22) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 26) | type Inbound struct method NewConnectionEx (line 113) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 135) | func (h *Inbound) NewPacketConnectionEx(ctx context.Context, conn N.Pa... method Start (line 157) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 174) | func (h *Inbound) Close() error { function NewInbound (line 36) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/hysteria/outbound.go function RegisterOutbound (line 26) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 35) | type Outbound struct method DialContext (line 99) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 115) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 120) | func (h *Outbound) InterfaceUpdated() { method Close (line 124) | func (h *Outbound) Close() error { function NewOutbound (line 41) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/hysteria2/inbound.go function RegisterInbound (line 27) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 31) | type Inbound struct method NewConnectionEx (line 146) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 168) | func (h *Inbound) NewPacketConnectionEx(ctx context.Context, conn N.Pa... method Start (line 190) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 207) | func (h *Inbound) Close() error { function NewInbound (line 41) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/hysteria2/outbound.go function RegisterOutbound (line 27) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 36) | type Outbound struct method DialContext (line 93) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 109) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 114) | func (h *Outbound) InterfaceUpdated() { method Close (line 118) | func (h *Outbound) Close() error { function NewOutbound (line 42) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/mixed/inbound.go function RegisterInbound (line 27) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 33) | type Inbound struct method Start (line 81) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 94) | func (h *Inbound) Close() error { method NewConnectionEx (line 101) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newConnection (line 113) | func (h *Inbound) newConnection(ctx context.Context, conn net.Conn, me... method newUserConnection (line 134) | func (h *Inbound) newUserConnection(ctx context.Context, conn net.Conn... method streamUserPacketConnection (line 148) | func (h *Inbound) streamUserPacketConnection(ctx context.Context, conn... function NewInbound (line 43) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/naive/inbound.go function RegisterInbound (line 34) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 38) | type Inbound struct method Start (line 86) | func (n *Inbound) Start(stage adapter.StartStage) error { method Close (line 138) | func (n *Inbound) Close() error { method ServeHTTP (line 147) | func (n *Inbound) ServeHTTP(writer http.ResponseWriter, request *http.... method newConnection (line 198) | func (n *Inbound) newConnection(ctx context.Context, waitForClose bool... method badRequest (line 229) | func (n *Inbound) badRequest(ctx context.Context, request *http.Reques... function NewInbound (line 53) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... function rejectHTTP (line 233) | func rejectHTTP(writer http.ResponseWriter, statusCode int) { FILE: protocol/naive/inbound_conn.go constant paddingCount (line 19) | paddingCount = 8 function generatePaddingHeader (line 21) | func generatePaddingHeader() string { type paddingConn (line 35) | type paddingConn struct method readWithPadding (line 42) | func (p *paddingConn) readWithPadding(reader io.Reader, buffer []byte)... method writeWithPadding (line 89) | func (p *paddingConn) writeWithPadding(writer io.Writer, data []byte) ... method writeBufferWithPadding (line 109) | func (p *paddingConn) writeBufferWithPadding(writer io.Writer, buffer ... method writeChunked (line 126) | func (p *paddingConn) writeChunked(writer io.Writer, data []byte) (n i... method frontHeadroom (line 146) | func (p *paddingConn) frontHeadroom() int { method rearHeadroom (line 153) | func (p *paddingConn) rearHeadroom() int { method writerMTU (line 160) | func (p *paddingConn) writerMTU() int { method readerReplaceable (line 167) | func (p *paddingConn) readerReplaceable() bool { method writerReplaceable (line 171) | func (p *paddingConn) writerReplaceable() bool { type naiveConn (line 175) | type naiveConn struct method Read (line 180) | func (c *naiveConn) Read(p []byte) (n int, err error) { method Write (line 185) | func (c *naiveConn) Write(p []byte) (n int, err error) { method WriteBuffer (line 190) | func (c *naiveConn) WriteBuffer(buffer *buf.Buffer) error { method FrontHeadroom (line 196) | func (c *naiveConn) FrontHeadroom() int { return c.frontHeadroom() } method RearHeadroom (line 197) | func (c *naiveConn) RearHeadroom() int { return c.rearHeadroom() } method WriterMTU (line 198) | func (c *naiveConn) WriterMTU() int { return c.writerMTU() } method Upstream (line 199) | func (c *naiveConn) Upstream() any { return c.Conn } method ReaderReplaceable (line 200) | func (c *naiveConn) ReaderReplaceable() bool { return c.readerReplacea... method WriterReplaceable (line 201) | func (c *naiveConn) WriterReplaceable() bool { return c.writerReplacea... type naiveH2Conn (line 203) | type naiveH2Conn struct method Read (line 211) | func (c *naiveH2Conn) Read(p []byte) (n int, err error) { method Write (line 216) | func (c *naiveH2Conn) Write(p []byte) (n int, err error) { method WriteBuffer (line 224) | func (c *naiveH2Conn) WriteBuffer(buffer *buf.Buffer) error { method Close (line 233) | func (c *naiveH2Conn) Close() error { method LocalAddr (line 237) | func (c *naiveH2Conn) LocalAddr() net.Addr { return M.S... method RemoteAddr (line 238) | func (c *naiveH2Conn) RemoteAddr() net.Addr { return c.r... method SetDeadline (line 239) | func (c *naiveH2Conn) SetDeadline(t time.Time) error { return os.... method SetReadDeadline (line 240) | func (c *naiveH2Conn) SetReadDeadline(t time.Time) error { return os.... method SetWriteDeadline (line 241) | func (c *naiveH2Conn) SetWriteDeadline(t time.Time) error { return os.... method NeedAdditionalReadDeadline (line 242) | func (c *naiveH2Conn) NeedAdditionalReadDeadline() bool { return true } method UpstreamReader (line 243) | func (c *naiveH2Conn) UpstreamReader() any { return c.r... method UpstreamWriter (line 244) | func (c *naiveH2Conn) UpstreamWriter() any { return c.w... method FrontHeadroom (line 245) | func (c *naiveH2Conn) FrontHeadroom() int { return c.f... method RearHeadroom (line 246) | func (c *naiveH2Conn) RearHeadroom() int { return c.r... method WriterMTU (line 247) | func (c *naiveH2Conn) WriterMTU() int { return c.w... method ReaderReplaceable (line 248) | func (c *naiveH2Conn) ReaderReplaceable() bool { return c.r... method WriterReplaceable (line 249) | func (c *naiveH2Conn) WriterReplaceable() bool { return c.w... FILE: protocol/naive/outbound.go function RegisterOutbound (line 32) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 36) | type Outbound struct method Start (line 222) | func (h *Outbound) Start(stage adapter.StartStage) error { method DialContext (line 234) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 250) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 257) | func (h *Outbound) InterfaceUpdated() { method Close (line 261) | func (h *Outbound) Close() error { method Client (line 265) | func (h *Outbound) Client() *cronet.NaiveClient { function NewOutbound (line 44) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type naiveDialer (line 269) | type naiveDialer struct method DialContext (line 273) | func (d *naiveDialer) DialContext(ctx context.Context, network string,... FILE: protocol/naive/quic/inbound_init.go function init (line 27) | func init() { FILE: protocol/redirect/redirect.go function RegisterRedirect (line 18) | func RegisterRedirect(registry *inbound.Registry) { type Redirect (line 22) | type Redirect struct method Start (line 45) | func (h *Redirect) Start(stage adapter.StartStage) error { method Close (line 52) | func (h *Redirect) Close() error { method NewConnectionEx (line 56) | func (h *Redirect) NewConnectionEx(ctx context.Context, conn net.Conn,... function NewRedirect (line 29) | func NewRedirect(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/redirect/tproxy.go function RegisterTProxy (line 24) | func RegisterTProxy(registry *inbound.Registry) { type TProxy (line 28) | type TProxy struct method Start (line 63) | func (t *TProxy) Start(stage adapter.StartStage) error { method Close (line 70) | func (t *TProxy) Close() error { method NewConnectionEx (line 74) | func (t *TProxy) NewConnectionEx(ctx context.Context, conn net.Conn, m... method NewPacketConnectionEx (line 82) | func (t *TProxy) NewPacketConnectionEx(ctx context.Context, conn N.Pac... method NewPacketEx (line 94) | func (t *TProxy) NewPacketEx(buffer *buf.Buffer, oob []byte, source M.... method preparePacketConnection (line 103) | func (t *TProxy) preparePacketConnection(source M.Socksaddr, destinati... function NewTProxy (line 37) | func NewTProxy(ctx context.Context, router adapter.Router, logger log.Co... type tproxyPacketWriter (line 116) | type tproxyPacketWriter struct method WritePacket (line 124) | func (w *tproxyPacketWriter) WritePacket(buffer *buf.Buffer, destinati... FILE: protocol/shadowsocks/inbound.go function RegisterInbound (line 28) | func RegisterInbound(registry *inbound.Registry) { function NewInbound (line 32) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type Inbound (line 49) | type Inbound struct method Start (line 98) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 105) | func (h *Inbound) Close() error { method NewConnectionEx (line 110) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketEx (line 123) | func (h *Inbound) NewPacketEx(buffer *buf.Buffer, source M.Socksaddr) { method newConnection (line 130) | func (h *Inbound) newConnection(ctx context.Context, conn net.Conn, me... method newPacketConnection (line 137) | func (h *Inbound) newPacketConnection(ctx context.Context, conn N.Pack... method NewError (line 176) | func (h *Inbound) NewError(ctx context.Context, err error) { function newInbound (line 58) | func newInbound(ctx context.Context, router adapter.Router, logger log.C... type stubPacketConn (line 148) | type stubPacketConn struct method ReadPacket (line 152) | func (c *stubPacketConn) ReadPacket(buffer *buf.Buffer) (destination M... method Close (line 156) | func (c *stubPacketConn) Close() error { method LocalAddr (line 160) | func (c *stubPacketConn) LocalAddr() net.Addr { method SetDeadline (line 164) | func (c *stubPacketConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 168) | func (c *stubPacketConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 172) | func (c *stubPacketConn) SetWriteDeadline(t time.Time) error { function NewError (line 181) | func NewError(logger logger.ContextLogger, ctx context.Context, err erro... FILE: protocol/shadowsocks/inbound_multi.go type MultiInbound (line 36) | type MultiInbound struct method Start (line 110) | func (h *MultiInbound) Start(stage adapter.StartStage) error { method Close (line 117) | func (h *MultiInbound) Close() error { method SetTracker (line 121) | func (h *MultiInbound) SetTracker(tracker adapter.SSMTracker) { method UpdateUsers (line 125) | func (h *MultiInbound) UpdateUsers(users []string, uPSKs []string) err... method NewConnectionEx (line 141) | func (h *MultiInbound) NewConnectionEx(ctx context.Context, conn net.C... method NewPacketEx (line 154) | func (h *MultiInbound) NewPacketEx(buffer *buf.Buffer, source M.Socksa... method newConnection (line 161) | func (h *MultiInbound) newConnection(ctx context.Context, conn net.Con... method newPacketConnection (line 184) | func (h *MultiInbound) newPacketConnection(ctx context.Context, conn N... method NewError (line 210) | func (h *MultiInbound) NewError(ctx context.Context, err error) { function newMultiInbound (line 47) | func newMultiInbound(ctx context.Context, router adapter.Router, logger ... FILE: protocol/shadowsocks/inbound_relay.go type RelayInbound (line 30) | type RelayInbound struct method Start (line 89) | func (h *RelayInbound) Start(stage adapter.StartStage) error { method Close (line 96) | func (h *RelayInbound) Close() error { method NewConnectionEx (line 101) | func (h *RelayInbound) NewConnectionEx(ctx context.Context, conn net.C... method NewPacketEx (line 114) | func (h *RelayInbound) NewPacketEx(buffer *buf.Buffer, source M.Socksa... method newConnection (line 121) | func (h *RelayInbound) newConnection(ctx context.Context, conn net.Con... method newPacketConnection (line 141) | func (h *RelayInbound) newPacketConnection(ctx context.Context, conn N... method NewError (line 164) | func (h *RelayInbound) NewError(ctx context.Context, err error) { function newRelayInbound (line 40) | func newRelayInbound(ctx context.Context, router adapter.Router, logger ... FILE: protocol/shadowsocks/outbound.go function RegisterOutbound (line 25) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 29) | type Outbound struct method DialContext (line 80) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 108) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 127) | func (h *Outbound) InterfaceUpdated() { method Close (line 133) | func (h *Outbound) Close() error { function NewOutbound (line 40) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type shadowsocksDialer (line 139) | type shadowsocksDialer method DialContext (line 141) | func (h *shadowsocksDialer) DialContext(ctx context.Context, network s... method ListenPacket (line 169) | func (h *shadowsocksDialer) ListenPacket(ctx context.Context, destinat... FILE: protocol/shadowtls/inbound.go function RegisterInbound (line 23) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 27) | type Inbound struct method Start (line 100) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 107) | func (h *Inbound) Close() error { method NewConnectionEx (line 111) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... function NewInbound (line 35) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type inboundHandler (line 123) | type inboundHandler method NewConnectionEx (line 125) | func (h *inboundHandler) NewConnectionEx(ctx context.Context, conn net... FILE: protocol/shadowtls/outbound.go function RegisterOutbound (line 21) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 25) | type Outbound struct method DialContext (line 90) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 102) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 30) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/socks/inbound.go function RegisterInbound (line 23) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 29) | type Inbound struct method Start (line 62) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 69) | func (h *Inbound) Close() error { method NewConnectionEx (line 73) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newUserConnection (line 85) | func (h *Inbound) newUserConnection(ctx context.Context, conn net.Conn... method streamUserPacketConnection (line 99) | func (h *Inbound) streamUserPacketConnection(ctx context.Context, conn... function NewInbound (line 38) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/socks/outbound.go function RegisterOutbound (line 23) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 29) | type Outbound struct method DialContext (line 70) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 96) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 38) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/ssh/outbound.go function RegisterOutbound (line 30) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 36) | type Outbound struct method connect (line 124) | func (s *Outbound) connect() (*ssh.Client, error) { method InterfaceUpdated (line 181) | func (s *Outbound) InterfaceUpdated() { method Close (line 185) | func (s *Outbound) Close() error { method DialContext (line 189) | func (s *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 201) | func (s *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 52) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... function randomVersion (line 114) | func randomVersion() string { type chanConnWrapper (line 205) | type chanConnWrapper struct method SetDeadline (line 209) | func (c *chanConnWrapper) SetDeadline(t time.Time) error { method SetReadDeadline (line 213) | func (c *chanConnWrapper) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 217) | func (c *chanConnWrapper) SetWriteDeadline(t time.Time) error { FILE: protocol/tailscale/dns_transport.go function RegistryTransport (line 39) | func RegistryTransport(registry *dns.TransportRegistry) { type DNSTransport (line 43) | type DNSTransport struct method Start (line 73) | func (t *DNSTransport) Start(stage adapter.StartStage) error { method Reset (line 93) | func (t *DNSTransport) Reset() { method onReconfig (line 96) | func (t *DNSTransport) onReconfig(cfg *wgcfg.Config, routerCfg *router... method updateDNSServers (line 103) | func (t *DNSTransport) updateDNSServers(routeConfig *router.Config, dn... method createResolver (line 145) | func (t *DNSTransport) createResolver(directDialer func() N.Dialer, re... method Close (line 209) | func (t *DNSTransport) Close() error { method Raw (line 213) | func (t *DNSTransport) Raw() bool { method Exchange (line 217) | func (t *DNSTransport) Exchange(ctx context.Context, message *mDNS.Msg... function NewDNSTransport (line 58) | func NewDNSTransport(ctx context.Context, logger log.ContextLogger, tag ... function buildRoutePrefixes (line 188) | func buildRoutePrefixes(routeConfig *router.Config) []netip.Prefix { type DNSDialer (line 284) | type DNSDialer struct method DialContext (line 289) | func (d *DNSDialer) DialContext(ctx context.Context, network string, d... method ListenPacket (line 301) | func (d *DNSDialer) ListenPacket(ctx context.Context, destination M.So... FILE: protocol/tailscale/endpoint.go function init (line 72) | func init() { function RegisterEndpoint (line 76) | func RegisterEndpoint(registry *endpoint.Registry) { type Endpoint (line 80) | type Endpoint struct method registerNetstackHandlers (line 118) | func (t *Endpoint) registerNetstackHandlers() { method Start (line 264) | func (t *Endpoint) Start(stage adapter.StartStage) error { method watchState (line 415) | func (t *Endpoint) watchState() { method Close (line 473) | func (t *Endpoint) Close() error { method DialContext (line 488) | func (t *Endpoint) DialContext(ctx context.Context, network string, de... method listenPacketWithAddress (line 550) | func (t *Endpoint) listenPacketWithAddress(ctx context.Context, destin... method ListenPacketWithDestination (line 579) | func (t *Endpoint) ListenPacketWithDestination(ctx context.Context, de... method ListenPacket (line 606) | func (t *Endpoint) ListenPacket(ctx context.Context, destination M.Soc... method PrepareConnection (line 617) | func (t *Endpoint) PrepareConnection(network string, source M.Socksadd... method NewConnectionEx (line 670) | func (t *Endpoint) NewConnectionEx(ctx context.Context, conn net.Conn,... method NewPacketConnectionEx (line 688) | func (t *Endpoint) NewPacketConnectionEx(ctx context.Context, conn N.P... method NewDirectRouteConnection (line 710) | func (t *Endpoint) NewDirectRouteConnection(metadata adapter.InboundCo... method PreferredDomain (line 741) | func (t *Endpoint) PreferredDomain(domain string) bool { method PreferredAddress (line 749) | func (t *Endpoint) PreferredAddress(address netip.Addr) bool { method Server (line 757) | func (t *Endpoint) Server() *tsnet.Server { method onReconfig (line 761) | func (t *Endpoint) onReconfig(cfg *wgcfg.Config, routerCfg *router.Con... function NewEndpoint (line 157) | func NewEndpoint(ctx context.Context, router adapter.Router, logger log.... function addressFromAddr (line 802) | func addressFromAddr(destination netip.Addr) tcpip.Address { type endpointDialer (line 810) | type endpointDialer struct method DialContext (line 815) | func (d *endpointDialer) DialContext(ctx context.Context, network stri... method ListenPacket (line 825) | func (d *endpointDialer) ListenPacket(ctx context.Context, destination... type dnsConfigurtor (line 830) | type dnsConfigurtor struct method SetDNS (line 834) | func (c *dnsConfigurtor) SetDNS(cfg tsDNS.OSConfig) error { method SupportsSplitDNS (line 839) | func (c *dnsConfigurtor) SupportsSplitDNS() bool { method GetBaseConfig (line 843) | func (c *dnsConfigurtor) GetBaseConfig() (tsDNS.OSConfig, error) { method Close (line 847) | func (c *dnsConfigurtor) Close() error { FILE: protocol/tailscale/tun_device_unix.go type tunDeviceAdapter (line 19) | type tunDeviceAdapter struct method File (line 52) | func (a *tunDeviceAdapter) File() *os.File { method Read (line 56) | func (a *tunDeviceAdapter) Read(bufs [][]byte, sizes []int, offset int... method Write (line 85) | func (a *tunDeviceAdapter) Write(bufs [][]byte, offset int) (count int... method MTU (line 107) | func (a *tunDeviceAdapter) MTU() (int, error) { method Name (line 111) | func (a *tunDeviceAdapter) Name() (string, error) { method Events (line 115) | func (a *tunDeviceAdapter) Events() <-chan wgTun.Event { method Close (line 119) | func (a *tunDeviceAdapter) Close() error { method BatchSize (line 128) | func (a *tunDeviceAdapter) BatchSize() int { method debugPacket (line 135) | func (a *tunDeviceAdapter) debugPacket(direction string, packet []byte) { function newTunDeviceAdapter (line 31) | func newTunDeviceAdapter(tun singTun.Tun, mtu int, logger logger.Context... FILE: protocol/tailscale/tun_device_windows.go type tunDeviceAdapter (line 16) | type tunDeviceAdapter struct method File (line 46) | func (a *tunDeviceAdapter) File() *os.File { method Read (line 50) | func (a *tunDeviceAdapter) Read(bufs [][]byte, sizes []int, offset int... method Write (line 60) | func (a *tunDeviceAdapter) Write(bufs [][]byte, offset int) (count int... method MTU (line 73) | func (a *tunDeviceAdapter) MTU() (int, error) { method ForceMTU (line 77) | func (a *tunDeviceAdapter) ForceMTU(mtu int) { method LUID (line 91) | func (a *tunDeviceAdapter) LUID() uint64 { method Name (line 98) | func (a *tunDeviceAdapter) Name() (string, error) { method Events (line 102) | func (a *tunDeviceAdapter) Events() <-chan wgTun.Event { method Close (line 106) | func (a *tunDeviceAdapter) Close() error { method BatchSize (line 115) | func (a *tunDeviceAdapter) BatchSize() int { function newTunDeviceAdapter (line 24) | func newTunDeviceAdapter(tun singTun.Tun, mtu int, _ logger.ContextLogge... FILE: protocol/tor/outbound.go function RegisterOutbound (line 29) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 33) | type Outbound struct method Start (line 92) | func (t *Outbound) Start() error { method start (line 108) | func (t *Outbound) start() error { method recvLoop (line 170) | func (t *Outbound) recvLoop() { method Close (line 193) | func (t *Outbound) Close() error { method DialContext (line 205) | func (t *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 210) | func (t *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 45) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/tor/proxy.go type ProxyListener (line 21) | type ProxyListener struct method Start (line 50) | func (l *ProxyListener) Start() error { method Port (line 62) | func (l *ProxyListener) Port() uint16 { method Username (line 69) | func (l *ProxyListener) Username() string { method Password (line 73) | func (l *ProxyListener) Password() string { method Close (line 77) | func (l *ProxyListener) Close() error { method acceptLoop (line 81) | func (l *ProxyListener) acceptLoop() { method accept (line 101) | func (l *ProxyListener) accept(ctx context.Context, conn *net.TCPConn)... method NewConnectionEx (line 105) | func (l *ProxyListener) NewConnectionEx(ctx context.Context, conn net.... method NewPacketConnectionEx (line 114) | func (l *ProxyListener) NewPacketConnectionEx(ctx context.Context, con... function NewProxyListener (line 32) | func NewProxyListener(ctx context.Context, logger log.ContextLogger, dia... FILE: protocol/trojan/inbound.go function RegisterInbound (line 26) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 32) | type Inbound struct method Start (line 119) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 159) | func (h *Inbound) Close() error { method NewConnectionEx (line 167) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newConnection (line 184) | func (h *Inbound) newConnection(ctx context.Context, conn net.Conn, me... method newPacketConnection (line 202) | func (h *Inbound) newPacketConnection(ctx context.Context, conn N.Pack... method fallbackConnection (line 220) | func (h *Inbound) fallbackConnection(ctx context.Context, conn net.Con... function NewInbound (line 45) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type inboundTransportHandler (line 251) | type inboundTransportHandler method NewConnectionEx (line 253) | func (h *inboundTransportHandler) NewConnectionEx(ctx context.Context,... FILE: protocol/trojan/outbound.go function RegisterOutbound (line 25) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 29) | type Outbound struct method DialContext (line 80) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 100) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 110) | func (h *Outbound) InterfaceUpdated() { method Close (line 119) | func (h *Outbound) Close() error { function NewOutbound (line 41) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type trojanDialer (line 123) | type trojanDialer method DialContext (line 125) | func (h *trojanDialer) DialContext(ctx context.Context, network string... method ListenPacket (line 152) | func (h *trojanDialer) ListenPacket(ctx context.Context, destination M... FILE: protocol/tuic/inbound.go function RegisterInbound (line 26) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 30) | type Inbound struct method NewConnectionEx (line 103) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 125) | func (h *Inbound) NewPacketConnectionEx(ctx context.Context, conn N.Pa... method Start (line 147) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 164) | func (h *Inbound) Close() error { function NewInbound (line 40) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... FILE: protocol/tuic/outbound.go function RegisterOutbound (line 28) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 34) | type Outbound struct method DialContext (line 90) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 118) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 135) | func (h *Outbound) InterfaceUpdated() { method Close (line 139) | func (h *Outbound) Close() error { function NewOutbound (line 41) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... FILE: protocol/tun/inbound.go function RegisterInbound (line 33) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 37) | type Inbound struct method Type (line 299) | func (t *Inbound) Type() string { method Tag (line 303) | func (t *Inbound) Tag() string { method Start (line 307) | func (t *Inbound) Start(stage adapter.StartStage) error { method updateRouteAddressSet (line 436) | func (t *Inbound) updateRouteAddressSet(it adapter.RuleSet) { method Close (line 444) | func (t *Inbound) Close() error { method PrepareConnection (line 452) | func (t *Inbound) PrepareConnection(network string, source M.Socksaddr... method NewConnectionEx (line 482) | func (t *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketConnectionEx (line 495) | func (t *Inbound) NewPacketConnectionEx(ctx context.Context, conn N.Pa... function NewInbound (line 59) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... function uidToRange (line 267) | func uidToRange(uidList badoption.Listable[uint32]) []ranges.Range[uint3... function parseRange (line 273) | func parseRange(uidRanges []ranges.Range[uint32], rangeList []string) ([... type autoRedirectHandler (line 508) | type autoRedirectHandler method PrepareConnection (line 510) | func (t *autoRedirectHandler) PrepareConnection(network string, source... method NewConnectionEx (line 540) | func (t *autoRedirectHandler) NewConnectionEx(ctx context.Context, con... method NewPacketConnectionEx (line 553) | func (t *autoRedirectHandler) NewPacketConnectionEx(ctx context.Contex... FILE: protocol/vless/inbound.go function RegisterInbound (line 30) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 36) | type Inbound struct method Start (line 101) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 141) | func (h *Inbound) Close() error { method NewConnectionEx (line 150) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newConnectionEx (line 167) | func (h *Inbound) newConnectionEx(ctx context.Context, conn net.Conn, ... method newPacketConnectionEx (line 185) | func (h *Inbound) newPacketConnectionEx(ctx context.Context, conn N.Pa... function NewInbound (line 48) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type inboundTransportHandler (line 211) | type inboundTransportHandler method NewConnectionEx (line 213) | func (h *inboundTransportHandler) NewConnectionEx(ctx context.Context,... FILE: protocol/vless/outbound.go function RegisterOutbound (line 26) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 30) | type Outbound struct method DialContext (line 100) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 120) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... method InterfaceUpdated (line 130) | func (h *Outbound) InterfaceUpdated() { method Close (line 139) | func (h *Outbound) Close() error { function NewOutbound (line 44) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type vlessDialer (line 143) | type vlessDialer method DialContext (line 145) | func (h *vlessDialer) DialContext(ctx context.Context, network string,... method ListenPacket (line 186) | func (h *vlessDialer) ListenPacket(ctx context.Context, destination M.... FILE: protocol/vmess/inbound.go function RegisterInbound (line 31) | func RegisterInbound(registry *inbound.Registry) { type Inbound (line 37) | type Inbound struct method Start (line 103) | func (h *Inbound) Start(stage adapter.StartStage) error { method Close (line 147) | func (h *Inbound) Close() error { method NewConnectionEx (line 156) | func (h *Inbound) NewConnectionEx(ctx context.Context, conn net.Conn, ... method newConnectionEx (line 173) | func (h *Inbound) newConnectionEx(ctx context.Context, conn net.Conn, ... method newPacketConnectionEx (line 191) | func (h *Inbound) newPacketConnectionEx(ctx context.Context, conn N.Pa... function NewInbound (line 49) | func NewInbound(ctx context.Context, router adapter.Router, logger log.C... type inboundTransportHandler (line 217) | type inboundTransportHandler method NewConnectionEx (line 219) | func (h *inboundTransportHandler) NewConnectionEx(ctx context.Context,... FILE: protocol/vmess/outbound.go function RegisterOutbound (line 26) | func RegisterOutbound(registry *outbound.Registry) { type Outbound (line 30) | type Outbound struct method InterfaceUpdated (line 108) | func (h *Outbound) InterfaceUpdated() { method Close (line 117) | func (h *Outbound) Close() error { method DialContext (line 121) | func (h *Outbound) DialContext(ctx context.Context, network string, de... method ListenPacket (line 141) | func (h *Outbound) ListenPacket(ctx context.Context, destination M.Soc... function NewOutbound (line 44) | func NewOutbound(ctx context.Context, router adapter.Router, logger log.... type vmessDialer (line 151) | type vmessDialer method DialContext (line 153) | func (h *vmessDialer) DialContext(ctx context.Context, network string,... method ListenPacket (line 180) | func (h *vmessDialer) ListenPacket(ctx context.Context, destination M.... FILE: protocol/wireguard/endpoint.go function RegisterEndpoint (line 32) | func RegisterEndpoint(registry *endpoint.Registry) { type Endpoint (line 36) | type Endpoint struct method Start (line 118) | func (w *Endpoint) Start(stage adapter.StartStage) error { method Close (line 128) | func (w *Endpoint) Close() error { method PrepareConnection (line 132) | func (w *Endpoint) PrepareConnection(network string, source M.Socksadd... method NewConnectionEx (line 162) | func (w *Endpoint) NewConnectionEx(ctx context.Context, conn net.Conn,... method NewPacketConnectionEx (line 184) | func (w *Endpoint) NewPacketConnectionEx(ctx context.Context, conn N.P... method DialContext (line 206) | func (w *Endpoint) DialContext(ctx context.Context, network string, de... method ListenPacketWithDestination (line 225) | func (w *Endpoint) ListenPacketWithDestination(ctx context.Context, de... method ListenPacket (line 244) | func (w *Endpoint) ListenPacket(ctx context.Context, destination M.Soc... method PreferredDomain (line 255) | func (w *Endpoint) PreferredDomain(domain string) bool { method PreferredAddress (line 259) | func (w *Endpoint) PreferredAddress(address netip.Addr) bool { method NewDirectRouteConnection (line 263) | func (w *Endpoint) NewDirectRouteConnection(metadata adapter.InboundCo... function NewEndpoint (line 46) | func NewEndpoint(ctx context.Context, router adapter.Router, logger log.... FILE: route/conn.go type ConnectionManager (line 31) | type ConnectionManager struct method Start (line 43) | func (m *ConnectionManager) Start(stage adapter.StartStage) error { method Count (line 47) | func (m *ConnectionManager) Count() int { method CloseAll (line 51) | func (m *ConnectionManager) CloseAll() { method Close (line 66) | func (m *ConnectionManager) Close() error { method TrackConn (line 71) | func (m *ConnectionManager) TrackConn(conn net.Conn) net.Conn { method TrackPacketConn (line 82) | func (m *ConnectionManager) TrackPacketConn(conn net.PacketConn) net.P... method NewConnection (line 93) | func (m *ConnectionManager) NewConnection(ctx context.Context, this N.... method NewPacketConnection (line 142) | func (m *ConnectionManager) NewPacketConnection(ctx context.Context, t... method connectionCopy (line 259) | func (m *ConnectionManager) connectionCopy(ctx context.Context, source... method kickWriteHandshake (line 296) | func (m *ConnectionManager) kickWriteHandshake(ctx context.Context, so... method packetConnectionCopy (line 348) | func (m *ConnectionManager) packetConnectionCopy(ctx context.Context, ... function NewConnectionManager (line 37) | func NewConnectionManager(logger logger.ContextLogger) *ConnectionManager { type trackedConn (line 375) | type trackedConn struct method Close (line 381) | func (c *trackedConn) Close() error { method Upstream (line 388) | func (c *trackedConn) Upstream() any { method ReaderReplaceable (line 392) | func (c *trackedConn) ReaderReplaceable() bool { method WriterReplaceable (line 396) | func (c *trackedConn) WriterReplaceable() bool { type trackedPacketConn (line 400) | type trackedPacketConn struct method Close (line 406) | func (c *trackedPacketConn) Close() error { method Upstream (line 413) | func (c *trackedPacketConn) Upstream() any { method ReaderReplaceable (line 417) | func (c *trackedPacketConn) ReaderReplaceable() bool { method WriterReplaceable (line 421) | func (c *trackedPacketConn) WriterReplaceable() bool { FILE: route/dns.go method hijackDNSStream (line 23) | func (r *Router) hijackDNSStream(ctx context.Context, conn net.Conn, met... method hijackDNSPacket (line 38) | func (r *Router) hijackDNSPacket(ctx context.Context, conn N.PacketConn,... function ExchangeDNSPacket (line 65) | func ExchangeDNSPacket(ctx context.Context, router adapter.DNSRouter, lo... function exchangeDNSPacket (line 72) | func exchangeDNSPacket(ctx context.Context, router adapter.DNSRouter, co... type dnsHijacker (line 91) | type dnsHijacker struct method NewPacketEx (line 100) | func (h *dnsHijacker) NewPacketEx(buffer *buf.Buffer, destination M.So... method Close (line 104) | func (h *dnsHijacker) Close() error { FILE: route/neighbor_resolver_darwin.go type neighborResolver (line 27) | type neighborResolver struct method Start (line 59) | func (r *neighborResolver) Start() error { method Close (line 87) | func (r *neighborResolver) Close() error { method LookupMAC (line 95) | func (r *neighborResolver) LookupMAC(address netip.Addr) (net.Hardware... method LookupHostname (line 113) | func (r *neighborResolver) LookupHostname(address netip.Addr) (string,... method loadNeighborTable (line 136) | func (r *neighborResolver) loadNeighborTable() error { method subscribeNeighborUpdates (line 149) | func (r *neighborResolver) subscribeNeighborUpdates() { method doReloadLeaseFiles (line 216) | func (r *neighborResolver) doReloadLeaseFiles() { function newNeighborResolver (line 39) | func newNeighborResolver(resolverLogger logger.ContextLogger, leaseFiles... function setReadDeadline (line 225) | func setReadDeadline(file *os.File, timeout time.Duration) error { FILE: route/neighbor_resolver_lease.go function parseLeaseFile (line 14) | func parseLeaseFile(path string, ipToMAC map[netip.Addr]net.HardwareAddr... function ReloadLeaseFiles (line 39) | func ReloadLeaseFiles(leaseFiles []string) (leaseIPToMAC map[netip.Addr]... function parseDnsmasqOdhcpd (line 49) | func parseDnsmasqOdhcpd(file *os.File, ipToMAC map[netip.Addr]net.Hardwa... function parseOdhcpdLine (line 115) | func parseOdhcpdLine(line string, ipToMAC map[netip.Addr]net.HardwareAdd... function parseISCDhcpd (line 185) | func parseISCDhcpd(file *os.File, ipToMAC map[netip.Addr]net.HardwareAdd... function parseKeaCSV4 (line 242) | func parseKeaCSV4(file *os.File, ipToMAC map[netip.Addr]net.HardwareAddr... function parseKeaCSV6 (line 278) | func parseKeaCSV6(file *os.File, ipToMAC map[netip.Addr]net.HardwareAddr... function parseBootpdLeases (line 324) | func parseBootpdLeases(file *os.File, ipToMAC map[netip.Addr]net.Hardwar... FILE: route/neighbor_resolver_linux.go type neighborResolver (line 31) | type neighborResolver struct method Start (line 63) | func (r *neighborResolver) Start() error { method Close (line 91) | func (r *neighborResolver) Close() error { method LookupMAC (line 99) | func (r *neighborResolver) LookupMAC(address netip.Addr) (net.Hardware... method LookupHostname (line 117) | func (r *neighborResolver) LookupHostname(address netip.Addr) (string,... method loadNeighborTable (line 140) | func (r *neighborResolver) loadNeighborTable() error { method subscribeNeighborUpdates (line 168) | func (r *neighborResolver) subscribeNeighborUpdates() { method doReloadLeaseFiles (line 217) | func (r *neighborResolver) doReloadLeaseFiles() { function newNeighborResolver (line 43) | func newNeighborResolver(resolverLogger logger.ContextLogger, leaseFiles... FILE: route/neighbor_resolver_parse.go function extractMACFromDUID (line 12) | func extractMACFromDUID(duid []byte) (net.HardwareAddr, bool) { function extractMACFromEUI64 (line 36) | func extractMACFromEUI64(address netip.Addr) (net.HardwareAddr, bool) { function parseDUID (line 47) | func parseDUID(s string) ([]byte, error) { FILE: route/neighbor_resolver_platform.go type platformNeighborResolver (line 12) | type platformNeighborResolver struct method Start (line 31) | func (r *platformNeighborResolver) Start() error { method Close (line 35) | func (r *platformNeighborResolver) Close() error { method LookupMAC (line 39) | func (r *platformNeighborResolver) LookupMAC(address netip.Addr) (net.... method LookupHostname (line 49) | func (r *platformNeighborResolver) LookupHostname(address netip.Addr) ... method UpdateNeighborTable (line 67) | func (r *platformNeighborResolver) UpdateNeighborTable(entries []adapt... function newPlatformNeighborResolver (line 21) | func newPlatformNeighborResolver(resolverLogger logger.ContextLogger, pl... FILE: route/neighbor_resolver_stub.go function newNeighborResolver (line 12) | func newNeighborResolver(_ logger.ContextLogger, _ []string) (adapter.Ne... FILE: route/neighbor_table_darwin.go function ReadNeighborEntries (line 17) | func ReadNeighborEntries() ([]adapter.NeighborEntry, error) { function readNeighborEntriesAF (line 32) | func readNeighborEntriesAF(addressFamily int) ([]adapter.NeighborEntry, ... function parseRouteNeighborEntry (line 59) | func parseRouteNeighborEntry(message *route.RouteMessage) (address netip... function ParseRouteNeighborMessage (line 81) | func ParseRouteNeighborMessage(message *route.RouteMessage) (address net... FILE: route/neighbor_table_linux.go function ReadNeighborEntries (line 18) | func ReadNeighborEntries() ([]adapter.NeighborEntry, error) { function ParseNeighborMessage (line 48) | func ParseNeighborMessage(message netlink.Message) (address netip.Addr, ... FILE: route/network.go type NetworkManager (line 36) | type NetworkManager struct method Start (line 135) | func (r *NetworkManager) Start(stage adapter.StartStage) error { method Initialize (line 211) | func (r *NetworkManager) Initialize(ruleSets []adapter.RuleSet) { method Close (line 221) | func (r *NetworkManager) Close() error { method InterfaceFinder (line 262) | func (r *NetworkManager) InterfaceFinder() control.InterfaceFinder { method UpdateInterfaces (line 266) | func (r *NetworkManager) UpdateInterfaces() error { method DefaultNetworkInterface (line 319) | func (r *NetworkManager) DefaultNetworkInterface() *adapter.NetworkInt... method NetworkInterfaces (line 332) | func (r *NetworkManager) NetworkInterfaces() []adapter.NetworkInterface { method AutoDetectInterface (line 336) | func (r *NetworkManager) AutoDetectInterface() bool { method AutoDetectInterfaceFunc (line 340) | func (r *NetworkManager) AutoDetectInterfaceFunc() control.Func { method ProtectFunc (line 368) | func (r *NetworkManager) ProtectFunc() control.Func { method DefaultOptions (line 379) | func (r *NetworkManager) DefaultOptions() adapter.NetworkOptions { method RegisterAutoRedirectOutputMark (line 383) | func (r *NetworkManager) RegisterAutoRedirectOutputMark(mark uint32) e... method AutoRedirectOutputMark (line 391) | func (r *NetworkManager) AutoRedirectOutputMark() uint32 { method AutoRedirectOutputMarkFunc (line 395) | func (r *NetworkManager) AutoRedirectOutputMarkFunc() control.Func { method NetworkMonitor (line 404) | func (r *NetworkManager) NetworkMonitor() tun.NetworkUpdateMonitor { method InterfaceMonitor (line 408) | func (r *NetworkManager) InterfaceMonitor() tun.DefaultInterfaceMonitor { method PackageManager (line 412) | func (r *NetworkManager) PackageManager() tun.PackageManager { method NeedWIFIState (line 416) | func (r *NetworkManager) NeedWIFIState() bool { method WIFIState (line 420) | func (r *NetworkManager) WIFIState() adapter.WIFIState { method onWIFIStateChanged (line 426) | func (r *NetworkManager) onWIFIStateChanged(state adapter.WIFIState) { method UpdateWIFIState (line 441) | func (r *NetworkManager) UpdateWIFIState() { method ResetNetwork (line 453) | func (r *NetworkManager) ResetNetwork() { method notifyInterfaceUpdate (line 480) | func (r *NetworkManager) notifyInterfaceUpdate(defaultInterface *contr... method notifyWindowsPowerEvent (line 523) | func (r *NetworkManager) notifyWindowsPowerEvent(event int) { method OnPackagesUpdated (line 539) | func (r *NetworkManager) OnPackagesUpdated(packages int, sharedUsers i... function NewNetworkManager (line 61) | func NewNetworkManager(ctx context.Context, logger logger.ContextLogger,... FILE: route/platform_searcher.go type platformSearcher (line 13) | type platformSearcher struct method FindProcessInfo (line 21) | func (s *platformSearcher) FindProcessInfo(ctx context.Context, networ... function newPlatformSearcher (line 17) | func newPlatformSearcher(platform adapter.PlatformInterface) process.Sea... FILE: route/route.go method RouteConnection (line 34) | func (r *Router) RouteConnection(ctx context.Context, conn net.Conn, met... method RouteConnectionEx (line 49) | func (r *Router) RouteConnectionEx(ctx context.Context, conn net.Conn, m... method routeConnection (line 61) | func (r *Router) routeConnection(ctx context.Context, conn net.Conn, met... method RoutePacketConnection (line 164) | func (r *Router) RoutePacketConnection(ctx context.Context, conn N.Packe... method RoutePacketConnectionEx (line 184) | func (r *Router) RoutePacketConnectionEx(ctx context.Context, conn N.Pac... method routePacketConnection (line 196) | func (r *Router) routePacketConnection(ctx context.Context, conn N.Packe... method PreMatch (line 293) | func (r *Router) PreMatch(metadata adapter.InboundContext, routeContext ... method matchRule (line 404) | func (r *Router) matchRule( method actionSniff (line 612) | func (r *Router) actionSniff( method actionResolve (line 809) | func (r *Router) actionResolve(ctx context.Context, metadata *adapter.In... FILE: route/router.go type Router (line 23) | type Router struct method Initialize (line 66) | func (r *Router) Initialize(rules []option.Rule, ruleSets []option.Rul... method Start (line 88) | func (r *Router) Start(stage adapter.StartStage) error { method Close (line 208) | func (r *Router) Close() error { method RuleSet (line 235) | func (r *Router) RuleSet(tag string) (adapter.RuleSet, bool) { method Rules (line 240) | func (r *Router) Rules() []adapter.Rule { method AppendTracker (line 244) | func (r *Router) AppendTracker(tracker adapter.ConnectionTracker) { method NeedFindProcess (line 248) | func (r *Router) NeedFindProcess() bool { method NeedFindNeighbor (line 252) | func (r *Router) NeedFindNeighbor() bool { method NeighborResolver (line 256) | func (r *Router) NeighborResolver() adapter.NeighborResolver { method ResetNetwork (line 260) | func (r *Router) ResetNetwork() { function NewRouter (line 46) | func NewRouter(ctx context.Context, logFactory log.Factory, options opti... FILE: route/rule/rule_abstract.go type abstractDefaultRule (line 13) | type abstractDefaultRule struct method Type (line 26) | func (r *abstractDefaultRule) Type() string { method Start (line 30) | func (r *abstractDefaultRule) Start() error { method Close (line 44) | func (r *abstractDefaultRule) Close() error { method Match (line 54) | func (r *abstractDefaultRule) Match(metadata *adapter.InboundContext) ... method Action (line 139) | func (r *abstractDefaultRule) Action() adapter.RuleAction { method String (line 143) | func (r *abstractDefaultRule) String() string { type abstractLogicalRule (line 151) | type abstractLogicalRule struct method Type (line 158) | func (r *abstractLogicalRule) Type() string { method Start (line 162) | func (r *abstractLogicalRule) Start() error { method Close (line 180) | func (r *abstractLogicalRule) Close() error { method Match (line 193) | func (r *abstractLogicalRule) Match(metadata *adapter.InboundContext) ... method Action (line 207) | func (r *abstractLogicalRule) Action() adapter.RuleAction { method String (line 211) | func (r *abstractLogicalRule) String() string { FILE: route/rule/rule_abstract_test.go type fakeRuleSet (line 15) | type fakeRuleSet struct method Name (line 19) | func (f *fakeRuleSet) Name() string { method StartContext (line 23) | func (f *fakeRuleSet) StartContext(context.Context, *adapter.HTTPStart... method PostStart (line 27) | func (f *fakeRuleSet) PostStart() error { method Metadata (line 31) | func (f *fakeRuleSet) Metadata() adapter.RuleSetMetadata { method ExtractIPSet (line 35) | func (f *fakeRuleSet) ExtractIPSet() []*netipx.IPSet { method IncRef (line 39) | func (f *fakeRuleSet) IncRef() {} method DecRef (line 41) | func (f *fakeRuleSet) DecRef() {} method Cleanup (line 43) | func (f *fakeRuleSet) Cleanup() {} method RegisterCallback (line 45) | func (f *fakeRuleSet) RegisterCallback(adapter.RuleSetUpdateCallback) ... method UnregisterCallback (line 49) | func (f *fakeRuleSet) UnregisterCallback(*list.Element[adapter.RuleSet... method Close (line 51) | func (f *fakeRuleSet) Close() error { method Match (line 55) | func (f *fakeRuleSet) Match(*adapter.InboundContext) bool { method String (line 59) | func (f *fakeRuleSet) String() string { type fakeRuleItem (line 63) | type fakeRuleItem struct method Match (line 67) | func (f *fakeRuleItem) Match(*adapter.InboundContext) bool { method String (line 71) | func (f *fakeRuleItem) String() string { function newRuleSetOnlyRule (line 75) | func newRuleSetOnlyRule(ruleSetMatched bool, invert bool) *DefaultRule { function newSingleItemRule (line 88) | func newSingleItemRule(matched bool) *DefaultRule { function TestAbstractDefaultRule_RuleSetOnly_InvertFalse (line 98) | func TestAbstractDefaultRule_RuleSetOnly_InvertFalse(t *testing.T) { function TestAbstractDefaultRule_RuleSetOnly_InvertTrue (line 104) | func TestAbstractDefaultRule_RuleSetOnly_InvertTrue(t *testing.T) { function TestAbstractLogicalRule_And_WithRuleSetInvert (line 110) | func TestAbstractLogicalRule_And_WithRuleSetInvert(t *testing.T) { FILE: route/rule/rule_action.go function NewRuleAction (line 27) | func NewRuleAction(ctx context.Context, logger logger.ContextLogger, act... function NewDNSRuleAction (line 121) | func NewDNSRuleAction(logger logger.ContextLogger, action option.DNSRule... type RuleActionRoute (line 160) | type RuleActionRoute struct method Type (line 165) | func (r *RuleActionRoute) Type() string { method String (line 169) | func (r *RuleActionRoute) String() string { type RuleActionBypass (line 176) | type RuleActionBypass struct method Type (line 181) | func (r *RuleActionBypass) Type() string { method String (line 185) | func (r *RuleActionBypass) String() string { type RuleActionRouteOptions (line 195) | type RuleActionRouteOptions struct method Type (line 210) | func (r *RuleActionRouteOptions) Type() string { method String (line 214) | func (r *RuleActionRouteOptions) String() string { method Descriptions (line 218) | func (r *RuleActionRouteOptions) Descriptions() []string { type RuleActionDNSRoute (line 259) | type RuleActionDNSRoute struct method Type (line 264) | func (r *RuleActionDNSRoute) Type() string { method String (line 268) | func (r *RuleActionDNSRoute) String() string { type RuleActionDNSRouteOptions (line 283) | type RuleActionDNSRouteOptions struct method Type (line 290) | func (r *RuleActionDNSRouteOptions) Type() string { method String (line 294) | func (r *RuleActionDNSRouteOptions) String() string { type RuleActionDirect (line 308) | type RuleActionDirect struct method Type (line 313) | func (r *RuleActionDirect) Type() string { method String (line 317) | func (r *RuleActionDirect) String() string { type RejectedError (line 321) | type RejectedError struct method Error (line 325) | func (r *RejectedError) Error() string { method Unwrap (line 329) | func (r *RejectedError) Unwrap() error { function IsRejected (line 333) | func IsRejected(err error) bool { type BypassedError (line 338) | type BypassedError struct method Error (line 342) | func (b *BypassedError) Error() string { method Unwrap (line 346) | func (b *BypassedError) Unwrap() error { function IsBypassed (line 350) | func IsBypassed(err error) bool { type RuleActionReject (line 355) | type RuleActionReject struct method Type (line 363) | func (r *RuleActionReject) Type() string { method String (line 367) | func (r *RuleActionReject) String() string { method Error (line 374) | func (r *RuleActionReject) Error(ctx context.Context) error { type RuleActionHijackDNS (line 405) | type RuleActionHijackDNS struct method Type (line 407) | func (r *RuleActionHijackDNS) Type() string { method String (line 411) | func (r *RuleActionHijackDNS) String() string { type RuleActionSniff (line 415) | type RuleActionSniff struct method Type (line 424) | func (r *RuleActionSniff) Type() string { method build (line 428) | func (r *RuleActionSniff) build() error { method String (line 461) | func (r *RuleActionSniff) String() string { type RuleActionResolve (line 473) | type RuleActionResolve struct method Type (line 481) | func (r *RuleActionResolve) Type() string { method String (line 485) | func (r *RuleActionResolve) String() string { type RuleActionPredefined (line 509) | type RuleActionPredefined struct method Type (line 516) | func (r *RuleActionPredefined) Type() string { method String (line 520) | func (r *RuleActionPredefined) String() string { method Response (line 529) | func (r *RuleActionPredefined) Response(request *dns.Msg) *dns.Msg { function rewriteRecords (line 546) | func rewriteRecords(records []dns.RR, question dns.Question) []dns.RR { FILE: route/rule/rule_default.go function NewRule (line 15) | func NewRule(ctx context.Context, logger log.ContextLogger, options opti... type DefaultRule (line 46) | type DefaultRule struct type RuleItem (line 50) | type RuleItem interface function NewDefaultRule (line 55) | func NewDefaultRule(ctx context.Context, logger log.ContextLogger, optio... type LogicalRule (line 296) | type LogicalRule struct function NewLogicalRule (line 300) | func NewLogicalRule(ctx context.Context, logger log.ContextLogger, optio... FILE: route/rule/rule_default_interface_address.go type DefaultInterfaceAddressItem (line 15) | type DefaultInterfaceAddressItem struct method Match (line 31) | func (r *DefaultInterfaceAddressItem) Match(metadata *adapter.InboundC... method String (line 46) | func (r *DefaultInterfaceAddressItem) String() string { function NewDefaultInterfaceAddressItem (line 20) | func NewDefaultInterfaceAddressItem(networkManager adapter.NetworkManage... FILE: route/rule/rule_dns.go function NewDNSRule (line 15) | func NewDNSRule(ctx context.Context, logger log.ContextLogger, options o... type DefaultDNSRule (line 46) | type DefaultDNSRule struct method Action (line 290) | func (r *DefaultDNSRule) Action() adapter.RuleAction { method WithAddressLimit (line 294) | func (r *DefaultDNSRule) WithAddressLimit() bool { method Match (line 310) | func (r *DefaultDNSRule) Match(metadata *adapter.InboundContext) bool { method MatchAddressLimit (line 318) | func (r *DefaultDNSRule) MatchAddressLimit(metadata *adapter.InboundCo... function NewDefaultDNSRule (line 50) | func NewDefaultDNSRule(ctx context.Context, logger log.ContextLogger, op... type LogicalDNSRule (line 324) | type LogicalDNSRule struct method Action (line 354) | func (r *LogicalDNSRule) Action() adapter.RuleAction { method WithAddressLimit (line 358) | func (r *LogicalDNSRule) WithAddressLimit() bool { method Match (line 374) | func (r *LogicalDNSRule) Match(metadata *adapter.InboundContext) bool { method MatchAddressLimit (line 388) | func (r *LogicalDNSRule) MatchAddressLimit(metadata *adapter.InboundCo... function NewLogicalDNSRule (line 328) | func NewLogicalDNSRule(ctx context.Context, logger log.ContextLogger, op... FILE: route/rule/rule_headless.go function NewHeadlessRule (line 14) | func NewHeadlessRule(ctx context.Context, options option.HeadlessRule) (... type DefaultHeadlessRule (line 33) | type DefaultHeadlessRule struct function NewDefaultHeadlessRule (line 37) | func NewDefaultHeadlessRule(ctx context.Context, options option.DefaultH... type LogicalHeadlessRule (line 198) | type LogicalHeadlessRule struct function NewLogicalHeadlessRule (line 202) | func NewLogicalHeadlessRule(ctx context.Context, options option.LogicalH... FILE: route/rule/rule_interface_address.go type InterfaceAddressItem (line 16) | type InterfaceAddressItem struct method Match (line 40) | func (r *InterfaceAddressItem) Match(metadata *adapter.InboundContext)... method String (line 60) | func (r *InterfaceAddressItem) String() string { function NewInterfaceAddressItem (line 22) | func NewInterfaceAddressItem(networkManager adapter.NetworkManager, inte... FILE: route/rule/rule_item_adguard.go type AdGuardDomainItem (line 12) | type AdGuardDomainItem struct method Match (line 28) | func (r *AdGuardDomainItem) Match(metadata *adapter.InboundContext) bo... method String (line 41) | func (r *AdGuardDomainItem) String() string { function NewAdGuardDomainItem (line 16) | func NewAdGuardDomainItem(ruleLines []string) *AdGuardDomainItem { function NewRawAdGuardDomainItem (line 22) | func NewRawAdGuardDomainItem(matcher *domain.AdGuardMatcher) *AdGuardDom... FILE: route/rule/rule_item_auth_user.go type AuthUserItem (line 12) | type AuthUserItem struct method Match (line 28) | func (r *AuthUserItem) Match(metadata *adapter.InboundContext) bool { method String (line 32) | func (r *AuthUserItem) String() string { function NewAuthUserItem (line 17) | func NewAuthUserItem(users []string) *AuthUserItem { FILE: route/rule/rule_item_cidr.go type IPCIDRItem (line 15) | type IPCIDRItem struct method Match (line 75) | func (r *IPCIDRItem) Match(metadata *adapter.InboundContext) bool { method String (line 93) | func (r *IPCIDRItem) String() string { function NewIPCIDRItem (line 21) | func NewIPCIDRItem(isSource bool, prefixStrings []string) (*IPCIDRItem, ... function NewRawIPCIDRItem (line 60) | func NewRawIPCIDRItem(isSource bool, ipSet *netipx.IPSet) *IPCIDRItem { FILE: route/rule/rule_item_clash_mode.go type ClashModeItem (line 13) | type ClashModeItem struct method Start (line 26) | func (r *ClashModeItem) Start() error { method Match (line 31) | func (r *ClashModeItem) Match(metadata *adapter.InboundContext) bool { method String (line 38) | func (r *ClashModeItem) String() string { function NewClashModeItem (line 19) | func NewClashModeItem(ctx context.Context, mode string) *ClashModeItem { FILE: route/rule/rule_item_client.go type ClientItem (line 12) | type ClientItem struct method Match (line 28) | func (r *ClientItem) Match(metadata *adapter.InboundContext) bool { method String (line 32) | func (r *ClientItem) String() string { function NewClientItem (line 17) | func NewClientItem(clients []string) *ClientItem { FILE: route/rule/rule_item_domain.go type DomainItem (line 13) | type DomainItem struct method Match (line 64) | func (r *DomainItem) Match(metadata *adapter.InboundContext) bool { method String (line 77) | func (r *DomainItem) String() string { function NewDomainItem (line 18) | func NewDomainItem(domains []string, domainSuffixes []string) (*DomainIt... function NewRawDomainItem (line 57) | func NewRawDomainItem(matcher *domain.Matcher) *DomainItem { FILE: route/rule/rule_item_domain_keyword.go type DomainKeywordItem (line 11) | type DomainKeywordItem struct method Match (line 19) | func (r *DomainKeywordItem) Match(metadata *adapter.InboundContext) bo... method String (line 38) | func (r *DomainKeywordItem) String() string { function NewDomainKeywordItem (line 15) | func NewDomainKeywordItem(keywords []string) *DomainKeywordItem { FILE: route/rule/rule_item_domain_regex.go type DomainRegexItem (line 14) | type DomainRegexItem struct method Match (line 40) | func (r *DomainRegexItem) Match(metadata *adapter.InboundContext) bool { method String (line 59) | func (r *DomainRegexItem) String() string { function NewDomainRegexItem (line 19) | func NewDomainRegexItem(expressions []string) (*DomainRegexItem, error) { FILE: route/rule/rule_item_inbound.go type InboundItem (line 12) | type InboundItem struct method Match (line 25) | func (r *InboundItem) Match(metadata *adapter.InboundContext) bool { method String (line 29) | func (r *InboundItem) String() string { function NewInboundRule (line 17) | func NewInboundRule(inbounds []string) *InboundItem { FILE: route/rule/rule_item_ip_accept_any.go type IPAcceptAnyItem (line 9) | type IPAcceptAnyItem struct method Match (line 15) | func (r *IPAcceptAnyItem) Match(metadata *adapter.InboundContext) bool { method String (line 19) | func (r *IPAcceptAnyItem) String() string { function NewIPAcceptAnyItem (line 11) | func NewIPAcceptAnyItem() *IPAcceptAnyItem { FILE: route/rule/rule_item_ip_is_private.go type IPIsPrivateItem (line 12) | type IPIsPrivateItem struct method Match (line 20) | func (r *IPIsPrivateItem) Match(metadata *adapter.InboundContext) bool { method String (line 40) | func (r *IPIsPrivateItem) String() string { function NewIPIsPrivateItem (line 16) | func NewIPIsPrivateItem(isSource bool) *IPIsPrivateItem { FILE: route/rule/rule_item_ipversion.go type IPVersionItem (line 9) | type IPVersionItem struct method Match (line 17) | func (r *IPVersionItem) Match(metadata *adapter.InboundContext) bool { method String (line 22) | func (r *IPVersionItem) String() string { function NewIPVersionItem (line 13) | func NewIPVersionItem(isIPv6 bool) *IPVersionItem { FILE: route/rule/rule_item_network.go type NetworkItem (line 12) | type NetworkItem struct method Match (line 28) | func (r *NetworkItem) Match(metadata *adapter.InboundContext) bool { method String (line 32) | func (r *NetworkItem) String() string { function NewNetworkItem (line 17) | func NewNetworkItem(networks []string) *NetworkItem { FILE: route/rule/rule_item_network_is_constrained.go type NetworkIsConstrainedItem (line 9) | type NetworkIsConstrainedItem struct method Match (line 19) | func (r *NetworkIsConstrainedItem) Match(metadata *adapter.InboundCont... method String (line 27) | func (r *NetworkIsConstrainedItem) String() string { function NewNetworkIsConstrainedItem (line 13) | func NewNetworkIsConstrainedItem(networkManager adapter.NetworkManager) ... FILE: route/rule/rule_item_network_is_expensive.go type NetworkIsExpensiveItem (line 9) | type NetworkIsExpensiveItem struct method Match (line 19) | func (r *NetworkIsExpensiveItem) Match(metadata *adapter.InboundContex... method String (line 27) | func (r *NetworkIsExpensiveItem) String() string { function NewNetworkIsExpensiveItem (line 13) | func NewNetworkIsExpensiveItem(networkManager adapter.NetworkManager) *N... FILE: route/rule/rule_item_network_type.go type NetworkTypeItem (line 14) | type NetworkTypeItem struct method Match (line 26) | func (r *NetworkTypeItem) Match(metadata *adapter.InboundContext) bool { method String (line 34) | func (r *NetworkTypeItem) String() string { function NewNetworkTypeItem (line 19) | func NewNetworkTypeItem(networkManager adapter.NetworkManager, networkTy... FILE: route/rule/rule_item_outbound.go type OutboundItem (line 14) | type OutboundItem struct method Match (line 33) | func (r *OutboundItem) Match(metadata *adapter.InboundContext) bool { method String (line 40) | func (r *OutboundItem) String() string { function NewOutboundRule (line 20) | func NewOutboundRule(ctx context.Context, outbounds []string) *OutboundI... FILE: route/rule/rule_item_package_name.go type PackageNameItem (line 11) | type PackageNameItem struct method Match (line 27) | func (r *PackageNameItem) Match(metadata *adapter.InboundContext) bool { method String (line 34) | func (r *PackageNameItem) String() string { function NewPackageNameItem (line 16) | func NewPackageNameItem(packageNameList []string) *PackageNameItem { FILE: route/rule/rule_item_port.go type PortItem (line 12) | type PortItem struct method Match (line 30) | func (r *PortItem) Match(metadata *adapter.InboundContext) bool { method String (line 38) | func (r *PortItem) String() string { function NewPortItem (line 18) | func NewPortItem(isSource bool, ports []uint16) *PortItem { FILE: route/rule/rule_item_port_range.go type PortRangeItem (line 15) | type PortRangeItem struct method Match (line 58) | func (r *PortRangeItem) Match(metadata *adapter.InboundContext) bool { method String (line 73) | func (r *PortRangeItem) String() string { type rangeItem (line 21) | type rangeItem struct function NewPortRangeItem (line 26) | func NewPortRangeItem(isSource bool, rangeList []string) (*PortRangeItem... FILE: route/rule/rule_item_preferred_by.go type PreferredByItem (line 15) | type PreferredByItem struct method Start (line 28) | func (r *PreferredByItem) Start() error { method Match (line 44) | func (r *PreferredByItem) Match(metadata *adapter.InboundContext) bool { method String (line 77) | func (r *PreferredByItem) String() string { function NewPreferredByItem (line 21) | func NewPreferredByItem(ctx context.Context, outboundTags []string) *Pre... FILE: route/rule/rule_item_process_name.go type ProcessItem (line 12) | type ProcessItem struct method Match (line 28) | func (r *ProcessItem) Match(metadata *adapter.InboundContext) bool { method String (line 35) | func (r *ProcessItem) String() string { function NewProcessItem (line 17) | func NewProcessItem(processNameList []string) *ProcessItem { FILE: route/rule/rule_item_process_path.go type ProcessPathItem (line 11) | type ProcessPathItem struct method Match (line 27) | func (r *ProcessPathItem) Match(metadata *adapter.InboundContext) bool { method String (line 34) | func (r *ProcessPathItem) String() string { function NewProcessPathItem (line 16) | func NewProcessPathItem(processNameList []string) *ProcessPathItem { FILE: route/rule/rule_item_process_path_regex.go type ProcessPathRegexItem (line 14) | type ProcessPathRegexItem struct method Match (line 40) | func (r *ProcessPathRegexItem) Match(metadata *adapter.InboundContext)... method String (line 52) | func (r *ProcessPathRegexItem) String() string { function NewProcessPathRegexItem (line 19) | func NewProcessPathRegexItem(expressions []string) (*ProcessPathRegexIte... FILE: route/rule/rule_item_protocol.go type ProtocolItem (line 12) | type ProtocolItem struct method Match (line 28) | func (r *ProtocolItem) Match(metadata *adapter.InboundContext) bool { method String (line 32) | func (r *ProtocolItem) String() string { function NewProtocolItem (line 17) | func NewProtocolItem(protocols []string) *ProtocolItem { FILE: route/rule/rule_item_query_type.go type QueryTypeItem (line 13) | type QueryTypeItem struct method Match (line 31) | func (r *QueryTypeItem) Match(metadata *adapter.InboundContext) bool { method String (line 38) | func (r *QueryTypeItem) String() string { function NewQueryTypeItem (line 18) | func NewQueryTypeItem(typeList []option.DNSQueryType) *QueryTypeItem { FILE: route/rule/rule_item_rule_set.go type RuleSetItem (line 14) | type RuleSetItem struct method Start (line 31) | func (r *RuleSetItem) Start() error { method Match (line 43) | func (r *RuleSetItem) Match(metadata *adapter.InboundContext) bool { method ContainsDestinationIPCIDRRule (line 54) | func (r *RuleSetItem) ContainsDestinationIPCIDRRule() bool { method String (line 63) | func (r *RuleSetItem) String() string { function NewRuleSetItem (line 22) | func NewRuleSetItem(router adapter.Router, tagList []string, ipCIDRMatch... FILE: route/rule/rule_item_source_hostname.go type SourceHostnameItem (line 11) | type SourceHostnameItem struct method Match (line 27) | func (r *SourceHostnameItem) Match(metadata *adapter.InboundContext) b... method String (line 34) | func (r *SourceHostnameItem) String() string { function NewSourceHostnameItem (line 16) | func NewSourceHostnameItem(hostnameList []string) *SourceHostnameItem { FILE: route/rule/rule_item_source_mac_address.go type SourceMACAddressItem (line 12) | type SourceMACAddressItem struct method Match (line 33) | func (r *SourceMACAddressItem) Match(metadata *adapter.InboundContext)... method String (line 40) | func (r *SourceMACAddressItem) String() string { function NewSourceMACAddressItem (line 17) | func NewSourceMACAddressItem(addressList []string) *SourceMACAddressItem { FILE: route/rule/rule_item_user.go type UserItem (line 12) | type UserItem struct method Match (line 28) | func (r *UserItem) Match(metadata *adapter.InboundContext) bool { method String (line 35) | func (r *UserItem) String() string { function NewUserItem (line 17) | func NewUserItem(users []string) *UserItem { FILE: route/rule/rule_item_user_id.go type UserIdItem (line 12) | type UserIdItem struct method Match (line 28) | func (r *UserIdItem) Match(metadata *adapter.InboundContext) bool { method String (line 35) | func (r *UserIdItem) String() string { function NewUserIDItem (line 17) | func NewUserIDItem(userIdList []int32) *UserIdItem { FILE: route/rule/rule_item_wifi_bssid.go type WIFIBSSIDItem (line 12) | type WIFIBSSIDItem struct method Match (line 30) | func (r *WIFIBSSIDItem) Match(metadata *adapter.InboundContext) bool { method String (line 34) | func (r *WIFIBSSIDItem) String() string { function NewWIFIBSSIDItem (line 18) | func NewWIFIBSSIDItem(networkManager adapter.NetworkManager, bssidList [... FILE: route/rule/rule_item_wifi_ssid.go type WIFISSIDItem (line 12) | type WIFISSIDItem struct method Match (line 30) | func (r *WIFISSIDItem) Match(metadata *adapter.InboundContext) bool { method String (line 34) | func (r *WIFISSIDItem) String() string { function NewWIFISSIDItem (line 18) | func NewWIFISSIDItem(networkManager adapter.NetworkManager, ssidList []s... FILE: route/rule/rule_network_interface_address.go type NetworkInterfaceAddressItem (line 17) | type NetworkInterfaceAddressItem struct method Match (line 41) | func (r *NetworkInterfaceAddressItem) Match(metadata *adapter.InboundC... method String (line 62) | func (r *NetworkInterfaceAddressItem) String() string { function NewNetworkInterfaceAddressItem (line 23) | func NewNetworkInterfaceAddressItem(networkManager adapter.NetworkManage... FILE: route/rule/rule_set.go function NewRuleSet (line 16) | func NewRuleSet(ctx context.Context, logger logger.ContextLogger, option... function extractIPSetFromRule (line 27) | func extractIPSetFromRule(rawRule adapter.HeadlessRule) []*netipx.IPSet { function HasHeadlessRule (line 45) | func HasHeadlessRule(rules []option.HeadlessRule, cond func(rule option.... function isProcessHeadlessRule (line 61) | func isProcessHeadlessRule(rule option.DefaultHeadlessRule) bool { function isWIFIHeadlessRule (line 65) | func isWIFIHeadlessRule(rule option.DefaultHeadlessRule) bool { function isIPCIDRHeadlessRule (line 69) | func isIPCIDRHeadlessRule(rule option.DefaultHeadlessRule) bool { FILE: route/rule/rule_set_local.go type LocalRuleSet (line 29) | type LocalRuleSet struct method Name (line 81) | func (s *LocalRuleSet) Name() string { method String (line 85) | func (s *LocalRuleSet) String() string { method StartContext (line 89) | func (s *LocalRuleSet) StartContext(ctx context.Context, startContext ... method reloadFile (line 99) | func (s *LocalRuleSet) reloadFile(path string) error { method reloadRules (line 131) | func (s *LocalRuleSet) reloadRules(headlessRules []option.HeadlessRule... method PostStart (line 155) | func (s *LocalRuleSet) PostStart() error { method Metadata (line 159) | func (s *LocalRuleSet) Metadata() adapter.RuleSetMetadata { method ExtractIPSet (line 165) | func (s *LocalRuleSet) ExtractIPSet() []*netipx.IPSet { method IncRef (line 171) | func (s *LocalRuleSet) IncRef() { method DecRef (line 175) | func (s *LocalRuleSet) DecRef() { method Cleanup (line 181) | func (s *LocalRuleSet) Cleanup() { method RegisterCallback (line 187) | func (s *LocalRuleSet) RegisterCallback(callback adapter.RuleSetUpdate... method UnregisterCallback (line 193) | func (s *LocalRuleSet) UnregisterCallback(element *list.Element[adapte... method Close (line 199) | func (s *LocalRuleSet) Close() error { method Match (line 204) | func (s *LocalRuleSet) Match(metadata *adapter.InboundContext) bool { function NewLocalRuleSet (line 42) | func NewLocalRuleSet(ctx context.Context, logger logger.Logger, options ... FILE: route/rule/rule_set_remote.go type RemoteRuleSet (line 37) | type RemoteRuleSet struct method Name (line 76) | func (s *RemoteRuleSet) Name() string { method String (line 80) | func (s *RemoteRuleSet) String() string { method StartContext (line 84) | func (s *RemoteRuleSet) StartContext(ctx context.Context, startContext... method PostStart (line 117) | func (s *RemoteRuleSet) PostStart() error { method Metadata (line 122) | func (s *RemoteRuleSet) Metadata() adapter.RuleSetMetadata { method ExtractIPSet (line 128) | func (s *RemoteRuleSet) ExtractIPSet() []*netipx.IPSet { method IncRef (line 134) | func (s *RemoteRuleSet) IncRef() { method DecRef (line 138) | func (s *RemoteRuleSet) DecRef() { method Cleanup (line 144) | func (s *RemoteRuleSet) Cleanup() { method RegisterCallback (line 150) | func (s *RemoteRuleSet) RegisterCallback(callback adapter.RuleSetUpdat... method UnregisterCallback (line 156) | func (s *RemoteRuleSet) UnregisterCallback(element *list.Element[adapt... method loadBytes (line 162) | func (s *RemoteRuleSet) loadBytes(content []byte) error { method loopUpdate (line 205) | func (s *RemoteRuleSet) loopUpdate() { method updateOnce (line 225) | func (s *RemoteRuleSet) updateOnce() { method fetch (line 234) | func (s *RemoteRuleSet) fetch(ctx context.Context, startContext *adapt... method Close (line 315) | func (s *RemoteRuleSet) Close() error { method Match (line 324) | func (s *RemoteRuleSet) Match(metadata *adapter.InboundContext) bool { function NewRemoteRuleSet (line 57) | func NewRemoteRuleSet(ctx context.Context, logger logger.ContextLogger, ... FILE: route/rule_conds.go function hasRule (line 8) | func hasRule(rules []option.Rule, cond func(rule option.DefaultRule) boo... function hasDNSRule (line 24) | func hasDNSRule(rules []option.DNSRule, cond func(rule option.DefaultDNS... function isProcessRule (line 40) | func isProcessRule(rule option.DefaultRule) bool { function isProcessDNSRule (line 44) | func isProcessDNSRule(rule option.DefaultDNSRule) bool { function isNeighborRule (line 48) | func isNeighborRule(rule option.DefaultRule) bool { function isNeighborDNSRule (line 52) | func isNeighborDNSRule(rule option.DefaultDNSRule) bool { function isWIFIRule (line 56) | func isWIFIRule(rule option.DefaultRule) bool { function isWIFIDNSRule (line 60) | func isWIFIDNSRule(rule option.DefaultDNSRule) bool { FILE: service/ccm/credential.go constant oauth2ClientID (line 17) | oauth2ClientID = "9d1c250a-e61b-44d9-88ed-5944d1962f5e" constant oauth2TokenURL (line 18) | oauth2TokenURL = "https://console.anthropic.com/v1/oauth/token" constant claudeAPIBaseURL (line 19) | claudeAPIBaseURL = "https://api.anthropic.com" constant tokenRefreshBufferMs (line 20) | tokenRefreshBufferMs = 60000 constant anthropicBetaOAuthValue (line 21) | anthropicBetaOAuthValue = "oauth-2025-04-20" function getRealUser (line 24) | func getRealUser() (*user.User, error) { function getDefaultCredentialsPath (line 34) | func getDefaultCredentialsPath() (string, error) { function readCredentialsFromFile (line 45) | func readCredentialsFromFile(path string) (*oauthCredentials, error) { function writeCredentialsToFile (line 63) | func writeCredentialsToFile(oauthCredentials *oauthCredentials, path str... type oauthCredentials (line 73) | type oauthCredentials struct method needsRefresh (line 82) | func (c *oauthCredentials) needsRefresh() bool { function refreshToken (line 89) | func refreshToken(httpClient *http.Client, credentials *oauthCredentials... FILE: service/ccm/credential_darwin.go function getKeychainServiceName (line 17) | func getKeychainServiceName() string { function platformReadCredentials (line 36) | func platformReadCredentials(customPath string) (*oauthCredentials, erro... function platformWriteCredentials (line 72) | func platformWriteCredentials(oauthCredentials *oauthCredentials, custom... FILE: service/ccm/credential_other.go function platformReadCredentials (line 5) | func platformReadCredentials(customPath string) (*oauthCredentials, erro... function platformWriteCredentials (line 16) | func platformWriteCredentials(oauthCredentials *oauthCredentials, custom... FILE: service/ccm/service.go constant contextWindowStandard (line 40) | contextWindowStandard = 200000 constant contextWindowPremium (line 41) | contextWindowPremium = 1000000 constant premiumContextThreshold (line 42) | premiumContextThreshold = 200000 function RegisterService (line 45) | func RegisterService(registry *boxService.Registry) { type errorResponse (line 49) | type errorResponse struct type errorDetails (line 55) | type errorDetails struct function writeJSONError (line 60) | func writeJSONError(w http.ResponseWriter, r *http.Request, statusCode i... function isHopByHopHeader (line 74) | func isHopByHopHeader(header string) bool { constant weeklyWindowSeconds (line 84) | weeklyWindowSeconds = 604800 constant weeklyWindowMinutes (line 85) | weeklyWindowMinutes = weeklyWindowSeconds / 60 function parseInt64Header (line 88) | func parseInt64Header(headers http.Header, headerName string) (int64, bo... function extractWeeklyCycleHint (line 100) | func extractWeeklyCycleHint(headers http.Header) *WeeklyCycleHint { type Service (line 112) | type Service struct method Start (line 199) | func (s *Service) Start(stage adapter.StartStage) error { method getAccessToken (line 253) | func (s *Service) getAccessToken() (string, error) { method ServeHTTP (line 296) | func (s *Service) ServeHTTP(w http.ResponseWriter, r *http.Request) { method handleResponseWithTracking (line 431) | func (s *Service) handleResponseWithTracking(writer http.ResponseWrite... method Close (line 581) | func (s *Service) Close() error { function NewService (line 131) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... function detectContextWindow (line 284) | func detectContextWindow(betaHeader string, totalInputTokens int64) int { FILE: service/ccm/service_usage.go type UsageStats (line 16) | type UsageStats struct type CostCombination (line 27) | type CostCombination struct type AggregatedUsage (line 35) | type AggregatedUsage struct method ToJSON (line 529) | func (u *AggregatedUsage) ToJSON() *AggregatedUsageJSON { method Load (line 563) | func (u *AggregatedUsage) Load() error { method Save (line 595) | func (u *AggregatedUsage) Save() error { method AddUsage (line 618) | func (u *AggregatedUsage) AddUsage( method AddUsageWithCycleHint (line 628) | func (u *AggregatedUsage) AddUsageWithCycleHint( method scheduleSave (line 660) | func (u *AggregatedUsage) scheduleSave() { method saveAsync (line 688) | func (u *AggregatedUsage) saveAsync() { method cancelPendingSave (line 697) | func (u *AggregatedUsage) cancelPendingSave() { type UsageStatsJSON (line 47) | type UsageStatsJSON struct type CostCombinationJSON (line 59) | type CostCombinationJSON struct type CostsSummaryJSON (line 67) | type CostsSummaryJSON struct type AggregatedUsageJSON (line 74) | type AggregatedUsageJSON struct type WeeklyCycleHint (line 80) | type WeeklyCycleHint struct type ModelPricing (line 85) | type ModelPricing struct type modelFamily (line 93) | type modelFamily struct function getPricing (line 305) | func getPricing(model string, contextWindow int) ModelPricing { function calculateCost (line 320) | func calculateCost(stats UsageStats, model string, contextWindow int) fl... function roundCost (line 340) | func roundCost(cost float64) float64 { function normalizeCombinations (line 344) | func normalizeCombinations(combinations []CostCombination) { function addUsageToCombinations (line 352) | func addUsageToCombinations( function buildCombinationJSON (line 409) | func buildCombinationJSON(combinations []CostCombination, aggregateUserC... function formatUTCOffsetLabel (line 460) | func formatUTCOffsetLabel(timestamp time.Time) string { function formatWeekStartKey (line 475) | func formatWeekStartKey(cycleStartAt time.Time) string { function buildByWeekCost (line 480) | func buildByWeekCost(combinations []CostCombination) map[string]float64 { function buildByUserAndWeekCost (line 496) | func buildByUserAndWeekCost(combinations []CostCombination) map[string]m... function deriveWeekStartUnix (line 521) | func deriveWeekStartUnix(cycleHint *WeeklyCycleHint) int64 { FILE: service/ccm/service_user.go type UserManager (line 9) | type UserManager struct method UpdateUsers (line 14) | func (m *UserManager) UpdateUsers(users []option.CCMUser) { method Authenticate (line 24) | func (m *UserManager) Authenticate(token string) (string, bool) { FILE: service/derp/service.go function Register (line 57) | func Register(registry *boxService.Registry) { type Service (line 61) | type Service struct method Start (line 139) | func (d *Service) Start(stage adapter.StartStage) error { method startMeshWithHost (line 295) | func (d *Service) startMeshWithHost(derpServer *derpserver.Server, ser... method Close (line 354) | func (d *Service) Close() error { method loopSTUNPacket (line 502) | func (d *Service) loopSTUNPacket(packetConn *net.UDPConn) { function NewService (line 78) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... function checkMeshKey (line 284) | func checkMeshKey(meshKey string) error { function getHomeHandler (line 386) | func getHomeHandler(val string) (_ http.Handler, ok bool) { function addWebSocketSupport (line 406) | func addWebSocketSupport(s *derpserver.Server, base http.Handler) http.H... function handleBootstrapDNS (line 442) | func handleBootstrapDNS(ctx context.Context) http.HandlerFunc { type derpConfig (line 462) | type derpConfig struct function readDERPConfig (line 466) | func readDERPConfig(path string) (*derpConfig, error) { function writeNewDERPConfig (line 482) | func writeNewDERPConfig(path string) (*derpConfig, error) { FILE: service/ocm/credential.go constant oauth2ClientID (line 17) | oauth2ClientID = "app_EMoamEEZ73f0CkXaXp7hrann" constant oauth2TokenURL (line 18) | oauth2TokenURL = "https://auth.openai.com/oauth/token" constant openaiAPIBaseURL (line 19) | openaiAPIBaseURL = "https://api.openai.com" constant chatGPTBackendURL (line 20) | chatGPTBackendURL = "https://chatgpt.com/backend-api/codex" constant tokenRefreshIntervalDays (line 21) | tokenRefreshIntervalDays = 8 function getRealUser (line 24) | func getRealUser() (*user.User, error) { function getDefaultCredentialsPath (line 34) | func getDefaultCredentialsPath() (string, error) { function readCredentialsFromFile (line 45) | func readCredentialsFromFile(path string) (*oauthCredentials, error) { function writeCredentialsToFile (line 58) | func writeCredentialsToFile(credentials *oauthCredentials, path string) ... type oauthCredentials (line 66) | type oauthCredentials struct method isAPIKeyMode (line 79) | func (c *oauthCredentials) isAPIKeyMode() bool { method getAccessToken (line 83) | func (c *oauthCredentials) getAccessToken() string { method getAccountID (line 93) | func (c *oauthCredentials) getAccountID() string { method needsRefresh (line 100) | func (c *oauthCredentials) needsRefresh() bool { type tokenData (line 72) | type tokenData struct function refreshToken (line 113) | func refreshToken(httpClient *http.Client, credentials *oauthCredentials... FILE: service/ocm/credential_darwin.go function platformReadCredentials (line 5) | func platformReadCredentials(customPath string) (*oauthCredentials, erro... function platformWriteCredentials (line 16) | func platformWriteCredentials(credentials *oauthCredentials, customPath ... FILE: service/ocm/credential_other.go function platformReadCredentials (line 5) | func platformReadCredentials(customPath string) (*oauthCredentials, erro... function platformWriteCredentials (line 16) | func platformWriteCredentials(credentials *oauthCredentials, customPath ... FILE: service/ocm/service.go function RegisterService (line 40) | func RegisterService(registry *boxService.Registry) { type errorResponse (line 44) | type errorResponse struct type errorDetails (line 48) | type errorDetails struct function writeJSONError (line 54) | func writeJSONError(w http.ResponseWriter, r *http.Request, statusCode i... function isHopByHopHeader (line 66) | func isHopByHopHeader(header string) bool { function normalizeRateLimitIdentifier (line 75) | func normalizeRateLimitIdentifier(limitIdentifier string) string { function parseInt64Header (line 83) | func parseInt64Header(headers http.Header, headerName string) (int64, bo... function weeklyCycleHintForLimit (line 95) | func weeklyCycleHintForLimit(headers http.Header, limitIdentifier string... function extractWeeklyCycleHint (line 116) | func extractWeeklyCycleHint(headers http.Header) *WeeklyCycleHint { type Service (line 126) | type Service struct method Start (line 218) | func (s *Service) Start(stage adapter.StartStage) error { method getAccessToken (line 272) | func (s *Service) getAccessToken() (string, error) { method getAccountID (line 303) | func (s *Service) getAccountID() string { method isAPIKeyMode (line 309) | func (s *Service) isAPIKeyMode() bool { method getBaseURL (line 315) | func (s *Service) getBaseURL() string { method ServeHTTP (line 322) | func (s *Service) ServeHTTP(w http.ResponseWriter, r *http.Request) { method handleResponseWithTracking (line 467) | func (s *Service) handleResponseWithTracking(writer http.ResponseWrite... method Close (line 640) | func (s *Service) Close() error { method registerWebSocketSession (line 664) | func (s *Service) registerWebSocketSession(session *webSocketSession) ... method unregisterWebSocketSession (line 677) | func (s *Service) unregisterWebSocketSession(session *webSocketSession) { method isShuttingDown (line 690) | func (s *Service) isShuttingDown() bool { method startWebSocketShutdown (line 696) | func (s *Service) startWebSocketShutdown() []*webSocketSession { function NewService (line 148) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... FILE: service/ocm/service_usage.go type UsageStats (line 17) | type UsageStats struct method UnmarshalJSON (line 24) | func (u *UsageStats) UnmarshalJSON(data []byte) error { type CostCombination (line 46) | type CostCombination struct type AggregatedUsage (line 55) | type AggregatedUsage struct method ToJSON (line 1037) | func (u *AggregatedUsage) ToJSON() *AggregatedUsageJSON { method Load (line 1071) | func (u *AggregatedUsage) Load() error { method Save (line 1103) | func (u *AggregatedUsage) Save() error { method AddUsage (line 1126) | func (u *AggregatedUsage) AddUsage(model string, contextWindow int, in... method AddUsageWithCycleHint (line 1130) | func (u *AggregatedUsage) AddUsageWithCycleHint(model string, contextW... method scheduleSave (line 1156) | func (u *AggregatedUsage) scheduleSave() { method saveAsync (line 1184) | func (u *AggregatedUsage) saveAsync() { method cancelPendingSave (line 1193) | func (u *AggregatedUsage) cancelPendingSave() { type UsageStatsJSON (line 67) | type UsageStatsJSON struct type CostCombinationJSON (line 75) | type CostCombinationJSON struct type CostsSummaryJSON (line 84) | type CostsSummaryJSON struct type AggregatedUsageJSON (line 91) | type AggregatedUsageJSON struct type WeeklyCycleHint (line 97) | type WeeklyCycleHint struct type ModelPricing (line 102) | type ModelPricing struct type modelFamily (line 108) | type modelFamily struct constant serviceTierAuto (line 115) | serviceTierAuto = "auto" constant serviceTierDefault (line 116) | serviceTierDefault = "default" constant serviceTierFlex (line 117) | serviceTierFlex = "flex" constant serviceTierPriority (line 118) | serviceTierPriority = "priority" constant serviceTierScale (line 119) | serviceTierScale = "scale" constant contextWindowStandard (line 123) | contextWindowStandard = 272000 constant contextWindowPremium (line 124) | contextWindowPremium = 1050000 constant premiumContextThreshold (line 125) | premiumContextThreshold = 272000 function modelFamiliesForTier (line 724) | func modelFamiliesForTier(serviceTier string) []modelFamily { function findPricingInFamilies (line 735) | func findPricingInFamilies(model string, contextWindow int, modelFamilie... function hasPremiumPricingInFamilies (line 748) | func hasPremiumPricingInFamilies(model string, modelFamilies []modelFami... function normalizeServiceTier (line 757) | func normalizeServiceTier(serviceTier string) string { function getPricing (line 773) | func getPricing(model string, serviceTier string, contextWindow int) Mod... function detectContextWindow (line 802) | func detectContextWindow(model string, serviceTier string, inputTokens i... function normalizeGPT5Model (line 826) | func normalizeGPT5Model(model string) string { function calculateCost (line 851) | func calculateCost(stats UsageStats, model string, serviceTier string, c... function roundCost (line 866) | func roundCost(cost float64) float64 { function normalizeCombinations (line 870) | func normalizeCombinations(combinations []CostCombination) { function addUsageToCombinations (line 882) | func addUsageToCombinations(combinations *[]CostCombination, model strin... function buildCombinationJSON (line 924) | func buildCombinationJSON(combinations []CostCombination, aggregateUserC... function formatUTCOffsetLabel (line 968) | func formatUTCOffsetLabel(timestamp time.Time) string { function formatWeekStartKey (line 983) | func formatWeekStartKey(cycleStartAt time.Time) string { function buildByWeekCost (line 988) | func buildByWeekCost(combinations []CostCombination) map[string]float64 { function buildByUserAndWeekCost (line 1004) | func buildByUserAndWeekCost(combinations []CostCombination) map[string]m... function deriveWeekStartUnix (line 1029) | func deriveWeekStartUnix(cycleHint *WeeklyCycleHint) int64 { FILE: service/ocm/service_user.go type UserManager (line 9) | type UserManager struct method UpdateUsers (line 14) | func (m *UserManager) UpdateUsers(users []option.OCMUser) { method Authenticate (line 24) | func (m *UserManager) Authenticate(token string) (string, bool) { FILE: service/ocm/service_websocket.go type webSocketSession (line 24) | type webSocketSession struct method Close (line 30) | func (s *webSocketSession) Close() { function buildUpstreamWebSocketURL (line 37) | func buildUpstreamWebSocketURL(baseURL string, proxyPath string) string { function isForwardableResponseHeader (line 47) | func isForwardableResponseHeader(key string) bool { function isForwardableWebSocketRequestHeader (line 63) | func isForwardableWebSocketRequestHeader(key string) bool { method handleWebSocket (line 79) | func (s *Service) handleWebSocket(w http.ResponseWriter, r *http.Request... method proxyWebSocketClientToUpstream (line 190) | func (s *Service) proxyWebSocketClientToUpstream(clientConn net.Conn, up... method proxyWebSocketUpstreamToClient (line 223) | func (s *Service) proxyWebSocketUpstreamToClient(upstreamReadWriter io.R... FILE: service/oomkiller/config.go function buildTimerConfig (line 10) | func buildTimerConfig(options option.OOMKillerServiceOptions, memoryLimi... FILE: service/oomkiller/service.go function RegisterService (line 49) | func RegisterService(registry *boxService.Registry) { type Service (line 58) | type Service struct method Start (line 92) | func (s *Service) Start(stage adapter.StartStage) error { method Close (line 119) | func (s *Service) Close() error { function NewService (line 69) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... function goMemoryPressureCallback (line 139) | func goMemoryPressureCallback(status C.ulong) { FILE: service/oomkiller/service_stub.go function RegisterService (line 18) | func RegisterService(registry *boxService.Registry) { type Service (line 22) | type Service struct method Start (line 59) | func (s *Service) Start(stage adapter.StartStage) error { method Close (line 76) | func (s *Service) Close() error { function NewService (line 33) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... FILE: service/oomkiller/service_timer.go constant defaultChecksBeforeLimit (line 14) | defaultChecksBeforeLimit = 4 constant defaultMinInterval (line 15) | defaultMinInterval = 500 * time.Millisecond constant defaultMaxInterval (line 16) | defaultMaxInterval = 10 * time.Second constant defaultSafetyMargin (line 17) | defaultSafetyMargin = 5 * 1024 * 1024 type adaptiveTimer (line 20) | type adaptiveTimer struct method start (line 58) | func (t *adaptiveTimer) start(_ uint64) { method startNow (line 64) | func (t *adaptiveTimer) startNow() { method startLocked (line 71) | func (t *adaptiveTimer) startLocked() { method stop (line 80) | func (t *adaptiveTimer) stop() { method stopLocked (line 86) | func (t *adaptiveTimer) stopLocked() { method running (line 93) | func (t *adaptiveTimer) running() bool { method poll (line 99) | func (t *adaptiveTimer) poll() { type timerConfig (line 36) | type timerConfig struct function newAdaptiveTimer (line 45) | func newAdaptiveTimer(logger log.ContextLogger, router adapter.Router, c... FILE: service/resolved/resolve1.go type resolve1Manager (line 30) | type resolve1Manager method getLink (line 78) | func (t *resolve1Manager) getLink(ifIndex int32) (*TransportLink, *dbu... method getSenderProcess (line 92) | func (t *resolve1Manager) getSenderProcess(sender dbus.Sender) (int32,... method createMetadata (line 105) | func (t *resolve1Manager) createMetadata(sender dbus.Sender) adapter.I... method log (line 155) | func (t *resolve1Manager) log(sender dbus.Sender, message ...any) { method logRequest (line 172) | func (t *resolve1Manager) logRequest(sender dbus.Sender, message ...an... method ResolveHostname (line 204) | func (t *resolve1Manager) ResolveHostname(sender dbus.Sender, ifIndex ... method ResolveAddress (line 245) | func (t *resolve1Manager) ResolveAddress(sender dbus.Sender, ifIndex i... method ResolveRecord (line 306) | func (t *resolve1Manager) ResolveRecord(sender dbus.Sender, ifIndex in... method ResolveService (line 354) | func (t *resolve1Manager) ResolveService(sender dbus.Sender, ifIndex i... method SetLinkDNS (line 483) | func (t *resolve1Manager) SetLinkDNS(sender dbus.Sender, ifIndex int32... method SetLinkDNSEx (line 501) | func (t *resolve1Manager) SetLinkDNSEx(sender dbus.Sender, ifIndex int... method SetLinkDomains (line 519) | func (t *resolve1Manager) SetLinkDomains(sender dbus.Sender, ifIndex i... method SetLinkDefaultRoute (line 541) | func (t *resolve1Manager) SetLinkDefaultRoute(sender dbus.Sender, ifIn... method SetLinkLLMNR (line 564) | func (t *resolve1Manager) SetLinkLLMNR(ifIndex int32, llmnrMode string... method SetLinkMulticastDNS (line 568) | func (t *resolve1Manager) SetLinkMulticastDNS(ifIndex int32, mdnsMode ... method SetLinkDNSOverTLS (line 572) | func (t *resolve1Manager) SetLinkDNSOverTLS(sender dbus.Sender, ifInde... method SetLinkDNSSEC (line 592) | func (t *resolve1Manager) SetLinkDNSSEC(ifIndex int32, dnssecMode stri... method SetLinkDNSSECNegativeTrustAnchors (line 596) | func (t *resolve1Manager) SetLinkDNSSECNegativeTrustAnchors(ifIndex in... method RevertLink (line 600) | func (t *resolve1Manager) RevertLink(sender dbus.Sender, ifIndex int32... method RegisterService (line 614) | func (t *resolve1Manager) RegisterService(sender dbus.Sender, identifi... method UnregisterService (line 618) | func (t *resolve1Manager) UnregisterService(sender dbus.Sender, servic... method ResetStatistics (line 622) | func (t *resolve1Manager) ResetStatistics() *dbus.Error { method FlushCaches (line 626) | func (t *resolve1Manager) FlushCaches(sender dbus.Sender) *dbus.Error { method ResetServerFeatures (line 632) | func (t *resolve1Manager) ResetServerFeatures() *dbus.Error { method postUpdate (line 636) | func (t *resolve1Manager) postUpdate(link *TransportLink) *dbus.Error { type Address (line 32) | type Address struct type Name (line 38) | type Name struct type ResourceRecord (line 43) | type ResourceRecord struct type SRVRecord (line 50) | type SRVRecord struct type TXTRecord (line 59) | type TXTRecord type LinkDNS (line 61) | type LinkDNS struct type LinkDNSEx (line 66) | type LinkDNSEx struct type LinkDomain (line 73) | type LinkDomain struct function familyToString (line 191) | func familyToString(family int32) string { function rcodeError (line 643) | func rcodeError(rcode int) *dbus.Error { function wrapError (line 647) | func wrapError(err error) *dbus.Error { FILE: service/resolved/service.go function RegisterService (line 34) | func RegisterService(registry *boxService.Registry) { type Service (line 38) | type Service struct method Start (line 85) | func (i *Service) Start(stage adapter.StartStage) error { method Close (line 124) | func (i *Service) Close() error { method NewConnectionEx (line 135) | func (i *Service) NewConnectionEx(ctx context.Context, conn net.Conn, ... method NewPacketEx (line 149) | func (i *Service) NewPacketEx(buffer *buf.Buffer, oob []byte, source M... method exchangePacket (line 153) | func (i *Service) exchangePacket(buffer *buf.Buffer, oob []byte, sourc... method exchangePacket0 (line 161) | func (i *Service) exchangePacket0(ctx context.Context, buffer *buf.Buf... method onNetworkUpdate (line 185) | func (i *Service) onNetworkUpdate() { type TransportLink (line 54) | type TransportLink struct method nameList (line 206) | func (conf *TransportLink) nameList(ndots int, name string) []string { function NewService (line 64) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... function avoidDNS (line 246) | func avoidDNS(name string) bool { FILE: service/resolved/stub.go function RegisterService (line 17) | func RegisterService(registry *boxService.Registry) { function RegisterTransport (line 23) | func RegisterTransport(registry *dns.TransportRegistry) { FILE: service/resolved/transport.go function RegisterTransport (line 31) | func RegisterTransport(registry *dns.TransportRegistry) { type Transport (line 37) | type Transport struct method Start (line 83) | func (t *Transport) Start(stage adapter.StartStage) error { method Close (line 102) | func (t *Transport) Close() error { method Reset (line 113) | func (t *Transport) Reset() { method updateTransports (line 123) | func (t *Transport) updateTransports(link *TransportLink) error { method deleteTransport (line 181) | func (t *Transport) deleteTransport(link *TransportLink) { method Exchange (line 194) | func (t *Transport) Exchange(ctx context.Context, message *mDNS.Msg) (... method exchangeSingleRequest (line 233) | func (t *Transport) exchangeSingleRequest(ctx context.Context, servers... method tryOneName (line 246) | func (t *Transport) tryOneName(ctx context.Context, servers *LinkServe... method exchangeParallel (line 270) | func (t *Transport) exchangeParallel(ctx context.Context, servers *Lin... type LinkServers (line 52) | type LinkServers struct method ServerOffset (line 58) | func (c *LinkServers) ServerOffset(rotate bool) uint32 { function NewTransport (line 65) | func NewTransport(ctx context.Context, logger log.ContextLogger, tag str... FILE: service/ssmapi/api.go type APIServer (line 14) | type APIServer struct method Route (line 28) | func (s *APIServer) Route(r chi.Router) { method getServerInfo (line 46) | func (s *APIServer) getServerInfo(writer http.ResponseWriter, request ... method listUser (line 64) | func (s *APIServer) listUser(writer http.ResponseWriter, request *http... method addUser (line 70) | func (s *APIServer) addUser(writer http.ResponseWriter, request *http.... method getUser (line 90) | func (s *APIServer) getUser(writer http.ResponseWriter, request *http.... method updateUser (line 109) | func (s *APIServer) updateUser(writer http.ResponseWriter, request *ht... method deleteUser (line 138) | func (s *APIServer) deleteUser(writer http.ResponseWriter, request *ht... method getStats (line 158) | func (s *APIServer) getStats(writer http.ResponseWriter, request *http... function NewAPIServer (line 20) | func NewAPIServer(logger logger.Logger, traffic *TrafficManager, user *U... type UserObject (line 53) | type UserObject struct FILE: service/ssmapi/cache.go type Cache (line 15) | type Cache struct type EndpointCache (line 19) | type EndpointCache struct method loadCache (line 35) | func (s *Service) loadCache() error { method saveCache (line 58) | func (s *Service) saveCache() error { method writeCache (line 74) | func (s *Service) writeCache(cacheBinary []byte) error { method decodeCache (line 88) | func (s *Service) decodeCache(cacheBinary []byte) error { method encodeCache (line 126) | func (s *Service) encodeCache() ([]byte, error) { function sortTypedMap (line 205) | func sortTypedMap[T comparable](trafficMap *badjson.TypedMap[string, T])... function typedAtomicInt64Map (line 219) | func typedAtomicInt64Map(trafficMap *badjson.TypedMap[string, int64]) ma... function typedMap (line 231) | func typedMap[T comparable](trafficMap *badjson.TypedMap[string, T]) map... FILE: service/ssmapi/server.go function RegisterService (line 27) | func RegisterService(registry *boxService.Registry) { type Service (line 31) | type Service struct method Start (line 98) | func (s *Service) Start(stage adapter.StartStage) error { method loopSaveCache (line 133) | func (s *Service) loopSaveCache() { method Close (line 147) | func (s *Service) Close() error { function NewService (line 47) | func NewService(ctx context.Context, logger log.ContextLogger, tag strin... FILE: service/ssmapi/traffic.go type TrafficManager (line 15) | type TrafficManager struct method UpdateUsers (line 43) | func (s *TrafficManager) UpdateUsers(users []string) { method userCounter (line 80) | func (s *TrafficManager) userCounter(user string) (*atomic.Int64, *ato... method TrackConnection (line 116) | func (s *TrafficManager) TrackConnection(conn net.Conn, metadata adapt... method TrackPacketConnection (line 129) | func (s *TrafficManager) TrackPacketConnection(conn N.PacketConn, meta... method ReadUser (line 148) | func (s *TrafficManager) ReadUser(user *UserObject) { method readUser (line 154) | func (s *TrafficManager) readUser(user *UserObject, swap bool) { method ReadUsers (line 199) | func (s *TrafficManager) ReadUsers(users []*UserObject, swap bool) { method ReadGlobal (line 207) | func (s *TrafficManager) ReadGlobal(swap bool) (uplinkBytes int64, dow... function NewTrafficManager (line 31) | func NewTrafficManager() *TrafficManager { FILE: service/ssmapi/user.go type UserManager (line 10) | type UserManager struct method postUpdate (line 25) | func (m *UserManager) postUpdate(updated bool) error { method List (line 42) | func (m *UserManager) List() []*UserObject { method Add (line 56) | func (m *UserManager) Add(username string, password string) error { method Get (line 66) | func (m *UserManager) Get(username string) (string, bool) { method Update (line 75) | func (m *UserManager) Update(username string, password string) error { method Delete (line 82) | func (m *UserManager) Delete(username string) error { function NewUserManager (line 17) | func NewUserManager(inbound adapter.ManagedSSMServer, trafficManager *Tr... FILE: test/box_test.go function TestMain (line 28) | func TestMain(m *testing.M) { function init (line 34) | func init() { function startInstance (line 38) | func startInstance(t *testing.T, options option.Options) *box.Box { function testSuit (line 72) | func testSuit(t *testing.T, clientPort uint16, testPort uint16) { function testQUIC (line 88) | func testQUIC(t *testing.T, clientPort uint16) { function testSuitLargeUDP (line 110) | func testSuitLargeUDP(t *testing.T, clientPort uint16, testPort uint16) { function testTCP (line 125) | func testTCP(t *testing.T, clientPort uint16, testPort uint16) { function testSuitSimple (line 134) | func testSuitSimple(t *testing.T, clientPort uint16, testPort uint16) { function testSuitSimple1 (line 148) | func testSuitSimple1(t *testing.T, clientPort uint16, testPort uint16) { function testSuitWg (line 166) | func testSuitWg(t *testing.T, clientPort uint16, testPort uint16) { FILE: test/brutal_test.go function TestBrutalShadowsocks (line 16) | func TestBrutalShadowsocks(t *testing.T) { function TestBrutalTrojan (line 101) | func TestBrutalTrojan(t *testing.T) { function TestBrutalVMess (line 199) | func TestBrutalVMess(t *testing.T) { function TestBrutalVLESS (line 281) | func TestBrutalVLESS(t *testing.T) { FILE: test/clash_darwin_test.go function defaultRouteIP (line 13) | func defaultRouteIP() (netip.Addr, error) { function defaultRouteInterfaceIndex (line 36) | func defaultRouteInterfaceIndex() (int, error) { FILE: test/clash_other_test.go function defaultRouteIP (line 10) | func defaultRouteIP() (netip.Addr, error) { FILE: test/clash_test.go constant ImageShadowsocksRustServer (line 29) | ImageShadowsocksRustServer = "ghcr.io/shadowsocks/ssserver-rust:latest" constant ImageShadowsocksRustClient (line 30) | ImageShadowsocksRustClient = "ghcr.io/shadowsocks/sslocal-rust:latest" constant ImageV2RayCore (line 31) | ImageV2RayCore = "v2fly/v2fly-core:latest" constant ImageTrojan (line 32) | ImageTrojan = "trojangfw/trojan:latest" constant ImageNaive (line 33) | ImageNaive = "pocat/naiveproxy:client" constant ImageBoringTun (line 34) | ImageBoringTun = "ghcr.io/ntkme/boringtun:edge" constant ImageHysteria (line 35) | ImageHysteria = "tobyxdd/hysteria:v1.3.5" constant ImageHysteria2 (line 36) | ImageHysteria2 = "tobyxdd/hysteria:v2" constant ImageNginx (line 37) | ImageNginx = "nginx:stable" constant ImageShadowTLS (line 38) | ImageShadowTLS = "ghcr.io/ihciah/shadow-tls:latest" constant ImageXRayCore (line 39) | ImageXRayCore = "teddysun/xray:latest" constant ImageShadowsocksLegacy (line 40) | ImageShadowsocksLegacy = "mritd/shadowsocks:latest" constant ImageTUICServer (line 41) | ImageTUICServer = "kilvn/tuic-server:latest" constant ImageTUICClient (line 42) | ImageTUICClient = "kilvn/tuic-client:latest" function init (line 64) | func init() { function newPingPongPair (line 103) | func newPingPongPair() (chan []byte, chan []byte, func(t *testing.T) err... function newLargeDataPair (line 135) | func newLargeDataPair() (chan hashPair, chan hashPair, func(t *testing.T... function testPingPongWithConn (line 170) | func testPingPongWithConn(t *testing.T, port uint16, cc func() (net.Conn... function testPingPongWithPacketConn (line 217) | func testPingPongWithPacketConn(t *testing.T, port uint16, pcc func() (n... type hashPair (line 263) | type hashPair struct function testLargeDataWithConn (line 268) | func testLargeDataWithConn(t *testing.T, port uint16, cc func() (net.Con... function testLargeDataWithPacketConn (line 366) | func testLargeDataWithPacketConn(t *testing.T, port uint16, pcc func() (... function testLargeDataWithPacketConnSize (line 370) | func testLargeDataWithPacketConnSize(t *testing.T, port uint16, chunkSiz... function testPacketConnTimeout (line 470) | func testPacketConnTimeout(t *testing.T, pcc func() (net.PacketConn, err... function listen (line 494) | func listen(network, address string) (net.Listener, error) { function listenPacket (line 510) | func listenPacket(network, address string) (net.PacketConn, error) { FILE: test/direct_test.go function _TestProxyProtocol (line 14) | func _TestProxyProtocol(t *testing.T) { FILE: test/docker_test.go type DockerOptions (line 21) | type DockerOptions struct function startDockerContainer (line 32) | func startDockerContainer(t *testing.T, options DockerOptions) { function cleanContainer (line 114) | func cleanContainer(id string) error { FILE: test/domain_inbound_test.go function TestTUICDomainUDP (line 15) | func TestTUICDomainUDP(t *testing.T) { FILE: test/ech_test.go function TestECH (line 16) | func TestECH(t *testing.T) { function TestECHQUIC (line 109) | func TestECHQUIC(t *testing.T) { function TestECHHysteria2 (line 199) | func TestECHHysteria2(t *testing.T) { FILE: test/http_test.go function TestHTTPSelf (line 13) | func TestHTTPSelf(t *testing.T) { FILE: test/hysteria2_test.go function TestHysteria2Self (line 16) | func TestHysteria2Self(t *testing.T) { function TestHysteria2Hop (line 31) | func TestHysteria2Hop(t *testing.T) { function testHysteria2Self (line 35) | func testHysteria2Self(t *testing.T, salamanderPassword string, portHop ... function TestHysteria2Inbound (line 143) | func TestHysteria2Inbound(t *testing.T) { function TestHysteria2Outbound (line 185) | func TestHysteria2Outbound(t *testing.T) { FILE: test/hysteria_test.go function TestHysteriaSelf (line 13) | func TestHysteriaSelf(t *testing.T) { function TestHysteriaInbound (line 100) | func TestHysteriaInbound(t *testing.T) { function TestHysteriaOutbound (line 141) | func TestHysteriaOutbound(t *testing.T) { FILE: test/inbound_detour_test.go function TestChainedInbound (line 14) | func TestChainedInbound(t *testing.T) { FILE: test/ktls_test.go function TestKTLS (line 16) | func TestKTLS(t *testing.T) { function TestKTLSECH (line 103) | func TestKTLSECH(t *testing.T) { function TestKTLSReality (line 199) | func TestKTLSReality(t *testing.T) { FILE: test/mkcert.go function createSelfSignedCertificate (line 22) | func createSelfSignedCertificate(t *testing.T, domain string) (caPem, ce... function randomSerialNumber (line 83) | func randomSerialNumber(t *testing.T) *big.Int { FILE: test/mux_cool_test.go function TestMuxCoolServer (line 17) | func TestMuxCoolServer(t *testing.T) { function TestMuxCoolClient (line 64) | func TestMuxCoolClient(t *testing.T) { function TestMuxCoolSelf (line 114) | func TestMuxCoolSelf(t *testing.T) { FILE: test/mux_test.go function TestVMessSMux (line 22) | func TestVMessSMux(t *testing.T) { function TestShadowsocksMux (line 29) | func TestShadowsocksMux(t *testing.T) { function TestShadowsockH2Mux (line 40) | func TestShadowsockH2Mux(t *testing.T) { function TestShadowsockSMuxPadding (line 48) | func TestShadowsockSMuxPadding(t *testing.T) { function testShadowsocksMux (line 56) | func testShadowsocksMux(t *testing.T, options option.OutboundMultiplexOp... function testVMessMux (line 127) | func testVMessMux(t *testing.T, options option.OutboundMultiplexOptions) { FILE: test/naive_self_test.go function TestNaiveSelf (line 23) | func TestNaiveSelf(t *testing.T) { function TestNaiveSelfECH (line 111) | func TestNaiveSelfECH(t *testing.T) { function TestNaiveSelfInsecureConcurrency (line 226) | func TestNaiveSelfInsecureConcurrency(t *testing.T) { function TestNaiveSelfQUIC (line 342) | func TestNaiveSelfQUIC(t *testing.T) { function TestNaiveSelfQUICCongestionControl (line 431) | func TestNaiveSelfQUICCongestionControl(t *testing.T) { FILE: test/naive_test.go function TestNaiveInboundWithNginx (line 15) | func TestNaiveInboundWithNginx(t *testing.T) { function TestNaiveInbound (line 61) | func TestNaiveInbound(t *testing.T) { function TestNaiveHTTP3Inbound (line 105) | func TestNaiveHTTP3Inbound(t *testing.T) { FILE: test/reality_test.go function TestReality (line 15) | func TestReality(t *testing.T) { FILE: test/shadowsocks_legacy_test.go function TestShadowsocksLegacy (line 15) | func TestShadowsocksLegacy(t *testing.T) { function testShadowsocksLegacy (line 19) | func testShadowsocksLegacy(t *testing.T, method string) { FILE: test/shadowsocks_test.go constant serverPort (line 20) | serverPort uint16 = 10000 + iota constant clientPort (line 21) | clientPort constant testPort (line 22) | testPort constant otherPort (line 23) | otherPort constant otherClientPort (line 24) | otherClientPort function TestShadowsocks (line 27) | func TestShadowsocks(t *testing.T) { function TestShadowsocksNone (line 45) | func TestShadowsocksNone(t *testing.T) { function TestShadowsocks2022 (line 49) | func TestShadowsocks2022(t *testing.T) { function TestShadowsocks2022EIH (line 79) | func TestShadowsocks2022EIH(t *testing.T) { function testShadowsocksInboundWithShadowsocksRust (line 96) | func testShadowsocksInboundWithShadowsocksRust(t *testing.T, method stri... function testShadowsocksOutboundWithShadowsocksRust (line 121) | func testShadowsocksOutboundWithShadowsocksRust(t *testing.T, method str... function testShadowsocksSelf (line 157) | func testShadowsocksSelf(t *testing.T, method string, password string) { function TestShadowsocksUoT (line 222) | func TestShadowsocksUoT(t *testing.T) { function testShadowsocks2022EIH (line 292) | func testShadowsocks2022EIH(t *testing.T, method string, password string) { function mkBase64 (line 362) | func mkBase64(t *testing.T, length int) string { FILE: test/shadowtls_test.go function TestShadowTLS (line 21) | func TestShadowTLS(t *testing.T) { function testShadowTLS (line 51) | func testShadowTLS(t *testing.T, version int, password string, utlsEanbl... function TestShadowTLSFallback (line 165) | func TestShadowTLSFallback(t *testing.T) { function TestShadowTLSFallbackWildcardAll (line 204) | func TestShadowTLSFallbackWildcardAll(t *testing.T) { function TestShadowTLSFallbackWildcardAuthedFail (line 238) | func TestShadowTLSFallbackWildcardAuthedFail(t *testing.T) { function TestShadowTLSFallbackWildcardOffFail (line 277) | func TestShadowTLSFallbackWildcardOffFail(t *testing.T) { function TestShadowTLSInbound (line 316) | func TestShadowTLSInbound(t *testing.T) { function TestShadowTLSOutbound (line 409) | func TestShadowTLSOutbound(t *testing.T) { FILE: test/socks_test.go function TestSOCKSUDPTimeout (line 22) | func TestSOCKSUDPTimeout(t *testing.T) { function TestMixedUDPTimeout (line 50) | func TestMixedUDPTimeout(t *testing.T) { function testUDPSessionIdleTimeout (line 78) | func testUDPSessionIdleTimeout(t *testing.T, proxyPort uint16, echoPort ... FILE: test/ss_plugin_test.go function TestShadowsocksObfs (line 13) | func TestShadowsocksObfs(t *testing.T) { function _TestShadowsocksV2RayPlugin (line 24) | func _TestShadowsocksV2RayPlugin(t *testing.T) { function testShadowsocksPlugin (line 28) | func testShadowsocksPlugin(t *testing.T, name string, opts string, args ... FILE: test/tfo_test.go function TestTCPSlowOpen (line 14) | func TestTCPSlowOpen(t *testing.T) { FILE: test/tls_test.go function TestUTLS (line 13) | func TestUTLS(t *testing.T) { FILE: test/trojan_test.go function TestTrojanOutbound (line 13) | func TestTrojanOutbound(t *testing.T) { function TestTrojanSelf (line 59) | func TestTrojanSelf(t *testing.T) { function TestTrojanPlainSelf (line 143) | func TestTrojanPlainSelf(t *testing.T) { FILE: test/tuic_test.go function TestTUICSelf (line 15) | func TestTUICSelf(t *testing.T) { function testTUICSelf (line 27) | func testTUICSelf(t *testing.T, udpStream bool, zeroRTTHandshake bool) { function TestTUICInbound (line 115) | func TestTUICInbound(t *testing.T) { function TestTUICOutbound (line 153) | func TestTUICOutbound(t *testing.T) { FILE: test/v2ray_grpc_test.go function TestV2RayGRPCInbound (line 18) | func TestV2RayGRPCInbound(t *testing.T) { function testV2RayGRPCInbound (line 27) | func testV2RayGRPCInbound(t *testing.T, forceLite bool) { function TestV2RayGRPCOutbound (line 93) | func TestV2RayGRPCOutbound(t *testing.T) { function testV2RayGRPCOutbound (line 102) | func testV2RayGRPCOutbound(t *testing.T, forceLite bool) { function TestV2RayGRPCLite (line 175) | func TestV2RayGRPCLite(t *testing.T) { FILE: test/v2ray_httpupgrade_test.go function TestV2RayHTTPUpgrade (line 10) | func TestV2RayHTTPUpgrade(t *testing.T) { FILE: test/v2ray_transport_test.go function TestV2RayHTTPSelf (line 16) | func TestV2RayHTTPSelf(t *testing.T) { function TestV2RayHTTPPlainSelf (line 25) | func TestV2RayHTTPPlainSelf(t *testing.T) { function testV2RayTransportSelf (line 31) | func testV2RayTransportSelf(t *testing.T, transport *option.V2RayTranspo... function testV2RayTransportSelfWith (line 35) | func testV2RayTransportSelfWith(t *testing.T, server, client *option.V2R... function testVMessTransportSelf (line 44) | func testVMessTransportSelf(t *testing.T, server *option.V2RayTransportO... function testTrojanTransportSelf (line 133) | func testTrojanTransportSelf(t *testing.T, server *option.V2RayTransport... function TestVMessQUICSelf (line 221) | func TestVMessQUICSelf(t *testing.T) { function testV2RayTransportNOTLSSelf (line 313) | func testV2RayTransportNOTLSSelf(t *testing.T, transport *option.V2RayTr... FILE: test/v2ray_ws_test.go function TestV2RayWebsocket (line 18) | func TestV2RayWebsocket(t *testing.T) { function testV2RayWebsocketInbound (line 61) | func testV2RayWebsocketInbound(t *testing.T, maxEarlyData uint32, earlyD... function testV2RayWebsocketOutbound (line 131) | func testV2RayWebsocketOutbound(t *testing.T, maxEarlyData uint32, early... FILE: test/vmess_test.go function newUUID (line 18) | func newUUID() uuid.UUID { function TestVMessAuto (line 23) | func TestVMessAuto(t *testing.T) { function TestVMess (line 39) | func TestVMess(t *testing.T) { function testVMess0 (line 63) | func testVMess0(t *testing.T, security string) { function testVMess1 (line 81) | func testVMess1(t *testing.T, security string) { function testVMess2 (line 102) | func testVMess2(t *testing.T, security string) { function testVMessInboundWithV2Ray (line 153) | func testVMessInboundWithV2Ray(t *testing.T, security string, alterId in... function testVMessOutboundWithV2Ray (line 209) | func testVMessOutboundWithV2Ray(t *testing.T, security string, globalPad... function testVMessSelf (line 265) | func testVMessSelf(t *testing.T, security string, alterId int, globalPad... FILE: test/wrapper_test.go function TestOptionsWrapper (line 12) | func TestOptionsWrapper(t *testing.T) { FILE: transport/simple-obfs/http.go type HTTPObfs (line 16) | type HTTPObfs struct method Read (line 26) | func (ho *HTTPObfs) Read(b []byte) (int, error) { method Write (line 63) | func (ho *HTTPObfs) Write(b []byte) (int, error) { method Upstream (line 85) | func (ho *HTTPObfs) Upstream() any { function NewHTTPObfs (line 90) | func NewHTTPObfs(conn net.Conn, host string, port string) net.Conn { FILE: transport/simple-obfs/tls.go function init (line 15) | func init() { constant chunkSize (line 20) | chunkSize = 1 << 14 type TLSObfs (line 24) | type TLSObfs struct method read (line 32) | func (to *TLSObfs) read(b []byte, discardN int) (int, error) { method Read (line 59) | func (to *TLSObfs) Read(b []byte) (int, error) { method Write (line 83) | func (to *TLSObfs) Write(b []byte) (int, error) { method write (line 99) | func (to *TLSObfs) write(b []byte) (int, error) { method Upstream (line 116) | func (to *TLSObfs) Upstream() any { function NewTLSObfs (line 121) | func NewTLSObfs(conn net.Conn, server string) net.Conn { function makeClientHelloMsg (line 130) | func makeClientHelloMsg(data []byte, server string) []byte { FILE: transport/sip003/args.go type Args (line 11) | type Args method Get (line 17) | func (args Args) Get(key string) (value string, ok bool) { method Add (line 29) | func (args Args) Add(key, value string) { function indexUnescaped (line 36) | func indexUnescaped(s string, term []byte) (int, string, error) { function ParsePluginOptions (line 63) | func ParsePluginOptions(s string) (opts Args, err error) { function backslashEscape (line 110) | func backslashEscape(s string, set []byte) string { FILE: transport/sip003/obfs.go function init (line 17) | func init() { function newObfsLocal (line 21) | func newObfsLocal(ctx context.Context, pluginOpts Args, router adapter.R... type ObfsLocal (line 44) | type ObfsLocal struct method DialContext (line 52) | func (o *ObfsLocal) DialContext(ctx context.Context) (net.Conn, error) { FILE: transport/sip003/plugin.go type PluginConstructor (line 13) | type PluginConstructor type Plugin (line 15) | type Plugin interface function RegisterPlugin (line 21) | func RegisterPlugin(name string, constructor PluginConstructor) { function CreatePlugin (line 28) | func CreatePlugin(ctx context.Context, name string, pluginArgs string, r... FILE: transport/sip003/v2ray.go function init (line 21) | func init() { function newV2RayPlugin (line 25) | func newV2RayPlugin(ctx context.Context, pluginOpts Args, router adapter... type v2rayMuxWrapper (line 109) | type v2rayMuxWrapper struct method DialContext (line 113) | func (w *v2rayMuxWrapper) DialContext(ctx context.Context) (net.Conn, ... FILE: transport/trojan/mux.go function HandleMuxConnection (line 19) | func HandleMuxConnection(ctx context.Context, conn net.Conn, source M.So... function newMuxConnection (line 44) | func newMuxConnection(ctx context.Context, conn net.Conn, source M.Socks... function newMuxConnection0 (line 51) | func newMuxConnection0(ctx context.Context, conn net.Conn, source M.Sock... function smuxConfig (line 80) | func smuxConfig() *smux.Config { FILE: transport/trojan/protocol.go constant KeyLength (line 21) | KeyLength = 56 constant CommandTCP (line 22) | CommandTCP = 1 constant CommandUDP (line 23) | CommandUDP = 3 constant CommandMux (line 24) | CommandMux = 0x7f type ClientConn (line 31) | type ClientConn struct method NeedHandshakeForWrite (line 46) | func (c *ClientConn) NeedHandshakeForWrite() bool { method Write (line 50) | func (c *ClientConn) Write(p []byte) (n int, err error) { method WriteBuffer (line 63) | func (c *ClientConn) WriteBuffer(buffer *buf.Buffer) error { method FrontHeadroom (line 75) | func (c *ClientConn) FrontHeadroom() int { method Upstream (line 82) | func (c *ClientConn) Upstream() any { method ReaderReplaceable (line 86) | func (c *ClientConn) ReaderReplaceable() bool { method WriterReplaceable (line 90) | func (c *ClientConn) WriterReplaceable() bool { function NewClientConn (line 38) | func NewClientConn(conn net.Conn, key [KeyLength]byte, destination M.Soc... type ClientPacketConn (line 94) | type ClientPacketConn struct method NeedHandshake (line 109) | func (c *ClientPacketConn) NeedHandshake() bool { method ReadPacket (line 113) | func (c *ClientPacketConn) ReadPacket(buffer *buf.Buffer) (M.Socksaddr... method WritePacket (line 117) | func (c *ClientPacketConn) WritePacket(buffer *buf.Buffer, destination... method ReadFrom (line 132) | func (c *ClientPacketConn) ReadFrom(p []byte) (n int, addr net.Addr, e... method WriteTo (line 147) | func (c *ClientPacketConn) WriteTo(p []byte, addr net.Addr) (n int, er... method Read (line 151) | func (c *ClientPacketConn) Read(p []byte) (n int, err error) { method Write (line 156) | func (c *ClientPacketConn) Write(p []byte) (n int, err error) { method FrontHeadroom (line 160) | func (c *ClientPacketConn) FrontHeadroom() int { method Upstream (line 167) | func (c *ClientPacketConn) Upstream() any { function NewClientPacketConn (line 102) | func NewClientPacketConn(conn net.Conn, key [KeyLength]byte) *ClientPack... function Key (line 171) | func Key(password string) [KeyLength]byte { function ClientHandshakeRaw (line 179) | func ClientHandshakeRaw(conn net.Conn, key [KeyLength]byte, command byte... function ClientHandshake (line 209) | func ClientHandshake(conn net.Conn, key [KeyLength]byte, destination M.S... function ClientHandshakeBuffer (line 229) | func ClientHandshakeBuffer(conn net.Conn, key [KeyLength]byte, destinati... function ClientHandshakePacket (line 247) | func ClientHandshakePacket(conn net.Conn, key [KeyLength]byte, destinati... function ReadPacket (line 285) | func ReadPacket(conn net.Conn, buffer *buf.Buffer) (M.Socksaddr, error) { function WritePacket (line 306) | func WritePacket(conn net.Conn, buffer *buf.Buffer, destination M.Socksa... FILE: transport/trojan/protocol_wait.go method InitializeReadWaiter (line 15) | func (c *ClientPacketConn) InitializeReadWaiter(options N.ReadWaitOption... method WaitReadPacket (line 20) | func (c *ClientPacketConn) WaitReadPacket() (buffer *buf.Buffer, destina... FILE: transport/trojan/service.go type Handler (line 18) | type Handler interface type Service (line 23) | type Service struct function NewService (line 31) | func NewService[K comparable](handler Handler, fallbackHandler N.TCPConn... method UpdateUsers (line 43) | func (s *Service[K]) UpdateUsers(userList []K, passwordList []string) er... method NewConnection (line 62) | func (s *Service[K]) NewConnection(ctx context.Context, conn net.Conn, s... method fallback (line 117) | func (s *Service[K]) fallback(ctx context.Context, conn net.Conn, source... type PacketConn (line 126) | type PacketConn struct method ReadPacket (line 131) | func (c *PacketConn) ReadPacket(buffer *buf.Buffer) (M.Socksaddr, erro... method WritePacket (line 135) | func (c *PacketConn) WritePacket(buffer *buf.Buffer, destination M.Soc... method FrontHeadroom (line 139) | func (c *PacketConn) FrontHeadroom() int { method NeedAdditionalReadDeadline (line 143) | func (c *PacketConn) NeedAdditionalReadDeadline() bool { method Upstream (line 147) | func (c *PacketConn) Upstream() any { FILE: transport/trojan/service_wait.go method InitializeReadWaiter (line 15) | func (c *PacketConn) InitializeReadWaiter(options N.ReadWaitOptions) (ne... method WaitReadPacket (line 20) | func (c *PacketConn) WaitReadPacket() (buffer *buf.Buffer, destination M... FILE: transport/v2ray/grpc.go function NewGRPCServer (line 18) | func NewGRPCServer(ctx context.Context, logger logger.ContextLogger, opt... function NewGRPCClient (line 25) | func NewGRPCClient(ctx context.Context, dialer N.Dialer, serverAddr M.So... FILE: transport/v2ray/grpc_lite.go function NewGRPCServer (line 17) | func NewGRPCServer(ctx context.Context, logger logger.ContextLogger, opt... function NewGRPCClient (line 21) | func NewGRPCClient(ctx context.Context, dialer N.Dialer, serverAddr M.So... FILE: transport/v2ray/quic.go function RegisterQUICConstructor (line 20) | func RegisterQUICConstructor(server ServerConstructor[option.V2RayQUICOp... function NewQUICServer (line 25) | func NewQUICServer(ctx context.Context, logger logger.ContextLogger, opt... function NewQUICClient (line 32) | func NewQUICClient(ctx context.Context, dialer N.Dialer, serverAddr M.So... FILE: transport/v2ray/transport.go type ServerConstructor (line 20) | type ServerConstructor type ClientConstructor (line 21) | type ClientConstructor function NewServerTransport (line 24) | func NewServerTransport(ctx context.Context, logger logger.ContextLogger... function NewClientTransport (line 47) | func NewClientTransport(ctx context.Context, dialer N.Dialer, serverAddr... FILE: transport/v2raygrpc/client.go type Client (line 27) | type Client struct method connect (line 77) | func (c *Client) connect() (*grpc.ClientConn, error) { method DialContext (line 97) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method Close (line 112) | func (c *Client) Close() error { function NewClient (line 37) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2raygrpc/conn.go type GRPCConn (line 17) | type GRPCConn struct method Read (line 35) | func (c *GRPCConn) Read(b []byte) (n int, err error) { method Write (line 53) | func (c *GRPCConn) Write(b []byte) (n int, err error) { method Close (line 61) | func (c *GRPCConn) Close() error { method LocalAddr (line 70) | func (c *GRPCConn) LocalAddr() net.Addr { method RemoteAddr (line 74) | func (c *GRPCConn) RemoteAddr() net.Addr { method SetDeadline (line 78) | func (c *GRPCConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 82) | func (c *GRPCConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 86) | func (c *GRPCConn) SetWriteDeadline(t time.Time) error { method NeedAdditionalReadDeadline (line 90) | func (c *GRPCConn) NeedAdditionalReadDeadline() bool { method Upstream (line 94) | func (c *GRPCConn) Upstream() any { function NewGRPCConn (line 24) | func NewGRPCConn(service GunService, cancel context.CancelCauseFunc) *GR... type clientConnWrapper (line 100) | type clientConnWrapper struct method CloseWrite (line 104) | func (c *clientConnWrapper) CloseWrite() error { FILE: transport/v2raygrpc/credentials/credentials.go type requestInfoKey (line 25) | type requestInfoKey struct function NewRequestInfoContext (line 28) | func NewRequestInfoContext(ctx context.Context, ri interface{}) context.... function RequestInfoFromContext (line 33) | func RequestInfoFromContext(ctx context.Context) interface{} { type clientHandshakeInfoKey (line 39) | type clientHandshakeInfoKey struct function ClientHandshakeInfoFromContext (line 42) | func ClientHandshakeInfoFromContext(ctx context.Context) interface{} { function NewClientHandshakeInfoContext (line 47) | func NewClientHandshakeInfoContext(ctx context.Context, chi interface{})... FILE: transport/v2raygrpc/credentials/spiffe.go function SPIFFEIDFromState (line 36) | func SPIFFEIDFromState(state tls.ConnectionState) *url.URL { function SPIFFEIDFromCert (line 45) | func SPIFFEIDFromCert(cert *x509.Certificate) *url.URL { FILE: transport/v2raygrpc/credentials/syscallconn.go type syscallConn (line 37) | type syscallConn struct function WrapSyscallConn (line 49) | func WrapSyscallConn(rawConn, newConn net.Conn) net.Conn { FILE: transport/v2raygrpc/credentials/util.go constant alpnProtoStrH2 (line 25) | alpnProtoStrH2 = "h2" function AppendH2ToNextProtos (line 28) | func AppendH2ToNextProtos(ps []string) []string { function CloneTLSConfig (line 46) | func CloneTLSConfig(cfg *tls.Config) *tls.Config { FILE: transport/v2raygrpc/custom_name.go type GunService (line 9) | type GunService interface function ServerDesc (line 15) | func ServerDesc(name string) grpc.ServiceDesc { method TunCustomName (line 32) | func (c *gunServiceClient) TunCustomName(ctx context.Context, name strin... type GunServiceCustomNameClient (line 43) | type GunServiceCustomNameClient interface function RegisterGunServiceCustomNameServer (line 48) | func RegisterGunServiceCustomNameServer(s *grpc.Server, srv GunServiceSe... FILE: transport/v2raygrpc/server.go type Server (line 28) | type Server struct method Tun (line 54) | func (s *Server) Tun(server GunService_TunServer) error { method mustEmbedUnimplementedGunServiceServer (line 79) | func (s *Server) mustEmbedUnimplementedGunServiceServer() { method Network (line 82) | func (s *Server) Network() []string { method Serve (line 86) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 90) | func (s *Server) ServePacket(listener net.PacketConn) error { method Close (line 94) | func (s *Server) Close() error { function NewServer (line 35) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... FILE: transport/v2raygrpc/stream.pb.go constant _ (line 14) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) constant _ (line 16) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) type Hunk (line 19) | type Hunk struct method Reset (line 26) | func (x *Hunk) Reset() { method String (line 33) | func (x *Hunk) String() string { method ProtoMessage (line 37) | func (*Hunk) ProtoMessage() {} method ProtoReflect (line 39) | func (x *Hunk) ProtoReflect() protoreflect.Message { method Descriptor (line 52) | func (*Hunk) Descriptor() ([]byte, []int) { method GetData (line 56) | func (x *Hunk) GetData() []byte { constant file_transport_v2raygrpc_stream_proto_rawDesc (line 65) | file_transport_v2raygrpc_stream_proto_rawDesc = "" + function file_transport_v2raygrpc_stream_proto_rawDescGZIP (line 79) | func file_transport_v2raygrpc_stream_proto_rawDescGZIP() []byte { function init (line 103) | func init() { file_transport_v2raygrpc_stream_proto_init() } function file_transport_v2raygrpc_stream_proto_init (line 104) | func file_transport_v2raygrpc_stream_proto_init() { FILE: transport/v2raygrpc/stream_grpc.pb.go constant _ (line 14) | _ = grpc.SupportPackageIsVersion9 constant GunService_Tun_FullMethodName (line 17) | GunService_Tun_FullMethodName = "/transport.v2raygrpc.GunService/Tun" type GunServiceClient (line 23) | type GunServiceClient interface type gunServiceClient (line 27) | type gunServiceClient struct method Tun (line 35) | func (c *gunServiceClient) Tun(ctx context.Context, opts ...grpc.CallO... function NewGunServiceClient (line 31) | func NewGunServiceClient(cc grpc.ClientConnInterface) GunServiceClient { type GunServiceServer (line 51) | type GunServiceServer interface type UnimplementedGunServiceServer (line 61) | type UnimplementedGunServiceServer struct method Tun (line 63) | func (UnimplementedGunServiceServer) Tun(grpc.BidiStreamingServer[Hunk... method mustEmbedUnimplementedGunServiceServer (line 66) | func (UnimplementedGunServiceServer) mustEmbedUnimplementedGunServiceS... method testEmbeddedByValue (line 67) | func (UnimplementedGunServiceServer) testEmbeddedByValue() ... type UnsafeGunServiceServer (line 72) | type UnsafeGunServiceServer interface function RegisterGunServiceServer (line 76) | func RegisterGunServiceServer(s grpc.ServiceRegistrar, srv GunServiceSer... function _GunService_Tun_Handler (line 87) | func _GunService_Tun_Handler(srv interface{}, stream grpc.ServerStream) ... FILE: transport/v2raygrpc/tls_credentials.go type TLSTransportCredentials (line 14) | type TLSTransportCredentials struct method Info (line 22) | func (c *TLSTransportCredentials) Info() credentials.ProtocolInfo { method ClientHandshake (line 30) | func (c *TLSTransportCredentials) ClientHandshake(ctx context.Context,... method ServerHandshake (line 56) | func (c *TLSTransportCredentials) ServerHandshake(rawConn net.Conn) (n... method Clone (line 79) | func (c *TLSTransportCredentials) Clone() credentials.TransportCredent... method OverrideServerName (line 83) | func (c *TLSTransportCredentials) OverrideServerName(serverNameOverrid... function NewTLSTransportCredentials (line 18) | func NewTLSTransportCredentials(config tls.Config) credentials.Transport... FILE: transport/v2raygrpclite/client.go type Client (line 30) | type Client struct method DialContext (line 80) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method Close (line 105) | func (c *Client) Close() error { function NewClient (line 39) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2raygrpclite/conn.go type GunConn (line 23) | type GunConn struct method setup (line 49) | func (c *GunConn) setup(reader io.Reader, err error) { method Read (line 58) | func (c *GunConn) Read(b []byte) (n int, err error) { method read (line 63) | func (c *GunConn) read(b []byte) (n int, err error) { method Write (line 101) | func (c *GunConn) Write(b []byte) (n int, err error) { method WriteBuffer (line 120) | func (c *GunConn) WriteBuffer(buffer *buf.Buffer) error { method FrontHeadroom (line 139) | func (c *GunConn) FrontHeadroom() int { method Close (line 143) | func (c *GunConn) Close() error { method LocalAddr (line 147) | func (c *GunConn) LocalAddr() net.Addr { method RemoteAddr (line 151) | func (c *GunConn) RemoteAddr() net.Addr { method SetDeadline (line 155) | func (c *GunConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 159) | func (c *GunConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 163) | func (c *GunConn) SetWriteDeadline(t time.Time) error { method NeedAdditionalReadDeadline (line 167) | func (c *GunConn) NeedAdditionalReadDeadline() bool { function newGunConn (line 33) | func newGunConn(reader io.Reader, writer io.Writer, flusher http.Flusher... function newLateGunConn (line 42) | func newLateGunConn(writer io.Writer) *GunConn { FILE: transport/v2raygrpclite/server.go type Server (line 30) | type Server struct method ServeHTTP (line 63) | func (s *Server) ServeHTTP(writer http.ResponseWriter, request *http.R... method invalidRequest (line 92) | func (s *Server) invalidRequest(writer http.ResponseWriter, request *h... method Network (line 99) | func (s *Server) Network() []string { method Serve (line 103) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 113) | func (s *Server) ServePacket(listener net.PacketConn) error { method Close (line 117) | func (s *Server) Close() error { function NewServer (line 40) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... FILE: transport/v2rayhttp/client.go type Client (line 26) | type Client struct method DialContext (line 90) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method dialHTTP (line 98) | func (c *Client) dialHTTP(ctx context.Context) (net.Conn, error) { method dialHTTP2 (line 121) | func (c *Client) dialHTTP2(ctx context.Context) (net.Conn, error) { method Close (line 154) | func (c *Client) Close() error { function NewClient (line 38) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2rayhttp/conn.go type HTTPConn (line 25) | type HTTPConn struct method Read (line 43) | func (c *HTTPConn) Read(b []byte) (n int, err error) { method Write (line 76) | func (c *HTTPConn) Write(b []byte) (int, error) { method writeRequest (line 88) | func (c *HTTPConn) writeRequest(payload []byte) error { method ReaderReplaceable (line 116) | func (c *HTTPConn) ReaderReplaceable() bool { method WriterReplaceable (line 120) | func (c *HTTPConn) WriterReplaceable() bool { method NeedHandshake (line 124) | func (c *HTTPConn) NeedHandshake() bool { method Upstream (line 128) | func (c *HTTPConn) Upstream() any { function NewHTTP1Conn (line 33) | func NewHTTP1Conn(conn net.Conn, request *http.Request) *HTTPConn { type HTTP2Conn (line 132) | type HTTP2Conn struct method Setup (line 153) | func (c *HTTP2Conn) Setup(reader io.Reader, err error) { method Read (line 159) | func (c *HTTP2Conn) Read(b []byte) (n int, err error) { method Write (line 170) | func (c *HTTP2Conn) Write(b []byte) (n int, err error) { method Close (line 175) | func (c *HTTP2Conn) Close() error { method LocalAddr (line 179) | func (c *HTTP2Conn) LocalAddr() net.Addr { method RemoteAddr (line 183) | func (c *HTTP2Conn) RemoteAddr() net.Addr { method SetDeadline (line 187) | func (c *HTTP2Conn) SetDeadline(t time.Time) error { method SetReadDeadline (line 191) | func (c *HTTP2Conn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 195) | func (c *HTTP2Conn) SetWriteDeadline(t time.Time) error { method NeedAdditionalReadDeadline (line 199) | func (c *HTTP2Conn) NeedAdditionalReadDeadline() bool { function NewHTTPConn (line 139) | func NewHTTPConn(reader io.Reader, writer io.Writer) HTTP2Conn { function NewLateHTTPConn (line 146) | func NewLateHTTPConn(writer io.Writer) *HTTP2Conn { type ServerHTTPConn (line 203) | type ServerHTTPConn struct method Write (line 208) | func (c *ServerHTTPConn) Write(b []byte) (n int, err error) { type HTTP2ConnWrapper (line 216) | type HTTP2ConnWrapper struct method Write (line 228) | func (w *HTTP2ConnWrapper) Write(p []byte) (n int, err error) { method WriteBuffer (line 237) | func (w *HTTP2ConnWrapper) WriteBuffer(buffer *buf.Buffer) error { method CloseWrapper (line 246) | func (w *HTTP2ConnWrapper) CloseWrapper() { method Close (line 252) | func (w *HTTP2ConnWrapper) Close() error { method Upstream (line 257) | func (w *HTTP2ConnWrapper) Upstream() any { function NewHTTP2Wrapper (line 222) | func NewHTTP2Wrapper(conn net.Conn) *HTTP2ConnWrapper { function DupContext (line 261) | func DupContext(ctx context.Context) context.Context { FILE: transport/v2rayhttp/force_close.go type clientConnPool (line 14) | type clientConnPool struct type efaceWords (line 20) | type efaceWords struct function ResetTransport (line 25) | func ResetTransport(rawTransport http.RoundTripper) http.RoundTripper { function transportConnPool (line 47) | func transportConnPool(t *http2.Transport) http2.ClientConnPool FILE: transport/v2rayhttp/pool.go type ConnectionPool (line 5) | type ConnectionPool interface function CloseIdleConnections (line 9) | func CloseIdleConnections(transport http.RoundTripper) { FILE: transport/v2rayhttp/server.go type Server (line 32) | type Server struct method ServeHTTP (line 78) | func (s *Server) ServeHTTP(writer http.ResponseWriter, request *http.R... method invalidRequest (line 154) | func (s *Server) invalidRequest(writer http.ResponseWriter, request *h... method Network (line 161) | func (s *Server) Network() []string { method Serve (line 165) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 177) | func (s *Server) ServePacket(listener net.PacketConn) error { method Close (line 181) | func (s *Server) Close() error { function NewServer (line 46) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... FILE: transport/v2rayhttpupgrade/client.go type Client (line 24) | type Client struct method DialContext (line 75) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method Close (line 113) | func (c *Client) Close() error { function NewClient (line 32) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2rayhttpupgrade/server.go type Server (line 27) | type Server struct method ServeHTTP (line 70) | func (s *Server) ServeHTTP(writer http.ResponseWriter, request *http.R... method invalidRequest (line 118) | func (s *Server) invalidRequest(writer http.ResponseWriter, request *h... method Network (line 125) | func (s *Server) Network() []string { method Serve (line 129) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 139) | func (s *Server) ServePacket(listener net.PacketConn) error { method Close (line 143) | func (s *Server) Close() error { function NewServer (line 38) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... type httpFlusher (line 66) | type httpFlusher interface FILE: transport/v2rayquic/client.go type Client (line 25) | type Client struct method offer (line 52) | func (c *Client) offer() (*quic.Conn, error) { method offerNew (line 70) | func (c *Client) offerNew() (*quic.Conn, error) { method DialContext (line 86) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method Close (line 98) | func (c *Client) Close() error { function NewClient (line 36) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2rayquic/init.go function init (line 7) | func init() { FILE: transport/v2rayquic/server.go type Server (line 26) | type Server struct method Network (line 53) | func (s *Server) Network() []string { method Serve (line 57) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 61) | func (s *Server) ServePacket(listener net.PacketConn) error { method acceptLoop (line 72) | func (s *Server) acceptLoop() { method streamAcceptLoop (line 87) | func (s *Server) streamAcceptLoop(conn *quic.Conn) error { method Close (line 97) | func (s *Server) Close() error { function NewServer (line 36) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... FILE: transport/v2rayquic/stream.go type StreamWrapper (line 10) | type StreamWrapper struct method Read (line 15) | func (s *StreamWrapper) Read(p []byte) (n int, err error) { method Write (line 20) | func (s *StreamWrapper) Write(p []byte) (n int, err error) { method LocalAddr (line 25) | func (s *StreamWrapper) LocalAddr() net.Addr { method RemoteAddr (line 29) | func (s *StreamWrapper) RemoteAddr() net.Addr { method Upstream (line 33) | func (s *StreamWrapper) Upstream() any { method Close (line 37) | func (s *StreamWrapper) Close() error { FILE: transport/v2raywebsocket/client.go type Client (line 27) | type Client struct method dialContext (line 76) | func (c *Client) dialContext(ctx context.Context, requestURL *url.URL,... method DialContext (line 109) | func (c *Client) DialContext(ctx context.Context) (net.Conn, error) { method Close (line 121) | func (c *Client) Close() error { function NewClient (line 36) | func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksa... FILE: transport/v2raywebsocket/conn.go type WebsocketConn (line 24) | type WebsocketConn struct method Close (line 50) | func (c *WebsocketConn) Close() error { method Read (line 63) | func (c *WebsocketConn) Read(b []byte) (n int, err error) { method Write (line 100) | func (c *WebsocketConn) Write(p []byte) (n int, err error) { method RemoteAddr (line 109) | func (c *WebsocketConn) RemoteAddr() net.Addr { method SetDeadline (line 116) | func (c *WebsocketConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 120) | func (c *WebsocketConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 124) | func (c *WebsocketConn) SetWriteDeadline(t time.Time) error { method NeedAdditionalReadDeadline (line 128) | func (c *WebsocketConn) NeedAdditionalReadDeadline() bool { method Upstream (line 132) | func (c *WebsocketConn) Upstream() any { function NewConn (line 33) | func NewConn(conn net.Conn, remoteAddr net.Addr, state ws.State) *Websoc... type EarlyWebsocketConn (line 136) | type EarlyWebsocketConn struct method Read (line 145) | func (c *EarlyWebsocketConn) Read(b []byte) (n int, err error) { method writeRequest (line 157) | func (c *EarlyWebsocketConn) writeRequest(content []byte) error { method Write (line 197) | func (c *EarlyWebsocketConn) Write(b []byte) (n int, err error) { method WriteBuffer (line 220) | func (c *EarlyWebsocketConn) WriteBuffer(buffer *buf.Buffer) error { method Close (line 240) | func (c *EarlyWebsocketConn) Close() error { method LocalAddr (line 248) | func (c *EarlyWebsocketConn) LocalAddr() net.Addr { method RemoteAddr (line 256) | func (c *EarlyWebsocketConn) RemoteAddr() net.Addr { method SetDeadline (line 264) | func (c *EarlyWebsocketConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 268) | func (c *EarlyWebsocketConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 272) | func (c *EarlyWebsocketConn) SetWriteDeadline(t time.Time) error { method NeedAdditionalReadDeadline (line 276) | func (c *EarlyWebsocketConn) NeedAdditionalReadDeadline() bool { method Upstream (line 280) | func (c *EarlyWebsocketConn) Upstream() any { method LazyHeadroom (line 284) | func (c *EarlyWebsocketConn) LazyHeadroom() bool { function wrapWsError (line 288) | func wrapWsError(err error) error { function wrapWsError0 (line 301) | func wrapWsError0[T any](value T, err error) (T, error) { FILE: transport/v2raywebsocket/server.go type Server (line 31) | type Server struct method ServeHTTP (line 74) | func (s *Server) ServeHTTP(writer http.ResponseWriter, request *http.R... method invalidRequest (line 121) | func (s *Server) invalidRequest(writer http.ResponseWriter, request *h... method Network (line 128) | func (s *Server) Network() []string { method Serve (line 132) | func (s *Server) Serve(listener net.Listener) error { method ServePacket (line 139) | func (s *Server) ServePacket(listener net.PacketConn) error { method Close (line 143) | func (s *Server) Close() error { function NewServer (line 43) | func NewServer(ctx context.Context, logger logger.ContextLogger, options... FILE: transport/v2raywebsocket/writer.go type Writer (line 14) | type Writer struct method WriteBuffer (line 26) | func (w *Writer) WriteBuffer(buffer *buf.Buffer) error { method FrontHeadroom (line 72) | func (w *Writer) FrontHeadroom() int { function NewWriter (line 19) | func NewWriter(writer io.Writer, state ws.State) *Writer { FILE: transport/wireguard/client_bind.go type ClientBind (line 23) | type ClientBind struct method connect (line 53) | func (c *ClientBind) connect() (*wireConn, error) { method Open (line 101) | func (c *ClientBind) Open(port uint16) (fns []conn.ReceiveFunc, actual... method receive (line 111) | func (c *ClientBind) receive(packets [][]byte, sizes []int, eps []conn... method Close (line 146) | func (c *ClientBind) Close() error { method SetMark (line 161) | func (c *ClientBind) SetMark(mark uint32) error { method Send (line 165) | func (c *ClientBind) Send(bufs [][]byte, ep conn.Endpoint, offset int)... method ParseEndpoint (line 193) | func (c *ClientBind) ParseEndpoint(s string) (conn.Endpoint, error) { method BatchSize (line 201) | func (c *ClientBind) BatchSize() int { method SetReservedForEndpoint (line 205) | func (c *ClientBind) SetReservedForEndpoint(destination netip.AddrPort... function NewClientBind (line 39) | func NewClientBind(ctx context.Context, logger logger.Logger, dialer N.D... type wireConn (line 209) | type wireConn struct method WriteToUDPAddrPort (line 216) | func (w *wireConn) WriteToUDPAddrPort(b []byte, addr netip.AddrPort) (... method Close (line 223) | func (w *wireConn) Close() error { type remoteEndpoint (line 238) | type remoteEndpoint method ClearSrc (line 240) | func (e remoteEndpoint) ClearSrc() { method SrcToString (line 243) | func (e remoteEndpoint) SrcToString() string { method DstToString (line 247) | func (e remoteEndpoint) DstToString() string { method DstToBytes (line 251) | func (e remoteEndpoint) DstToBytes() []byte { method DstIP (line 256) | func (e remoteEndpoint) DstIP() netip.Addr { method SrcIP (line 260) | func (e remoteEndpoint) SrcIP() netip.Addr { FILE: transport/wireguard/device.go type Device (line 16) | type Device interface type DeviceOptions (line 25) | type DeviceOptions struct function NewDevice (line 38) | func NewDevice(options DeviceOptions) (Device, error) { type NatDevice (line 48) | type NatDevice interface FILE: transport/wireguard/device_nat.go type natDeviceWrapper (line 18) | type natDeviceWrapper struct method Read (line 38) | func (d *natDeviceWrapper) Read(bufs [][]byte, sizes []int, offset int... method Write (line 49) | func (d *natDeviceWrapper) Write(bufs [][]byte, offset int) (int, erro... method CreateDestination (line 70) | func (d *natDeviceWrapper) CreateDestination(metadata adapter.InboundC... function NewNATDevice (line 27) | func NewNATDevice(ctx context.Context, logger logger.ContextLogger, upst... type natDestination (line 83) | type natDestination struct method WritePacket (line 89) | func (d *natDestination) WritePacket(buffer *buf.Buffer) error { method Close (line 95) | func (d *natDestination) Close() error { method IsClosed (line 101) | func (d *natDestination) IsClosed() bool { FILE: transport/wireguard/device_stack.go type stackDevice (line 36) | type stackDevice struct method DialContext (line 102) | func (w *stackDevice) DialContext(ctx context.Context, network string,... method ListenPacket (line 143) | func (w *stackDevice) ListenPacket(ctx context.Context, destination M.... method Inet4Address (line 162) | func (w *stackDevice) Inet4Address() netip.Addr { method Inet6Address (line 166) | func (w *stackDevice) Inet6Address() netip.Addr { method SetDevice (line 170) | func (w *stackDevice) SetDevice(device *device.Device) { method Start (line 173) | func (w *stackDevice) Start() error { method File (line 178) | func (w *stackDevice) File() *os.File { method Read (line 182) | func (w *stackDevice) Read(bufs [][]byte, sizes []int, offset int) (co... method Write (line 207) | func (w *stackDevice) Write(bufs [][]byte, offset int) (count int, err... method Flush (line 230) | func (w *stackDevice) Flush() error { method MTU (line 234) | func (w *stackDevice) MTU() (int, error) { method Name (line 238) | func (w *stackDevice) Name() (string, error) { method Events (line 242) | func (w *stackDevice) Events() <-chan wgTun.Event { method Close (line 246) | func (w *stackDevice) Close() error { method BatchSize (line 257) | func (w *stackDevice) BatchSize() int { method CreateDestination (line 261) | func (w *stackDevice) CreateDestination(metadata adapter.InboundContex... function newStackDevice (line 50) | func newStackDevice(options DeviceOptions) (*stackDevice, error) { type wireEndpoint (line 280) | type wireEndpoint method MTU (line 282) | func (ep *wireEndpoint) MTU() uint32 { method SetMTU (line 286) | func (ep *wireEndpoint) SetMTU(mtu uint32) { method MaxHeaderLength (line 289) | func (ep *wireEndpoint) MaxHeaderLength() uint16 { method LinkAddress (line 293) | func (ep *wireEndpoint) LinkAddress() tcpip.LinkAddress { method SetLinkAddress (line 297) | func (ep *wireEndpoint) SetLinkAddress(addr tcpip.LinkAddress) { method Capabilities (line 300) | func (ep *wireEndpoint) Capabilities() stack.LinkEndpointCapabilities { method Attach (line 304) | func (ep *wireEndpoint) Attach(dispatcher stack.NetworkDispatcher) { method IsAttached (line 308) | func (ep *wireEndpoint) IsAttached() bool { method Wait (line 312) | func (ep *wireEndpoint) Wait() { method ARPHardwareType (line 315) | func (ep *wireEndpoint) ARPHardwareType() header.ARPHardwareType { method AddHeader (line 319) | func (ep *wireEndpoint) AddHeader(buffer *stack.PacketBuffer) { method ParseHeader (line 322) | func (ep *wireEndpoint) ParseHeader(ptr *stack.PacketBuffer) bool { method WritePackets (line 326) | func (ep *wireEndpoint) WritePackets(list stack.PacketBufferList) (int... method Close (line 338) | func (ep *wireEndpoint) Close() { method SetOnCloseAction (line 341) | func (ep *wireEndpoint) SetOnCloseAction(f func()) { FILE: transport/wireguard/device_stack_gonet.go function DialTCPWithBind (line 22) | func DialTCPWithBind(ctx context.Context, s *stack.Stack, localAddr, rem... FILE: transport/wireguard/device_stack_stub.go function newStackDevice (line 7) | func newStackDevice(options DeviceOptions) (Device, error) { function newSystemStackDevice (line 11) | func newSystemStackDevice(options DeviceOptions) (Device, error) { FILE: transport/wireguard/device_system.go type systemDevice (line 24) | type systemDevice struct method DialContext (line 64) | func (w *systemDevice) DialContext(ctx context.Context, network string... method ListenPacket (line 68) | func (w *systemDevice) ListenPacket(ctx context.Context, destination M... method Inet4Address (line 72) | func (w *systemDevice) Inet4Address() netip.Addr { method Inet6Address (line 76) | func (w *systemDevice) Inet6Address() netip.Addr { method SetDevice (line 80) | func (w *systemDevice) SetDevice(device *device.Device) { method Start (line 83) | func (w *systemDevice) Start() error { method File (line 126) | func (w *systemDevice) File() *os.File { method Read (line 130) | func (w *systemDevice) Read(bufs [][]byte, sizes []int, offset int) (c... method Write (line 144) | func (w *systemDevice) Write(bufs [][]byte, offset int) (count int, er... method Flush (line 163) | func (w *systemDevice) Flush() error { method MTU (line 167) | func (w *systemDevice) MTU() (int, error) { method Name (line 171) | func (w *systemDevice) Name() (string, error) { method Events (line 175) | func (w *systemDevice) Events() <-chan wgTun.Event { method Close (line 179) | func (w *systemDevice) Close() error { method BatchSize (line 184) | func (w *systemDevice) BatchSize() int { function newSystemDevice (line 35) | func newSystemDevice(options DeviceOptions) (*systemDevice, error) { FILE: transport/wireguard/device_system_stack.go type systemStackDevice (line 31) | type systemStackDevice struct method SetDevice (line 94) | func (w *systemStackDevice) SetDevice(device *device.Device) { method Write (line 98) | func (w *systemStackDevice) Write(bufs [][]byte, offset int) (count in... method Close (line 127) | func (w *systemStackDevice) Close() error { method writeStack (line 137) | func (w *systemStackDevice) writeStack(packet []byte) bool { method CreateDestination (line 163) | func (w *systemStackDevice) CreateDestination(metadata adapter.Inbound... function newSystemStackDevice (line 40) | func newSystemStackDevice(options DeviceOptions) (*systemStackDevice, er... type deviceEndpoint (line 180) | type deviceEndpoint struct method MTU (line 187) | func (ep *deviceEndpoint) MTU() uint32 { method SetMTU (line 191) | func (ep *deviceEndpoint) SetMTU(mtu uint32) { method MaxHeaderLength (line 194) | func (ep *deviceEndpoint) MaxHeaderLength() uint16 { method LinkAddress (line 198) | func (ep *deviceEndpoint) LinkAddress() tcpip.LinkAddress { method SetLinkAddress (line 202) | func (ep *deviceEndpoint) SetLinkAddress(addr tcpip.LinkAddress) { method Capabilities (line 205) | func (ep *deviceEndpoint) Capabilities() stack.LinkEndpointCapabilities { method Attach (line 209) | func (ep *deviceEndpoint) Attach(dispatcher stack.NetworkDispatcher) { method IsAttached (line 213) | func (ep *deviceEndpoint) IsAttached() bool { method Wait (line 217) | func (ep *deviceEndpoint) Wait() { method ARPHardwareType (line 220) | func (ep *deviceEndpoint) ARPHardwareType() header.ARPHardwareType { method AddHeader (line 224) | func (ep *deviceEndpoint) AddHeader(buffer *stack.PacketBuffer) { method ParseHeader (line 227) | func (ep *deviceEndpoint) ParseHeader(ptr *stack.PacketBuffer) bool { method WritePackets (line 231) | func (ep *deviceEndpoint) WritePackets(list stack.PacketBufferList) (i... method Close (line 239) | func (ep *deviceEndpoint) Close() { method SetOnCloseAction (line 242) | func (ep *deviceEndpoint) SetOnCloseAction(f func()) { FILE: transport/wireguard/endpoint.go type Endpoint (line 32) | type Endpoint struct method Start (line 136) | func (e *Endpoint) Start(resolve bool) error { method DialContext (line 217) | func (e *Endpoint) DialContext(ctx context.Context, network string, de... method ListenPacket (line 224) | func (e *Endpoint) ListenPacket(ctx context.Context, destination M.Soc... method Close (line 231) | func (e *Endpoint) Close() error { method Lookup (line 241) | func (e *Endpoint) Lookup(address netip.Addr) *device.Peer { method NewDirectRouteConnection (line 248) | func (e *Endpoint) NewDirectRouteConnection(metadata adapter.InboundCo... method onPauseUpdated (line 255) | func (e *Endpoint) onPauseUpdated(event int) { function NewEndpoint (line 45) | func NewEndpoint(options EndpointOptions) (*Endpoint, error) { type peerConfig (line 264) | type peerConfig struct method GenerateIpcLines (line 274) | func (c peerConfig) GenerateIpcLines() string { FILE: transport/wireguard/endpoint_options.go type EndpointOptions (line 14) | type EndpointOptions struct type PeerOptions (line 32) | type PeerOptions struct