]> www.infradead.org Git - users/hch/misc.git/commitdiff
mptcp: pm: netlink: announce server-side flag
authorMatthieu Baerts (NGI0) <matttbe@kernel.org>
Fri, 19 Sep 2025 12:08:59 +0000 (14:08 +0200)
committerJakub Kicinski <kuba@kernel.org>
Mon, 22 Sep 2025 18:51:24 +0000 (11:51 -0700)
Now that the 'flags' attribute is used, it seems interesting to add one
flag for 'server-side', a boolean value.

This is duplicating the info from the dedicated 'server-side' attribute,
but it will be deprecated in the next commit, and removed in a few
versions.

Reviewed-by: Geliang Tang <geliang@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20250919-net-next-mptcp-server-side-flag-v1-2-a97a5d561a8b@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
include/uapi/linux/mptcp.h
net/mptcp/pm_netlink.c

index 5fd5b4cf75ca1e0099e0effa351507d3ab002f1e..95d621f6d59810126cbc37b1d6baf896a40dd9bc 100644 (file)
@@ -32,6 +32,7 @@
 #define MPTCP_INFO_FLAG_REMOTE_KEY_RECEIVED    _BITUL(1)
 
 #define MPTCP_PM_EV_FLAG_DENY_JOIN_ID0         _BITUL(0)
+#define MPTCP_PM_EV_FLAG_SERVER_SIDE           _BITUL(1)
 
 #define MPTCP_PM_ADDR_FLAG_SIGNAL                      (1 << 0)
 #define MPTCP_PM_ADDR_FLAG_SUBFLOW                     (1 << 1)
index 33a6bf536c020b59717472aca2d38add26255419..aa0c73faaa6acad3fd66ea0942726ecd4d0abcc0 100644 (file)
@@ -413,10 +413,13 @@ static int mptcp_event_created(struct sk_buff *skb,
        if (err)
                return err;
 
-       /* only set when it is the server side */
-       if (READ_ONCE(msk->pm.server_side) &&
-           nla_put_u8(skb, MPTCP_ATTR_SERVER_SIDE, 1))
-               return -EMSGSIZE;
+       if (READ_ONCE(msk->pm.server_side)) {
+               flags |= MPTCP_PM_EV_FLAG_SERVER_SIDE;
+
+               /* only set when it is the server side */
+               if (nla_put_u8(skb, MPTCP_ATTR_SERVER_SIDE, 1))
+                       return -EMSGSIZE;
+       }
 
        if (READ_ONCE(msk->pm.remote_deny_join_id0))
                flags |= MPTCP_PM_EV_FLAG_DENY_JOIN_ID0;