Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp154196imu; Wed, 21 Nov 2018 17:10:27 -0800 (PST) X-Google-Smtp-Source: AFSGD/V1KYqV0Z2LkJ/b6oQzJux+vEUYHEhwOVf/IpcKyxAfCLHRy+oK4SHe+piSNY7OdMggsU0u X-Received: by 2002:a17:902:b01:: with SMTP id 1mr1686203plq.331.1542849027785; Wed, 21 Nov 2018 17:10:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542849027; cv=none; d=google.com; s=arc-20160816; b=n1v+7+lznK8hlTn53Ui1/d6V+0R48D2qD/NCjQkTfQnjT9JMTitEELteM4Jzqt0PZA LKBAGY5SuTic3tM+JnULc3dRaq4KEuSfasfyU5GNOwZanC8SmCHPD+F6Px+YPnObAVs2 LQ5dVAu0+R35bHeYRPDrOljdSYrTJrSDKaNhXBOrRp5Tbw+ZIaVYeaZk8ygLtpgVCtH2 8UAilQyNG+wRSChalPyUwn6nRgCr9DDcdbLQRaK7Ho3KddgBE0N263wlpK6XTfg+kceu pFbvJ98nzzY4h/vaNWoomw7qTJTLRrjVqGqDYwFOfndqWnnW7Mv5ZOCGUE/u0Y+dfB58 kuQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=GqVn6VEjC+p1GrsAg0GCSagfrl51Ea6jpGf2bLcnrVg=; b=0ndarRB1lzdVgG4uMi7cxj0AcFcXtTHCLf2p9oZII7I+/K/V2TrGUgfODGPHzTyK4H bRgHv+0UmKMNsNeFmKQNL2DC4RBGDx7WAM+AwNgsHkpA5CDJjPmN+5+KlDxiA//EVjvX 1/Scga3sV94RAnMKbCJQoO9jVOMlEdohIm3hacKeiRJ5Gvrnz7nMwDroAiX+uXNusPFW 5yziHyrpLUtcrbNok41yIh6ImGSS/wKd/BT0c+twLKvTQSffyTgBHm/pSYXaTBuAwNh5 eJn9OYEbfG54mCUDstTI7XlDzqeoK661iFAnSzKst3FdA1LipPgF/V+fq54HBevoEcxT LLhg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XrjlAHBZ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u7si48444927pgg.357.2018.11.21.17.10.12; Wed, 21 Nov 2018 17:10:27 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XrjlAHBZ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388781AbeKVFqM (ORCPT + 99 others); Thu, 22 Nov 2018 00:46:12 -0500 Received: from mail.kernel.org ([198.145.29.99]:41318 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729285AbeKVFqL (ORCPT ); Thu, 22 Nov 2018 00:46:11 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 777F6206BB; Wed, 21 Nov 2018 19:10:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542827437; bh=ubHpN3wLj1AQBULZR/e9lGGvb2iH7mEL0BIcd2s4zss=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XrjlAHBZ7F/Roq2oepUCeWvB2HgCTko+hQenHaaDOdr5QDcNEixs2oJp2Nm0sg2gr BQpEDGFzcfKR4F4Rxqrm/FME6tHOcyPQE6R1KAx4seEiP/8xPnYDyG3NhCOyoc1NgZ qbP8Nc7pfHNcdzTqtooJev97xPoocdwILI4RSGFQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ying Xu , Xin Long , "David S. Miller" Subject: [PATCH 4.9 05/59] sctp: not allow to set asoc prsctp_enable by sockopt Date: Wed, 21 Nov 2018 20:06:20 +0100 Message-Id: <20181121183508.468523276@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181121183508.262873520@linuxfoundation.org> References: <20181121183508.262873520@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.9-stable review patch. If anyone has any objections, please let me know. ------------------ From: Xin Long [ Upstream commit cc3ccf26f0649089b3a34a2781977755ea36e72c ] As rfc7496#section4.5 says about SCTP_PR_SUPPORTED: This socket option allows the enabling or disabling of the negotiation of PR-SCTP support for future associations. For existing associations, it allows one to query whether or not PR-SCTP support was negotiated on a particular association. It means only sctp sock's prsctp_enable can be set. Note that for the limitation of SCTP_{CURRENT|ALL}_ASSOC, we will add it when introducing SCTP_{FUTURE|CURRENT|ALL}_ASSOC for linux sctp in another patchset. v1->v2: - drop the params.assoc_id check as Neil suggested. Fixes: 28aa4c26fce2 ("sctp: add SCTP_PR_SUPPORTED on sctp sockopt") Reported-by: Ying Xu Signed-off-by: Xin Long Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- net/sctp/socket.c | 26 +++++--------------------- 1 file changed, 5 insertions(+), 21 deletions(-) --- a/net/sctp/socket.c +++ b/net/sctp/socket.c @@ -3732,32 +3732,16 @@ static int sctp_setsockopt_pr_supported( unsigned int optlen) { struct sctp_assoc_value params; - struct sctp_association *asoc; - int retval = -EINVAL; if (optlen != sizeof(params)) - goto out; + return -EINVAL; - if (copy_from_user(¶ms, optval, optlen)) { - retval = -EFAULT; - goto out; - } + if (copy_from_user(¶ms, optval, optlen)) + return -EFAULT; - asoc = sctp_id2assoc(sk, params.assoc_id); - if (asoc) { - asoc->prsctp_enable = !!params.assoc_value; - } else if (!params.assoc_id) { - struct sctp_sock *sp = sctp_sk(sk); + sctp_sk(sk)->ep->prsctp_enable = !!params.assoc_value; - sp->ep->prsctp_enable = !!params.assoc_value; - } else { - goto out; - } - - retval = 0; - -out: - return retval; + return 0; } static int sctp_setsockopt_default_prinfo(struct sock *sk,