我正在分析一个pcap文件,并且已在Wireshark中将剖析导出为c数组,我需要从有问题的字节中提取一些数据。但是我不知道如何访问所有这些数组。
他们看起来像这样:

/* Frame (73 bytes) */
static const unsigned char pkt1324[73] = {
0x80, 0xe6, 0x50, 0x06, 0xe7, 0xae, 0x48, 0xfd, /* ..P...H. */
0x8e, 0xdf, 0x2f, 0x06, 0x86, 0xdd, 0x60, 0x00, /* ../...`. */
0x00, 0x00, 0x00, 0x13, 0x11, 0x30, 0x20, 0x01, /* .....0 . */
0x06, 0x60, 0x32, 0x07, 0x04, 0xc0, 0x00, 0x00, /* .`2..... */
0x00, 0x00, 0x00, 0x00, 0x40, 0x61, 0x20, 0x01, /* ....@a . */
0x08, 0x18, 0xdb, 0xf8, 0x70, 0x00, 0xcd, 0x3e, /* ....p..> */
0x83, 0xa5, 0x98, 0x71, 0x9b, 0x42, 0x16, 0x33, /* ...q.B.3 */
0xe8, 0xeb, 0x00, 0x13, 0x96, 0xfa, 0x50, 0x45, /* ......PE */
0xea, 0x50, 0x41, 0x0a, 0x21, 0xa8, 0xff, 0x31, /* .PA.!..1 */
0x37                                            /* 7 */
};
this is an empty line
/* Frame (84 bytes) */-> next frame

我的问题是,这些数组位于.c / .h文件中,我想访问所有数组以提取一些数据,但它们的名称和大小会发生变化。

知道我将需要读取数百个数组并提取某些字节的最佳方法是什么?

最佳答案

您可以使用这样的工具:https://github.com/seladb/PcapPlusPlus
PcapPlusPlus是一个多平台C++网络嗅探以及数据包解析和构建框架。 PcapPlusPlus旨在轻巧,高效且易于使用。它是libpcap,WinPcap,DPDK和PF_RING http://seladb.github.io/PcapPlusPlus-Doc等流行引擎的C++包装器

09-04 16:50