From nobody Mon Feb 9 12:08:58 2026 Delivered-To: wpasupplicant.patchew@gmail.com Received: by 2002:a02:9f92:0:0:0:0:0 with SMTP id a18csp701836jam; Fri, 4 Feb 2022 16:03:48 -0800 (PST) X-Google-Smtp-Source: ABdhPJzb5uRqUiCcUaz2BNTDG8TqY2tlXXKMB8pF69o1Vq+5Sp5EfXojfPDkNtWwWhCwRVeqn6bY X-Received: by 2002:a17:903:1207:: with SMTP id l7mr5634220plh.19.1644019428096; Fri, 04 Feb 2022 16:03:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644019428; cv=none; d=google.com; s=arc-20160816; b=X04n6fyxbiZamEPYAaQnBHegJBe4JFxDU6M5hirEOo7FSI5xW6wIsukbuSRWETO1Iq p0SxJEn0Xj1QTql4EdDLrncd1pNmmK8ssyjKDh7fDlOqpMtBIyGSuOhBrzKEIE2GI8PQ 87qC385uTy+kpFIuDUH3DIm2e5piQJ4xDb1RQtnkU+gB7F17MfaEJRUJAGJvN8cF2Rdv E62m8ij0kuWILSYXchbzjENNKL/aNkF4RUInvc3nON7RTVDx5SFrfF/HbNJVWn9amHbV iXhZbvJlG8bI2VPGat3R9Td25AZLDliVv1uCxi5B+kJot6C0UC4aiRzmslXJVUcWMbEY E0Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=NrMhPCUpY92Cj81XLlXjqdjSwLINS50+9apyn/TIbSI=; b=vdXlU1XxO+KG9sL99nRst+V7vzfX1X4zF0IcdfVgWVHjNRiMrl/IrOWR13jHaPbi3Y IZRyaVI4B6K4f+lG82EqcEnwoAI3PL/tjHaZx2zvaiB6NeegWAPdjwtDC4GkV4eBnoYr 9mnSe8zVuEqYuodjRtq6T7V8nE8GvF4UrZfXT88Bh47h8Kce3/J+aKu+JVmX8q3MaZCF UJil04J1DsopLsOaJS2vw0fGGWdexNVqFRQ+7QvBdF4fZVNQqggBiEeBQvxjvr1iG2zL wlGeNu1vGb6zSYcSJtsj4OOK2bb8YpppiLk4kkKxsbXdeInS4K2Rgthox799fXkpwLLb TqEw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="JW4a99/9"; spf=pass (google.com: domain of mptcp+bounces-3476-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3476-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from sjc.edge.kernel.org (sjc.edge.kernel.org. [2604:1380:1000:8100::1]) by mx.google.com with ESMTPS id f7si3233701pgc.3.2022.02.04.16.03.47 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 Feb 2022 16:03:48 -0800 (PST) Received-SPF: pass (google.com: domain of mptcp+bounces-3476-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) client-ip=2604:1380:1000:8100::1; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="JW4a99/9"; spf=pass (google.com: domain of mptcp+bounces-3476-wpasupplicant.patchew=gmail.com@lists.linux.dev designates 2604:1380:1000:8100::1 as permitted sender) smtp.mailfrom="mptcp+bounces-3476-wpasupplicant.patchew=gmail.com@lists.linux.dev"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sjc.edge.kernel.org (Postfix) with ESMTPS id A11C43E100B for ; Sat, 5 Feb 2022 00:03:47 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CE34D2CA2; Sat, 5 Feb 2022 00:03:45 +0000 (UTC) X-Original-To: mptcp@lists.linux.dev Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B25C72C9C for ; Sat, 5 Feb 2022 00:03:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1644019424; x=1675555424; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=o+myu+kqVEbCshCjSRLhWyKSxrNCK7EbwezO18pNPxo=; b=JW4a99/9v0NKQQYhM8dcbLno7MyIjIVn7TKvyKFbO7PC+MFlR9/Xa6uM UlWVvocbSPNIbbhQ6b5ESde3N0/p9+eO9h/nG77qvvM6ictW0EQyvMXTp 4H7m4h3hQ87SaMpGgr7U3Ar3ySqRXltA52xeTQjJK+PPZ36xGXKSkNlyX cXus8GqgXtcb7Ck2fcTYIZ3WEDNz091B+4UlCgSBRdOw+9ALGe1EDykDn 0R4Hb5Ok8aUqb2L6y1/m6Ah+q/nEabQJZdkWDDPtUtFZB7yrEXSQ5nrnM qm4gDbZ/D9tjL/pyxupYhCMAfI4vtL0xaSHgpHePQa7Crz0yXUy+gybJs Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10248"; a="248678279" X-IronPort-AV: E=Sophos;i="5.88,344,1635231600"; d="scan'208";a="248678279" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Feb 2022 16:03:43 -0800 X-IronPort-AV: E=Sophos;i="5.88,344,1635231600"; d="scan'208";a="770097513" Received: from mjmartin-desk2.amr.corp.intel.com (HELO mjmartin-desk2.intel.com) ([10.212.231.200]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Feb 2022 16:03:43 -0800 From: Mat Martineau To: netdev@vger.kernel.org Cc: Geliang Tang , davem@davemloft.net, kuba@kernel.org, matthieu.baerts@tessares.net, mptcp@lists.linux.dev, Mat Martineau Subject: [PATCH net-next 1/9] mptcp: allow to use port and non-signal in set_flags Date: Fri, 4 Feb 2022 16:03:29 -0800 Message-Id: <20220205000337.187292-2-mathew.j.martineau@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220205000337.187292-1-mathew.j.martineau@linux.intel.com> References: <20220205000337.187292-1-mathew.j.martineau@linux.intel.com> Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang It's illegal to use both port and non-signal flags for adding address. But it's legal to use both of them for setting flags, which always uses non-signal flags, backup or fullmesh. This patch moves this non-signal flag with port check from mptcp_pm_parse_addr() to mptcp_nl_cmd_add_addr(). Do the check only when adding addresses, not setting flags or deleting addresses. Signed-off-by: Geliang Tang Signed-off-by: Mat Martineau --- net/mptcp/pm_netlink.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/net/mptcp/pm_netlink.c b/net/mptcp/pm_netlink.c index d47795748ad7..5464c2d268bd 100644 --- a/net/mptcp/pm_netlink.c +++ b/net/mptcp/pm_netlink.c @@ -1174,14 +1174,8 @@ static int mptcp_pm_parse_addr(struct nlattr *attr, = struct genl_info *info, if (tb[MPTCP_PM_ADDR_ATTR_FLAGS]) entry->flags =3D nla_get_u32(tb[MPTCP_PM_ADDR_ATTR_FLAGS]); =20 - if (tb[MPTCP_PM_ADDR_ATTR_PORT]) { - if (!(entry->flags & MPTCP_PM_ADDR_FLAG_SIGNAL)) { - NL_SET_ERR_MSG_ATTR(info->extack, attr, - "flags must have signal when using port"); - return -EINVAL; - } + if (tb[MPTCP_PM_ADDR_ATTR_PORT]) entry->addr.port =3D htons(nla_get_u16(tb[MPTCP_PM_ADDR_ATTR_PORT])); - } =20 return 0; } @@ -1227,6 +1221,11 @@ static int mptcp_nl_cmd_add_addr(struct sk_buff *skb= , struct genl_info *info) if (ret < 0) return ret; =20 + if (addr.addr.port && !(addr.flags & MPTCP_PM_ADDR_FLAG_SIGNAL)) { + GENL_SET_ERR_MSG(info, "flags must have signal when using port"); + return -EINVAL; + } + entry =3D kmalloc(sizeof(*entry), GFP_KERNEL); if (!entry) { GENL_SET_ERR_MSG(info, "can't allocate addr"); --=20 2.35.1