diff mbox series

[iproute2-next,v3,1/3] mptcp: add fullmesh check for adding address

Message ID a452307d79abca899d35dce03de4fc5bbffb965e.1645598911.git.geliang.tang@suse.com (mailing list archive)
State Accepted
Delegated to: David Ahern
Headers show
Series mptcp: add the fullmesh flag setting support | expand

Checks

Context Check Description
netdev/tree_selection success Not a local patch

Commit Message

Geliang Tang Feb. 23, 2022, 6:50 a.m. UTC
The fullmesh flag mustn't be used with the signal flag when adding an
address. Commands like this should be treated as invalid commands:

 ip mptcp endpoint add 10.0.2.1 signal fullmesh

This patch added the necessary flags check for this case.

Acked-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
---
 ip/ipmptcp.c | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox series

Patch

diff --git a/ip/ipmptcp.c b/ip/ipmptcp.c
index eef7c6f4..5682c7df 100644
--- a/ip/ipmptcp.c
+++ b/ip/ipmptcp.c
@@ -116,6 +116,11 @@  static int mptcp_parse_opt(int argc, char **argv, struct nlmsghdr *n, int cmd)
 	ll_init_map(&rth);
 	while (argc > 0) {
 		if (get_flags(*argv, &flags) == 0) {
+			if (adding &&
+			    (flags & MPTCP_PM_ADDR_FLAG_SIGNAL) &&
+			    (flags & MPTCP_PM_ADDR_FLAG_FULLMESH))
+				invarg("flags mustn't have both signal and fullmesh", *argv);
+
 			/* allow changing the 'backup' flag only */
 			if (cmd == MPTCP_PM_CMD_SET_FLAGS &&
 			    (flags & ~MPTCP_PM_ADDR_FLAG_BACKUP))