【问题标题】:C++ - read and write pcapng files without libpcapC++ - 在没有 libpcap 的情况下读写 pcapng 文件
【发布时间】:2018-01-02 17:21:38
【问题描述】:

我有兴趣在不使用 libpcap 或 WinPcap 的情况下读写 pcapng 文件。有谁知道该怎么做?

【问题讨论】:

    标签: pcap-ng


    【解决方案1】:

    我可以推荐一个 C 库,它被称为 LightPcapNg,显然 PcapPlusPlus 正在使用它来拥有一个更干净的 C++ 包装器。

    由于您对 C++ 感兴趣,这里有一段代码 sn-p,说明如何使用 PcapPlusPlus 读取 pcap-ng 文件:

    #include <PcapFileDevice.h>
    
    void readAndWritePcapNg(char* inputFileName, char* outputFileName)
    {
        // reader instance
        PcapNgFileReaderDevice readerDev(inputFileName);
    
        // writer instance
        PcapNgFileWriterDevice writerDev(outputFileName);
    
        // open reader and writer
        readerDev.open();
        writerDev.open();
    
        RawPacket rawPacket;
    
        // read packets from file
        while (readerDev.getNextPacket(rawPacket))
        {
            Packet packet(&rawPacket);
    
            // do whatever you want with the packet
            ....
            ....
    
            // write the packet to the output file
            writerDev.writePacket(rawPacket);
        }
    
        // close reader and writer
        readerDev.close();
        writerDev.close();
    }
    

    【讨论】:

    • 如何使用 Libpcap 做到这一点?
    猜你喜欢
    • 2021-01-07
    • 2016-04-14
    • 1970-01-01
    • 1970-01-01
    • 2011-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-05
    相关资源
    最近更新 更多