Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Dec 2025 05:39:33 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Gleb Smirnoff <glebius@freebsd.org>
Cc:        src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: e967a2a03677 - main - sockets: remove compat shim for divert(4)
Message-ID:  <aTo89YdeZByEuZov@kib.kiev.ua>
In-Reply-To: <693a275a.2e7b3.1858af56@gitrepo.freebsd.org>
References:  <693a275a.2e7b3.1858af56@gitrepo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On Thu, Dec 11, 2025 at 02:07:22AM +0000, Gleb Smirnoff wrote:
> The branch main has been updated by glebius:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=e967a2a03677f67d46b458d233a6e93c40d173c9
> 
> commit e967a2a03677f67d46b458d233a6e93c40d173c9
> Author:     Gleb Smirnoff <glebius@FreeBSD.org>
> AuthorDate: 2025-12-11 02:03:35 +0000
> Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
> CommitDate: 2025-12-11 02:03:35 +0000
> 
>     sockets: remove compat shim for divert(4)
>     
>     All known software in ports had been addressed three years ago and the
>     shim stays in stable/14 and stable/15 for another couple years with its
>     printf(), so all ourliers are expected to conform before 16.0-RELEASE.
>     See 8624f4347e8133911b0554e816f6bedb56dc5fb3 for details.
So why breaking the binaries that users might have lingering around?

Put this single if() under #ifdef COMPAT15, and perhaps remove the printf()
as well.

> ---
>  sys/kern/uipc_socket.c | 11 -----------
>  1 file changed, 11 deletions(-)
> 
> diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
> index 9eba3ad2e082..8ed5dcc9336a 100644
> --- a/sys/kern/uipc_socket.c
> +++ b/sys/kern/uipc_socket.c
> @@ -913,17 +913,6 @@ socreate(int dom, struct socket **aso, int type, int proto,
>  	struct socket *so;
>  	int error;
>  
> -	/*
> -	 * XXX: divert(4) historically abused PF_INET.  Keep this compatibility
> -	 * shim until all applications have been updated.
> -	 */
> -	if (__predict_false(dom == PF_INET && type == SOCK_RAW &&
> -	    proto == IPPROTO_DIVERT)) {
> -		dom = PF_DIVERT;
> -		printf("%s uses obsolete way to create divert(4) socket\n",
> -		    td->td_proc->p_comm);
> -	}
> -
>  	prp = pffindproto(dom, type, proto);
>  	if (prp == NULL) {
>  		/* No support for domain. */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?aTo89YdeZByEuZov>