fixed ban range check to make sure the whole ip matches and not just rely on the hash. Closes #946

This commit is contained in:
oy 2012-04-20 22:20:11 +02:00
parent a953fd5e3b
commit 8e293d0e63

View file

@ -34,7 +34,7 @@ protected:
bool NetMatch(const CNetRange *pRange, const NETADDR *pAddr, int Start, int Length) const
{
return pRange->m_LB.type == pAddr->type &&
return pRange->m_LB.type == pAddr->type && (Start == 0 || mem_comp(&pRange->m_LB.ip[0], &pAddr->ip[0], Start) == 0) &&
mem_comp(&pRange->m_LB.ip[Start], &pAddr->ip[Start], Length-Start) <= 0 && mem_comp(&pRange->m_UB.ip[Start], &pAddr->ip[Start], Length-Start) >= 0;
}