Skip to content

PM: userspace: unable to create additional subflows with the local addr ID 0 #391

@matttbe

Description

@matttbe

It looks like it is not possible to create additional subflows re-using the initial local address (ID 0).

There is this check in the kernel that is not needed for me:

diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c
index 4da7f0ac7d8d..8744223b47fb 100644
--- a/net/mptcp/pm_userspace.c
+++ b/net/mptcp/pm_userspace.c
@@ -282,12 +282,6 @@ int mptcp_nl_cmd_sf_create(struct sk_buff *skb, struct genl_info *info)
                goto create_err;
        }
 
-       if (addr_l.id == 0) {
-               NL_SET_ERR_MSG_ATTR(info->extack, laddr, "missing local addr id");
-               err = -EINVAL;
-               goto create_err;
-       }
-
        err = mptcp_pm_parse_addr(raddr, info, &addr_r);
        if (err < 0) {
                NL_SET_ERR_MSG_ATTR(info->extack, raddr, "error parsing remote addr");

I guess it is a mistake: there is no reason not to allow additional subflows from this local address. It breaks fullmesh support from userspace.

Fixes: 702c2f646d42 ("mptcp: netlink: allow userspace-driven subflow establishment")

Metadata

Metadata

Assignees

Labels

bugpmpath-manager

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions