@@ -284,7 +284,9 @@ func (l *Listener) PcapHandle(ifi pcap.Interface) (handle *pcap.Handle, err erro
284
284
if err != nil {
285
285
return nil , fmt .Errorf ("PCAP Activate device error: %q, interface: %q" , err , ifi .Name )
286
286
}
287
- l .BPFFilter = l .Filter (ifi )
287
+ if l .BPFFilter == "" {
288
+ l .BPFFilter = l .Filter (ifi )
289
+ }
288
290
fmt .Println ("Interface:" , ifi .Name , ". BPF Filter:" , l .BPFFilter )
289
291
err = handle .SetBPFFilter (l .BPFFilter )
290
292
if err != nil {
@@ -303,7 +305,9 @@ func (l *Listener) SocketHandle(ifi pcap.Interface) (handle Socket, err error) {
303
305
if err = handle .SetPromiscuous (l .Promiscuous || l .Monitor ); err != nil {
304
306
return nil , fmt .Errorf ("promiscuous mode error: %q, interface: %q" , err , ifi .Name )
305
307
}
306
- l .BPFFilter = l .Filter (ifi )
308
+ if l .BPFFilter == "" {
309
+ l .BPFFilter = l .Filter (ifi )
310
+ }
307
311
fmt .Println ("BPF Filter: " , l .BPFFilter )
308
312
if err = handle .SetBPFFilter (l .BPFFilter ); err != nil {
309
313
handle .Close ()
@@ -477,7 +481,9 @@ func (l *Listener) activateAFPacket() error {
477
481
continue
478
482
}
479
483
480
- l .BPFFilter = l .Filter (ifi )
484
+ if l .BPFFilter == "" {
485
+ l .BPFFilter = l .Filter (ifi )
486
+ }
481
487
fmt .Println ("Interface:" , ifi .Name , ". BPF Filter:" , l .BPFFilter )
482
488
handle .SetBPFFilter (l .BPFFilter , 64 << 10 )
483
489
0 commit comments