Re: git: 7b8151b0cd1b - main - sctp: improve handling of SO_SETFIB socket option

From: Gleb Smirnoff <glebius_at_freebsd.org>
Date: Mon, 26 Oct 2026 20:19:10 UTC
On Mon, Oct 26, 2026 at 07:19:04PM +0000, Michael Tuexen wrote:
M> commit 7b8151b0cd1b4f077b382b6be2c02c936d1988fa
M> Author:     Albin Hellqvist <albin.hellqvist@ericsson.com>
M> AuthorDate: 2026-10-26 19:07:03 +0000
M> Commit:     Michael Tuexen <tuexen@FreeBSD.org>
M> CommitDate: 2026-10-26 19:07:03 +0000
M> 
M>     sctp: improve handling of SO_SETFIB socket option
M>     
M>     Since SCTP keeps fibnum in the SCTP protocol control block,
M>     the code can't just defer the processing to the IPv4 or IPv6
M>     layer. Therefore it needs to be implemented in the the SCTP
M>     layer and it needs to call the socket layer function.
M>     
M>     PR:             300091
M>     Reviewed by:    tuexen
M>     Fixes:          caccbaef8e26 ("socket: Move SO_SETFIB handling to protocol layers")
M>     MFC after:      3 days
M>     MFC to:         stable/14
M>     MFC to:         stable/15

This change reminded me of the mess we have.  The inpcb already stores
the fib in inp_inc.inc_fibnum and some protocols (TCP and SCTP) copy
it from so->so_fibnum.

In general FIB number is definitely not a socket feature - a unix(4),
netlink(4), netgraph(4), list to be continued can't have a notion of
FIB number.

This all needs to be cleaned up.

-- 
Gleb Smirnoff