gpt4 book ai didi

libpcap - libpcap 是否可以释放内存?

转载 作者:行者123 更新时间:2023-12-04 05:14:14 27 4
gpt4 key购买 nike

我的程序像这样使用 libpcap:

while pcaket = pcap_next() {

...

(modify the pcaket and do checksum)

...

pcap_sendpacket(pcaket)

}



最近发现我的程序有内存泄漏...

我的问题是:
在 pcap_next 之后 libpcap 会释放 pcaket 吗?或者我必须自己做免费的工作?

最佳答案

Will the libpcap free the pcaket after pcap_next?



数据包包含在 libpcap 内部的缓冲区中(附加到 pcap_t );没有为每个数据包分配一个新的缓冲区,因此缓冲区在 pcap_next() 之后不会被释放,它在 pcap_t 之后被释放已关闭。您不必自己释放它。

(这也意味着来自对 pcap_next()pcap_next_ex() 的特定调用的数据包数据不能保证在下一次调用 pcap_next()pcap_next_ex() - 或 pcap_loop()pcap_dispatch() 后仍然有效;被下一个数据包或下一批数据包的数据覆盖。)

关于libpcap - libpcap 是否可以释放内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14495717/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com