From: phonedph1 <20867105+phonedph1@users.noreply.github.com> Date: Thu, 4 Nov 2021 17:13:39 +0000 (-0600) Subject: Update dnsdist.cc X-Git-Tag: rec-4.6.0-beta1~4^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f746f5a80212f7f8e4f48ec00a9bfbb2c8045c40;p=thirdparty%2Fpdns.git Update dnsdist.cc --- diff --git a/pdns/dnsdist.cc b/pdns/dnsdist.cc index 79aaebaf8b..186bd58be5 100644 --- a/pdns/dnsdist.cc +++ b/pdns/dnsdist.cc @@ -2044,7 +2044,7 @@ static void setUpLocalBind(std::unique_ptr& cs) int one=1; (void)setsockopt(fd, IPPROTO_IP, GEN_IP_PKTINFO, &one, sizeof(one)); // linux supports this, so why not - might fail on other systems #ifdef IPV6_RECVPKTINFO - if (setsockopt(fd, IPPROTO_IPV6, IPV6_RECVPKTINFO, &one, sizeof(one)) < 0 && + if (cs->local.sin4.sin_family == AF_INET6 && setsockopt(fd, IPPROTO_IPV6, IPV6_RECVPKTINFO, &one, sizeof(one)) < 0 && !g_warned_ipv6_recvpktinfo) { warnlog("Warning: IPV6_RECVPKTINFO setsockopt failed: %s", stringerror()); g_warned_ipv6_recvpktinfo = true;