pcsha_dump文件未被Wireshark打开

时间:2010-08-06 23:46:14

标签: c wireshark winpcap pcap

我正在尝试以libpcap格式保存此文件的输出,虽然文件确实已保存并且正确的数据已写入其中,但Wireshark无法打开它。有人看到我在这里失踪了吗?感谢。

   // opening the device here to listen
   handle = pcap_open_live( dev, BUFSIZ, 1, 1000, errbuf );
   unsigned int dlt = DLT_EN10MB;
   pcap_set_datalink(handle,dlt );


  FILE *filename;
  filename = fopen("/workarea/capture","a+");

  pcap_dumper_t * dump = NULL;

 // opens the file
 dump = pcap_dump_open( handle, (const char *)filename );

 pcap_loop(handle,-1,my_callback,(unsigned char *)filename);

 return (0);
}


 void my_callback(u_char *dump,const struct pcap_pkthdr* pkthdr,const u_char *packet)
  {
    unsigned int i=0;
    pcap_dump(dump,pkthdr,packet);

  }

1 个答案:

答案 0 :(得分:3)

您对pcap_dump_open的来电似乎不正确。它正在传递一个FILE *指针,但应该传递一个文件名。使用pcap_dump_fopen作为FILE指针。或者继续使用pcap_dump_open,只需将文件名传递给它。