diff mbox series

[iproute2-net,7/7] ip: mptcp: 'id 0' is only for 'del'

Message ID 20240727-upstream-iproute2-net-20240726-mptcp-man-user-feedback-v1-7-c6398c2014ea@kernel.org (mailing list archive)
State Accepted
Commit b176b9f40368735b5bd4e6d49f8ebcbe8b8bef4a
Delegated to: Stephen Hemminger
Headers show
Series mptcp: improve man pages to avoid confusions | expand

Checks

Context Check Description
netdev/tree_selection success Clearly marked for net
netdev/apply fail Patch does not apply to net-0

Commit Message

Matthieu Baerts (NGI0) July 27, 2024, 10:10 a.m. UTC
Adding an endpoint with 'id 0' is not allowed. In this case, the kernel
will ignore this 'id 0' and set another one.

Similarly, because there are no endpoints with this 'id 0', changing an
attribute for such endpoint will not be possible.

To avoid some confusions, it sounds better to clearly report an error
that the ID cannot be 0 in these cases.

Acked-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
 ip/ipmptcp.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/ip/ipmptcp.c b/ip/ipmptcp.c
index 9847f95b..118bac4a 100644
--- a/ip/ipmptcp.c
+++ b/ip/ipmptcp.c
@@ -174,6 +174,8 @@  static int mptcp_parse_opt(int argc, char **argv, struct nlmsghdr *n, int cmd)
 			invarg("invalid for non-zero id address\n", "ADDRESS");
 		else if (!id && !addr_set)
 			invarg("address is needed for deleting id 0 address\n", "ID");
+	} else if (id_set && !deling && !id) {
+		invarg("cannot be 0\n", "ID");
 	}
 
 	if (adding && port && !(flags & MPTCP_PM_ADDR_FLAG_SIGNAL))