1
const char *str = "wlan subtype assoc-req or wlan subtype probe-req or wlan subtype probe-resp";
struct bpf_program fp;

if((pcap_compile(pkt_handle, &fp, str, 1, PCAP_NETMASK_UNKNOWN)==-1))
{
    pcap_perror(pkt_handle, "Compile");
}
else
    printf("filter compiled\n");

実行後、プログラムは「フィルターがコンパイルされました」と表示しますが、ビーコン フレームと、フィルター式で言及された 3 つ以外の他の多くのフレームをキャプチャします。

では、assoc-req、probe-req、probe-resp フレームのみをキャッチするのは正しいフィルター式でしょうか?

4

1 に答える 1

1

interjay が言っpcap_setfilter()たように、フィルターを有効にするには呼び出す必要があります。(質問に回答があるように表示されるよう回答にします。)

于 2012-10-19T21:27:59.200 に答える