Skip to content

Commit 2b993ed

Browse files
committed
Fix --input-raw-bpf-filter
It was just ignored Should fix #955
1 parent de8a74f commit 2b993ed

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

capture/capture.go

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,9 @@ func (l *Listener) PcapHandle(ifi pcap.Interface) (handle *pcap.Handle, err erro
284284
if err != nil {
285285
return nil, fmt.Errorf("PCAP Activate device error: %q, interface: %q", err, ifi.Name)
286286
}
287-
l.BPFFilter = l.Filter(ifi)
287+
if l.BPFFilter == "" {
288+
l.BPFFilter = l.Filter(ifi)
289+
}
288290
fmt.Println("Interface:", ifi.Name, ". BPF Filter:", l.BPFFilter)
289291
err = handle.SetBPFFilter(l.BPFFilter)
290292
if err != nil {
@@ -303,7 +305,9 @@ func (l *Listener) SocketHandle(ifi pcap.Interface) (handle Socket, err error) {
303305
if err = handle.SetPromiscuous(l.Promiscuous || l.Monitor); err != nil {
304306
return nil, fmt.Errorf("promiscuous mode error: %q, interface: %q", err, ifi.Name)
305307
}
306-
l.BPFFilter = l.Filter(ifi)
308+
if l.BPFFilter == "" {
309+
l.BPFFilter = l.Filter(ifi)
310+
}
307311
fmt.Println("BPF Filter: ", l.BPFFilter)
308312
if err = handle.SetBPFFilter(l.BPFFilter); err != nil {
309313
handle.Close()
@@ -477,7 +481,9 @@ func (l *Listener) activateAFPacket() error {
477481
continue
478482
}
479483

480-
l.BPFFilter = l.Filter(ifi)
484+
if l.BPFFilter == "" {
485+
l.BPFFilter = l.Filter(ifi)
486+
}
481487
fmt.Println("Interface:", ifi.Name, ". BPF Filter:", l.BPFFilter)
482488
handle.SetBPFFilter(l.BPFFilter, 64<<10)
483489

0 commit comments

Comments
 (0)