阅读:1242回复:1
关于NDIS过滤钩子驱动实现ip包过滤的问题
typedef PF_FORWARD_ACTION
(*PacketFilterExtensionPtr)( IN unsigned char *PacketHeader, IN unsigned char *Packet, IN unsigned int PacketLength, IN unsigned int RecvInterfaceIndex, IN unsigned int SendInterfaceIndex, IN IPAddr RecvLinkNextHop, IN IPAddr SendLinkNextHop ); 1.其中PacketHeader->iph_protocol多少代表TCP协议,DDK上好象没有 2.如果收到的包是TCP包,那么Packet是否直接指向TCP首部,并且各个字段的顺序是否和TCP/IP协议一书中描述得一样. 3.我用以下代码想禁用SMTP,POP3怎么没用 USHORT *LP=(USHORT *)Packet; if( ((LP[1]==25) || (LP[1]==110)) && SendInterfaceIndex==INVALID_PF_IF_INDEX) { DebugPrintMsg(\"filtering SMTP\"); return PF_DROP; } |
|
沙发#
发布于:2003-08-22 10:46
1。这个你到Winsock.h里面找,好像是6
2。这里指向的是IP首部 3。Packet的有效长度到底多少,要实际跟踪一下才知道。 |
|