0

我正在使用 pcap 示例代码来创建自己的嗅探器。我下载了他们的示例嗅探器,它可以在 Windows 上运行,但不能在 linux 上运行。我在两台机器上都使用 gcc 编译器,而且我只包含 pcap.h。
错误是:取消引用指向不完整类型的指针。
网络掩码导致错误。netmask 是接口首地址的掩码。

u_int netmask=netmask((struct sockaddr_in*)d->addresses->netmask))->sin_addr.S_un.S_addr;  

任何解决方案?

4

1 回答 1

0

编译器表明它没有struct sockaddr_inin 范围内的定义,因此它无法查看这样的结构。在 Linux 上,该头文件中定义了该结构,您需要包括:

#include <netinet/in.h>
于 2010-03-21T09:29:14.093 回答