Skip to content
Snippets Groups Projects
Commit c5bf6d07 authored by Logan Aerl Arias's avatar Logan Aerl Arias
Browse files

Merge branch 'fix-ipv6-bans-blocking-ipv4' into 'next'

Fix IPv6 bans incorrectly banning IPv4 address

See merge request STJr/SRB2!2265
parents 35b6b215 4eb514ce
No related branches found
No related tags found
No related merge requests found
...@@ -424,7 +424,7 @@ static boolean SOCK_cmpipv6(mysockaddr_t *a, mysockaddr_t *b, UINT8 mask) ...@@ -424,7 +424,7 @@ static boolean SOCK_cmpipv6(mysockaddr_t *a, mysockaddr_t *b, UINT8 mask)
{ {
UINT8 bitmask; UINT8 bitmask;
I_Assert(mask <= 128); I_Assert(mask <= 128);
if (memcmp(&a->ip6.sin6_addr, &b->ip6.sin6_addr, mask / 8) != 0) if (memcmp(&a->ip6.sin6_addr.s6_addr, &b->ip6.sin6_addr.s6_addr, mask / 8) != 0)
return false; return false;
if (mask % 8 == 0) if (mask % 8 == 0)
return true; return true;
...@@ -437,6 +437,9 @@ static boolean SOCK_cmpaddr(mysockaddr_t *a, mysockaddr_t *b, UINT8 mask) ...@@ -437,6 +437,9 @@ static boolean SOCK_cmpaddr(mysockaddr_t *a, mysockaddr_t *b, UINT8 mask)
{ {
UINT32 bitmask = INADDR_NONE; UINT32 bitmask = INADDR_NONE;
if (a->any.sa_family != b->any.sa_family)
return false;
if (mask && mask < 32) if (mask && mask < 32)
bitmask = htonl((UINT32)(-1) << (32 - mask)); bitmask = htonl((UINT32)(-1) << (32 - mask));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment