使用 libpcap 读取 zst 压缩的 pcap

Read zst compressed pcap with libpcap

我想用 libpcap 解码 zst 和 gz pcap,但我找不到任何这样做的例子。我当然不想有一个临时解压的pcap文件。 你们能告诉我正确的方法吗?

谢谢

Libpcap 目前不支持读取压缩文件。

如果您不想拥有一个临时解压缩的 pcap 文件,唯一的方法是让您的程序创建一个管道,运行 另一个程序读取压缩文件并写入将文件数据解压缩到标准输出,其标准输出是管道的写入端,从管道的读取端创建标准 I/O 流(例如,在 Unix 上使用 fdopen()像系统一样),然后使用 pcap_fopen_offline() 打开标准 I/O 流作为捕获文件。

这样,其他程序将执行解压缩,但会将其写入管道而不是文件,您的程序将从管道读取解压缩的数据。