WFP内核模式到用户模式通信响应

时间:2015-02-26 14:58:38

标签: windows kernel driver wfp usermode

我正在使用Windows过滤器平台来实现一个简单的防火墙应用程序。 实际上我的驱动程序是一个标注驱动程序,它可以拦截两种事件: FWPM_LAYER_ALE_AUTH_CONNECT_V4 FWPM_LAYER_ALE_AUTH_LISTEN_V4

驱动程序可以使用反向调用模型与usermode app进行通信:usermode app执行一些IOCTL,驱动程序将它们保存在队列中,并在触发事件时返回缓冲区。

我只有一个问题。我需要收到usermode app对驱动程序的响应,以便驱动程序可以阻止或允许连接。

过去我曾经使用过 minifilter 驱动程序,我使用FltCreateCommunicationPort将事件发送到usermode并等待它的响应(使用来自minifilter的 FltSendMessage )。

所以问题: WPF有这样的东西吗?

2 个答案:

答案 0 :(得分:0)

不确定世界粮食计划署是否提供此类机制。但是,如果您的要求是在用户和内核模式之间共享一些通知事件,那么您可以使用http://www.osronline.com/article.cfm?id=108中所述的类似内容。

答案 1 :(得分:0)

WFP框架没有像FltCreateCommunicationPort那样的api,你需要实现IOCTL和FwpsPendOperation0以及FwpsCompleteOperation0 WFP apis,检查WDK WFP检查样本。