Documentation
¶
Overview ¶
Package engine contains the platform-agnostic DPI-bypass state machine: it consumes an intercepted IPv4 packet stream, tracks the 3-way handshake per flow, and builds a mutated injection packet once the ACK closes the handshake.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// Strategy names the bypass algorithm used when Knobs.StrategyRotation
// is empty. Either wrong_seq or wrong_checksum today.
Strategy bypass.Name
// SNIPool is the list of fake SNI values to choose from per flow.
// Must be non-empty.
SNIPool []string
// Scope narrows the flow to a specific 5-tuple-family; only flows
// matching Scope.LocalIP/RemoteIP/RemotePort are bypassed.
Scope platform.Scope
// InjectDelay is used when Knobs.RandomizeTiming is false.
InjectDelay time.Duration
// Knobs is the anti-fingerprinting configuration. Zero value matches
// upstream (fixed delay, fixed size, +1 IP ID, no strategy rotation).
Knobs fingerprint.Knobs
// Log is the logger; nil means silent.
Log Logger
}
Config tunes engine behaviour.
Click to show internal directories.
Click to hide internal directories.