From d912e4a79e9a74aa9e2d3ae4b8f0ed6012fec9fa Mon Sep 17 00:00:00 2001 From: "Alan T. DeKok" Date: Tue, 14 Sep 2010 02:37:36 +0200 Subject: [PATCH] Be more forgiving when starting proxy sockets. Manual merge of 92beaf4f00ef --- src/main/listen.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/listen.c b/src/main/listen.c index 6effff6..9143fa2 100644 --- a/src/main/listen.c +++ b/src/main/listen.c @@ -2713,6 +2713,18 @@ add_sockets: * and use it */ for (this = *head; this != NULL; this = this->next) { + /* + * We shouldn't proxy on loopback. + */ + if ((sock->my_ipaddr.af == AF_INET) && + (sock->my_ipaddr.ipaddr.ip4addr.s_addr == htonl(INADDR_LOOPBACK))) continue; + + +#ifdef HAVE_STRUCT_SOCKADDR_IN6 + if ((sock->my_ipaddr.af == AF_INET6) && + (IN6_IS_ADDR_LINKLOCAL(&sock->my_ipaddr.ipaddr.ip6addr))) continue; +#endif + if (this->type == RAD_LISTEN_AUTH) { sock = this->data; if (home.src_ipaddr.af == AF_UNSPEC) { -- 2.1.4