Date: Sun, 21 Jun 2020 22:10:04 +0100 From: Alexander V. Chernikov <melifaro@ipfw.ru> To: "current@FreeBSD.org" <current@freebsd.org>, net <net@freebsd.org>, freebsd-hackers <freebsd-hackers@freebsd.org> Subject: Re: net.inet6.ip6.deembed_scopeid removal Message-ID: <645741592773762@mail.yandex.ru> In-Reply-To: <626011592740709@mail.yandex.ru> References: <626011592740709@mail.yandex.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
[re-sending email with as non-html] Hey, I would like to deprecate net.inet6.ip6.deembed_scopeid sysctl while leaving the current default behaviour. This sysctl controls whether IPv6 scope is embedded in the IPv6 address or not when reading or writing route/interface/ifaddr data via rtsock/sysctl. Embedding scope in the address is a hack, that overwrites some of the bits that can be used otherwise. It was probably implemented that way to simplify route table interactions, as rtable uses this hack to add link-local addresses to the same radix tree. The change to fix the userland api by filling in sin6_scopeid and avoid touching IPv6 address was added in r243187, 7 years ago. It provided the sysctl in question, allowing to preserve compatibility with older applications, by reverting to the old behavior. 7 years looks like enough timeframe for the applications to be adjusted. Unless any major objections arise, I'm going to remove the code and make de-embedded IPv6 addresses the only option on July 5 2020. /Alexander
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?645741592773762>