原文链接:http://www.9mblog.com/64.html
这次要说的是一个十分重要的函数
RunModeRegisterRunModes();
主要是完成运行模式的注册,我们添加的所有运行模式都要通过这个函数注册。下面是它的内部实现。
void RunModeRegisterRunModes(void)
{
memset(runmodes, 0, sizeof(runmodes));
RunModeIdsPcapRegister(); //Pcap模式注册
RunModeFilePcapRegister(); //PcapFile模式注册,用于直接读取、解析pcap文件
RunModeIdsPfringRegister(); //Pfring模式注册,用于解析通过Pfring抓到的包
RunModeIpsNFQRegister();
RunModeIpsIPFWRegister();
RunModeErfFileRegister();
RunModeErfDagRegister();
RunModeNapatechRegister(); //Napatech模式注册,解析Napatech网卡抓到的包
RunModeIdsAFPRegister();
RunModeIdsNetmapRegister(); //Netmap模式注册,用于解析通过Netmap抓到的包
RunModeIdsNflogRegister();
RunModeTileMpipeRegister();
RunModeUnixSocketRegister();
#ifdef UNITTESTS
UtRunModeRegister();
#endif
return;
}
其它模式没有了解过,也就不胡乱写了。
针对于运行模式注册这块的内容,后面会对Pcap,FilePcap,以及Netmap模式进行详细分析。