英文:
Double free when use pcap_close and fclose simultaneously
问题
这段代码出现了双重释放错误。
能否解释一下为什么会发生这种情况?
我猜测 pd 和 file 指针共享了一些数据。
英文:
FILE* file = fopen(some file)
pcap_t* pd = pcap_fopen_offline(file)
pcap_close(pd)
fclose(file)
This code occurs double free error.
Could you explain about this happening?
My Guess is that pd and file pointers are sharing some datas.
答案1
得分: 1
根据文档,pcap_close
函数关闭与传递给它的 pcap_t
结构相关联的文件。再次使用 fclose
关闭文件是一个错误。
英文:
As the documentation says, the pcap_close
function closes the files associated with the pcap_t
structure passed to it. Closing the file again with fclose
is an error.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论