tcp, udp: Restore usage of gateway for guest to connect to local host
This went lost in a recent rework: if the guest wants to connect directly to the host, it can use the address of the default gateway. Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
5
tcp.c
5
tcp.c
@@ -1387,6 +1387,11 @@ static void tcp_conn_from_tap(struct ctx *c, int af, void *addr,
|
||||
if (s < 0)
|
||||
return;
|
||||
|
||||
if (af == AF_INET && addr4.sin_addr.s_addr == c->gw4)
|
||||
addr4.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
|
||||
else if (af == AF_INET6 && !memcmp(addr, &c->gw6, sizeof(c->gw6)))
|
||||
addr6.sin6_addr = in6addr_loopback;
|
||||
|
||||
if (af == AF_INET6 && IN6_IS_ADDR_LINKLOCAL(&addr6.sin6_addr)) {
|
||||
struct sockaddr_in6 addr6_ll = {
|
||||
.sin6_family = AF_INET6,
|
||||
|
Reference in New Issue
Block a user