Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp1148690pxu; Fri, 16 Oct 2020 05:16:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzxb4eaXopVNmFCpynormq0pg5sR/o84sppCmcw5Z3rkVEW2PjMfMjLddLoSJpiXyKg/JqQ X-Received: by 2002:aa7:d892:: with SMTP id u18mr3621344edq.305.1602850598502; Fri, 16 Oct 2020 05:16:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1602850598; cv=none; d=google.com; s=arc-20160816; b=z7c2VHK4PSzPyvJPfcOeez58YV7NPSbFSXqoRL9Om49Xn2+D7buE7Jg7yQQMMm8QDt wUV6nje7XeO5Wa8tTE6br6dQJJnaM1pQzNmXHVFxbziKVqZX94KJlNHQEp1BJr+J6q7t 5lLd6dysccqTh7OmdLxpT0ZGtcWOz768DdYgwZIQhjrQTfb+QqpebcPX9a4ueXxXEl4s h6n1C0sw2BLU2HZ+yU8CqTQEXRwdo1tK0M/2ECIlUef3AwhRn1gZ+gkK292yiVD0saLu np0wz6mfoKW2IfS4xkt7dr7P6TdH5iB5pwkSriD0nmRWefTrnmVED0L+fL1l8UtP/oXS mf2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=A3s/EGXld9wp8+94hEgB6sMq/A7OD5G/1mVv4FD3lck=; b=A/MbQYUIFyU36IYCUxXCd3xQwwIvpbBuNbXrmp7dygIm9GK4XNGDmSb9HVwNbzk2BE RWdqRsyK07cMvjfkKmHEMQy/UnhxsGfZVy6fPMwQsdwt4h/wHzEAtGdefzZcctJlsHTR h6Jw+NS36hSHIkurK8j0hv9K9g7kyY1IXJd4yD2N4nQgZqHEaGB2L1+ehDpDlhc8GCiO h3ZFtAxHZ4O8JxPKXPbytQnQr/p9st9LX7HrVDmvf6c1MhJEbF6HKtMEl8DimWOYv0Hr DByrSajqh4p80ipXXcoQjVymcDz4SLB95iXBRAU0b0bIURj3udsaeP+P46N1VBQ/KYW+ uVpg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=csPoDVpN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ce20si1886699ejc.484.2020.10.16.05.16.12; Fri, 16 Oct 2020 05:16:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=csPoDVpN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405563AbgJPJJe (ORCPT + 99 others); Fri, 16 Oct 2020 05:09:34 -0400 Received: from mail.kernel.org ([198.145.29.99]:37426 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2395009AbgJPJJT (ORCPT ); Fri, 16 Oct 2020 05:09:19 -0400 Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64]) (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 5A1C420789; Fri, 16 Oct 2020 09:09:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1602839358; bh=16/TAZ8EDeUaBagtevxZ1bw/cNO+Dxs9T4s6oryzSFg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=csPoDVpN4hpmu6b+duK9nZG/p2niv3fzBtraoUHxpcaUGuLlyZSkt5F68NPAWbUiF fGxY19xkibVdsskDvcF9uskwNbKvqqtHCD+BkCA2FmG6dUhf8FYueuehRvXd0tkNnN YF4M4cz3QfdzVo9sGHQYD6gbe6hvOoGoCJ7xg3mU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Luiz Augusto von Dentz , Marcel Holtmann Subject: [PATCH 4.19 05/21] Bluetooth: A2MP: Fix not initializing all members Date: Fri, 16 Oct 2020 11:07:24 +0200 Message-Id: <20201016090437.567029080@linuxfoundation.org> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201016090437.301376476@linuxfoundation.org> References: <20201016090437.301376476@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Luiz Augusto von Dentz commit eddb7732119d53400f48a02536a84c509692faa8 upstream. This fixes various places where a stack variable is used uninitialized. Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Marcel Holtmann Signed-off-by: Greg Kroah-Hartman --- net/bluetooth/a2mp.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) --- a/net/bluetooth/a2mp.c +++ b/net/bluetooth/a2mp.c @@ -233,6 +233,9 @@ static int a2mp_discover_rsp(struct amp_ struct a2mp_info_req req; found = true; + + memset(&req, 0, sizeof(req)); + req.id = cl->id; a2mp_send(mgr, A2MP_GETINFO_REQ, __next_ident(mgr), sizeof(req), &req); @@ -312,6 +315,8 @@ static int a2mp_getinfo_req(struct amp_m if (!hdev || hdev->dev_type != HCI_AMP) { struct a2mp_info_rsp rsp; + memset(&rsp, 0, sizeof(rsp)); + rsp.id = req->id; rsp.status = A2MP_STATUS_INVALID_CTRL_ID; @@ -355,6 +360,8 @@ static int a2mp_getinfo_rsp(struct amp_m if (!ctrl) return -ENOMEM; + memset(&req, 0, sizeof(req)); + req.id = rsp->id; a2mp_send(mgr, A2MP_GETAMPASSOC_REQ, __next_ident(mgr), sizeof(req), &req); @@ -383,6 +390,8 @@ static int a2mp_getampassoc_req(struct a struct a2mp_amp_assoc_rsp rsp; rsp.id = req->id; + memset(&rsp, 0, sizeof(rsp)); + if (tmp) { rsp.status = A2MP_STATUS_COLLISION_OCCURED; amp_mgr_put(tmp); @@ -471,7 +480,6 @@ static int a2mp_createphyslink_req(struc struct a2mp_cmd *hdr) { struct a2mp_physlink_req *req = (void *) skb->data; - struct a2mp_physlink_rsp rsp; struct hci_dev *hdev; struct hci_conn *hcon; @@ -482,6 +490,8 @@ static int a2mp_createphyslink_req(struc BT_DBG("local_id %d, remote_id %d", req->local_id, req->remote_id); + memset(&rsp, 0, sizeof(rsp)); + rsp.local_id = req->remote_id; rsp.remote_id = req->local_id; @@ -560,6 +570,8 @@ static int a2mp_discphyslink_req(struct BT_DBG("local_id %d remote_id %d", req->local_id, req->remote_id); + memset(&rsp, 0, sizeof(rsp)); + rsp.local_id = req->remote_id; rsp.remote_id = req->local_id; rsp.status = A2MP_STATUS_SUCCESS; @@ -682,6 +694,8 @@ static int a2mp_chan_recv_cb(struct l2ca if (err) { struct a2mp_cmd_rej rej; + memset(&rej, 0, sizeof(rej)); + rej.reason = cpu_to_le16(0); hdr = (void *) skb->data; @@ -905,6 +919,8 @@ void a2mp_send_getinfo_rsp(struct hci_de BT_DBG("%s mgr %p", hdev->name, mgr); + memset(&rsp, 0, sizeof(rsp)); + rsp.id = hdev->id; rsp.status = A2MP_STATUS_INVALID_CTRL_ID; @@ -1002,6 +1018,8 @@ void a2mp_send_create_phy_link_rsp(struc if (!mgr) return; + memset(&rsp, 0, sizeof(rsp)); + hs_hcon = hci_conn_hash_lookup_state(hdev, AMP_LINK, BT_CONNECT); if (!hs_hcon) { rsp.status = A2MP_STATUS_UNABLE_START_LINK_CREATION; @@ -1034,6 +1052,8 @@ void a2mp_discover_amp(struct l2cap_chan mgr->bredr_chan = chan; + memset(&req, 0, sizeof(req)); + req.mtu = cpu_to_le16(L2CAP_A2MP_DEFAULT_MTU); req.ext_feat = 0; a2mp_send(mgr, A2MP_DISCOVER_REQ, 1, sizeof(req), &req);