kgl_filter_process

来自kangle
跳转至: 导航搜索

当过滤器注册的事件发生时,kangle调用此函数通知过滤器。

目录

语法

DWORD WINAPI kgl_filter_process(kgl_filter_context *pfc,DWORD eventType,LPVOID eventData)

参数

pfc

指向kgl_filter_context的指针,该参数绑定当前请求。

eventType

事件类型:

过滤点 发生时间
KF_NOTIFY_REQUEST 请求控制,kangle准备处理该请求
KF_NOTIFY_RESPONSE 回应控制, kangle准备发送回应
KF_NOTIFY_URL_MAP kangle完成从url到物理地址映射
KF_NOTIFY_READ_DATA 输入数据读取时,如post数据读取
KF_NOTIFY_SEND_DATA 发送http body数据给客户
KF_NOTIFY_END_REQUEST 请求结束
KF_NOTIFY_END_CONNECT 连接结束

eventData

相关事件的数据结构

过滤点 结构
KF_NOTIFY_REQUEST kgl_filter_request
KF_NOTIFY_RESPONSE kgl_filter_response
KF_NOTIFY_URL_MAP kgl_filter_url_map
KF_NOTIFY_READ_DATA kgl_filter_data
KF_NOTIFY_SEND_DATA kgl_filter_data
KF_NOTIFY_END_REQUEST 无NULL
KF_NOTIFY_END_CONNECT 无NULL

返回值

意义
KF_STATUS_REQ_FINISHED 过滤器已经处理了该请求,kangle应该中断该连接
KF_STATUS_REQ_FINISHED_KEEP_CONN 过滤器已经处理了该请求,当前请求不再继续,但不中断连接。
KF_STATUS_REQ_NEXT_NOTIFICATION 下一个过滤器继续处理

参考

kangle过滤器