NetworkManager/src/linux-headers
Matthieu Baerts (NGI0) 2b03057de0 mptcp: add 'laminar' endpoint support
This new endpoint type has been recently added to the kernel in v6.18
[1]. It will be used to create new subflows from the associated address
to additional addresses announced by the other peer. This will be done
if allowed by the MPTCP limits, and if the associated address is not
already being used by another subflow from the same MPTCP connection.

Note that the fullmesh flag takes precedence over the laminar one.
Without any of these two flags, the path-manager will create new
subflows to additional addresses announced by the other peer by
selecting the source address from the routing tables, which is harder to
configure if the announced address is not known in advance.

The support of the new flag is easy: simply by declaring a new flag for
NM, and adding it in the related helpers and existing checks looking at
the different MPTCP endpoint. The documentation now references the new
endpoint type.

Note that only the new 'define' has been added in the Linux header file:
this file has changed a bit since the last sync, now split in two files.
Only this new line is needed, so the minimum has been modified here.

Link: https://git.kernel.org/torvalds/c/539f6b9de39e [1]
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
2025-11-19 12:54:09 +00:00
..
ethtool.h linux-headers: add ethtool.h kernel header 2021-09-06 10:00:36 +02:00
mptcp.h mptcp: add 'laminar' endpoint support 2025-11-19 12:54:09 +00:00
nl802154.h linux-headers: update nl802154.h kernel header 2021-09-06 10:00:36 +02:00
README.md all: add src/nm-compat-headers for patching included system headers 2022-09-23 11:43:33 +02:00

linux-headers

Contains a copy of Linux UAPI kernel headers. When we build against an older kernel, we may still want to unconditionally build against a certain version of kernel API.

These headers should be taken without modification from Linux.

Don't include any of these these headers directly, instead include "libnm-std-aux/nm-linux-compat.h" which drags these headers in. This ensures that we include at all places our own patched variant, instead of the system headers.