MCPcopy Create free account

hub / github.com/0x4D31/finch / functions

Functions481 in github.com/0x4D31/finch

↓ 3 callersFunctionextractClientHelloInitial
(packet []byte)
pkg/quic/clienthello.go:657
↓ 3 callersFunctiongetState
(dcid []byte)
pkg/quic/clienthello.go:655
↓ 3 callersMethodgetState
(dcid []byte)
pkg/quic/clienthello.go:300
↓ 3 callersFunctionmakeInitialPacketOffsetPN
(t *testing.T, version []byte, pnLen int, salt []byte, dcid []byte, off uint64, pn uint64, data []byte)
pkg/quic/clienthello_test.go:235
↓ 3 callersFunctionmapPath
mapPath rewrites reqPath and reqRawPath based on upstreamPath and matched rule. Returns (newPath, newRawPath, mergedQuery). Semantics: - If upstreamPa
internal/proxy/util.go:41
↓ 3 callersMethodmaybeGC
()
pkg/quic/clienthello.go:99
↓ 3 callersFunctionnewCorsRecorder
()
internal/sse/server_test.go:104
↓ 3 callersFunctionnewRuntime
(cfg *config.Config, pf parsedFlags, hub *sse.Hub, sseSrv **sse.Server, adminSrv **admin.Server)
cmd/finch/runtime.go:52
↓ 3 callersFunctionnewTestGalahService
(model llms.Model, provider, apiKey string)
internal/proxy/server_test.go:63
↓ 3 callersFunctionparseBytes
(data []byte)
internal/admin/rulefile.go:17
↓ 3 callersFunctionsetupWorkDir
setupWorkDir prepares a temporary working directory with an empty configs/default.rules.hcl file. The caller must defer the returned cleanup function.
cmd/finch/main_test.go:42
↓ 3 callersFunctionwaitForCount
(t *testing.T, c *atomic.Int32, n int32)
internal/watch/watch_test.go:13
↓ 2 callersMethodEval
(ctx *fingerprint.RequestCtx)
internal/rules/engine.go:60
↓ 2 callersMethodExtractClientHello
ExtractClientHello scans a UDP datagram that may contain multiple coalesced QUIC packets. Each long-header packet (bit 7 set) is processed independent
pkg/quic/clienthello.go:617
↓ 2 callersFunctionLoadHCLBytes
LoadHCLBytes loads rules from an HCL byte slice.
internal/rules/hcl.go:257
↓ 2 callersFunctionLoadMain
LoadMain reads and validates the HCL configuration at path.
internal/loader/loader.go:77
↓ 2 callersFunctionNewParser
NewParser returns a new Parser configured with opts.
pkg/quic/clienthello.go:67
↓ 2 callersFunctionNewWithStdout
NewWithStdout creates a Logger that writes JSONL to the given path and also echoes each record to stdout. If path is empty, stdout is used exclusively
internal/logger/jsonl.go:88
↓ 2 callersFunctionRead
Read parses the HCL configuration from path without validating mandatory fields. Relative paths are resolved against the configuration file's director
internal/config/config.go:199
↓ 2 callersMethodRead
([]byte)
internal/proxy/server_test.go:1329
↓ 2 callersFunctionReadJSON
ReadJSON parses the JSON configuration from path without validating mandatory fields. Relative paths are resolved against the configuration file's dir
internal/config/config.go:395
↓ 2 callersMethodReloadEngines
ReloadEngines reloads all loaded rule engines from disk.
cmd/finch/loader.go:190
↓ 2 callersMethodSetGlobalEngine
SetGlobalEngine replaces the shared rule engine.
internal/proxy/server.go:300
↓ 2 callersMethodSetLocalEngine
SetLocalEngine replaces the listener-specific rule engine.
internal/proxy/server.go:292
↓ 2 callersMethodSetSuricataSet
SetSuricataSet replaces the active Suricata rule set.
internal/proxy/server.go:308
↓ 2 callersMethodUnloadSuricata
UnloadSuricata stops watching the provided Suricata rules directory and removes it.
cmd/finch/loader.go:221
↓ 2 callersMethodcloseAll
closeAll iterates over all cached handlers and closes idle connections on their transports. It should be called when shutting down the server to ensur
internal/proxy/cache.go:28
↓ 2 callersFunctioncompileHeaderCond
(name string, vals []string)
internal/rules/hcl.go:499
↓ 2 callersFunctioncorruptReservedBits
(t *testing.T, packet []byte, mask byte)
pkg/quic/clienthello_test.go:881
↓ 2 callersFunctiondummyHandshakePacket
(t *testing.T, version []byte, payloadLen int)
pkg/quic/clienthello_test.go:834
↓ 2 callersFunctiondummyInitialPacket
(t *testing.T, version []byte, length byte, payloadLen int)
pkg/quic/clienthello_test.go:814
↓ 2 callersMethodextractClientHelloInitial
extractClientHelloInitial attempts to parse a QUIC Initial packet and returns the TLS ClientHello contained in CRYPTO frames. The input slice must con
pkg/quic/clienthello.go:448
↓ 2 callersFunctionhexToBytes
(t *testing.T, s string)
internal/proxy/ja4_quic_test.go:18
↓ 2 callersFunctionhostOnly
(a string)
internal/proxy/http3.go:54
↓ 2 callersFunctionloadRuleFromString
(t *testing.T, hcl string)
internal/rules/engine_test.go:13
↓ 2 callersFunctionmakeInitialPacketPN
(t *testing.T, version []byte, pnLen int, salt []byte, ch []byte, pn uint64)
pkg/quic/clienthello_test.go:143
↓ 2 callersFunctionnewRequest
(t *testing.T, path string)
internal/proxy/echo_error_test.go:28
↓ 2 callersFunctionparseRule
(snippet []byte)
internal/admin/rulefile.go:64
↓ 2 callersFunctionrandomInterval
(min, max time.Duration)
internal/proxy/tarpit.go:58
↓ 2 callersFunctionreadableExtensions
(list []uint16)
internal/proxy/echo.go:75
↓ 2 callersFunctionreconstructPN
(trunc uint64, pnLen int, highest uint64)
pkg/quic/clienthello.go:200
↓ 2 callersFunctionstripANSI
(s string)
cmd/quic-chdump/main_test.go:44
↓ 1 callersMethodCancelWatcher
CancelWatcher stops watching the specified path if active.
cmd/finch/loader.go:162
↓ 1 callersMethodCancelWatchers
CancelWatchers stops all active watchers.
cmd/finch/loader.go:153
↓ 1 callersMethodClose
()
internal/proxy/cache_test.go:22
↓ 1 callersMethodFlush
()
internal/sse/server_test.go:55
↓ 1 callersMethodFlushErr
()
internal/sse/flush.go:8
↓ 1 callersFunctionLoadJSON
LoadJSON reads and validates the JSON configuration from path.
internal/config/config.go:428
↓ 1 callersMethodMatches
(ctx *fingerprint.RequestCtx)
internal/rules/engine.go:38
↓ 1 callersFunctionNewEcho
NewEcho creates a Server that returns fingerprint information for every request instead of proxying to an upstream.
internal/proxy/echo.go:260
↓ 1 callersFunctionNewSSEServer
NewSSEServer creates an SSE hub and server bound to addr.
cmd/finch/loader.go:183
↓ 1 callersMethodSetReadBuffer
(bytes int)
internal/proxy/http3.go:116
↓ 1 callersMethodSetWriteBuffer
(bytes int)
internal/proxy/http3.go:123
↓ 1 callersMethodSyscallConn
()
internal/proxy/http3.go:107
↓ 1 callersMethodaddCrypto
(dcid []byte, off uint64, data []byte)
pkg/quic/clienthello.go:314
↓ 1 callersFunctionallowOrigin
(w http.ResponseWriter, r *http.Request)
internal/sse/server.go:86
↓ 1 callersMethodauthorize
(w http.ResponseWriter, r *http.Request)
internal/admin/server.go:79
↓ 1 callersFunctioncompileIPCond
(vals []string)
internal/rules/hcl.go:553
↓ 1 callersFunctioncompilePathCond
(vals []string)
internal/rules/hcl.go:590
↓ 1 callersFunctioncompileRule
(rb ruleBlock)
internal/rules/hcl.go:290
↓ 1 callersFunctioncompileSuricataCond
(vals []string)
internal/rules/hcl.go:527
↓ 1 callersFunctioncompileWhen
(w whenBlock)
internal/rules/hcl.go:352
↓ 1 callersFunctiondecodeRuleBlock
(b *hcl.Block)
internal/rules/hcl.go:122
↓ 1 callersFunctiondecodeStrings
(expr hcl.Expression)
internal/rules/hcl.go:419
↓ 1 callersFunctiondecodeStringsValue
(v cty.Value)
internal/rules/hcl.go:440
↓ 1 callersFunctiondecodeWhenBlock
(b *hclsyntax.Block)
internal/rules/hcl.go:219
↓ 1 callersMethoddefaults
()
internal/proxy/tarpit.go:40
↓ 1 callersFunctionechoHandlerWithLogging
echoHandlerWithLogging wraps echoHandler to add logging functionality
internal/proxy/echo.go:217
↓ 1 callersFunctionemojiForAction
(action rules.Action)
internal/proxy/server.go:61
↓ 1 callersFunctionequalAdmin
(a, b *config.AdminConfig)
cmd/finch/configwatcher.go:388
↓ 1 callersFunctionequalGalah
(a, b *config.GalahConfig)
cmd/finch/configwatcher.go:358
↓ 1 callersFunctionequalSSE
(a, b *config.SSEConfig)
cmd/finch/configwatcher.go:378
↓ 1 callersMethodgcLoop
()
internal/proxy/http3.go:130
↓ 1 callersMethodhandleRuleSets
(w http.ResponseWriter, r *http.Request)
internal/admin/server.go:231
↓ 1 callersFunctionhclsimpleDecode
(name string, data []byte, out *config.Config)
internal/admin/server.go:211
↓ 1 callersFunctionhexToBytes
(t *testing.T, s string)
internal/fingerprint/context_test.go:15
↓ 1 callersFunctionlongHeaderLen
longHeaderLen parses the header of a QUIC long-header packet and returns the total length of the packet. It supports Initial and Handshake packets. Re
pkg/quic/clienthello.go:571
↓ 1 callersFunctionmakeDetail
(md *metadata.Metadata, r *http.Request, ctx fingerprint.RequestCtx)
internal/proxy/echo.go:111
↓ 1 callersFunctionmaybeGC
The following wrappers provide backwards compatibility with the previous package-level API using a default parser instance.
pkg/quic/clienthello.go:653
↓ 1 callersFunctionnewServerWithHandler
newServerWithHandler is a helper that mirrors New but allows a custom handler.
internal/proxy/echo.go:274
↓ 1 callersMethodparseCryptoFrames
(dcid []byte, data []byte)
pkg/quic/clienthello.go:350
↓ 1 callersFunctionprocessPacket
(packet gopacket.Packet)
cmd/quic-chdump/main.go:136
↓ 1 callersFunctionrandomBytes
()
internal/proxy/tarpit.go:70
↓ 1 callersFunctionreadableCipherSuites
(list []uint16)
internal/proxy/echo.go:63
↓ 1 callersFunctionreadableGroups
(list []uint16)
internal/proxy/echo.go:87
↓ 1 callersFunctionreadableSigAlgs
(list []uint16)
internal/proxy/echo.go:99
↓ 1 callersFunctionreloadRuntime
(old *runtimeState, cfg *config.Config, pf parsedFlags, hub *sse.Hub, sseSrv **sse.Server, adminSrv **admin.Se
cmd/finch/runtime.go:250
↓ 1 callersMethodremoveOldest
()
internal/proxy/cache.go:79
↓ 1 callersMethodstopServer
(w http.ResponseWriter, r *http.Request)
internal/admin/server.go:200
MethodCall
(ctx context.Context, prompt string, opts ...llms.CallOption)
internal/proxy/server_test.go:48
MethodCall
(ctx context.Context, prompt string, opts ...llms.CallOption)
internal/proxy/server_test.go:59
MethodClose
()
internal/proxy/http3.go:156
MethodEval
(c *fingerprint.RequestCtx)
internal/rules/hcl.go:31
MethodEval
(c *fingerprint.RequestCtx)
internal/rules/hcl.go:42
MethodEval
(ctx *fingerprint.RequestCtx)
internal/rules/hcl.go:56
MethodFlush
()
internal/sse/server_test.go:95
MethodFlush
()
internal/sse/server_test.go:119
MethodFlushErr
()
internal/sse/server_test.go:56
MethodFlushErr
()
internal/sse/server_test.go:96
FunctionFuzzHPAndAEAD
(f *testing.F)
pkg/quic/clienthello_test.go:1324
← previousnext →101–200 of 481, ranked by callers