Bluetooth: mgmt: Fix the command returns garbage parameter value
authorTedd Ho-Jeong An <tedd.an@intel.com>
Wed, 26 May 2021 17:36:22 +0000 (10:36 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 19 Jul 2021 07:44:54 +0000 (09:44 +0200)
[ Upstream commit 02ce2c2c24024aade65a8d91d6a596651eaf2d0a ]

When the Get Device Flags command fails, it returns the error status
with the parameters filled with the garbage values. Although the
parameters are not used, it is better to fill with zero than the random
values.

Signed-off-by: Tedd Ho-Jeong An <tedd.an@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bluetooth/mgmt.c

index 7dfb969..31a585f 100644 (file)
@@ -4038,6 +4038,8 @@ static int get_device_flags(struct sock *sk, struct hci_dev *hdev, void *data,
 
        hci_dev_lock(hdev);
 
+       memset(&rp, 0, sizeof(rp));
+
        if (cp->addr.type == BDADDR_BREDR) {
                br_params = hci_bdaddr_list_lookup_with_flags(&hdev->whitelist,
                                                              &cp->addr.bdaddr,