SYMBOL INDEX (7773 symbols across 839 files) FILE: adapter/certificate.go type CertificateStore (line 10) | type CertificateStore interface function RootPoolFromContext (line 16) | func RootPoolFromContext(ctx context.Context) *x509.CertPool { FILE: adapter/certificate/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(providerType string, providerTag string) Adapter { FILE: adapter/certificate/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 CertificateProviders (line 85) | func (m *Manager) CertificateProviders() []adapter.CertificateProvider... method Get (line 91) | func (m *Manager) Get(tag string) (adapter.CertificateProviderService,... 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.CertificatePr... FILE: adapter/certificate/registry.go type ConstructorFunc (line 13) | type ConstructorFunc function Register (line 15) | func Register[Options any](registry *Registry, providerType 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(providerType 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(providerType string, optionsConstructor op... function NewRegistry (line 40) | func NewRegistry() *Registry { FILE: adapter/certificate_darwin.go type AppleAnchors (line 7) | type AppleAnchors interface type AppleCertificateStore (line 14) | type AppleCertificateStore interface FILE: adapter/certificate_provider.go type CertificateProvider (line 11) | type CertificateProvider interface type ACMECertificateProvider (line 15) | type ACMECertificateProvider interface type CertificateProviderService (line 20) | type CertificateProviderService interface type CertificateProviderRegistry (line 27) | type CertificateProviderRegistry interface type CertificateProviderManager (line 32) | type CertificateProviderManager interface FILE: adapter/connections.go type ConnectionManager (line 10) | type ConnectionManager interface FILE: adapter/dns.go type DNSRouter (line 18) | type DNSRouter interface type DNSClient (line 27) | type DNSClient interface type DNSQueryOptions (line 34) | type DNSQueryOptions struct function DNSQueryOptionsFrom (line 45) | func DNSQueryOptionsFrom(ctx context.Context, options *option.DomainReso... type RDRCStore (line 65) | type RDRCStore interface type DNSCacheStore (line 71) | type DNSCacheStore interface type DNSTransport (line 78) | type DNSTransport interface type DNSTransportWithPreferredDomain (line 89) | type DNSTransportWithPreferredDomain interface type DNSTransportRegistry (line 94) | type DNSTransportRegistry interface type DNSTransportManager (line 99) | 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 18) | type Manager struct method Start (line 36) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 60) | func (m *Manager) Close() error { method Endpoints (line 84) | func (m *Manager) Endpoints() []adapter.Endpoint { method Get (line 90) | func (m *Manager) Get(tag string) (adapter.Endpoint, bool) { method Remove (line 97) | func (m *Manager) Remove(tag string) error { method Create (line 120) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 28) | 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 66) | type SavedBinary struct method MarshalBinary (line 72) | func (s *SavedBinary) MarshalBinary() ([]byte, error) { method UnmarshalBinary (line 101) | func (s *SavedBinary) UnmarshalBinary(data []byte) error { type OutboundGroup (line 136) | type OutboundGroup interface type URLTestGroup (line 142) | type URLTestGroup interface function OutboundTag (line 147) | 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 12) | type ConnectionHandler interface type PacketHandler (line 16) | type PacketHandler interface type PacketBatchHandler (line 20) | type PacketBatchHandler interface type OOBPacketHandler (line 24) | type OOBPacketHandler interface type PacketConnectionHandler (line 28) | type PacketConnectionHandler interface type UpstreamHandlerAdapter (line 32) | type UpstreamHandlerAdapter interface FILE: adapter/http.go type HTTPTransport (line 12) | type HTTPTransport interface type HTTPClientManager (line 18) | type HTTPClientManager interface type HTTPStartContext (line 24) | type HTTPStartContext struct method Register (line 33) | func (c *HTTPStartContext) Register(transport HTTPTransport) { method Close (line 39) | func (c *HTTPStartContext) Close() { function NewHTTPStartContext (line 29) | func NewHTTPStartContext() *HTTPStartContext { FILE: adapter/inbound.go type Inbound (line 18) | type Inbound interface type TCPInjectableInbound (line 24) | type TCPInjectableInbound interface type UDPInjectableInbound (line 29) | type UDPInjectableInbound interface type InboundRegistry (line 34) | type InboundRegistry interface type InboundManager (line 39) | type InboundManager interface type InboundContext (line 47) | type InboundContext struct method ResetRuleCache (line 111) | func (c *InboundContext) ResetRuleCache() { method ResetRuleMatchCache (line 117) | func (c *InboundContext) ResetRuleMatchCache() { method DNSResponseAddressesForMatch (line 125) | func (c *InboundContext) DNSResponseAddressesForMatch() []netip.Addr { function DNSResponseAddresses (line 129) | func DNSResponseAddresses(response *dns.Msg) []netip.Addr { type inboundContextKey (line 170) | type inboundContextKey struct function WithContext (line 172) | func WithContext(ctx context.Context, inboundContext *InboundContext) co... function ContextFrom (line 176) | func ContextFrom(ctx context.Context) *InboundContext { function ExtendContext (line 184) | func ExtendContext(ctx context.Context) (context.Context, *InboundContex... function OverrideContext (line 192) | 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 18) | type Manager struct method Start (line 38) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 59) | func (m *Manager) Close() error { method Inbounds (line 83) | func (m *Manager) Inbounds() []adapter.Inbound { method Get (line 89) | func (m *Manager) Get(tag string) (adapter.Inbound, bool) { method Remove (line 99) | func (m *Manager) Remove(tag string) error { method Create (line 122) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 29) | 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/inbound_test.go function TestDNSResponseAddressesUnmapsHTTPSIPv4Hints (line 12) | func TestDNSResponseAddressesUnmapsHTTPSIPv4Hints(t *testing.T) { 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 90) | func StartNamed(logger log.ContextLogger, stage StartStage, services []L... function LogElapsed (line 102) | func LogElapsed(logger log.ContextLogger, description ...any) func() { 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 22) | type NeighborUpdateListener interface FILE: adapter/network.go type NetworkManager (line 14) | type NetworkManager interface type NetworkOptions (line 37) | type NetworkOptions struct type InterfaceUpdateListener (line 48) | type InterfaceUpdateListener interface type WIFIState (line 52) | type WIFIState struct function NormalizeWIFIBSSID (line 57) | func NormalizeWIFIBSSID(bssid string) string { type NetworkInterface (line 75) | 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 21) | type Manager struct method Initialize (line 47) | func (m *Manager) Initialize(defaultOutboundFallback func() (adapter.O... method Start (line 51) | func (m *Manager) Start(stage adapter.StartStage) error { method startOutbounds (line 96) | func (m *Manager) startOutbounds(outbounds []adapter.Outbound) error { method Close (line 168) | func (m *Manager) Close() error { method Outbounds (line 195) | func (m *Manager) Outbounds() []adapter.Outbound { method Outbound (line 201) | func (m *Manager) Outbound(tag string) (adapter.Outbound, bool) { method Default (line 211) | func (m *Manager) Default() adapter.Outbound { method Remove (line 217) | func (m *Manager) Remove(tag string) error { method Create (line 261) | func (m *Manager) Create(ctx context.Context, router adapter.Router, l... function NewManager (line 36) | 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 11) | type PlatformInterface interface type FindConnectionOwnerRequest (line 49) | type FindConnectionOwnerRequest struct type ConnectionOwner (line 57) | type ConnectionOwner struct type Notification (line 65) | type Notification struct type SystemProxyStatus (line 75) | type SystemProxyStatus struct FILE: adapter/router.go type Router (line 15) | type Router interface type ConnectionTracker (line 29) | type ConnectionTracker interface type ConnectionRouter (line 35) | type ConnectionRouter interface type ConnectionRouterEx (line 40) | type ConnectionRouterEx interface type RuleSet (line 46) | type RuleSet interface type RuleSetUpdateCallback (line 61) | type RuleSetUpdateCallback type DNSRuleSetUpdateValidator (line 63) | type DNSRuleSetUpdateValidator interface type RuleSetMetadata (line 68) | type RuleSetMetadata struct FILE: adapter/rule.go type HeadlessRule (line 9) | type HeadlessRule interface type Rule (line 14) | type Rule interface type DNSRule (line 21) | type DNSRule interface type RuleAction (line 28) | type RuleAction interface function IsFinalAction (line 33) | 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 18) | type Manager struct method Start (line 36) | func (m *Manager) Start(stage adapter.StartStage) error { method Close (line 57) | func (m *Manager) Close() error { method Services (line 81) | func (m *Manager) Services() []adapter.Service { method Get (line 87) | func (m *Manager) Get(tag string) (adapter.Service, bool) { method Remove (line 94) | func (m *Manager) Remove(tag string) error { method Create (line 117) | func (m *Manager) Create(ctx context.Context, logger log.ContextLogger... function NewManager (line 28) | 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/tailscale.go type TailscaleEndpoint (line 5) | type TailscaleEndpoint interface type TailscalePingResult (line 10) | type TailscalePingResult struct type TailscaleEndpointStatus (line 19) | type TailscaleEndpointStatus struct type TailscaleUserGroup (line 28) | type TailscaleUserGroup struct type TailscalePeer (line 36) | type TailscalePeer struct FILE: adapter/time.go type TimeService (line 5) | type TimeService interface FILE: adapter/upstream.go function NewUpstreamHandler (line 16) | func NewUpstreamHandler( type myUpstreamHandlerWrapper (line 30) | type myUpstreamHandlerWrapper struct method NewConnectionEx (line 36) | func (w *myUpstreamHandlerWrapper) NewConnectionEx(ctx context.Context... method NewPacketConnectionEx (line 47) | func (w *myUpstreamHandlerWrapper) NewPacketConnectionEx(ctx context.C... type myUpstreamContextHandlerWrapper (line 60) | type myUpstreamContextHandlerWrapper struct method NewConnectionEx (line 75) | func (w *myUpstreamContextHandlerWrapper) NewConnectionEx(ctx context.... method NewPacketConnectionEx (line 86) | func (w *myUpstreamContextHandlerWrapper) NewPacketConnectionEx(ctx co... function NewUpstreamContextHandler (line 65) | func NewUpstreamContextHandler( function NewRouteHandler (line 97) | func NewRouteHandler( type routeHandlerWrapper (line 109) | type routeHandlerWrapper struct method NewConnectionEx (line 114) | func (r *routeHandlerWrapper) NewConnectionEx(ctx context.Context, con... method NewPacketConnectionEx (line 124) | func (r *routeHandlerWrapper) NewPacketConnectionEx(ctx context.Contex... function NewRouteContextHandler (line 134) | func NewRouteContextHandler( type routeContextHandlerWrapper (line 144) | type routeContextHandlerWrapper struct method NewConnectionEx (line 148) | func (r *routeContextHandlerWrapper) NewConnectionEx(ctx context.Conte... method NewPacketConnectionEx (line 159) | func (r *routeContextHandlerWrapper) NewPacketConnectionEx(ctx context... FILE: adapter/upstream_legacy.go type LegacyUpstreamHandlerAdapter (line 23) | type LegacyUpstreamHandlerAdapter interface function NewLegacyUpstreamHandler (line 32) | func NewLegacyUpstreamHandler( type legacyUpstreamHandlerWrapper (line 51) | type legacyUpstreamHandlerWrapper struct method NewConnection (line 59) | func (w *legacyUpstreamHandlerWrapper) NewConnection(ctx context.Conte... method NewPacketConnection (line 71) | func (w *legacyUpstreamHandlerWrapper) NewPacketConnection(ctx context... method NewError (line 83) | func (w *legacyUpstreamHandlerWrapper) NewError(ctx context.Context, e... function UpstreamMetadata (line 88) | func UpstreamMetadata(metadata InboundContext) M.Metadata { type legacyUpstreamContextHandlerWrapper (line 96) | type legacyUpstreamContextHandlerWrapper struct method NewConnection (line 116) | func (w *legacyUpstreamContextHandlerWrapper) NewConnection(ctx contex... method NewPacketConnection (line 128) | func (w *legacyUpstreamContextHandlerWrapper) NewPacketConnection(ctx ... method NewError (line 140) | func (w *legacyUpstreamContextHandlerWrapper) NewError(ctx context.Con... function NewLegacyUpstreamContextHandler (line 103) | func NewLegacyUpstreamContextHandler( function NewLegacyRouteHandler (line 145) | func NewLegacyRouteHandler( function NewLegacyRouteContextHandler (line 158) | func NewLegacyRouteContextHandler( type legacyRouteHandlerWrapper (line 173) | type legacyRouteHandlerWrapper struct method NewConnection (line 180) | func (w *legacyRouteHandlerWrapper) NewConnection(ctx context.Context,... method NewPacketConnection (line 192) | func (w *legacyRouteHandlerWrapper) NewPacketConnection(ctx context.Co... method NewError (line 204) | func (w *legacyRouteHandlerWrapper) NewError(ctx context.Context, err ... type legacyRouteContextHandlerWrapper (line 211) | type legacyRouteContextHandlerWrapper struct method NewConnection (line 217) | func (w *legacyRouteContextHandlerWrapper) NewConnection(ctx context.C... method NewPacketConnection (line 229) | func (w *legacyRouteContextHandlerWrapper) NewPacketConnection(ctx con... method NewError (line 241) | func (w *legacyRouteContextHandlerWrapper) NewError(ctx context.Contex... 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 41) | type Box struct method PreStart (line 452) | func (s *Box) PreStart() error { method Start (line 471) | func (s *Box) Start() error { method preStart (line 490) | func (s *Box) preStart() error { method start (line 521) | func (s *Box) start() error { method Close (line 561) | func (s *Box) Close() error { method Network (line 613) | func (s *Box) Network() adapter.NetworkManager { method Router (line 617) | func (s *Box) Router() adapter.Router { method Inbound (line 621) | func (s *Box) Inbound() adapter.InboundManager { method Outbound (line 625) | func (s *Box) Outbound() adapter.OutboundManager { method Endpoint (line 629) | func (s *Box) Endpoint() adapter.EndpointManager { method LogFactory (line 633) | func (s *Box) LogFactory() log.Factory { type Options (line 60) | type Options struct function Context (line 66) | func Context( function New (line 105) | 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 69) | func fetchChinaFingerprints() (map[string]bool, error) { function updateChromeIncludedRootCAs (line 98) | 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_networkquality.go function init (line 33) | func init() { function runNetworkQuality (line 57) | func runNetworkQuality() error { FILE: cmd/sing-box/cmd_tools_stun.go function init (line 27) | func init() { function runSTUN (line 32) | func runSTUN() 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 chromeIncludedPEM (line 5) | func chromeIncludedPEM() string { FILE: common/certificate/mozilla.go function mozillaIncludedPEM (line 5) | func mozillaIncludedPEM() string { FILE: common/certificate/store.go type Store (line 24) | type Store struct method Name (line 104) | func (s *Store) Name() string { method Start (line 108) | func (s *Store) Start(stage adapter.StartStage) error { method Close (line 118) | func (s *Store) Close() error { method Pool (line 133) | func (s *Store) Pool() *x509.CertPool { method StoreKind (line 139) | func (s *Store) StoreKind() string { method ExclusiveAnchors (line 143) | func (s *Store) ExclusiveAnchors() bool { method update (line 147) | func (s *Store) update() error { method newBasePool (line 216) | func (s *Store) newBasePool() (*x509.CertPool, error) { function NewStore (line 37) | func NewStore(ctx context.Context, logger logger.Logger, options option.... function appendPEMBlock (line 208) | func appendPEMBlock(buffer *bytes.Buffer, block string) { function readUniqueDirectoryEntries (line 232) | func readUniqueDirectoryEntries(dir string) ([]fs.DirEntry, error) { function isSameDirSymlink (line 246) | func isSameDirSymlink(f fs.DirEntry, dir string) bool { FILE: common/certificate/store_darwin.go type storePlatform (line 30) | type storePlatform struct type appleAnchors (line 35) | type appleAnchors struct method Retain (line 98) | func (a *appleAnchors) Retain() adapter.AppleAnchors { method Release (line 103) | func (a *appleAnchors) Release() { method Ref (line 112) | func (a *appleAnchors) Ref() unsafe.Pointer { function newAppleAnchors (line 40) | func newAppleAnchors(pemBytes []byte) (*appleAnchors, error) { function NewAppleAnchors (line 77) | func NewAppleAnchors(pemBytes []byte) (adapter.AppleAnchors, error) { function AcquireAnchors (line 84) | func AcquireAnchors(userAnchors adapter.AppleAnchors, store adapter.Cert... method AppleAnchors (line 116) | func (s *Store) AppleAnchors() adapter.AppleAnchors { method updatePlatformLocked (line 125) | func (s *Store) updatePlatformLocked(pemBytes []byte) error { method closePlatform (line 143) | func (s *Store) closePlatform() error { function decodeCertificatePEM (line 153) | func decodeCertificatePEM(pemBytes []byte) [][]byte { FILE: common/certificate/store_other.go type storePlatform (line 6) | type storePlatform struct method updatePlatformLocked (line 8) | func (s *Store) updatePlatformLocked(_ []byte) error { method closePlatform (line 12) | func (s *Store) closePlatform() error { 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 302) | func FromOptions(rules []option.HeadlessRule) ([]byte, error) { function ignoreIPCIDRRegexp (line 400) | func ignoreIPCIDRRegexp(ruleLine string) bool { function parseAdGuardHostLine (line 412) | func parseAdGuardHostLine(ruleLine string) (string, error) { function parseADGuardIPCIDRLine (line 431) | 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 242) | func (d *DefaultDialer) DialContext(ctx context.Context, network strin... method DialParallelInterface (line 269) | func (d *DefaultDialer) DialParallelInterface(ctx context.Context, net... method ListenPacket (line 317) | func (d *DefaultDialer) ListenPacket(ctx context.Context, destination ... method DialerForICMPDestination (line 333) | func (d *DefaultDialer) DialerForICMPDestination(destination netip.Add... method ListenSerialInterfacePacket (line 341) | func (d *DefaultDialer) ListenSerialInterfacePacket(ctx context.Contex... method WireGuardControl (line 374) | func (d *DefaultDialer) WireGuardControl() control.Func { method trackConn (line 378) | func (d *DefaultDialer) trackConn(conn net.Conn, err error) (net.Conn,... method trackPacketConn (line 385) | 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 226) | 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 151) | func (d *DefaultDialer) listenSerialInterfacePacket(ctx context.Context,... function selectInterfaces (line 183) | 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 52) | func (d *DetourDialer) Dialer() (N.Dialer, error) { method init (line 57) | func (d *DetourDialer) init() { method DialContext (line 80) | func (d *DetourDialer) DialContext(ctx context.Context, network string... method ListenPacket (line 88) | func (d *DetourDialer) ListenPacket(ctx context.Context, destination M... method Upstream (line 96) | func (d *DetourDialer) Upstream() any { function NewDetour (line 29) | func NewDetour(outboundManager adapter.OutboundManager, detour string, d... function NewDefaultOutboundDetour (line 37) | func NewDefaultOutboundDetour(outboundManager adapter.OutboundManager) N... function InitializeDetour (line 44) | func InitializeDetour(dialer N.Dialer) error { FILE: common/dialer/dialer.go type Options (line 19) | type Options struct function New (line 32) | func New(ctx context.Context, options option.DialerOptions, remoteIsDoma... function NewWithOptions (line 40) | func NewWithOptions(options Options) (N.Dialer, error) { type ParallelInterfaceDialer (line 148) | type ParallelInterfaceDialer interface type ParallelNetworkDialer (line 154) | type ParallelNetworkDialer interface type PacketDialerWithDestination (line 159) | 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 oldReadString (line 22) | func oldReadString(reader varbin.Reader) (string, error) { function oldReadItem (line 27) | func oldReadItem(reader varbin.Reader) (Item, error) { function TestStringCompat (line 32) | func TestStringCompat(t *testing.T) { function TestItemCompat (line 81) | func TestItemCompat(t *testing.T) { function TestGeositeWriteReadCompat (line 135) | func TestGeositeWriteReadCompat(t *testing.T) { function generateLargeItems (line 220) | 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 51) | func (r *Reader) readMetadata() error { method Read (line 97) | func (r *Reader) Read(code string) ([]Item, error) { method Upstream (line 125) | 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 readCounter (line 129) | type readCounter struct method Read (line 134) | func (r *readCounter) Read(p []byte) (n int, err error) { function readString (line 142) | 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/httpclient/apple_transport_darwin.go constant applePinnedHashSize (line 40) | applePinnedHashSize = sha256.Size function verifyApplePinnedPublicKeySHA256 (line 51) | func verifyApplePinnedPublicKeySHA256(flatHashes []byte, leafCertificate... function box_apple_http_verify_public_key_sha256 (line 63) | func box_apple_http_verify_public_key_sha256(knownHashValues *C.uint8_t,... type appleSessionConfig (line 73) | type appleSessionConfig struct method close (line 200) | func (c *appleSessionConfig) close() { type appleTransportShared (line 84) | type appleTransportShared struct method retain (line 207) | func (s *appleTransportShared) retain() { method release (line 211) | func (s *appleTransportShared) release() error { method newSession (line 219) | func (s *appleTransportShared) newSession() (*C.box_apple_http_session... type appleTransport (line 92) | type appleTransport struct method RoundTrip (line 258) | func (t *appleTransport) RoundTrip(request *http.Request) (*http.Respo... method CloseIdleConnections (line 376) | func (t *appleTransport) CloseIdleConnections() { method Close (line 400) | func (t *appleTransport) Close() error { function newAppleTransport (line 99) | func newAppleTransport(ctx context.Context, logger logger.ContextLogger,... function newAppleSessionConfig (line 134) | func newAppleSessionConfig(ctx context.Context, options option.HTTPClien... function flattenRequestHeaders (line 414) | func flattenRequestHeaders(request *http.Request) ([]string, []string) { function parseAppleHTTPResponse (line 432) | func parseAppleHTTPResponse(request *http.Request, response *C.box_apple... function appleCStringError (line 455) | func appleCStringError(cErr *C.char, message string) error { FILE: common/httpclient/apple_transport_darwin.h type box_apple_http_session_t (line 5) | typedef struct box_apple_http_session box_apple_http_session_t; type box_apple_http_task_t (line 6) | typedef struct box_apple_http_task box_apple_http_task_t; type box_apple_http_session_config_t (line 8) | typedef struct box_apple_http_session_config { type box_apple_http_request_t (line 22) | typedef struct box_apple_http_request { type box_apple_http_response_t (line 34) | typedef struct box_apple_http_response { FILE: common/httpclient/apple_transport_darwin_test.go constant appleHTTPTestTimeout (line 37) | appleHTTPTestTimeout = 5 * time.Second constant appleHTTPRecoveryLoops (line 39) | appleHTTPRecoveryLoops = 5 type appleHTTPTestDialer (line 41) | type appleHTTPTestDialer struct method DialContext (line 843) | func (d *appleHTTPTestDialer) DialContext(ctx context.Context, network... method ListenPacket (line 854) | func (d *appleHTTPTestDialer) ListenPacket(ctx context.Context, destin... type appleHTTPObservedRequest (line 47) | type appleHTTPObservedRequest struct type appleHTTPTestServer (line 55) | type appleHTTPTestServer struct method URL (line 779) | func (s *appleHTTPTestServer) URL(path string) string { type appleTestAnchors (line 64) | type appleTestAnchors struct method Retain (line 69) | func (a *appleTestAnchors) Retain() adapter.AppleAnchors { method Release (line 73) | func (a *appleTestAnchors) Release() { method Ref (line 77) | func (a *appleTestAnchors) Ref() unsafe.Pointer { function TestNewAppleSessionConfig (line 81) | func TestNewAppleSessionConfig(t *testing.T) { function TestAppleTransportVerifyPublicKeySHA256 (line 393) | func TestAppleTransportVerifyPublicKeySHA256(t *testing.T) { function TestNewAppleTransportClosesSessionConfigOnBridgeFailure (line 421) | func TestNewAppleTransportClosesSessionConfigOnBridgeFailure(t *testing.... function TestNewAppleTransportClosesSessionConfigOnSessionFailure (line 441) | func TestNewAppleTransportClosesSessionConfigOnSessionFailure(t *testing... function TestAppleTransportRoundTripHTTPS (line 461) | func TestAppleTransportRoundTripHTTPS(t *testing.T) { function TestAppleTransportPinnedPublicKey (line 545) | func TestAppleTransportPinnedPublicKey(t *testing.T) { function TestAppleTransportGuardrails (line 590) | func TestAppleTransportGuardrails(t *testing.T) { function TestAppleTransportCancellationRecovery (line 667) | func TestAppleTransportCancellationRecovery(t *testing.T) { function TestAppleTransportLifecycle (line 715) | func TestAppleTransportLifecycle(t *testing.T) { function startAppleHTTPTestServer (line 749) | func startAppleHTTPTestServer(t *testing.T, handler http.HandlerFunc) *a... function newAppleHTTPTestTransport (line 789) | func newAppleHTTPTestTransport(t *testing.T, server *appleHTTPTestServer... function newAppleHTTPTestContext (line 810) | func newAppleHTTPTestContext() context.Context { function appleTransportAnchorOptions (line 817) | func appleTransportAnchorOptions(certificatePEM string) option.HTTPClien... function restoreAppleTransportFactories (line 831) | func restoreAppleTransportFactories(t *testing.T) { function newAppleHTTPTestCertificate (line 868) | func newAppleHTTPTestCertificate(t *testing.T, serverName string) (stdtl... function certificatePublicKeySHA256 (line 882) | func certificatePublicKeySHA256(t *testing.T, certificateDER []byte) []b... function appleHTTPServerTLSOptions (line 897) | func appleHTTPServerTLSOptions(server *appleHTTPTestServer) *option.Outb... function newAppleHTTPRequest (line 905) | func newAppleHTTPRequest(t *testing.T, method string, rawURL string, bod... function newAppleHTTPRequestWithContext (line 910) | func newAppleHTTPRequestWithContext(t *testing.T, ctx context.Context, m... function waitObservedRequest (line 919) | func waitObservedRequest(t *testing.T, requests <-chan appleHTTPObserved... function readResponseBody (line 931) | func readResponseBody(t *testing.T, response *http.Response) string { function assertAppleHTTPSucceeds (line 941) | func assertAppleHTTPSucceeds(t *testing.T, transport http.RoundTripper, ... FILE: common/httpclient/apple_transport_stub.go function newAppleTransport (line 14) | func newAppleTransport(ctx context.Context, logger logger.ContextLogger,... FILE: common/httpclient/client.go function NewTransport (line 17) | func NewTransport(ctx context.Context, logger logger.ContextLogger, tag ... function newTransport (line 87) | func newTransport(rawDialer N.Dialer, baseTLSConfig tls.Config, options ... FILE: common/httpclient/context.go type transportKey (line 5) | type transportKey struct function contextWithTransportTag (line 7) | func contextWithTransportTag(ctx context.Context, transportTag string) c... function transportTagFromContext (line 11) | func transportTagFromContext(ctx context.Context) (string, bool) { FILE: common/httpclient/helpers.go function dialTLS (line 19) | func dialTLS(ctx context.Context, rawDialer N.Dialer, baseTLSConfig tls.... function applyHeaders (line 44) | func applyHeaders(request *http.Request, headers http.Header, host strin... function requestRequiresHTTP1 (line 53) | func requestRequiresHTTP1(request *http.Request) bool { function requestReplayable (line 58) | func requestReplayable(request *http.Request) bool { function cloneRequestForRetry (line 62) | func cloneRequestForRetry(request *http.Request) *http.Request { function mustGetBody (line 70) | func mustGetBody(request *http.Request) io.ReadCloser { function requestAuthority (line 78) | func requestAuthority(request *http.Request) string { function buildSTDTLSConfig (line 106) | func buildSTDTLSConfig(baseTLSConfig tls.Config, destination M.Socksaddr... FILE: common/httpclient/helpers_test.go function TestRequestAuthority (line 9) | func TestRequestAuthority(t *testing.T) { FILE: common/httpclient/http1_transport.go type http1Transport (line 13) | type http1Transport struct method RoundTrip (line 31) | func (t *http1Transport) RoundTrip(request *http.Request) (*http.Respo... method CloseIdleConnections (line 35) | func (t *http1Transport) CloseIdleConnections() { method Close (line 39) | func (t *http1Transport) Close() error { function newHTTP1Transport (line 17) | func newHTTP1Transport(rawDialer N.Dialer, baseTLSConfig tls.Config) *ht... FILE: common/httpclient/http2_config.go function CloneHTTP2Transport (line 14) | func CloneHTTP2Transport(transport *http2.Transport) *http2.Transport { function ConfigureHTTP2Transport (line 22) | func ConfigureHTTP2Transport(options option.HTTP2Options) (*http2.Transp... FILE: common/httpclient/http2_fallback_transport.go type http2FallbackTransport (line 22) | type http2FallbackTransport struct method isH2Fallback (line 45) | func (t *http2FallbackTransport) isH2Fallback(authority string) bool { method markH2Fallback (line 55) | func (t *http2FallbackTransport) markH2Fallback(authority string) { method RoundTrip (line 64) | func (t *http2FallbackTransport) RoundTrip(request *http.Request) (*ht... method roundTrip (line 68) | func (t *http2FallbackTransport) roundTrip(request *http.Request, allo... method CloseIdleConnections (line 90) | func (t *http2FallbackTransport) CloseIdleConnections() { method Close (line 95) | func (t *http2FallbackTransport) Close() error { function newHTTP2FallbackTransport (line 29) | func newHTTP2FallbackTransport(rawDialer N.Dialer, baseTLSConfig tls.Con... FILE: common/httpclient/http2_fallback_transport_test.go function TestHTTP2FallbackAuthorityIsolation (line 7) | func TestHTTP2FallbackAuthorityIsolation(t *testing.T) { function TestHTTP2FallbackEmptyAuthorityNoOp (line 27) | func TestHTTP2FallbackEmptyAuthorityNoOp(t *testing.T) { FILE: common/httpclient/http2_transport.go type http2Transport (line 17) | type http2Transport struct method RoundTrip (line 37) | func (t *http2Transport) RoundTrip(request *http.Request) (*http.Respo... method CloseIdleConnections (line 44) | func (t *http2Transport) CloseIdleConnections() { method Close (line 49) | func (t *http2Transport) Close() error { function newHTTP2Transport (line 22) | func newHTTP2Transport(rawDialer N.Dialer, baseTLSConfig tls.Config, opt... FILE: common/httpclient/http3_transport.go type http3Transport (line 23) | type http3Transport struct method RoundTrip (line 125) | func (t *http3Transport) RoundTrip(request *http.Request) (*http.Respo... method CloseIdleConnections (line 129) | func (t *http3Transport) CloseIdleConnections() { method Close (line 133) | func (t *http3Transport) Close() error { type http3BrokenEntry (line 27) | type http3BrokenEntry struct type http3FallbackTransport (line 32) | type http3FallbackTransport struct method RoundTrip (line 138) | func (t *http3FallbackTransport) RoundTrip(request *http.Request) (*ht... method roundTripHTTP3 (line 145) | func (t *http3FallbackTransport) roundTripHTTP3(request *http.Request)... method roundTripHTTP3Race (line 171) | func (t *http3FallbackTransport) roundTripHTTP3Race(request *http.Requ... method h2FallbackRoundTrip (line 261) | func (t *http3FallbackTransport) h2FallbackRoundTrip(request *http.Req... method CloseIdleConnections (line 268) | func (t *http3FallbackTransport) CloseIdleConnections() { method Close (line 273) | func (t *http3FallbackTransport) Close() error { method h3Broken (line 278) | func (t *http3FallbackTransport) h3Broken(authority string) bool { method clearH3Broken (line 295) | func (t *http3FallbackTransport) clearH3Broken(authority string) { method markH3Broken (line 304) | func (t *http3FallbackTransport) markH3Broken(authority string) { function newHTTP3RoundTripper (line 40) | func newHTTP3RoundTripper( function newHTTP3Transport (line 100) | func newHTTP3Transport( function newHTTP3FallbackTransport (line 110) | func newHTTP3FallbackTransport( FILE: common/httpclient/http3_transport_stub.go function newHTTP3FallbackTransport (line 14) | func newHTTP3FallbackTransport( function newHTTP3Transport (line 24) | func newHTTP3Transport( FILE: common/httpclient/http3_transport_test.go function TestHTTP3BrokenAuthorityIsolation (line 10) | func TestHTTP3BrokenAuthorityIsolation(t *testing.T) { function TestHTTP3BrokenBackoffPerAuthority (line 22) | func TestHTTP3BrokenBackoffPerAuthority(t *testing.T) { function TestHTTP3BrokenBackoffCap (line 48) | func TestHTTP3BrokenBackoffCap(t *testing.T) { function TestHTTP3BrokenClearDeletesEntry (line 58) | func TestHTTP3BrokenClearDeletesEntry(t *testing.T) { function TestHTTP3BrokenExpiredEntryGarbageCollected (line 73) | func TestHTTP3BrokenExpiredEntryGarbageCollected(t *testing.T) { function TestHTTP3BrokenEmptyAuthorityNoOp (line 88) | func TestHTTP3BrokenEmptyAuthorityNoOp(t *testing.T) { FILE: common/httpclient/managed_transport.go type innerTransport (line 14) | type innerTransport interface type ManagedTransport (line 22) | type ManagedTransport struct method getEpoch (line 63) | func (t *ManagedTransport) getEpoch() (*transportEpoch, error) { method acquireEpoch (line 83) | func (t *ManagedTransport) acquireEpoch() (*transportEpoch, error) { method releaseEpoch (line 97) | func (t *ManagedTransport) releaseEpoch(epoch *transportEpoch) { method retireEpoch (line 103) | func (t *ManagedTransport) retireEpoch(epoch *transportEpoch) { method RoundTrip (line 113) | func (t *ManagedTransport) RoundTrip(request *http.Request) (*http.Res... method CloseIdleConnections (line 140) | func (t *ManagedTransport) CloseIdleConnections() { method Reset (line 149) | func (t *ManagedTransport) Reset() { method close (line 164) | func (t *ManagedTransport) close() error { type transportEpoch (line 34) | type transportEpoch struct method tryClose (line 47) | func (e *transportEpoch) tryClose() { type managedResponseBody (line 41) | type managedResponseBody struct method Read (line 53) | func (b *managedResponseBody) Read(p []byte) (int, error) { method Close (line 57) | func (b *managedResponseBody) Close() error { type sharedRef (line 174) | type sharedRef struct method RoundTrip (line 192) | func (r *sharedRef) RoundTrip(request *http.Request) (*http.Response, ... method CloseIdleConnections (line 199) | func (r *sharedRef) CloseIdleConnections() { method Reset (line 207) | func (r *sharedRef) Reset() { type sharedState (line 180) | type sharedState struct function newSharedRef (line 184) | func newSharedRef(managed *ManagedTransport, shared *sharedState) *share... FILE: common/httpclient/manager.go type Manager (line 19) | type Manager struct method Initialize (line 54) | func (m *Manager) Initialize(defaultTransportFallback func() (*Managed... method Name (line 58) | func (m *Manager) Name() string { method Start (line 62) | func (m *Manager) Start(stage adapter.StartStage) error { method DefaultTransport (line 76) | func (m *Manager) DefaultTransport() adapter.HTTPTransport { method ResolveTransport (line 97) | func (m *Manager) ResolveTransport(ctx context.Context, logger logger.... method trackTransport (line 127) | func (m *Manager) trackTransport(transport *ManagedTransport) { method resolveShared (line 133) | func (m *Manager) resolveShared(tag string) (*sharedManagedTransport, ... method ResetNetwork (line 156) | func (m *Manager) ResetNetwork() { method Close (line 164) | func (m *Manager) Close() error { type sharedManagedTransport (line 31) | type sharedManagedTransport struct function NewManager (line 36) | func NewManager(ctx context.Context, logger log.ContextLogger, clients [... FILE: common/interrupt/conn.go type Conn (line 20) | type Conn struct method Close (line 30) | func (c *Conn) Close() error { method ReaderReplaceable (line 37) | func (c *Conn) ReaderReplaceable() bool { method WriterReplaceable (line 41) | func (c *Conn) WriterReplaceable() bool { method Upstream (line 45) | func (c *Conn) Upstream() any { type PacketConn (line 49) | type PacketConn struct method Close (line 59) | func (c *PacketConn) Close() error { method ReaderReplaceable (line 66) | func (c *PacketConn) ReaderReplaceable() bool { method WriterReplaceable (line 70) | func (c *PacketConn) WriterReplaceable() bool { method Upstream (line 74) | 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 function readUint8LengthPrefixed (line 13) | func readUint8LengthPrefixed(s *cryptobyte.String, out *[]byte) bool { function readUint16LengthPrefixed (line 19) | func readUint16LengthPrefixed(s *cryptobyte.String, out *[]byte) bool { type keyUpdateMsg (line 23) | type keyUpdateMsg struct method marshal (line 27) | func (m *keyUpdateMsg) marshal() ([]byte, error) { method unmarshal (line 41) | func (m *keyUpdateMsg) unmarshal(data []byte) bool { constant typeHelloRequest (line 62) | typeHelloRequest uint8 = 0 constant typeClientHello (line 63) | typeClientHello uint8 = 1 constant typeServerHello (line 64) | typeServerHello uint8 = 2 constant typeNewSessionTicket (line 65) | typeNewSessionTicket uint8 = 4 constant typeEndOfEarlyData (line 66) | typeEndOfEarlyData uint8 = 5 constant typeEncryptedExtensions (line 67) | typeEncryptedExtensions uint8 = 8 constant typeCertificate (line 68) | typeCertificate uint8 = 11 constant typeServerKeyExchange (line 69) | typeServerKeyExchange uint8 = 12 constant typeCertificateRequest (line 70) | typeCertificateRequest uint8 = 13 constant typeServerHelloDone (line 71) | typeServerHelloDone uint8 = 14 constant typeCertificateVerify (line 72) | typeCertificateVerify uint8 = 15 constant typeClientKeyExchange (line 73) | typeClientKeyExchange uint8 = 16 constant typeFinished (line 74) | typeFinished uint8 = 20 constant typeCertificateStatus (line 75) | typeCertificateStatus uint8 = 22 constant typeKeyUpdate (line 76) | typeKeyUpdate uint8 = 24 constant typeCompressedCertificate (line 77) | typeCompressedCertificate uint8 = 25 constant typeMessageHash (line 78) | typeMessageHash uint8 = 254 constant extensionServerName (line 83) | extensionServerName uint16 = 0 constant extensionStatusRequest (line 84) | extensionStatusRequest uint16 = 5 constant extensionSupportedCurves (line 85) | extensionSupportedCurves uint16 = 10 constant extensionSupportedPoints (line 86) | extensionSupportedPoints uint16 = 11 constant extensionSignatureAlgorithms (line 87) | extensionSignatureAlgorithms uint16 = 13 constant extensionALPN (line 88) | extensionALPN uint16 = 16 constant extensionSCT (line 89) | extensionSCT uint16 = 18 constant extensionPadding (line 90) | extensionPadding uint16 = 21 constant extensionExtendedMasterSecret (line 91) | extensionExtendedMasterSecret uint16 = 23 constant extensionCompressCertificate (line 92) | extensionCompressCertificate uint16 = 27 constant extensionSessionTicket (line 93) | extensionSessionTicket uint16 = 35 constant extensionPreSharedKey (line 94) | extensionPreSharedKey uint16 = 41 constant extensionEarlyData (line 95) | extensionEarlyData uint16 = 42 constant extensionSupportedVersions (line 96) | extensionSupportedVersions uint16 = 43 constant extensionCookie (line 97) | extensionCookie uint16 = 44 constant extensionPSKModes (line 98) | extensionPSKModes uint16 = 45 constant extensionCertificateAuthorities (line 99) | extensionCertificateAuthorities uint16 = 47 constant extensionSignatureAlgorithmsCert (line 100) | extensionSignatureAlgorithmsCert uint16 = 50 constant extensionKeyShare (line 101) | extensionKeyShare uint16 = 51 constant extensionQUICTransportParameters (line 102) | extensionQUICTransportParameters uint16 = 57 constant extensionALPS (line 103) | extensionALPS uint16 = 17513 constant extensionRenegotiationInfo (line 104) | extensionRenegotiationInfo uint16 = 0xff01 constant extensionECHOuterExtensions (line 105) | extensionECHOuterExtensions uint16 = 0xfd00 constant extensionEncryptedClientHello (line 106) | extensionEncryptedClientHello uint16 = 0xfe0d type handshakeMessage (line 109) | type handshakeMessage interface type newSessionTicketMsgTLS13 (line 113) | type newSessionTicketMsgTLS13 struct method marshal (line 121) | func (m *newSessionTicketMsgTLS13) marshal() ([]byte, error) { method unmarshal (line 147) | 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... 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 85) | func (l *Listener) loopTCPIn() { FILE: common/listener/listener_udp.go constant udpOutputBatchSize (line 22) | udpOutputBatchSize = 128 method ListenUDP (line 24) | func (l *Listener) ListenUDP() (net.PacketConn, error) { method DialContext (line 64) | func (l *Listener) DialContext(dialer net.Dialer, ctx context.Context, n... method ListenPacket (line 79) | func (l *Listener) ListenPacket(listenConfig net.ListenConfig, ctx conte... method UDPAddr (line 94) | func (l *Listener) UDPAddr() M.Socksaddr { method PacketWriter (line 98) | func (l *Listener) PacketWriter() N.PacketWriter { method loopUDPIn (line 102) | func (l *Listener) loopUDPIn() { method loopUDPInBatch (line 168) | func (l *Listener) loopUDPInBatch(handler adapter.PacketBatchHandler, re... method loopUDPOut (line 188) | func (l *Listener) loopUDPOut() { method releasePacketOutbound (line 231) | func (l *Listener) releasePacketOutbound() { type packetWriter (line 243) | type packetWriter method WritePacket (line 245) | func (w *packetWriter) WritePacket(buffer *buf.Buffer, destination M.S... method WritePacketBatch (line 263) | func (w *packetWriter) WritePacketBatch(buffers []*buf.Buffer, destina... method WriteIsThreadUnsafe (line 288) | 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/networkquality/http.go function FormatBitrate (line 17) | func FormatBitrate(bps int64) string { function NewHTTPClient (line 30) | func NewHTTPClient(dialer N.Dialer) *http.Client { function baseTransportFromClient (line 43) | func baseTransportFromClient(client *http.Client) (*http.Transport, erro... function newMeasurementClient (line 57) | func newMeasurementClient( type MeasurementClientFactory (line 105) | type MeasurementClientFactory function defaultMeasurementClientFactory (line 113) | func defaultMeasurementClientFactory(baseClient *http.Client) Measuremen... function NewOptionalHTTP3Factory (line 119) | func NewOptionalHTTP3Factory(dialer N.Dialer, useHTTP3 bool) (Measuremen... function rewriteDialAddress (line 126) | func rewriteDialAddress(addr string, connectEndpoint string) string { FILE: common/networkquality/http3.go function NewHTTP3MeasurementClientFactory (line 18) | func NewHTTP3MeasurementClientFactory(dialer N.Dialer) (MeasurementClien... FILE: common/networkquality/http3_stub.go function NewHTTP3MeasurementClientFactory (line 10) | func NewHTTP3MeasurementClientFactory(dialer N.Dialer) (MeasurementClien... FILE: common/networkquality/networkquality.go constant DefaultConfigURL (line 25) | DefaultConfigURL = "https://mensura.cdn-apple.com/api/v1/gm/config" type Config (line 27) | type Config struct type URLs (line 33) | type URLs struct method smallDownloadURL (line 42) | func (u *URLs) smallDownloadURL() string { method largeDownloadURL (line 49) | func (u *URLs) largeDownloadURL() string { method uploadURL (line 56) | func (u *URLs) uploadURL() string { type Accuracy (line 63) | type Accuracy method String (line 71) | func (a Accuracy) String() string { constant AccuracyLow (line 66) | AccuracyLow Accuracy = 0 constant AccuracyMedium (line 67) | AccuracyMedium Accuracy = 1 constant AccuracyHigh (line 68) | AccuracyHigh Accuracy = 2 type Result (line 82) | type Result struct type Progress (line 94) | type Progress struct type Phase (line 108) | type Phase constant PhaseIdle (line 111) | PhaseIdle Phase = 0 constant PhaseDownload (line 112) | PhaseDownload Phase = 1 constant PhaseUpload (line 113) | PhaseUpload Phase = 2 constant PhaseDone (line 114) | PhaseDone Phase = 3 type Options (line 117) | type Options struct constant DefaultMaxRuntime (line 127) | DefaultMaxRuntime = 20 * time.Second type measurementSettings (line 129) | type measurementSettings struct type resolvedConfig (line 159) | type resolvedConfig struct type directionPlan (line 166) | type directionPlan struct type probeTrace (line 173) | type probeTrace struct type probeMeasurement (line 185) | type probeMeasurement struct type probeRound (line 195) | type probeRound struct method responsivenessLatency (line 203) | func (p probeRound) responsivenessLatency() float64 { constant maxConsecutiveErrors (line 220) | maxConsecutiveErrors = 3 type loadConnection (line 222) | type loadConnection struct method run (line 230) | func (c *loadConnection) run(ctx context.Context, onError func(error)) { type intervalThroughput (line 266) | type intervalThroughput struct type intervalWindow (line 271) | type intervalWindow struct type stabilityTracker (line 276) | type stabilityTracker struct method add (line 283) | func (s *stabilityTracker) add(value float64) bool { method ready (line 298) | func (s *stabilityTracker) ready() bool { method accuracy (line 302) | func (s *stabilityTracker) accuracy() Accuracy { method stable (line 312) | func (s *stabilityTracker) stable() bool { type directionMeasurement (line 323) | type directionMeasurement struct type directionRunner (line 330) | type directionRunner struct method fail (line 364) | func (r *directionRunner) fail(err error) { method onConnectionFailed (line 376) | func (r *directionRunner) onConnectionFailed(err error) { method addConnection (line 390) | func (r *directionRunner) addConnection(ctx context.Context) error { method connectionCount (line 418) | func (r *directionRunner) connectionCount() int { method pickReadyConnection (line 424) | func (r *directionRunner) pickReadyConnection() *loadConnection { method startProber (line 439) | func (r *directionRunner) startProber(ctx context.Context) { method runProbeRound (line 461) | func (r *directionRunner) runProbeRound(ctx context.Context, selfClien... method probeInterval (line 480) | func (r *directionRunner) probeInterval() time.Duration { method recordProbeRound (line 498) | func (r *directionRunner) recordProbeRound(round probeRound) { method swapIntervalProbeValues (line 508) | func (r *directionRunner) swapIntervalProbeValues() []float64 { method setResponsivenessWindow (line 516) | func (r *directionRunner) setResponsivenessWindow(currentInterval int) { method recordThroughput (line 523) | func (r *directionRunner) recordThroughput(interval int, bps float64) { method setThroughputWindow (line 529) | func (r *directionRunner) setThroughputWindow(currentInterval int) { method finalRPM (line 536) | func (r *directionRunner) finalRPM() int32 { method finalCapacity (line 554) | func (r *directionRunner) finalCapacity(totalDuration time.Duration) i... method wait (line 579) | func (r *directionRunner) wait() { function newDirectionRunner (line 355) | func newDirectionRunner(factory MeasurementClientFactory, plan direction... function Run (line 583) | func Run(options Options) (*Result, error) { function normalizeMaxRuntime (line 680) | func normalizeMaxRuntime(maxRuntime time.Duration) (time.Duration, error) { function measureSerial (line 690) | func measureSerial( function measureParallel (line 744) | func measureParallel( function resolveConfigURL (line 843) | func resolveConfigURL(rawURL string) string { function fetchConfig (line 862) | func fetchConfig(ctx context.Context, client *http.Client, configURL str... function validateConfig (line 882) | func validateConfig(config *Config) (*resolvedConfig, error) { function measureIdleLatency (line 931) | func measureIdleLatency(ctx context.Context, factory MeasurementClientFa... function measureDirection (line 958) | func measureDirection( function splitRuntimeBudget (line 1076) | func splitRuntimeBudget(total time.Duration, directions int) (time.Durat... function collectProbeRound (line 1085) | func collectProbeRound(ctx context.Context, foreignClient *http.Client, ... function runProbe (line 1117) | func runProbe(ctx context.Context, client *http.Client, rawURL string, e... function runDownloadRequest (line 1213) | func runDownloadRequest(ctx context.Context, client *http.Client, rawURL... function runUploadRequest (line 1237) | func runUploadRequest(ctx context.Context, client *http.Client, rawURL s... function newRequest (line 1265) | func newRequest(ctx context.Context, method string, rawURL string, body ... function closeMeasurementClient (line 1274) | func closeMeasurementClient(client *http.Client) { function validateResponse (line 1284) | func validateResponse(resp *http.Response) error { function calculateRPM (line 1294) | func calculateRPM(rounds []probeRound) int32 { function tlsHandshakeRoundTrips (line 1339) | func tlsHandshakeRoundTrips(version uint16) int { function durationMillis (line 1348) | func durationMillis(value time.Duration) float64 { function upperTrimmedMean (line 1352) | func upperTrimmedMean(values []float64, trimPercent int) float64 { function upperTrimFloat64s (line 1360) | func upperTrimFloat64s(values []float64, trimPercent int) []float64 { function meanFloat64s (line 1376) | func meanFloat64s(values []float64) float64 { function stdDevFloat64s (line 1387) | func stdDevFloat64s(values []float64) float64 { type uploadBody (line 1400) | type uploadBody struct method Read (line 1406) | func (u *uploadBody) Read(p []byte) (int, error) { method Close (line 1418) | func (u *uploadBody) Close() error { 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 22) | type Config struct function FindProcessInfo (line 27) | func FindProcessInfo(searcher Searcher, ctx context.Context, network str... FILE: common/process/searcher_android.go type androidSearcher (line 14) | type androidSearcher struct method Close (line 22) | func (s *androidSearcher) Close() error { method FindProcessInfo (line 26) | func (s *androidSearcher) FindProcessInfo(ctx context.Context, network... function NewSearcher (line 18) | func NewSearcher(config Config) (Searcher, error) { FILE: common/process/searcher_darwin.go type darwinSearcher (line 17) | type darwinSearcher struct method Close (line 23) | func (d *darwinSearcher) Close() error { method FindProcessInfo (line 27) | func (d *darwinSearcher) FindProcessInfo(ctx context.Context, network ... function NewSearcher (line 19) | func NewSearcher(_ Config) (Searcher, error) { FILE: common/process/searcher_darwin_shared.go constant darwinSnapshotTTL (line 21) | darwinSnapshotTTL = 200 * time.Millisecond constant darwinXinpgenSize (line 23) | darwinXinpgenSize = 24 constant darwinXsocketOffset (line 24) | darwinXsocketOffset = 104 constant darwinXinpcbForeignPort (line 25) | darwinXinpcbForeignPort = 16 constant darwinXinpcbLocalPort (line 26) | darwinXinpcbLocalPort = 18 constant darwinXinpcbVFlag (line 27) | darwinXinpcbVFlag = 44 constant darwinXinpcbForeignAddr (line 28) | darwinXinpcbForeignAddr = 48 constant darwinXinpcbLocalAddr (line 29) | darwinXinpcbLocalAddr = 64 constant darwinXinpcbIPv4Addr (line 30) | darwinXinpcbIPv4Addr = 12 constant darwinXsocketUID (line 31) | darwinXsocketUID = 64 constant darwinXsocketLastPID (line 32) | darwinXsocketLastPID = 68 constant darwinTCPExtraStructSize (line 33) | darwinTCPExtraStructSize = 208 type darwinConnectionEntry (line 36) | type darwinConnectionEntry struct type darwinConnectionMatchKind (line 45) | type darwinConnectionMatchKind constant darwinConnectionMatchExact (line 48) | darwinConnectionMatchExact darwinConnectionMatchKind = iota constant darwinConnectionMatchLocalFallback (line 49) | darwinConnectionMatchLocalFallback constant darwinConnectionMatchWildcardFallback (line 50) | darwinConnectionMatchWildcardFallback type darwinSnapshot (line 53) | type darwinSnapshot struct type darwinConnectionFinder (line 58) | type darwinConnectionFinder struct method find (line 79) | func (f *darwinConnectionFinder) find(network string, source netip.Add... method loadSnapshot (line 122) | func (f *darwinConnectionFinder) loadSnapshot(network string, forceRef... function newDarwinConnectionFinder (line 67) | func newDarwinConnectionFinder(ttl time.Duration) *darwinConnectionFinder { function FindDarwinConnectionOwner (line 75) | func FindDarwinConnectionOwner(network string, source netip.AddrPort, de... function buildDarwinSnapshot (line 138) | func buildDarwinSnapshot(network string) (darwinSnapshot, error) { function darwinSnapshotSettings (line 153) | func darwinSnapshotSettings(network string) (string, int, error) { function parseDarwinSnapshot (line 165) | func parseDarwinSnapshot(buf []byte, itemSize int) []darwinConnectionEnt... function parseDarwinConnectionEntry (line 178) | func parseDarwinConnectionEntry(inp []byte, so []byte) (darwinConnection... function matchDarwinConnectionEntry (line 203) | func matchDarwinConnectionEntry(entries []darwinConnectionEntry, network... function normalizeDarwinAddrPort (line 243) | func normalizeDarwinAddrPort(addrPort netip.AddrPort) netip.AddrPort { function getExecPathFromPID (line 250) | func getExecPathFromPID(pid uint32) (string, error) { FILE: common/process/searcher_linux.go type linuxSearcher (line 19) | type linuxSearcher struct method Close (line 38) | func (s *linuxSearcher) Close() error { method FindProcessInfo (line 49) | func (s *linuxSearcher) FindProcessInfo(ctx context.Context, network s... method resolveSocketByNetlink (line 66) | func (s *linuxSearcher) resolveSocketByNetlink(network string, source ... function NewSearcher (line 25) | func NewSearcher(config Config) (Searcher, error) { FILE: common/process/searcher_linux_shared.go constant sizeOfSocketDiagRequestData (line 26) | sizeOfSocketDiagRequestData = 56 constant sizeOfSocketDiagRequest (line 27) | sizeOfSocketDiagRequest = syscall.SizeofNlMsghdr + sizeOfSocketDiagR... constant socketDiagResponseMinSize (line 28) | socketDiagResponseMinSize = 72 constant socketDiagByFamily (line 29) | socketDiagByFamily = 20 constant pathProc (line 30) | pathProc = "/proc" type socketDiagConn (line 33) | type socketDiagConn struct method Close (line 111) | func (c *socketDiagConn) Close() error { method query (line 117) | func (c *socketDiagConn) query(source netip.AddrPort, destination neti... method ensureOpenLocked (line 147) | func (c *socketDiagConn) ensureOpenLocked() error { method closeLocked (line 184) | func (c *socketDiagConn) closeLocked() error { type uidProcessPathCache (line 40) | type uidProcessPathCache struct method findProcessPath (line 93) | func (c *uidProcessPathCache) findProcessPath(targetInode, uid uint32)... type uidProcessPaths (line 44) | type uidProcessPaths struct function newSocketDiagConn (line 48) | func newSocketDiagConn(family, protocol uint8) *socketDiagConn { function socketDiagConnIndex (line 56) | func socketDiagConnIndex(family, protocol uint8) int { function socketDiagSettings (line 67) | func socketDiagSettings(network string, source netip.AddrPort) (family, ... function newUIDProcessPathCache (line 87) | func newUIDProcessPathCache(ttl time.Duration) *uidProcessPathCache { function querySocketDiagOnce (line 138) | func querySocketDiagOnce(family, protocol uint8, source netip.AddrPort) ... function openSocketDiag (line 159) | func openSocketDiag() (int, error) { function packSocketDiagRequest (line 193) | func packSocketDiagRequest(family, protocol byte, source netip.AddrPort,... function querySocketDiag (line 237) | func querySocketDiag(fd int, request []byte) (inode, uid uint32, err err... function unpackSocketDiagMessages (line 254) | func unpackSocketDiagMessages(messages []syscall.NetlinkMessage) (inode,... function unpackSocketDiagResponse (line 274) | func unpackSocketDiagResponse(msg *syscall.NetlinkMessage) (inode, uid u... function unpackSocketDiagError (line 283) | func unpackSocketDiagError(msg *syscall.NetlinkMessage) error { function shouldRetrySocketDiag (line 303) | func shouldRetrySocketDiag(err error) bool { function buildProcessPathByUIDCache (line 307) | func buildProcessPathByUIDCache(uid uint32) (map[uint32]string, error) { function isIgnorableProcError (line 358) | func isIgnorableProcError(err error) bool { function parseSocketInode (line 362) | func parseSocketInode(link []byte) (uint32, bool) { function isPid (line 380) | func isPid(s string) bool { FILE: common/process/searcher_linux_shared_test.go function TestQuerySocketDiagUDPExact (line 16) | func TestQuerySocketDiagUDPExact(t *testing.T) { function addrPortFromUDPAddr (line 50) | func addrPortFromUDPAddr(t *testing.T, addr net.Addr) netip.AddrPort { 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 Close (line 31) | func (s *windowsSearcher) Close() error { method FindProcessInfo (line 35) | 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 47) | func getProcessPath(pid uint32) (string, error) { FILE: common/proxybridge/bridge.go type Bridge (line 22) | type Bridge struct method Port (line 62) | func (b *Bridge) Port() uint16 { method Username (line 66) | func (b *Bridge) Username() string { method Password (line 70) | func (b *Bridge) Password() string { method Close (line 74) | func (b *Bridge) Close() error { method acceptLoop (line 78) | func (b *Bridge) acceptLoop() { method NewConnectionEx (line 99) | func (b *Bridge) NewConnectionEx(ctx context.Context, conn net.Conn, s... method NewPacketConnectionEx (line 108) | func (b *Bridge) NewPacketConnectionEx(ctx context.Context, conn N.Pac... function New (line 34) | func New(ctx context.Context, logger logger.ContextLogger, tag string, d... function randomHex (line 56) | func randomHex(size int) string { 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/schannel/schannel_windows.go constant clientCredentialFlags (line 17) | clientCredentialFlags = schCredManualCredValidation | schCredNoDefaultCr... function CheckPlatform (line 30) | func CheckPlatform() error { type clientCredentialKey (line 34) | type clientCredentialKey struct type clientCredential (line 39) | type clientCredential struct method acquire (line 66) | func (c *clientCredential) acquire() error { function cachedClientCredential (line 49) | func cachedClientCredential(minVersion, maxVersion uint16) (*clientCrede... type ClientContext (line 98) | type ClientContext struct method Close (line 147) | func (c *ClientContext) Close() { method Step (line 171) | func (c *ClientContext) Step(input []byte) (StepResult, error) { method StreamSizes (line 224) | func (c *ClientContext) StreamSizes() (header, trailer, maxMessage uin... method Encrypt (line 237) | func (c *ClientContext) Encrypt(header, trailer uint32, plaintext []by... method Decrypt (line 283) | func (c *ClientContext) Decrypt(input []byte) (DecryptResult, error) { method PostHandshake (line 321) | func (c *ClientContext) PostHandshake(input []byte) (StepResult, error) { method ApplicationProtocol (line 388) | func (c *ClientContext) ApplicationProtocol() (string, error) { method ConnectionInfo (line 407) | func (c *ClientContext) ConnectionInfo() (version, cipherSuite uint16,... method RemoteCertificateChain (line 440) | func (c *ClientContext) RemoteCertificateChain() ([][]byte, error) { method runInitializeSecurityContext (line 470) | func (c *ClientContext) runInitializeSecurityContext(inputDesc *secBuf... function NewClientContext (line 115) | func NewClientContext(minVersion, maxVersion uint16, serverName string, ... type StepResult (line 158) | type StepResult struct type DecryptResult (line 265) | type DecryptResult struct function parseDecryptResult (line 353) | func parseDecryptResult(input []byte, bufs []secBuffer, renegotiate bool... function cipherSuiteID (line 424) | func cipherSuiteID(name string) uint16 { constant handshakeContextReq (line 458) | handshakeContextReq = iscReqSequenceDetect | function consumedFromExtra (line 534) | func consumedFromExtra(extraBuf *secBuffer, inputLen int) (int, error) { function disabledProtocolsMask (line 542) | func disabledProtocolsMask(minVersion, maxVersion uint16) uint32 { function sspProtocolToTLSVersion (line 575) | func sspProtocolToTLSVersion(sp uint32) uint16 { function encodeAlpnBuffer (line 589) | func encodeAlpnBuffer(protocols []string) ([]byte, error) { function unsafeSliceCopy (line 615) | func unsafeSliceCopy(ptr *byte, size int) []byte { function certContextDER (line 624) | func certContextDER(ctx *windows.CertContext) []byte { function buildCertChainDER (line 633) | func buildCertChainDER(leaf *windows.CertContext) ([][]byte, error) { function extractCertChainDER (line 645) | func extractCertChainDER(chainCtx *windows.CertChainContext) ([][]byte, ... function isSelfSignedCertContext (line 674) | func isSelfSignedCertContext(ctx *windows.CertContext) bool { function certNameBlobBytes (line 684) | func certNameBlobBytes(blob windows.CertNameBlob) []byte { function sspiError (line 691) | func sspiError(where string, status syscall.Errno) error { function formatStatus (line 713) | func formatStatus(status syscall.Errno) string { FILE: common/schannel/schannel_windows_test.go function TestExtractCertChainDERExcludesSelfSignedRoot (line 14) | func TestExtractCertChainDERExcludesSelfSignedRoot(t *testing.T) { function TestExtractCertChainDERKeepsLastIntermediateWithoutRoot (line 35) | func TestExtractCertChainDERKeepsLastIntermediateWithoutRoot(t *testing.... function TestDisabledProtocolsMask (line 52) | func TestDisabledProtocolsMask(t *testing.T) { function TestClientCredentialCacheReusesVersionRange (line 86) | func TestClientCredentialCacheReusesVersionRange(t *testing.T) { function TestParseDecryptResultKeepsRenegotiateExtraToken (line 117) | func TestParseDecryptResultKeepsRenegotiateExtraToken(t *testing.T) { function TestParseDecryptResultKeepsRenegotiateWholeBufferWithoutExtra (line 136) | func TestParseDecryptResultKeepsRenegotiateWholeBufferWithoutExtra(t *te... function certChainContextForTest (line 155) | func certChainContextForTest(certs ...*windows.CertContext) *windows.Cer... function certContextForTest (line 171) | func certContextForTest(der, issuer, subject []byte) *windows.CertContext { function certNameBlobForTest (line 183) | func certNameBlobForTest(value []byte) windows.CertNameBlob { FILE: common/schannel/syscall_windows.go function sspiCompleteAuthToken (line 24) | func sspiCompleteAuthToken(context *secHandle, token *secBufferDesc) (re... FILE: common/schannel/types_windows.go constant unispNameW (line 10) | unispNameW = "Microsoft Unified Security Protocol Provider" constant schCredentialsVersion (line 12) | schCredentialsVersion = 5 constant secPkgCredOutbound (line 14) | secPkgCredOutbound = 2 constant iscReqSequenceDetect (line 16) | iscReqSequenceDetect = 0x00000008 constant iscReqReplayDetect (line 17) | iscReqReplayDetect = 0x00000004 constant iscReqConfidentiality (line 18) | iscReqConfidentiality = 0x00000010 constant iscReqAllocateMemory (line 19) | iscReqAllocateMemory = 0x00000100 constant iscReqStream (line 20) | iscReqStream = 0x00008000 constant iscReqUseSuppliedCreds (line 21) | iscReqUseSuppliedCreds = 0x00000080 constant iscReqManualCredValidation (line 22) | iscReqManualCredValidation = 0x00080000 constant iscReqExtendedError (line 23) | iscReqExtendedError = 0x00004000 constant secbufferEmpty (line 25) | secbufferEmpty = 0 constant secbufferData (line 26) | secbufferData = 1 constant secbufferToken (line 27) | secbufferToken = 2 constant secbufferExtra (line 28) | secbufferExtra = 5 constant secbufferStreamTrailer (line 29) | secbufferStreamTrailer = 6 constant secbufferStreamHeader (line 30) | secbufferStreamHeader = 7 constant secbufferApplicationProtocols (line 31) | secbufferApplicationProtocols = 18 constant secbufferVersion (line 32) | secbufferVersion = 0 constant secApplicationProtocolNegotiationExtALPN (line 34) | secApplicationProtocolNegotiationExtALPN = 2 constant secApplicationProtocolNegotiationStatusSuccess (line 36) | secApplicationProtocolNegotiationStatusSuccess = 1 constant schCredManualCredValidation (line 38) | schCredManualCredValidation = 0x00000008 constant schCredNoDefaultCreds (line 39) | schCredNoDefaultCreds = 0x00000010 constant schUseStrongCrypto (line 40) | schUseStrongCrypto = 0x00400000 constant spProtTLS10Client (line 42) | spProtTLS10Client = 0x00000080 constant spProtTLS11Client (line 43) | spProtTLS11Client = 0x00000200 constant spProtTLS12Client (line 44) | spProtTLS12Client = 0x00000800 constant spProtTLS13Client (line 45) | spProtTLS13Client = 0x00002000 constant spProtAllTLSClients (line 47) | spProtAllTLSClients = spProtTLS10Client | spProtTLS11Client | spProtTLS1... constant secpkgAttrStreamSizes (line 49) | secpkgAttrStreamSizes = 4 constant secpkgAttrConnectionInfo (line 50) | secpkgAttrConnectionInfo = 0x5A constant secpkgAttrApplicationProtocol (line 51) | secpkgAttrApplicationProtocol = 0x23 constant secpkgAttrCipherInfo (line 52) | secpkgAttrCipherInfo = 0x64 constant secpkgAttrRemoteCertContext (line 53) | secpkgAttrRemoteCertContext = 0x53 constant secEOK (line 57) | secEOK = syscall.Errno(windows.SEC_E_OK) constant secICompleteNeeded (line 58) | secICompleteNeeded = syscall.Errno(windows.SEC_I_COMPLETE_NEE... constant secICompleteAndContinue (line 59) | secICompleteAndContinue = syscall.Errno(windows.SEC_I_COMPLETE_AND... constant secIContinueNeeded (line 60) | secIContinueNeeded = syscall.Errno(windows.SEC_I_CONTINUE_NEE... constant secIContextExpired (line 61) | secIContextExpired = syscall.Errno(windows.SEC_I_CONTEXT_EXPI... constant secIRenegotiate (line 62) | secIRenegotiate = syscall.Errno(windows.SEC_I_RENEGOTIATE) constant secEIncompleteMessage (line 63) | secEIncompleteMessage = syscall.Errno(windows.SEC_E_INCOMPLETE_M... constant secEIncompleteCreds (line 64) | secEIncompleteCreds = syscall.Errno(windows.SEC_E_INCOMPLETE_C... constant secEBufferTooSmall (line 65) | secEBufferTooSmall = syscall.Errno(windows.SEC_E_BUFFER_TOO_S... constant secEMessageAltered (line 66) | secEMessageAltered = syscall.Errno(windows.SEC_E_MESSAGE_ALTE... constant secEContextExpired (line 67) | secEContextExpired = syscall.Errno(windows.SEC_E_CONTEXT_EXPI... constant secEUnsupportedFunc (line 68) | secEUnsupportedFunc = syscall.Errno(windows.SEC_E_UNSUPPORTED_... constant secEInvalidToken (line 69) | secEInvalidToken = syscall.Errno(windows.SEC_E_INVALID_TOKEN) constant secELogonDenied (line 70) | secELogonDenied = syscall.Errno(windows.SEC_E_LOGON_DENIED) constant secEIllegalMessage (line 71) | secEIllegalMessage = syscall.Errno(windows.SEC_E_ILLEGAL_MESS... constant secEWrongPrincipal (line 72) | secEWrongPrincipal = syscall.Errno(windows.SEC_E_WRONG_PRINCI... constant secECertUnknown (line 73) | secECertUnknown = syscall.Errno(windows.SEC_E_CERT_UNKNOWN) constant secECertExpired (line 74) | secECertExpired = syscall.Errno(windows.SEC_E_CERT_EXPIRED) constant secEAlgorithmMismatch (line 75) | secEAlgorithmMismatch = syscall.Errno(windows.SEC_E_ALGORITHM_MI... constant secEInternalError (line 76) | secEInternalError = syscall.Errno(windows.SEC_E_INTERNAL_ERROR) constant secENoAuthenticatingAuthority (line 77) | secENoAuthenticatingAuthority = syscall.Errno(windows.SEC_E_NO_AUTHENTIC... type secHandle (line 80) | type secHandle struct type secBuffer (line 85) | type secBuffer struct type secBufferDesc (line 91) | type secBufferDesc struct type schCredentials (line 97) | type schCredentials struct type tlsParameters (line 111) | type tlsParameters struct type secPkgContextStreamSizes (line 120) | type secPkgContextStreamSizes struct type secPkgContextConnectionInfo (line 128) | type secPkgContextConnectionInfo struct type secPkgContextApplicationProtocol (line 138) | type secPkgContextApplicationProtocol struct type secPkgContextCipherInfo (line 145) | type secPkgContextCipherInfo struct FILE: common/schannel/zsyscall_windows.go constant errnoERROR_IO_PENDING (line 17) | errnoERROR_IO_PENDING = 997 function errnoErr (line 27) | func errnoErr(e syscall.Errno) error { function sspiAcquireCredentialsHandle (line 53) | func sspiAcquireCredentialsHandle(principal *uint16, pkgname *uint16, cr... function sspiDecryptMessage (line 59) | func sspiDecryptMessage(context *secHandle, message *secBufferDesc, sequ... function sspiDeleteSecurityContext (line 65) | func sspiDeleteSecurityContext(context *secHandle) (ret syscall.Errno) { function sspiEncryptMessage (line 71) | func sspiEncryptMessage(context *secHandle, qop uint32, message *secBuff... function sspiFreeContextBuffer (line 77) | func sspiFreeContextBuffer(buffer *byte) (ret syscall.Errno) { function sspiFreeCredentialsHandle (line 83) | func sspiFreeCredentialsHandle(credential *secHandle) (ret syscall.Errno) { function sspiInitializeSecurityContext (line 89) | func sspiInitializeSecurityContext(credential *secHandle, context *secHa... function sspiQueryContextAttributes (line 95) | func sspiQueryContextAttributes(context *secHandle, attribute uint32, bu... 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 21) | type wpaSupplicantMonitor struct method ReadWIFIState (line 55) | func (m *wpaSupplicantMonitor) ReadWIFIState() adapter.WIFIState { method sendCommand (line 100) | func (m *wpaSupplicantMonitor) sendCommand(conn *net.UnixConn, command... method Start (line 120) | func (m *wpaSupplicantMonitor) Start() error { method monitorEvents (line 134) | func (m *wpaSupplicantMonitor) monitorEvents(ctx context.Context, last... method Close (line 216) | func (m *wpaSupplicantMonitor) Close() error { function newWpaSupplicantMonitor (line 29) | func newWpaSupplicantMonitor(callback func(adapter.WIFIState)) (WIFIMoni... FILE: common/settings/wifi_stub.go type stubWIFIMonitor (line 12) | type stubWIFIMonitor struct method ReadWIFIState (line 18) | func (m *stubWIFIMonitor) ReadWIFIState() adapter.WIFIState { method Start (line 22) | func (m *stubWIFIMonitor) Start() error { method Close (line 26) | func (m *stubWIFIMonitor) Close() error { function NewWIFIMonitor (line 14) | 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 Seal (line 60) | func (f *xorNonceAEAD) Seal(out, nonce, plaintext, additionalData []by... method Open (line 72) | func (f *xorNonceAEAD) Open(out, nonce, ciphertext, additionalData []b... function HKDFExpandLabel (line 84) | func HKDFExpandLabel(hash crypto.Hash, secret, context []byte, label str... function ReadUvarint (line 101) | 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 11) | x25519Kyber768Draft00 uint16 = 0x11EC constant extensionRenegotiationInfo (line 13) | extensionRenegotiationInfo uint16 = 0xFF01 function isQUICGo (line 19) | 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 ruleItemPackageNameRegex (line 49) | ruleItemPackageNameRegex constant ruleItemFinal (line 50) | ruleItemFinal uint8 = 0xFF function Read (line 53) | func Read(reader io.Reader, recover bool) (ruleSetCompat option.PlainRul... function Write (line 92) | func Write(writer io.Writer, ruleSet option.PlainRuleSet, generateVersio... function readRule (line 123) | func readRule(reader varbin.Reader, recover bool) (rule option.HeadlessR... function writeRule (line 142) | func writeRule(writer varbin.Writer, rule option.HeadlessRule, generateV... function readDefaultRule (line 153) | func readDefaultRule(reader varbin.Reader, recover bool) (rule option.De... function writeDefaultRule (line 299) | func writeDefaultRule(writer varbin.Writer, rule option.DefaultHeadlessR... function readRuleItemString (line 520) | func readRuleItemString(reader varbin.Reader) ([]string, error) { function writeRuleItemString (line 541) | func writeRuleItemString(writer varbin.Writer, itemType uint8, value []s... function readRuleItemUint8 (line 563) | func readRuleItemUint8[E ~uint8](reader varbin.Reader) ([]E, error) { function writeRuleItemUint8 (line 576) | func writeRuleItemUint8[E ~uint8](writer varbin.Writer, itemType uint8, ... function readRuleItemUint16 (line 589) | func readRuleItemUint16(reader varbin.Reader) ([]uint16, error) { function writeRuleItemUint16 (line 602) | func writeRuleItemUint16(writer varbin.Writer, itemType uint8, value []u... function writeRuleItemCIDR (line 614) | func writeRuleItemCIDR(writer varbin.Writer, itemType uint8, value []str... function readLogicalRule (line 640) | func readLogicalRule(reader varbin.Reader, recovery bool) (logicalRule o... function writeLogicalRule (line 673) | 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/stun/stun.go constant DefaultServer (line 20) | DefaultServer = "stun.voipgate.com:3478" constant magicCookie (line 22) | magicCookie = 0x2112A442 constant headerSize (line 23) | headerSize = 20 constant bindingRequest (line 25) | bindingRequest = 0x0001 constant bindingSuccessResponse (line 26) | bindingSuccessResponse = 0x0101 constant bindingErrorResponse (line 27) | bindingErrorResponse = 0x0111 constant attrMappedAddress (line 29) | attrMappedAddress = 0x0001 constant attrChangeRequest (line 30) | attrChangeRequest = 0x0003 constant attrErrorCode (line 31) | attrErrorCode = 0x0009 constant attrXORMappedAddress (line 32) | attrXORMappedAddress = 0x0020 constant attrOtherAddress (line 33) | attrOtherAddress = 0x802c constant familyIPv4 (line 35) | familyIPv4 = 0x01 constant familyIPv6 (line 36) | familyIPv6 = 0x02 constant changeIP (line 38) | changeIP = 0x04 constant changePort (line 39) | changePort = 0x02 constant defaultRTO (line 41) | defaultRTO = 500 * time.Millisecond constant minRTO (line 42) | minRTO = 250 * time.Millisecond constant maxRetransmit (line 43) | maxRetransmit = 2 type Phase (line 46) | type Phase constant PhaseBinding (line 49) | PhaseBinding Phase = iota constant PhaseNATMapping (line 50) | PhaseNATMapping constant PhaseNATFiltering (line 51) | PhaseNATFiltering constant PhaseDone (line 52) | PhaseDone type NATMapping (line 55) | type NATMapping method String (line 65) | func (m NATMapping) String() string { constant NATMappingUnknown (line 58) | NATMappingUnknown NATMapping = iota constant _ (line 59) | _ constant NATMappingEndpointIndependent (line 60) | NATMappingEndpointIndependent constant NATMappingAddressDependent (line 61) | NATMappingAddressDependent constant NATMappingAddressAndPortDependent (line 62) | NATMappingAddressAndPortDependent type NATFiltering (line 78) | type NATFiltering method String (line 87) | func (f NATFiltering) String() string { constant NATFilteringUnknown (line 81) | NATFilteringUnknown NATFiltering = iota constant NATFilteringEndpointIndependent (line 82) | NATFilteringEndpointIndependent constant NATFilteringAddressDependent (line 83) | NATFilteringAddressDependent constant NATFilteringAddressAndPortDependent (line 84) | NATFilteringAddressAndPortDependent type TransactionID (line 100) | type TransactionID type Options (line 102) | type Options struct type Progress (line 109) | type Progress struct type Result (line 117) | type Result struct type parsedResponse (line 125) | type parsedResponse struct method externalAddr (line 131) | func (r *parsedResponse) externalAddr() (netip.AddrPort, bool) { type stunAttribute (line 141) | type stunAttribute struct function newTransactionID (line 146) | func newTransactionID() TransactionID { function buildBindingRequest (line 152) | func buildBindingRequest(txID TransactionID, attrs ...stunAttribute) []b... function changeRequestAttr (line 175) | func changeRequestAttr(flags byte) stunAttribute { function parseResponse (line 182) | func parseResponse(data []byte, expectedTxID TransactionID) (*parsedResp... function parseErrorResponse (line 251) | func parseErrorResponse(data []byte) error { function parseXORMappedAddress (line 274) | func parseXORMappedAddress(data []byte, txID TransactionID) (netip.AddrP... function parseMappedAddress (line 308) | func parseMappedAddress(data []byte) (netip.AddrPort, error) { function roundTrip (line 336) | func roundTrip(conn net.PacketConn, addr net.Addr, txID TransactionID, a... function Run (line 390) | func Run(options Options) (*Result, error) { function detectNATMapping (line 538) | func detectNATMapping( function detectNATFiltering (line 583) | func detectNATFiltering( function paddingLen (line 607) | func paddingLen(n int) int { 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 26) | type acmeWrapper struct method Start (line 33) | func (w *acmeWrapper) Start() error { method Close (line 37) | func (w *acmeWrapper) Close() error { function startACME (line 42) | func startACME(ctx context.Context, logger logger.Logger, options option... FILE: common/tls/acme_logger.go type ACMELogWriter (line 12) | type ACMELogWriter struct method Write (line 16) | func (w *ACMELogWriter) Write(p []byte) (n int, err error) { method Sync (line 33) | func (w *ACMELogWriter) Sync() error { function ACMEEncoderConfig (line 37) | func ACMEEncoderConfig() zapcore.EncoderConfig { FILE: common/tls/acme_stub.go function startACME (line 15) | func startACME(ctx context.Context, logger logger.Logger, options option... FILE: common/tls/apple_client.go constant appleTLSEngineName (line 14) | appleTLSEngineName = "Apple TLS engine" type appleClientConfig (line 16) | type appleClientConfig struct method Clone (line 21) | func (c *appleClientConfig) Clone() Config { method resolveAnchors (line 28) | func (c *appleClientConfig) resolveAnchors() (adapter.AppleAnchors, er... function newAppleClient (line 35) | func newAppleClient(ctx context.Context, logger logger.ContextLogger, se... FILE: common/tls/apple_client_platform.go method ClientHandshake (line 36) | func (c *appleClientConfig) ClientHandshake(ctx context.Context, conn ne... constant appleTLSHandshakePollInterval (line 151) | appleTLSHandshakePollInterval = 100 * time.Millisecond constant appleTLSWriteChunkSize (line 152) | appleTLSWriteChunkSize = 32 * 1024 function waitAppleTLSClientReady (line 155) | func waitAppleTLSClientReady(ctx context.Context, client *C.box_apple_tl... type appleTLSConn (line 199) | type appleTLSConn struct method Read (line 224) | func (c *appleTLSConn) Read(p []byte) (int, error) { method ReadBuffer (line 237) | func (c *appleTLSConn) ReadBuffer(buffer *buf.Buffer) error { method readIntoLocked (line 249) | func (c *appleTLSConn) readIntoLocked(p []byte) (int, error) { method Write (line 295) | func (c *appleTLSConn) Write(p []byte) (int, error) { method WriteBuffer (line 340) | func (c *appleTLSConn) WriteBuffer(buffer *buf.Buffer) error { method CreateReadWaiter (line 346) | func (c *appleTLSConn) CreateReadWaiter() (N.ReadWaiter, bool) { method Close (line 353) | func (c *appleTLSConn) Close() error { method LocalAddr (line 368) | func (c *appleTLSConn) LocalAddr() net.Addr { method RemoteAddr (line 372) | func (c *appleTLSConn) RemoteAddr() net.Addr { method SetDeadline (line 385) | func (c *appleTLSConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 395) | func (c *appleTLSConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 403) | func (c *appleTLSConn) SetWriteDeadline(t time.Time) error { method prepareReadTimeout (line 411) | func (c *appleTLSConn) prepareReadTimeout() (int, error) { method prepareWriteDeadline (line 425) | func (c *appleTLSConn) prepareWriteDeadline() (time.Time, error) { method markReadTimedOut (line 439) | func (c *appleTLSConn) markReadTimedOut() { method markWriteTimedOut (line 445) | func (c *appleTLSConn) markWriteTimedOut() { method isClosed (line 462) | func (c *appleTLSConn) isClosed() bool { method acquireClient (line 471) | func (c *appleTLSConn) acquireClient() (*C.box_apple_tls_client_t, err... method releaseClient (line 485) | func (c *appleTLSConn) releaseClient() { method errorFromPointer (line 489) | func (c *appleTLSConn) errorFromPointer(errorPtr *C.char) error { method readWaitResultToBuffer (line 565) | func (c *appleTLSConn) readWaitResultToBuffer(result *C.box_apple_tls_... method NetConn (line 621) | func (c *appleTLSConn) NetConn() net.Conn { method HandshakeContext (line 625) | func (c *appleTLSConn) HandshakeContext(ctx context.Context) error { method ConnectionState (line 629) | func (c *appleTLSConn) ConnectionState() ConnectionState { function deadlineTimeoutMs (line 451) | func deadlineTimeoutMs(deadline time.Time) (int, bool) { type appleTLSReadWaiter (line 500) | type appleTLSReadWaiter struct method InitializeReadWaiter (line 508) | func (w *appleTLSReadWaiter) InitializeReadWaiter(options N.ReadWaitOp... method WaitReadBuffer (line 516) | func (w *appleTLSReadWaiter) WaitReadBuffer() (*buf.Buffer, error) { function readWaitFreeLen (line 596) | func readWaitFreeLen(options N.ReadWaitOptions) int { function box_apple_tls_read_callback (line 607) | func box_apple_tls_read_callback(callbackHandle C.uintptr_t, result *C.b... function parseAppleTLSState (line 635) | func parseAppleTLSState(state *C.box_apple_tls_state_t) (tls.ConnectionS... function parseAppleCertChain (line 658) | func parseAppleCertChain(chain *C.uint8_t, chainLen C.size_t) ([][]byte,... function timeoutFromDuration (line 688) | func timeoutFromDuration(timeout time.Duration) int { function cStringOrNil (line 702) | func cStringOrNil(value string) *C.char { function cFree (line 709) | func cFree(pointer *C.char) { FILE: common/tls/apple_client_platform_benchmark_test.go constant appleTLSBenchmarkReadPayloadSize (line 21) | appleTLSBenchmarkReadPayloadSize = 16 * 1024 constant appleTLSBenchmarkWritePayloadSize (line 22) | appleTLSBenchmarkWritePayloadSize = 48 * 1024 function BenchmarkAppleClientReadBuffer (line 25) | func BenchmarkAppleClientReadBuffer(b *testing.B) { function BenchmarkAppleClientReadWaiter (line 63) | func BenchmarkAppleClientReadWaiter(b *testing.B) { function BenchmarkAppleClientWriteBuffer (line 108) | func BenchmarkAppleClientWriteBuffer(b *testing.B) { function BenchmarkStdlibClientReadBuffer (line 143) | func BenchmarkStdlibClientReadBuffer(b *testing.B) { function BenchmarkStdlibClientWriteBuffer (line 182) | func BenchmarkStdlibClientWriteBuffer(b *testing.B) { function newAppleBenchmarkClientConn (line 216) | func newAppleBenchmarkClientConn(b *testing.B, handler func(*stdtls.Conn... function newStdlibBenchmarkClientConn (line 240) | func newStdlibBenchmarkClientConn(b *testing.B, handler func(*stdtls.Con... function writeBenchmarkPayload (line 269) | func writeBenchmarkPayload(writer io.Writer, payload []byte) error { FILE: common/tls/apple_client_platform_darwin.h type box_apple_tls_client_t (line 6) | typedef struct box_apple_tls_client box_apple_tls_client_t; type box_apple_tls_read_result_t (line 7) | typedef struct box_apple_tls_read_result box_apple_tls_read_result_t; type box_apple_tls_state_t (line 9) | typedef struct box_apple_tls_state { FILE: common/tls/apple_client_platform_dispatch_test.go function TestAppleTLSDispatchDataCopySegments (line 11) | func TestAppleTLSDispatchDataCopySegments(t *testing.T) { function TestAppleTLSDispatchDataCopyRejectsSmallBuffer (line 28) | func TestAppleTLSDispatchDataCopyRejectsSmallBuffer(t *testing.T) { function TestAppleTLSDispatchDataCopyEmpty (line 42) | func TestAppleTLSDispatchDataCopyEmpty(t *testing.T) { FILE: common/tls/apple_client_platform_dispatch_testhelper_darwin.go function appleTLSCopyDispatchDataForTest (line 13) | func appleTLSCopyDispatchDataForTest(first, second []byte, buffer []byte... FILE: common/tls/apple_client_platform_test.go constant appleTLSTestTimeout (line 23) | appleTLSTestTimeout = 5 * time.Second constant appleTLSSuccessHandshakeLoops (line 26) | appleTLSSuccessHandshakeLoops = 20 constant appleTLSFailureRecoveryLoops (line 27) | appleTLSFailureRecoveryLoops = 10 type appleTLSServerResult (line 30) | type appleTLSServerResult struct function TestAppleClientHandshakeAppliesALPNAndVersion (line 40) | func TestAppleClientHandshakeAppliesALPNAndVersion(t *testing.T) { function TestAppleClientHandshakeRejectsOpaqueConn (line 87) | func TestAppleClientHandshakeRejectsOpaqueConn(t *testing.T) { function TestAppleClientHandshakeRejectsVersionMismatch (line 110) | func TestAppleClientHandshakeRejectsVersionMismatch(t *testing.T) { function TestAppleClientHandshakeRejectsServerNameMismatch (line 135) | func TestAppleClientHandshakeRejectsServerNameMismatch(t *testing.T) { function TestAppleClientHandshakeRecoversAfterFailure (line 157) | func TestAppleClientHandshakeRecoversAfterFailure(t *testing.T) { function TestAppleClientConfigCloneWithInlineCertificate (line 244) | func TestAppleClientConfigCloneWithInlineCertificate(t *testing.T) { function TestAppleClientReadBuffer (line 303) | func TestAppleClientReadBuffer(t *testing.T) { function TestAppleClientWriteBuffer (line 360) | func TestAppleClientWriteBuffer(t *testing.T) { function TestAppleClientCreateReadWaiter (line 410) | func TestAppleClientCreateReadWaiter(t *testing.T) { function TestAppleClientReadDeadline (line 475) | func TestAppleClientReadDeadline(t *testing.T) { function TestAppleClientSetDeadlineClearsPreExpiredSticky (line 524) | func TestAppleClientSetDeadlineClearsPreExpiredSticky(t *testing.T) { function startAppleTLSSilentServer (line 581) | func startAppleTLSSilentServer(t *testing.T, tlsConfig *stdtls.Config) (... function startAppleTLSIOTestServer (line 625) | func startAppleTLSIOTestServer(t testing.TB, tlsConfig *stdtls.Config, h... function newAppleTestCertificate (line 670) | func newAppleTestCertificate(t testing.TB, serverName string) (stdtls.Ce... function startAppleTLSTestServer (line 684) | func startAppleTLSTestServer(t *testing.T, tlsConfig *stdtls.Config) (<-... function newAppleTestClientConn (line 734) | func newAppleTestClientConn(t testing.TB, serverAddress string, options ... function dialAppleTestClientConn (line 749) | func dialAppleTestClientConn(t testing.TB, serverAddress string, clientC... FILE: common/tls/apple_client_stub.go function newAppleClient (line 13) | func newAppleClient(ctx context.Context, logger logger.ContextLogger, se... FILE: common/tls/client.go function parseTLSSpoofOptions (line 24) | func parseTLSSpoofOptions(serverName string, options option.OutboundTLSO... function applyTLSSpoof (line 41) | func applyTLSSpoof(conn net.Conn, spoof string, method tlsspoof.Method) ... function NewDialerFromOptions (line 48) | func NewDialerFromOptions(ctx context.Context, logger logger.ContextLogg... function NewClient (line 64) | func NewClient(ctx context.Context, logger logger.ContextLogger, serverA... type ClientOptions (line 73) | type ClientOptions struct function NewClientWithOptions (line 82) | func NewClientWithOptions(options ClientOptions) (Config, error) { function ClientHandshake (line 111) | func ClientHandshake(ctx context.Context, conn net.Conn, config Config) ... type Dialer (line 125) | type Dialer interface type defaultDialer (line 130) | type defaultDialer struct method DialContext (line 139) | func (d *defaultDialer) DialContext(ctx context.Context, network strin... method ListenPacket (line 146) | func (d *defaultDialer) ListenPacket(ctx context.Context, destination ... method DialTLSContext (line 150) | func (d *defaultDialer) DialTLSContext(ctx context.Context, destinatio... method dialContext (line 154) | func (d *defaultDialer) dialContext(ctx context.Context, destination M... method Upstream (line 174) | func (d *defaultDialer) Upstream() any { function NewDialer (line 135) | 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 102) | func (e *RealityClientConfig) ServerName() string { method SetServerName (line 106) | func (e *RealityClientConfig) SetServerName(serverName string) { method NextProtos (line 110) | func (e *RealityClientConfig) NextProtos() []string { method SetNextProtos (line 114) | func (e *RealityClientConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 118) | func (e *RealityClientConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 122) | func (e *RealityClientConfig) SetHandshakeTimeout(timeout time.Duratio... method STDConfig (line 126) | func (e *RealityClientConfig) STDConfig() (*STDConfig, error) { method Client (line 130) | func (e *RealityClientConfig) Client(conn net.Conn) (Conn, error) { method ClientHandshake (line 134) | func (e *RealityClientConfig) ClientHandshake(ctx context.Context, con... method Clone (line 268) | func (e *RealityClientConfig) Clone() Config { function NewRealityClient (line 54) | func NewRealityClient(ctx context.Context, logger logger.ContextLogger, ... function newRealityClient (line 58) | func newRealityClient(ctx context.Context, logger logger.ContextLogger, ... function realityClientFallback (line 244) | func realityClientFallback(ctx context.Context, uConn net.Conn, serverNa... type realityVerifier (line 277) | type realityVerifier struct method VerifyPeerCertificate (line 284) | func (c *realityVerifier) VerifyPeerCertificate(rawCerts [][]byte, ver... type realityClientConnWrapper (line 308) | type realityClientConnWrapper struct method ConnectionState (line 312) | func (c *realityClientConnWrapper) ConnectionState() tls.ConnectionSta... method Upstream (line 331) | func (c *realityClientConnWrapper) Upstream() any { method CloseWrite (line 337) | func (c *realityClientConnWrapper) CloseWrite() error { method ReaderReplaceable (line 341) | func (c *realityClientConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 345) | func (c *realityClientConnWrapper) WriterReplaceable() bool { FILE: common/tls/reality_server.go type RealityServerConfig (line 28) | type RealityServerConfig struct method ServerName (line 158) | func (c *RealityServerConfig) ServerName() string { method SetServerName (line 162) | func (c *RealityServerConfig) SetServerName(serverName string) { method NextProtos (line 166) | func (c *RealityServerConfig) NextProtos() []string { method SetNextProtos (line 170) | func (c *RealityServerConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 174) | func (c *RealityServerConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 178) | func (c *RealityServerConfig) SetHandshakeTimeout(timeout time.Duratio... method STDConfig (line 182) | func (c *RealityServerConfig) STDConfig() (*tls.Config, error) { method Client (line 186) | func (c *RealityServerConfig) Client(conn net.Conn) (Conn, error) { method Start (line 190) | func (c *RealityServerConfig) Start() error { method Close (line 194) | func (c *RealityServerConfig) Close() error { method Server (line 198) | func (c *RealityServerConfig) Server(conn net.Conn) (Conn, error) { method ServerHandshake (line 202) | func (c *RealityServerConfig) ServerHandshake(ctx context.Context, con... method Clone (line 210) | func (c *RealityServerConfig) Clone() Config { function NewRealityServer (line 33) | func NewRealityServer(ctx context.Context, logger log.ContextLogger, opt... type realityConnWrapper (line 219) | type realityConnWrapper struct method ConnectionState (line 223) | func (c *realityConnWrapper) ConnectionState() ConnectionState { method Upstream (line 242) | func (c *realityConnWrapper) Upstream() any { method CloseWrite (line 248) | func (c *realityConnWrapper) CloseWrite() error { method ReaderReplaceable (line 252) | func (c *realityConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 256) | 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 25) | type STDClientConfig struct method ServerName (line 39) | func (c *STDClientConfig) ServerName() string { method SetServerName (line 43) | func (c *STDClientConfig) SetServerName(serverName string) { method NextProtos (line 57) | func (c *STDClientConfig) NextProtos() []string { method SetNextProtos (line 61) | func (c *STDClientConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 65) | func (c *STDClientConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 69) | func (c *STDClientConfig) SetHandshakeTimeout(timeout time.Duration) { method STDConfig (line 73) | func (c *STDClientConfig) STDConfig() (*STDConfig, error) { method Client (line 77) | func (c *STDClientConfig) Client(conn net.Conn) (Conn, error) { method Clone (line 88) | func (c *STDClientConfig) Clone() Config { method ECHConfigList (line 106) | func (c *STDClientConfig) ECHConfigList() []byte { method SetECHConfigList (line 110) | func (c *STDClientConfig) SetECHConfigList(EncryptedClientHelloConfigL... function NewSTDClient (line 114) | func NewSTDClient(ctx context.Context, logger logger.ContextLogger, serv... function newSTDClient (line 118) | func newSTDClient(ctx context.Context, logger logger.ContextLogger, serv... function verifyConnection (line 269) | func verifyConnection(rootCAs *x509.CertPool, timeFunc func() time.Time,... function VerifyPublicKeySHA256 (line 278) | func VerifyPublicKeySHA256(knownHashValues [][]byte, rawCerts [][]byte) ... FILE: common/tls/std_server.go type managedCertificateProvider (line 27) | type managedCertificateProvider interface type sharedCertificateProvider (line 32) | type sharedCertificateProvider struct method Start (line 38) | func (p *sharedCertificateProvider) Start() error { method Close (line 47) | func (p *sharedCertificateProvider) Close() error { method GetCertificate (line 51) | func (p *sharedCertificateProvider) GetCertificate(hello *tls.ClientHe... method GetACMENextProtos (line 55) | func (p *sharedCertificateProvider) GetACMENextProtos() []string { type inlineCertificateProvider (line 59) | type inlineCertificateProvider struct method Start (line 63) | func (p *inlineCertificateProvider) Start() error { method Close (line 73) | func (p *inlineCertificateProvider) Close() error { method GetCertificate (line 77) | func (p *inlineCertificateProvider) GetCertificate(hello *tls.ClientHe... method GetACMENextProtos (line 81) | func (p *inlineCertificateProvider) GetACMENextProtos() []string { function getACMENextProtos (line 85) | func getACMENextProtos(provider adapter.CertificateProvider) []string { type STDServerConfig (line 92) | type STDServerConfig struct method ServerName (line 108) | func (c *STDServerConfig) ServerName() string { method SetServerName (line 114) | func (c *STDServerConfig) SetServerName(serverName string) { method NextProtos (line 122) | func (c *STDServerConfig) NextProtos() []string { method SetNextProtos (line 131) | func (c *STDServerConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 143) | func (c *STDServerConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 149) | func (c *STDServerConfig) SetHandshakeTimeout(timeout time.Duration) { method hasACMEALPN (line 155) | func (c *STDServerConfig) hasACMEALPN() bool { method STDConfig (line 167) | func (c *STDServerConfig) STDConfig() (*STDConfig, error) { method Client (line 171) | func (c *STDServerConfig) Client(conn net.Conn) (Conn, error) { method Server (line 175) | func (c *STDServerConfig) Server(conn net.Conn) (Conn, error) { method Clone (line 179) | func (c *STDServerConfig) Clone() Config { method Start (line 186) | func (c *STDServerConfig) Start() error { method startWatcher (line 222) | func (c *STDServerConfig) startWatcher() error { method certificateUpdated (line 259) | func (c *STDServerConfig) certificateUpdated(path string) error { method Close (line 323) | func (c *STDServerConfig) Close() error { function NewSTDServer (line 327) | func NewSTDServer(ctx context.Context, logger log.ContextLogger, options... function newCertificateProvider (line 529) | func newCertificateProvider(ctx context.Context, logger log.ContextLogge... FILE: common/tls/system_client.go type SystemTLSValidated (line 16) | type SystemTLSValidated struct function ValidateSystemTLSOptions (line 24) | func ValidateSystemTLSOptions(ctx context.Context, options option.Outbou... function resolveSystemAnchors (line 87) | func resolveSystemAnchors(ctx context.Context, options option.OutboundTL... function verifySystemTLSPeer (line 105) | func verifySystemTLSPeer(roots *x509.CertPool, serverName string, timeFu... FILE: common/tls/system_client_engine.go type systemTLSConfig (line 18) | type systemTLSConfig struct method ServerName (line 31) | func (c *systemTLSConfig) ServerName() string { method SetServerName (line 35) | func (c *systemTLSConfig) SetServerName(serverName string) { method NextProtos (line 39) | func (c *systemTLSConfig) NextProtos() []string { method SetNextProtos (line 43) | func (c *systemTLSConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 47) | func (c *systemTLSConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 51) | func (c *systemTLSConfig) SetHandshakeTimeout(timeout time.Duration) { method STDConfig (line 55) | func (c *systemTLSConfig) STDConfig() (*STDConfig, error) { method Client (line 59) | func (c *systemTLSConfig) Client(conn net.Conn) (Conn, error) { method clone (line 63) | func (c *systemTLSConfig) clone() systemTLSConfig { function newSystemTLSConfig (line 78) | func newSystemTLSConfig(ctx context.Context, serverAddress string, optio... 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 29) | type UTLSClientConfig struct method ServerName (line 44) | func (c *UTLSClientConfig) ServerName() string { method SetServerName (line 48) | func (c *UTLSClientConfig) SetServerName(serverName string) { method NextProtos (line 62) | func (c *UTLSClientConfig) NextProtos() []string { method SetNextProtos (line 66) | func (c *UTLSClientConfig) SetNextProtos(nextProto []string) { method HandshakeTimeout (line 73) | func (c *UTLSClientConfig) HandshakeTimeout() time.Duration { method SetHandshakeTimeout (line 77) | func (c *UTLSClientConfig) SetHandshakeTimeout(timeout time.Duration) { method STDConfig (line 81) | func (c *UTLSClientConfig) STDConfig() (*STDConfig, error) { method Client (line 85) | func (c *UTLSClientConfig) Client(conn net.Conn) (Conn, error) { method SetSessionIDGenerator (line 96) | func (c *UTLSClientConfig) SetSessionIDGenerator(generator func(client... method Clone (line 100) | func (c *UTLSClientConfig) Clone() Config { method ECHConfigList (line 119) | func (c *UTLSClientConfig) ECHConfigList() []byte { method SetECHConfigList (line 123) | func (c *UTLSClientConfig) SetECHConfigList(EncryptedClientHelloConfig... type utlsConnWrapper (line 127) | type utlsConnWrapper struct method ConnectionState (line 131) | func (c *utlsConnWrapper) ConnectionState() tls.ConnectionState { method Upstream (line 150) | func (c *utlsConnWrapper) Upstream() any { method ReaderReplaceable (line 154) | func (c *utlsConnWrapper) ReaderReplaceable() bool { method WriterReplaceable (line 158) | func (c *utlsConnWrapper) WriterReplaceable() bool { type utlsALPNWrapper (line 162) | type utlsALPNWrapper struct method HandshakeContext (line 167) | func (c *utlsALPNWrapper) HandshakeContext(ctx context.Context) error { function NewUTLSClient (line 187) | func NewUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function newUTLSClient (line 191) | func newUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function init (line 353) | func init() { function uTLSClientHelloID (line 371) | func uTLSClientHelloID(name string) (utls.ClientHelloID, error) { FILE: common/tls/utls_client_test.go function newUTLSClientConfigForGateTest (line 21) | func newUTLSClientConfigForGateTest(fragment, recordFragment bool) *UTLS... function TestUTLSClient_Client_NoFragment_DoesNotWrap (line 31) | func TestUTLSClient_Client_NoFragment_DoesNotWrap(t *testing.T) { function TestUTLSClient_Client_FragmentOnly_Wraps (line 42) | func TestUTLSClient_Client_FragmentOnly_Wraps(t *testing.T) { function TestUTLSClient_Client_RecordFragmentOnly_Wraps (line 53) | func TestUTLSClient_Client_RecordFragmentOnly_Wraps(t *testing.T) { function TestUTLSClient_Client_BothFragment_Wraps (line 64) | func TestUTLSClient_Client_BothFragment_Wraps(t *testing.T) { FILE: common/tls/utls_stub.go function NewUTLSClient (line 14) | func NewUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function newUTLSClient (line 18) | func newUTLSClient(ctx context.Context, logger logger.ContextLogger, ser... function NewRealityClient (line 22) | func NewRealityClient(ctx context.Context, logger logger.ContextLogger, ... function newRealityClient (line 26) | func newRealityClient(ctx context.Context, logger logger.ContextLogger, ... function NewRealityServer (line 30) | func NewRealityServer(ctx context.Context, logger log.Logger, options op... FILE: common/tls/windows_client.go constant windowsTLSEngineName (line 27) | windowsTLSEngineName = "Windows TLS engine" constant handshakeReadChunkSize (line 28) | handshakeReadChunkSize = 8192 constant readScratchSize (line 29) | readScratchSize = 16 * 1024 constant readWaitCiphertextChunkSize (line 30) | readWaitCiphertextChunkSize = 4096 type windowsClientConfig (line 33) | type windowsClientConfig struct method Clone (line 38) | func (c *windowsClientConfig) Clone() Config { method ClientHandshake (line 67) | func (c *windowsClientConfig) ClientHandshake(ctx context.Context, con... method verifyPeerCertificates (line 280) | func (c *windowsClientConfig) verifyPeerCertificates(peerCertificates ... function newWindowsClient (line 45) | func newWindowsClient(ctx context.Context, logger logger.ContextLogger, ... function driveHandshake (line 129) | func driveHandshake(ctx context.Context, conn net.Conn, client *schannel... function driveSteps (line 151) | func driveSteps( function installHandshakeCancel (line 200) | func installHandshakeCancel(ctx context.Context, conn net.Conn) func() { function handshakeIOError (line 219) | func handshakeIOError(ctx context.Context, err error, message string) er... function readTLSRaw (line 227) | func readTLSRaw(conn net.Conn, scratch []byte, requireMore bool) ([]byte... function isTimeoutError (line 241) | func isTimeoutError(err error) bool { function buildConnectionState (line 249) | func buildConnectionState(serverName string, client *schannel.ClientCont... type windowsTLSConn (line 294) | type windowsTLSConn struct method Read (line 334) | func (c *windowsTLSConn) Read(p []byte) (int, error) { method ReadBuffer (line 346) | func (c *windowsTLSConn) ReadBuffer(buffer *buf.Buffer) error { method readIntoLocked (line 361) | func (c *windowsTLSConn) readIntoLocked(p []byte, appendCipher windows... method readPlaintextLocked (line 373) | func (c *windowsTLSConn) readPlaintextLocked(appendCipher windowsTLSAp... method drivePostHandshake (line 431) | func (c *windowsTLSConn) drivePostHandshake(readRaw windowsTLSReadRawF... method writePostHandshakeReplyLocked (line 474) | func (c *windowsTLSConn) writePostHandshakeReplyLocked(data []byte) er... method decrypt (line 487) | func (c *windowsTLSConn) decrypt(input []byte) (schannel.DecryptResult... method encrypt (line 496) | func (c *windowsTLSConn) encrypt(plaintext []byte) ([]byte, error) { method readRaw (line 508) | func (c *windowsTLSConn) readRaw(requireMore bool) ([]byte, error) { method appendRaw (line 515) | func (c *windowsTLSConn) appendRaw(requireMore bool) error { method Write (line 524) | func (c *windowsTLSConn) Write(p []byte) (int, error) { method WriteBuffer (line 568) | func (c *windowsTLSConn) WriteBuffer(buffer *buf.Buffer) error { method CreateReadWaiter (line 574) | func (c *windowsTLSConn) CreateReadWaiter() (N.ReadWaiter, bool) { method Close (line 585) | func (c *windowsTLSConn) Close() error { method LocalAddr (line 603) | func (c *windowsTLSConn) LocalAddr() net.Addr { method RemoteAddr (line 607) | func (c *windowsTLSConn) RemoteAddr() net.Addr { method SetDeadline (line 611) | func (c *windowsTLSConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 623) | func (c *windowsTLSConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 634) | func (c *windowsTLSConn) SetWriteDeadline(t time.Time) error { method NetConn (line 645) | func (c *windowsTLSConn) NetConn() net.Conn { method HandshakeContext (line 649) | func (c *windowsTLSConn) HandshakeContext(ctx context.Context) error { method ConnectionState (line 653) | func (c *windowsTLSConn) ConnectionState() ConnectionState { method applyReadDeadline (line 657) | func (c *windowsTLSConn) applyReadDeadline() (func(), error) { method applyWriteDeadline (line 664) | func (c *windowsTLSConn) applyWriteDeadline() (func(), error) { method applyDeadline (line 671) | func (c *windowsTLSConn) applyDeadline(deadline time.Time, set func(ti... method beginWrite (line 685) | func (c *windowsTLSConn) beginWrite() error { method finishWrite (line 710) | func (c *windowsTLSConn) finishWrite() { method beginPostHandshakeWrite (line 719) | func (c *windowsTLSConn) beginPostHandshakeWrite() error { method finishPostHandshakeWrite (line 748) | func (c *windowsTLSConn) finishPostHandshakeWrite() { method writeCondition (line 758) | func (c *windowsTLSConn) writeCondition() *sync.Cond { method isClosed (line 765) | func (c *windowsTLSConn) isClosed() bool { type windowsTLSAppendCipherFunc (line 330) | type windowsTLSAppendCipherFunc type windowsTLSReadRawFunc (line 331) | type windowsTLSReadRawFunc type windowsTLSReadWaiter (line 769) | type windowsTLSReadWaiter struct method InitializeReadWaiter (line 777) | func (w *windowsTLSReadWaiter) InitializeReadWaiter(options N.ReadWait... method WaitReadBuffer (line 785) | func (w *windowsTLSReadWaiter) WaitReadBuffer() (*buf.Buffer, error) { method appendRaw (line 813) | func (w *windowsTLSReadWaiter) appendRaw(requireMore bool) error { method readRaw (line 823) | func (w *windowsTLSReadWaiter) readRaw(requireMore bool) ([]byte, erro... method readRawBuffer (line 833) | func (w *windowsTLSReadWaiter) readRawBuffer(requireMore bool) (*buf.B... FILE: common/tls/windows_client_stub.go function newWindowsClient (line 13) | func newWindowsClient(ctx context.Context, logger logger.ContextLogger, ... FILE: common/tls/windows_client_test.go constant windowsTLSTestTimeout (line 30) | windowsTLSTestTimeout = 5 * time.Second function newTestWindowsTLSConn (line 37) | func newTestWindowsTLSConn(rawConn net.Conn) *windowsTLSConn { method writePostHandshakeReply (line 46) | func (c *windowsTLSConn) writePostHandshakeReply(data []byte) error { type windowsTLSServerResult (line 56) | type windowsTLSServerResult struct type windowsTestDeadlineConn (line 61) | type windowsTestDeadlineConn struct method Read (line 87) | func (c *windowsTestDeadlineConn) Read(_ []byte) (int, error) { method Write (line 109) | func (c *windowsTestDeadlineConn) Write(_ []byte) (int, error) { method Close (line 131) | func (c *windowsTestDeadlineConn) Close() error { method LocalAddr (line 135) | func (c *windowsTestDeadlineConn) LocalAddr() net.Addr { method RemoteAddr (line 139) | func (c *windowsTestDeadlineConn) RemoteAddr() net.Addr { method SetDeadline (line 143) | func (c *windowsTestDeadlineConn) SetDeadline(t time.Time) error { method SetReadDeadline (line 153) | func (c *windowsTestDeadlineConn) SetReadDeadline(t time.Time) error { method SetWriteDeadline (line 161) | func (c *windowsTestDeadlineConn) SetWriteDeadline(t time.Time) error { method recordedWriteDeadlines (line 169) | func (c *windowsTestDeadlineConn) recordedWriteDeadlines() []time.Time { method recordedReadDeadlines (line 175) | func (c *windowsTestDeadlineConn) recordedReadDeadlines() []time.Time { type windowsTestWriteGateConn (line 73) | type windowsTestWriteGateConn struct method Read (line 181) | func (c *windowsTestWriteGateConn) Read(_ []byte) (int, error) { method Write (line 185) | func (c *windowsTestWriteGateConn) Write(p []byte) (int, error) { method Close (line 191) | func (c *windowsTestWriteGateConn) Close() error { method LocalAddr (line 195) | func (c *windowsTestWriteGateConn) LocalAddr() net.Addr { method RemoteAddr (line 199) | func (c *windowsTestWriteGateConn) RemoteAddr() net.Addr { method SetDeadline (line 203) | func (c *windowsTestWriteGateConn) SetDeadline(time.Time) error { method SetReadDeadline (line 207) | func (c *windowsTestWriteGateConn) SetReadDeadline(time.Time) error { method SetWriteDeadline (line 211) | func (c *windowsTestWriteGateConn) SetWriteDeadline(time.Time) error { type windowsTestIOConn (line 78) | type windowsTestIOConn struct method Read (line 215) | func (c *windowsTestIOConn) Read(_ []byte) (int, error) { method Write (line 219) | func (c *windowsTestIOConn) Write(p []byte) (int, error) { method Close (line 233) | func (c *windowsTestIOConn) Close() error { method LocalAddr (line 240) | func (c *windowsTestIOConn) LocalAddr() net.Addr { method RemoteAddr (line 244) | func (c *windowsTestIOConn) RemoteAddr() net.Addr { method SetDeadline (line 248) | func (c *windowsTestIOConn) SetDeadline(time.Time) error { method SetReadDeadline (line 252) | func (c *windowsTestIOConn) SetReadDeadline(time.Time) error { method SetWriteDeadline (line 256) | func (c *windowsTestIOConn) SetWriteDeadline(time.Time) error { method isClosed (line 260) | func (c *windowsTestIOConn) isClosed() bool { method totalWriteCalls (line 266) | func (c *windowsTestIOConn) totalWriteCalls() int { type windowsTestAddr (line 272) | type windowsTestAddr method Network (line 274) | func (a windowsTestAddr) Network() string { method String (line 278) | func (a windowsTestAddr) String() string { type windowsOpaqueConn (line 282) | type windowsOpaqueConn struct function TestWindowsClientHandshakeTLS12 (line 286) | func TestWindowsClientHandshakeTLS12(t *testing.T) { function TestWindowsClientHandshakeWrappedConn (line 335) | func TestWindowsClientHandshakeWrappedConn(t *testing.T) { function TestWindowsClientHandshakeTLS13 (line 380) | func TestWindowsClientHandshakeTLS13(t *testing.T) { function TestWindowsClientHandshakeALPNNoOverlap (line 419) | func TestWindowsClientHandshakeALPNNoOverlap(t *testing.T) { function TestWindowsClientHandshakeMultipleALPN (line 445) | func TestWindowsClientHandshakeMultipleALPN(t *testing.T) { function TestWindowsClientHandshakeRejectsVersionMismatch (line 474) | func TestWindowsClientHandshakeRejectsVersionMismatch(t *testing.T) { function TestWindowsClientHandshakeRejectsServerNameMismatch (line 500) | func TestWindowsClientHandshakeRejectsServerNameMismatch(t *testing.T) { function TestWindowsClientHandshakeRejectsUntrustedCA (line 518) | func TestWindowsClientHandshakeRejectsUntrustedCA(t *testing.T) { function TestWindowsClientHandshakeInsecureSkipsValidation (line 535) | func TestWindowsClientHandshakeInsecureSkipsValidation(t *testing.T) { function TestWindowsClientHandshakeHonorsPublicKeyPinSuccess (line 558) | func TestWindowsClientHandshakeHonorsPublicKeyPinSuccess(t *testing.T) { function TestWindowsClientHandshakeHonorsPublicKeyPinFailure (line 577) | func TestWindowsClientHandshakeHonorsPublicKeyPinFailure(t *testing.T) { function TestWindowsClientHandshakeContextCancellation (line 596) | func TestWindowsClientHandshakeContextCancellation(t *testing.T) { function TestWindowsClientHandshakeTimeout (line 670) | func TestWindowsClientHandshakeTimeout(t *testing.T) { function TestWindowsClientRoundtrip (line 724) | func TestWindowsClientRoundtrip(t *testing.T) { function TestWindowsClientRoundtripTLS13 (line 745) | func TestWindowsClientRoundtripTLS13(t *testing.T) { function TestWindowsClientReadBuffer (line 767) | func TestWindowsClientReadBuffer(t *testing.T) { function TestWindowsClientWriteBuffer (line 796) | func TestWindowsClientWriteBuffer(t *testing.T) { function TestWindowsClientCreateReadWaiter (line 828) | func TestWindowsClientCreateReadWaiter(t *testing.T) { function TestWindowsClientCreateReadWaiterFallback (line 862) | func TestWindowsClientCreateReadWaiterFallback(t *testing.T) { function TestWindowsClientTLS13PostHandshakeConcurrentWrite (line 870) | func TestWindowsClientTLS13PostHandshakeConcurrentWrite(t *testing.T) { function TestWindowsClientLargeMessage (line 976) | func TestWindowsClientLargeMessage(t *testing.T) { function TestWindowsClientFullDuplexLargePayload (line 1009) | func TestWindowsClientFullDuplexLargePayload(t *testing.T) { function TestWindowsClientMultipleRoundtrips (line 1109) | func TestWindowsClientMultipleRoundtrips(t *testing.T) { function TestWindowsClientConcurrentReadWrite (line 1133) | func TestWindowsClientConcurrentReadWrite(t *testing.T) { function TestWindowsClientServerCloseReturnsEOF (line 1185) | func TestWindowsClientServerCloseReturnsEOF(t *testing.T) { function TestWindowsClientCloseUnblocksRead (line 1231) | func TestWindowsClientCloseUnblocksRead(t *testing.T) { function TestWindowsClientReadAfterCloseReturnsError (line 1270) | func TestWindowsClientReadAfterCloseReturnsError(t *testing.T) { function TestWindowsClientReadAfterCloseDoesNotServeBufferedPlaintext (line 1282) | func TestWindowsClientReadAfterCloseDoesNotServeBufferedPlaintext(t *tes... function TestWindowsClientWriteAfterCloseReturnsError (line 1360) | func TestWindowsClientWriteAfterCloseReturnsError(t *testing.T) { function TestWindowsClientReadDeadline (line 1371) | func TestWindowsClientReadDeadline(t *testing.T) { function TestWindowsClientSetReadDeadlinePreExpired (line 1414) | func TestWindowsClientSetReadDeadlinePreExpired(t *testing.T) { function TestWindowsClientSetDeadlinePropagatesToRawConn (line 1466) | func TestWindowsClientSetDeadlinePropagatesToRawConn(t *testing.T) { function TestWindowsClientSetReadDeadlineCancelsBlockedRead (line 1493) | func TestWindowsClientSetReadDeadlineCancelsBlockedRead(t *testing.T) { function TestWindowsClientSetWriteDeadlineCancelsBlockedWrite (line 1536) | func TestWindowsClientSetWriteDeadlineCancelsBlockedWrite(t *testing.T) { function TestWindowsClientPostHandshakeReplyUsesReadDeadline (line 1602) | func TestWindowsClientPostHandshakeReplyUsesReadDeadline(t *testing.T) { function TestWindowsClientPostHandshakeReplyPreExpiredReadDeadline (line 1634) | func TestWindowsClientPostHandshakeReplyPreExpiredReadDeadline(t *testin... function TestDriveStepsPreservesBufferedHandshakeBytes (line 1659) | func TestDriveStepsPreservesBufferedHandshakeBytes(t *testing.T) { function TestWindowsTLSRawReadEOFAtRecordBoundary (line 1703) | func TestWindowsTLSRawReadEOFAtRecordBoundary(t *testing.T) { function TestWindowsTLSRawReadEOFWithPendingRecord (line 1711) | func TestWindowsTLSRawReadEOFWithPendingRecord(t *testing.T) { function TestWindowsClientPostHandshakeReplyWaitsForWriteAccess (line 1719) | func TestWindowsClientPostHandshakeReplyWaitsForWriteAccess(t *testing.T) { function TestWindowsClientPostHandshakeWritePreemptsNewWrite (line 1753) | func TestWindowsClientPostHandshakeWritePreemptsNewWrite(t *testing.T) { function TestWindowsClientPostHandshakeReplyErrorClosesConn (line 1817) | func TestWindowsClientPostHandshakeReplyErrorClosesConn(t *testing.T) { function TestWindowsClientWriteErrorClosesConn (line 1836) | func TestWindowsClientWriteErrorClosesConn(t *testing.T) { function TestWindowsClientConnectionStateFields (line 1892) | func TestWindowsClientConnectionStateFields(t *testing.T) { function TestWindowsClientNetConnReturnsUnderlying (line 1940) | func TestWindowsClientNetConnReturnsUnderlying(t *testing.T) { function TestNewWindowsClientMissingServerName (line 1951) | func TestNewWindowsClientMissingServerName(t *testing.T) { function TestNewWindowsClientInsecureAllowsMissingServerName (line 1965) | func TestNewWindowsClientInsecureAllowsMissingServerName(t *testing.T) { function TestWindowsClientConfigSTDConfigReturnsError (line 1980) | func TestWindowsClientConfigSTDConfigReturnsError(t *testing.T) { function TestWindowsClientConfigClientReturnsErrInvalid (line 2002) | func TestWindowsClientConfigClientReturnsErrInvalid(t *testing.T) { function TestWindowsClientConfigClone (line 2021) | func TestWindowsClientConfigClone(t *testing.T) { function TestValidateWindowsTLSOptionsRejections (line 2049) | func TestValidateWindowsTLSOptionsRejections(t *testing.T) { function startWindowsTLSSilentServer (line 2126) | func startWindowsTLSSilentServer(t *testing.T, tlsConfig *stdtls.Config)... function newWindowsTestCertificate (line 2174) | func newWindowsTestCertificate(t *testing.T, serverName string) (stdtls.... function generateWindowsTestCertificate (line 2182) | func generateWindowsTestCertificate(serverName string) (stdtls.Certifica... function publicKeyPin (line 2199) | func publicKeyPin(t *testing.T, cert *x509.Certificate) []byte { function startWindowsTLSTestServer (line 2209) | func startWindowsTLSTestServer(t *testing.T, tlsConfig *stdtls.Config) (... function newWindowsTestClientConn (line 2257) | func newWindowsTestClientConn(t *testing.T, serverAddress string, option... function newWindowsTestEngineConn (line 2286) | func newWindowsTestEngineConn(t *testing.T, serverAddress string, option... function startWindowsPayloadServer (line 2326) | func startWindowsPayloadServer(t *testing.T, minVersion uint16, payload ... function startWindowsEchoServer (line 2381) | func startWindowsEchoServer(t *testing.T, minVersion uint16) (Conn, <-ch... function startWindowsEchoEngineServer (line 2444) | func startWindowsEchoEngineServer(t *testing.T, minVersion uint16) (*win... 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 32) | func IndexTLSServerName(payload []byte) *MyServerName { function indexTLSServerNameFromHandshake (line 49) | func indexTLSServerNameFromHandshake(handshake []byte) *MyServerName { function indexTLSServerNameFromExtensions (line 91) | 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/tlsspoof/client_hello.go function buildFakeClientHello (line 18) | func buildFakeClientHello(sni string) ([]byte, error) { FILE: common/tlsspoof/endpoints.go function tcpEndpoints (line 15) | func tcpEndpoints(conn net.Conn) (*net.TCPConn, netip.AddrPort, netip.Ad... FILE: common/tlsspoof/integration_darwin_test.go constant loopbackInterface (line 5) | loopbackInterface = "lo0" FILE: common/tlsspoof/integration_linux_test.go constant loopbackInterface (line 5) | loopbackInterface = "lo" FILE: common/tlsspoof/integration_test.go function requireRoot (line 21) | func requireRoot(t *testing.T) { function tcpdumpObserver (line 28) | func tcpdumpObserver(t *testing.T, iface string, port uint16, needle str... function tcpdumpObserverMulti (line 37) | func tcpdumpObserverMulti(t *testing.T, iface string, port uint16, needl... function dialLocalEchoServer (line 107) | func dialLocalEchoServer(t *testing.T) (client net.Conn, serverPort uint... function dialLocalEchoServerIPv6 (line 111) | func dialLocalEchoServerIPv6(t *testing.T) (client net.Conn, serverPort ... function dialLocalEchoServerFamily (line 115) | func dialLocalEchoServerFamily(t *testing.T, network, address string) (c... FILE: common/tlsspoof/integration_tls_test.go function generateSelfSignedCert (line 23) | func generateSelfSignedCert(t *testing.T, commonName string, sans ...str... function TestIntegrationConn_RealTLSHandshake (line 54) | func TestIntegrationConn_RealTLSHandshake(t *testing.T) { FILE: common/tlsspoof/integration_unix_test.go function TestIntegrationSpoofer (line 16) | func TestIntegrationSpoofer(t *testing.T) { function TestIntegrationConn_InjectsThenForwardsRealCH (line 59) | func TestIntegrationConn_InjectsThenForwardsRealCH(t *testing.T) { function TestIntegrationConn_IPv6_InjectsThenForwardsRealCH (line 64) | func TestIntegrationConn_IPv6_InjectsThenForwardsRealCH(t *testing.T) { function TestIntegrationConn_FakeAndRealHaveDistinctSNIs (line 73) | func TestIntegrationConn_FakeAndRealHaveDistinctSNIs(t *testing.T) { function TestIntegrationConn_IPv6_FakeAndRealHaveDistinctSNIs (line 78) | func TestIntegrationConn_IPv6_FakeAndRealHaveDistinctSNIs(t *testing.T) { function runFakeAndRealHaveDistinctSNIs (line 83) | func runFakeAndRealHaveDistinctSNIs(t *testing.T, network, address, fake... function runInjectsThenForwardsRealCH (line 139) | func runInjectsThenForwardsRealCH(t *testing.T, network, address string) { FILE: common/tlsspoof/integration_windows_test.go function newSpoofer (line 15) | func newSpoofer(t *testing.T, conn net.Conn, method Method) rawSpoofer { function TestIntegrationSpooferOpenClose (line 25) | func TestIntegrationSpooferOpenClose(t *testing.T) { function TestIntegrationConnInjectsThenForwardsRealCH (line 53) | func TestIntegrationConnInjectsThenForwardsRealCH(t *testing.T) { function TestIntegrationSpooferInjectThenWrite (line 97) | func TestIntegrationSpooferInjectThenWrite(t *testing.T) { FILE: common/tlsspoof/packet.go constant defaultTTL (line 15) | defaultTTL uint8 = 64 constant defaultWindowSize (line 16) | defaultWindowSize uint16 = 0xFFFF constant tcpHeaderLen (line 17) | tcpHeaderLen = header.TCPMinimumSize constant tcpOptionMD5Signature (line 19) | tcpOptionMD5Signature = 19 constant tcpOptionMD5SignatureLength (line 20) | tcpOptionMD5SignatureLength = 18 constant tcpTimestampBackdate (line 21) | tcpTimestampBackdate = 3600000 type spoofPacketInfo (line 24) | type spoofPacketInfo struct function buildTCPSegment (line 31) | func buildTCPSegment( function encodeTCP (line 74) | func encodeTCP(frame []byte, ipHeaderLen int, src, dst netip.AddrPort, p... function buildSpoofFrame (line 91) | func buildSpoofFrame(method Method, src, dst netip.AddrPort, sendNext, r... function resolveSpoofPacketInfo (line 99) | func resolveSpoofPacketInfo(method Method, sendNext, receiveNext, timest... function buildMD5SignatureOptions (line 118) | func buildMD5SignatureOptions() []byte { function buildWrongTimestampOptions (line 125) | func buildWrongTimestampOptions(timestamp uint32, tcpOptions []byte) []b... function rewriteTCPOptionTimestamp (line 143) | func rewriteTCPOptionTimestamp(tcpOptions []byte, timestamp uint32) bool { function applyTCPChecksum (line 168) | func applyTCPChecksum(tcp header.TCP, srcAddr, dstAddr netip.Addr, paylo... FILE: common/tlsspoof/packet_darwin.go function buildSpoofTCPSegment (line 7) | func buildSpoofTCPSegment(method Method, src, dst netip.AddrPort, sendNe... FILE: common/tlsspoof/raw_darwin.go constant PlatformSupported (line 18) | PlatformSupported = true constant darwinXinpgenSize (line 23) | darwinXinpgenSize = 24 constant darwinXsocketOffset (line 24) | darwinXsocketOffset = 104 constant darwinXinpcbForeignPort (line 25) | darwinXinpcbForeignPort = 16 constant darwinXinpcbLocalPort (line 26) | darwinXinpcbLocalPort = 18 constant darwinXinpcbVFlag (line 27) | darwinXinpcbVFlag = 44 constant darwinXinpcbForeignAddr (line 28) | darwinXinpcbForeignAddr = 48 constant darwinXinpcbLocalAddr (line 29) | darwinXinpcbLocalAddr = 64 constant darwinXinpcbIPv4Offset (line 30) | darwinXinpcbIPv4Offset = 12 constant darwinTCPExtraSize (line 32) | darwinTCPExtraSize = 208 constant darwinXtcpcbSndNxtOffset (line 34) | darwinXtcpcbSndNxtOffset = 56 constant darwinXtcpcbRcvNxtOffset (line 35) | darwinXtcpcbRcvNxtOffset = 80 type darwinSpoofer (line 60) | type darwinSpoofer struct method Inject (line 163) | func (s *darwinSpoofer) Inject(payload []byte) error { method Close (line 192) | func (s *darwinSpoofer) Close() error { function newRawSpoofer (line 70) | func newRawSpoofer(conn net.Conn, method Method) (rawSpoofer, error) { function readDarwinTCPSequence (line 101) | func readDarwinTCPSequence(src, dst netip.AddrPort) (uint32, uint32, err... function openDarwinRawSocket (line 141) | func openDarwinRawSocket(src, dst netip.AddrPort) (int, unix.Sockaddr, e... FILE: common/tlsspoof/raw_linux.go constant PlatformSupported (line 13) | PlatformSupported = true constant tcpRecvQueue (line 18) | tcpRecvQueue = 1 constant tcpSendQueue (line 19) | tcpSendQueue = 2 type linuxSpoofer (line 22) | type linuxSpoofer struct method loadSequenceNumbers (line 85) | func (s *linuxSpoofer) loadSequenceNumbers(tcpConn *net.TCPConn) error { method Inject (line 130) | func (s *linuxSpoofer) Inject(payload []byte) error { method Close (line 142) | func (s *linuxSpoofer) Close() error { function newRawSpoofer (line 33) | func newRawSpoofer(conn net.Conn, method Method) (rawSpoofer, error) { function openLinuxRawSocket (line 57) | func openLinuxRawSocket(dst netip.AddrPort) (int, unix.Sockaddr, error) { FILE: common/tlsspoof/raw_stub.go constant PlatformSupported (line 11) | PlatformSupported = false function newRawSpoofer (line 13) | func newRawSpoofer(conn net.Conn, method Method) (rawSpoofer, error) { FILE: common/tlsspoof/raw_unix.go function openIPv4RawSocket (line 13) | func openIPv4RawSocket(dst netip.AddrPort) (int, unix.Sockaddr, error) { FILE: common/tlsspoof/raw_windows.go constant PlatformSupported (line 21) | PlatformSupported = true constant closeGracePeriod (line 27) | closeGracePeriod = 2 * time.Second type windowsSpoofer (line 34) | type windowsSpoofer struct method Inject (line 70) | func (s *windowsSpoofer) Inject(payload []byte) error { method Close (line 82) | func (s *windowsSpoofer) Close() error { method recordErr (line 99) | func (s *windowsSpoofer) recordErr(err error) { s.runErr.Store(&err) } method run (line 101) | func (s *windowsSpoofer) run() { function newRawSpoofer (line 45) | func newRawSpoofer(conn net.Conn, method Method) (rawSpoofer, error) { function parseTCPPacket (line 185) | func parseTCPPacket(pkt []byte, isV6 bool) (seq, ack uint32, options []b... FILE: common/tlsspoof/spoof.go type Method (line 9) | type Method method String (line 61) | func (m Method) String() string { constant MethodWrongSequence (line 12) | MethodWrongSequence Method = iota constant MethodWrongChecksum (line 13) | MethodWrongChecksum constant MethodWrongAcknowledgment (line 14) | MethodWrongAcknowledgment constant MethodWrongMD5Sig (line 15) | MethodWrongMD5Sig constant MethodWrongTimestamp (line 16) | MethodWrongTimestamp constant MethodNameWrongSequence (line 20) | MethodNameWrongSequence = "wrong-sequence" constant MethodNameWrongChecksum (line 21) | MethodNameWrongChecksum = "wrong-checksum" constant MethodNameWrongAcknowledgment (line 22) | MethodNameWrongAcknowledgment = "wrong-ack" constant MethodNameWrongMD5Sig (line 23) | MethodNameWrongMD5Sig = "wrong-md5" constant MethodNameWrongTimestamp (line 24) | MethodNameWrongTimestamp = "wrong-timestamp" function ParseOptions (line 27) | func ParseOptions(spoof, method string) (string, Method, error) { function ParseMethod (line 44) | func ParseMethod(s string) (Method, error) { type rawSpoofer (line 78) | type rawSpoofer interface type Conn (line 83) | type Conn struct method Write (line 115) | func (c *Conn) Write(b []byte) (n int, err error) { method Close (line 133) | func (c *Conn) Close() error { method ReaderReplaceable (line 139) | func (c *Conn) ReaderReplaceable() bool { method WriterReplaceable (line 143) | func (c *Conn) WriterReplaceable() bool { method Upstream (line 147) | func (c *Conn) Upstream() any { function NewConn (line 90) | func NewConn(conn net.Conn, method Method, fakeSNI string) (*Conn, error) { function newConn (line 103) | func newConn(conn net.Conn, spoofer rawSpoofer, fakeSNI string) (*Conn, ... FILE: common/tlsspoof/testdata_test.go constant realClientHello (line 6) | realClientHello = "16030105f8010005f403036e35de7389a679c54029cf452611f22... 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: common/windivert/address_test.go function TestAddressSize (line 10) | func TestAddressSize(t *testing.T) { function TestAddressIPv6 (line 15) | func TestAddressIPv6(t *testing.T) { function TestAddressSetIPChecksum (line 23) | func TestAddressSetIPChecksum(t *testing.T) { function TestAddressSetTCPChecksum (line 32) | func TestAddressSetTCPChecksum(t *testing.T) { function TestAddressFlagBitsIndependent (line 42) | func TestAddressFlagBitsIndependent(t *testing.T) { FILE: common/windivert/assets_386.go function assetFiles (line 10) | func assetFiles() []assetFile { function driverSysName (line 14) | func driverSysName() string { return "WinDivert32.sys" } FILE: common/windivert/assets_amd64.go function assetFiles (line 10) | func assetFiles() []assetFile { function driverSysName (line 14) | func driverSysName() string { return "WinDivert64.sys" } FILE: common/windivert/assets_unsupported.go function assetFiles (line 5) | func assetFiles() []assetFile { return nil } function driverSysName (line 7) | func driverSysName() string { return "" } FILE: common/windivert/driver_windows.go constant driverServiceName (line 19) | driverServiceName = "WinDivert" constant driverDeviceName (line 20) | driverDeviceName = `\\.\WinDivert` function ensureDriver (line 33) | func ensureDriver() error { function installDriver (line 40) | func installDriver() error { function wrapDriverInstallError (line 134) | func wrapDriverInstallError(err error) error { type assetFile (line 141) | type assetFile struct function ensureExtracted (line 154) | func ensureExtracted() (string, error) { function extractImpl (line 161) | func extractImpl() (string, error) { function ensureAsset (line 189) | func ensureAsset(dir string, asset assetFile) error { FILE: common/windivert/filter.go constant filterInstBytes (line 20) | filterInstBytes = 24 constant filterMaxInsts (line 21) | filterMaxInsts = 256 constant fieldZero (line 23) | fieldZero = 0 constant fieldOutbound (line 24) | fieldOutbound = 2 constant fieldIP (line 25) | fieldIP = 5 constant fieldIPv6 (line 26) | fieldIPv6 = 6 constant fieldTCP (line 27) | fieldTCP = 8 constant fieldIPSrcAddr (line 28) | fieldIPSrcAddr = 21 constant fieldIPDstAddr (line 29) | fieldIPDstAddr = 22 constant fieldIPv6SrcAddr (line 30) | fieldIPv6SrcAddr = 28 constant fieldIPv6DstAddr (line 31) | fieldIPv6DstAddr = 29 constant fieldTCPSrcPort (line 32) | fieldTCPSrcPort = 38 constant fieldTCPDstPort (line 33) | fieldTCPDstPort = 39 constant testEQ (line 35) | testEQ = 0 constant resultAccept (line 37) | resultAccept uint16 = 0x7FFE constant resultReject (line 38) | resultReject uint16 = 0x7FFF constant filterFlagOutbound (line 45) | filterFlagOutbound uint64 = 0x0020 constant filterFlagIP (line 46) | filterFlagIP uint64 = 0x0040 constant filterFlagIPv6 (line 47) | filterFlagIPv6 uint64 = 0x0080 type filterInst (line 50) | type filterInst struct type Filter (line 63) | type Filter struct method add (line 107) | func (f *Filter) add(field uint16, test uint8, arg [4]uint32) { method encode (line 140) | func (f *Filter) encode() ([]byte, uint64, error) { function reject (line 70) | func reject() *Filter { function OutboundTCP (line 76) | func OutboundTCP(src, dst netip.AddrPort) (*Filter, error) { function argUint32 (line 111) | func argUint32(v uint32) [4]uint32 { return [4]uint32{v, 0, 0, 0} } function argIPv4 (line 118) | func argIPv4(addr netip.Addr) [4]uint32 { function argIPv6 (line 128) | func argIPv6(addr netip.Addr) [4]uint32 { function encodeInst (line 167) | func encodeInst(inst filterInst) []byte { FILE: common/windivert/filter_test.go function TestRejectFilter (line 9) | func TestRejectFilter(t *testing.T) { function TestOutboundTCPFilterIPv4 (line 33) | func TestOutboundTCPFilterIPv4(t *testing.T) { function TestOutboundTCPFilterIPv6 (line 72) | func TestOutboundTCPFilterIPv6(t *testing.T) { function TestOutboundTCPFilterMixedFamily (line 99) | func TestOutboundTCPFilterMixedFamily(t *testing.T) { function checkArg1 (line 108) | func checkArg1(t *testing.T, raw []byte, idx int, arg1 uint32) { function checkInst (line 116) | func checkInst(t *testing.T, raw []byte, idx int, field uint16, test uin... FILE: common/windivert/handle_windows.go type Handle (line 28) | type Handle struct method initialize (line 123) | func (h *Handle) initialize(layer Layer, priority int16, flags Flag) e... method startup (line 148) | func (h *Handle) startup(filterBin []byte, filterFlags uint64) error { method Recv (line 158) | func (h *Handle) Recv(buf []byte) (int, Address, error) { method Send (line 176) | func (h *Handle) Send(packet []byte, addr *Address) (int, error) { method Close (line 194) | func (h *Handle) Close() error { function Open (line 39) | func Open(filter *Filter, layer Layer, priority int16, flags Flag) (*Han... function openDevice (line 95) | func openDevice() (windows.Handle, error) { function validateOpenArgs (line 106) | func validateOpenArgs(layer Layer, priority int16, flags Flag) error { constant fileDeviceNetwork (line 220) | fileDeviceNetwork uint32 = 0x12 constant accessReadWrite (line 221) | accessReadWrite uint32 = 3 constant accessRead (line 222) | accessRead uint32 = 1 constant methodInDirect (line 224) | methodInDirect uint32 = 1 constant methodOutDirect (line 225) | methodOutDirect uint32 = 2 function ctlCode (line 228) | func ctlCode(deviceType, access, function, method uint32) uint32 { constant magicDLL (line 242) | magicDLL uint64 = 0x4C4C447669645724 constant magicSYS (line 243) | magicSYS uint64 = 0x5359537669645723 constant versionMajor (line 247) | versionMajor uint32 = 2 constant versionMinor (line 248) | versionMinor uint32 = 2 constant ioctlSize (line 252) | ioctlSize = 16 constant versionStructSize (line 256) | versionStructSize = 64 function doIoctl (line 263) | func doIoctl(handle windows.Handle, code uint32, in []byte, out []byte, ... function buildIoctlInitialize (line 292) | func buildIoctlInitialize(layer Layer, priority int16, flags Flag) [ioct... function buildIoctlStartup (line 302) | func buildIoctlStartup(filterFlags uint64) [ioctlSize]byte { function buildIoctlRecv (line 312) | func buildIoctlRecv(addr *Address) [ioctlSize]byte { function buildIoctlSend (line 319) | func buildIoctlSend(addr *Address) [ioctlSize]byte { FILE: common/windivert/handle_windows_test.go function TestCtlCodeMatchesDDK (line 16) | func TestCtlCodeMatchesDDK(t *testing.T) { function TestIoctlCodesMatchUpstream (line 26) | func TestIoctlCodesMatchUpstream(t *testing.T) { function TestBuildIoctlInitialize (line 34) | func TestBuildIoctlInitialize(t *testing.T) { function TestBuildIoctlInitializePriorityRange (line 43) | func TestBuildIoctlInitializePriorityRange(t *testing.T) { function TestBuildIoctlStartup (line 53) | func TestBuildIoctlStartup(t *testing.T) { function TestBuildIoctlRecvEmbedsAddressPointer (line 62) | func TestBuildIoctlRecvEmbedsAddressPointer(t *testing.T) { function TestBuildIoctlSendEmbedsAddressPointerAndSize (line 72) | func TestBuildIoctlSendEmbedsAddressPointerAndSize(t *testing.T) { function TestValidateOpenArgsLayer (line 83) | func TestValidateOpenArgsLayer(t *testing.T) { function TestValidateOpenArgsPriorityBounds (line 90) | func TestValidateOpenArgsPriorityBounds(t *testing.T) { function TestValidateOpenArgsFlags (line 99) | func TestValidateOpenArgsFlags(t *testing.T) { FILE: common/windivert/integration_windows_test.go function openHandle (line 15) | func openHandle(t *testing.T, filter *Filter, flags Flag) *Handle { function TestIntegrationOpenSendOnly (line 25) | func TestIntegrationOpenSendOnly(t *testing.T) { function TestIntegrationCloseTwice (line 31) | func TestIntegrationCloseTwice(t *testing.T) { function TestIntegrationRecvAbortsOnClose (line 39) | func TestIntegrationRecvAbortsOnClose(t *testing.T) { function TestIntegrationConcurrentOpen (line 72) | func TestIntegrationConcurrentOpen(t *testing.T) { FILE: common/windivert/windivert.go constant AssetVersion (line 14) | AssetVersion = "2.2.2" constant MTUMax (line 18) | MTUMax = 40 + 0xFFFF type Layer (line 20) | type Layer constant LayerNetwork (line 22) | LayerNetwork Layer = 0 type Flag (line 24) | type Flag constant FlagSniff (line 30) | FlagSniff Flag = 0x0001 constant FlagSendOnly (line 32) | FlagSendOnly Flag = 0x0008 constant PriorityHighest (line 36) | PriorityHighest int16 = 30000 constant PriorityLowest (line 37) | PriorityLowest int16 = -30000 type Address (line 47) | type Address struct method IPv6 (line 71) | func (a *Address) IPv6() bool { return getFlagBit(a.bits, addrBitIPv6) } method SetIPChecksum (line 72) | func (a *Address) SetIPChecksum(v bool) { method SetTCPChecksum (line 76) | func (a *Address) SetTCPChecksum(v bool) { constant addrBitIPv6 (line 58) | addrBitIPv6 = 20 constant addrBitIPChecksum (line 59) | addrBitIPChecksum = 21 constant addrBitTCPChecksum (line 60) | addrBitTCPChecksum = 22 function getFlagBit (line 63) | func getFlagBit(bits uint32, pos uint) bool { return bits&(1<