我正在为Windows 7 / Server 2008 R2编写标注驱动程序。
我正在尝试制作一个内核模式调用驱动程序,该驱动程序会将TCP通信重定向到用户模式服务。我已经在FWPM_ALE_CONNECT_REDIRECT_V{4|6}
层注册了一个标注。从用户模式服务中,我想找到原始目标IP地址和端口号。我遇到了适用于Windows 8或更高版本的代码段:
BYTE* redirectRecords;
BYTE redirectContext[CONTEXT_SIZE];
listenSock = WSASocket(…);
result = bind(listenSock, …);
result = listen(listenSock, …);
clientSock = WSAAccept(listenSock, …);
WSAIoctl(clientSock,
SIO_QUERY_WFP_CONNECTION_REDIRECT_RECORDS,
redirectRecords, …);
现在SIO_QUERY_WFP_CONNECTION_REDIRECT_RECORDS
IOCTL仅在Windows 8之后可用。我想知道在Windows 7上是否可以使用类似的IOCTL。如何在Windows 7上检索原始IP地址和端口号?