2010-03-20 4 views
0

나는 내 자신의 스니퍼를 만들기 위해 pcap 샘플 코드를 사용하고 있습니다. 나는 그들의 샘플 스니퍼를 다운로드하고 윈도우에서는 작동하지만 리눅스에서는 작동하지 않는다. 두 컴퓨터에서 gcc 컴파일러를 사용하고 있으며 pcap.h 만 포함되어 있습니다.
오류 : 불완전한 형식에 대한 포인터 역 참조.
넷 마스크로 인해 오류가 발생했습니다. 넷 마스크는 인터페이스의 첫 번째 주소에 대한 마스크입니다.pcap 라이브러리를 사용하여 패킷 스니핑을 돕는다

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

모든 솔루션?

+0

http://yuba.stanford.edu/~casado/pcap/ 또한 흥미로울 수 있습니다. –

+0

structsockaddr_in - 구조체와 sockaddr_in 사이에 공백이 없습니까? –

답변

0

범위에 struct sockaddr_in의 정의가 없으므로 해당 구조를 볼 수없는 컴파일러입니다. Linux에서는이 헤더에 구조체가 정의되어 있습니다.이 헤더에는 다음을 포함해야합니다.