Versions in this module Expand all Collapse all v1 v1.0.1 Feb 2, 2024 Changes in this version + const TCPStateCloseWait + const TCPStateClosed + const TCPStateEstablished + const TCPStateLastAck + const TCPStateReset + const TCPStateSynSent + var DefaultAssemblerOptions = AssemblerOptions + type Assembler struct + func NewAssembler(pool *StreamPool) *Assembler + func (a *Assembler) Assemble(netFlow gopacket.Flow, t *layers.TCP) + func (a *Assembler) AssembleWithContext(netFlow gopacket.Flow, t *layers.TCP, ac AssemblerContext) + func (a *Assembler) Dump() string + func (a *Assembler) FlushAll() (closed int) + func (a *Assembler) FlushCloseOlderThan(t time.Time) (flushed, closed int) + func (a *Assembler) FlushWithOptions(opt FlushOptions) (flushed, closed int) + type AssemblerContext interface + GetCaptureInfo func() gopacket.CaptureInfo + type AssemblerOptions struct + MaxBufferedPagesPerConnection int + MaxBufferedPagesTotal int + type FlushOptions struct + T time.Time + TC time.Time + type ScatterGather interface + CaptureInfo func(offset int) gopacket.CaptureInfo + Fetch func(length int) []byte + Info func() (direction TCPFlowDirection, start bool, end bool, skip int) + KeepFrom func(offset int) + Lengths func() (int, int) + Stats func() TCPAssemblyStats + type Sequence int64 + func (s Sequence) Add(t int) Sequence + func (s Sequence) Difference(t Sequence) int + type Stream interface + Accept func(tcp *layers.TCP, ci gopacket.CaptureInfo, dir TCPFlowDirection, ...) bool + ReassembledSG func(sg ScatterGather, ac AssemblerContext) + ReassemblyComplete func(ac AssemblerContext) bool + type StreamFactory interface + New func(netFlow, tcpFlow gopacket.Flow, tcp *layers.TCP, ac AssemblerContext) Stream + type StreamPool struct + func NewStreamPool(factory StreamFactory) *StreamPool + func (p *StreamPool) Dump() + type TCPAssemblyStats struct + Chunks int + OverlapBytes int + OverlapPackets int + Packets int + QueuedBytes int + QueuedPackets int + type TCPFlowDirection bool + const TCPDirClientToServer + const TCPDirServerToClient + func (dir TCPFlowDirection) Reverse() TCPFlowDirection + func (dir TCPFlowDirection) String() string + type TCPOptionCheck struct + func NewTCPOptionCheck() TCPOptionCheck + func (t *TCPOptionCheck) Accept(tcp *layers.TCP, ci gopacket.CaptureInfo, dir TCPFlowDirection, ...) error + type TCPSimpleFSM struct + func NewTCPSimpleFSM(options TCPSimpleFSMOptions) *TCPSimpleFSM + func (t *TCPSimpleFSM) CheckState(tcp *layers.TCP, dir TCPFlowDirection) bool + func (t *TCPSimpleFSM) String() string + type TCPSimpleFSMOptions struct + SupportMissingEstablishment bool