Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

why pcap_setfilter did not take effect

Tags:

libpcap

pcap

I'm using libpcap as lib to write a C program for catching up coming IPs. my code snippet as following:

struct bpf_program filter;
pcap_compile(pcap_handle, &filter, "icmp[icmptype]=0 and '(dst 16.11.26.100 or dst 16.11.27.100)'", 1, 0);
pcap_setfilter(pcap_handle, &filter);

But it didn't work, I still could see other dest Ips rather than only the above two Ips.

like image 756
Jack Avatar asked May 15 '19 13:05

Jack


1 Answers

You should always check for errors from library routine calls. If you'd checked for errors from pcap_compile(), you would have seen that the compile failed (due to the single quotes, although the error message would probably just be "syntax error").

like image 143
user9065877 Avatar answered Sep 22 '22 15:09

user9065877