Date: Sun, 3 Dec 2017 15:39:46 +0200 From: Konstantin Belousov <kostikbel@gmail.com> To: Michael Tuexen <tuexen@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r324686 - stable/11/sys/netinet Message-ID: <20171203133946.GJ2272@kib.kiev.ua> In-Reply-To: <201710171242.v9HCgHG4030707@repo.freebsd.org> References: <201710171242.v9HCgHG4030707@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Oct 17, 2017 at 12:42:17PM +0000, Michael Tuexen wrote: > Author: tuexen > Date: Tue Oct 17 12:42:17 2017 > New Revision: 324686 > URL: https://svnweb.freebsd.org/changeset/base/324686 > > Log: > MFC r322648: > > Ensure inp_vflag is consistently set for TCP endpoints. > > Make sure that the flags INP_IPV4 and INP_IPV6 are consistently set > for inpcbs used for TCP sockets, no matter if the setting is derived > from the net.inet6.ip6.v6only sysctl or the IPV6_V6ONLY socket option. > For UDP this was already done right. > > PR: 221385 > > Modified: > stable/11/sys/netinet/tcp_usrreq.c > Directory Properties: > stable/11/ (props changed) > > Modified: stable/11/sys/netinet/tcp_usrreq.c > ============================================================================== > --- stable/11/sys/netinet/tcp_usrreq.c Tue Oct 17 11:20:32 2017 (r324685) > +++ stable/11/sys/netinet/tcp_usrreq.c Tue Oct 17 12:42:17 2017 (r324686) > @@ -1899,6 +1899,8 @@ tcp_attach(struct socket *so) > #ifdef INET6 > if (inp->inp_vflag & INP_IPV6PROTO) { > inp->inp_vflag |= INP_IPV6; > + if ((inp->inp_flags & IN6P_IPV6_V6ONLY) == 0) > + inp->inp_vflag |= INP_IPV4; > inp->in6p_hops = -1; /* use kernel default */ > } > else I highly suspect that this commit causes the breakage. Example is taken from the 'nestat -f inet6 -n' output, but in fact the problem is much more serious, e.g. squid acls are broken as well: tcp6 0 0 2001:470:1f14:13.23047 2a03:2880:f003:c.443 ESTABLISHED tcp46 0 0 0.0.0.1.22 69.223.183.85.58766 ESTABLISHED The tcp46 and 0.0.0.1 values in the second line are clearly nonsensical.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20171203133946.GJ2272>