routerfilter.c
来自「包括EPA协议栈」· C语言 代码 · 共 26 行
C
26 行
#include "tcpip.h"
uint8 IPFilter(PNetIF pni, uint32 ip, PSock psock) {
if((ip & pni->mask) ==( pni->ip& pni->mask) || pni->ip == ip)
{
psock->pni = pni;
return IP_NO_ERR;
}
if((ip & ~pni->mask) == ~pni->mask && ip != pni->ip)
{
return IP_ADDR_ERR;
}
if((ip & 0xF0000000) == 0xE0000000)
{
return IP_NO_ERR;
}
if(pni->ip == ip)//如果是发往本机的报文
{
return IP_NO_ROUTE;
}
else {
return IP_ADDR_ROUTE;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?