Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var (
// ErrorsBuffer sets the size of error channels
ErrorsBuffer = 20
)
Functions ¶
This section is empty.
Types ¶
type BPFilter ¶
type BPFilter struct { //Base is base filter Base string //Include is a list of CIDR or IP to include in the filter Include []string //Exclude is a list of CIDR or IP to exclude from the filter Exclude []string }
BPFilter is a simple helper for constructing bpf filters
type BasicSniff ¶
type BasicSniff struct {
// contains filtered or unexported fields
}
BasicSniff implements an standar processor
func NewBasic ¶
func NewBasic(tick time.Duration) *BasicSniff
NewBasic creates a new basic sniff processor
func (BasicSniff) Process ¶
func (p BasicSniff) Process(source *gopacket.PacketSource, hooks *Hooks) (func(), <-chan error)
Process implements Processor.Process interface
type CbPacket ¶
type CbPacket func(gopacket.Packet) (bool, *ProcessError)
CbPacket defines a callback on packet
type Hooks ¶
type Hooks struct {
// contains filtered or unexported fields
}
Hooks is responsible for packet processor
type HooksRunner ¶
type HooksRunner struct {
// contains filtered or unexported fields
}
HooksRunner executes Hooks
func NewHooksRunner ¶
func NewHooksRunner(h *Hooks) *HooksRunner
NewHooksRunner returns a HooksRunner
func (*HooksRunner) CleanUp ¶
func (h *HooksRunner) CleanUp() error
CleanUp executes cleanUp registered hooks.
func (*HooksRunner) Layers ¶
func (h *HooksRunner) Layers() []gopacket.LayerType
Layers returns registered layers
type ProcessError ¶
type ProcessError struct {
// contains filtered or unexported fields
}
ProcessError is used for packet processing
type Processor ¶
type Processor interface {
Process(source *gopacket.PacketSource, hooks *Hooks) (stop func(), errs <-chan error)
}
Processor process packets from a packet source
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service processor
func NewService ¶
NewService creates a new service
func (*Service) Register ¶
func (s *Service) Register(name string, source *gopacket.PacketSource) error
Register packet source with name
func (*Service) Unregister ¶
Unregister packet source by name
Click to show internal directories.
Click to hide internal directories.