suricata 4.0.3 收包解码

suricata中receive和decode两个模块总是在一个线程中,而且每种receive模块都对应一个自己的decode模块,因此这里记录在一起。这两个模块的主要目标是根据收取的数据包填充合适的Packet结构,交由flowworker进行后续处理。decode阶段同时做了分片数据包重组、隧道数据包解封装等处理。

阅读全文

获取网卡列表的几种方式

记录三种可以列举网卡设备的方式,ioctl、getifaddrs、rtnetlink。

阅读全文

suricata 4.0.3 线程模型

几个线程模型不同点及工作流程介绍,涉及的结构体的含义及关系介绍。

阅读全文

suricata 4.0.3 runmode

runmode的含义,如何确定运行时runmode,程序中结构体及其组织方式。

阅读全文

suricata 4.0.3 配置模块

程序对命令行参数和配置文件的处理与组织方式。

阅读全文

Tail queue | 尾队列

查看suricata源码时,看到有使用Tail queue作为内存存储配置文件解析内容的结构,这里对Tail queue这个结构及其操作方式做部分记录。

阅读全文

cppcheck模式判断

阅读suricata源码时注意到有检查CPPCHECK这个宏。
当CPPCHECK==1时,进行简单的宏定义。其他情况进行复杂的宏定义。

阅读全文

suricata命令行参数

阅读全文

vCenter 6.5 VCSA 安装失败问题

问题现象

安装VCSA过程中出现长时间安装进度卡在80%(安装RPM该操作可能需要几分钟的时间…),显示如图。

阅读全文

CheckBox(TextView)与Spanned(链接)的双重响应

客户端注册账号,需要用户确认用户协议及可以查看协议。
选择使用单CheckBox控件配合SpannableString。
但是遇到了一个问题,点击链接后CheckBox也响应了Click导致CheckBox勾选状态改变,这是不期望发生的。
对这个问题,原因查找及解决方式如下。

阅读全文