pcap_dispatch挂起

时间:2012-09-21 08:40:36

标签: pcap libpcap packet-capture packet-sniffers winpcap

嗨我有一个程序,我在python中使用pcap捕获数据包。

filter=some_filter 
promiscuous= True
read_timeout= 50 # msec
self.pcap= pcapy.open_live(self.ifname, self.conf.capture_snaplen, promiscuous, read_timeout)
self.pcap.setfilter(filter)

这是配置,我用我的回调函数调用dispatch函数。print语句用于调试

while True:
            print "dispatch is called"
            return_value=self.pcap.dispatch(packet_limit, self.distribute_packet)
            print "return value"
            print return_value

所以我在2台不同网络的主机上运行这个系统。这些是freebsd 9.0发布的

其中一个系统工作正常,它真实地编写了我的调试;

dispatch is called
return vaue
34,45,55 whatever it is

但另一个系统是;

dispatch is called
什么也没有。所以它挂起了派遣功能。它没有返回任何东西并挂断。两个系统是相同的,但它们在不同的网络上。我试图改变pcap.openlive的超时。但是这没关系。 它为什么挂断?

0 个答案:

没有答案