Advertisement

suriicata.smtp协议解析源代码注释

阅读量:

一。ProcessBodyLine

SMTP 解析 -> 处理 SMTP 请求 -> 命令数据解析 -> 解析邮件头 -> 邮件实体解析 -> 邮件正文处理 -> 正文行解析

该函数负责解析body字段的数据,并根据头部字段设置相应的编码标志来进行解码操作。
这些编码采用base64格式以及quote-printable方法进行处理。
若body字段未进行编码处理,则无需进行解码操作。
解码完成后将得到的数据会被存储在mime_state.data_chunk字段中。
当内存空间不足时,则会调用ProcessDecodedDataChunk函数继续处理相关数据。
之后会触发自定义的DataChunkProcessorFunc函数。
该功能指针是在创建mime_state对象时通过MimeDecParseState状态初始化完成的,
它提供了用户自定义的功能模块。

复制代码
 static int ProcessBodyLine(const uint8_t *buf, uint32_t len,

    
     MimeDecParseState *state)
    
 {
    
     int ret = MIME_DEC_OK;
    
     uint32_t remaining, offset, avail, tobuf;
    
  
    

全部评论 (0)

还没有任何评论哟~