diff --git a/go.mod b/go.mod index dd6a85e..554df46 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module b612.me/bcap -go 1.22.4 +go 1.20 require ( github.com/florianl/go-nfqueue/v2 v2.0.0 diff --git a/libpcap/libpcap.go b/libpcap/libpcap.go index 544f036..d2fe634 100644 --- a/libpcap/libpcap.go +++ b/libpcap/libpcap.go @@ -17,6 +17,10 @@ type NetCatch struct { stopFn context.CancelFunc } +func (n *NetCatch) Recall() func(gopacket.Packet) { + return n.fn +} + func (n *NetCatch) SetRecall(fn func(p gopacket.Packet)) { n.fn = fn } diff --git a/nfq/nfqueue.go b/nfq/nfqueue.go index c8468d5..981ba68 100644 --- a/nfq/nfqueue.go +++ b/nfq/nfqueue.go @@ -17,6 +17,10 @@ type NfQueue struct { recallFn func(id uint32, q *nfqueue.Nfqueue, p Packet) } +func (n *NfQueue) RecallFn() func(id uint32, q *nfqueue.Nfqueue, p Packet) { + return n.recallFn +} + type Packet struct { Packet gopacket.Packet Attr nfqueue.Attribute