Patch "Bluetooth: Ignore too large handle values in BIG" has been added to the 6.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    Bluetooth: Ignore too large handle values in BIG

to the 6.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bluetooth-ignore-too-large-handle-values-in-big.patch
and it can be found in the queue-6.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 6ea3f2d38e091727c050a2d6afd1c8fbdf40bd61
Author: Edward Adam Davis <eadavis@xxxxxx>
Date:   Mon Jun 17 19:09:37 2024 +0800

    Bluetooth: Ignore too large handle values in BIG
    
    [ Upstream commit 015d79c96d62cd8a4a359fcf5be40d58088c936b ]
    
    hci_le_big_sync_established_evt is necessary to filter out cases where the
    handle value is belonging to ida id range, otherwise ida will be erroneously
    released in hci_conn_cleanup.
    
    Fixes: 181a42edddf5 ("Bluetooth: Make handle of hci_conn be unique")
    Reported-by: syzbot+b2545b087a01a7319474@xxxxxxxxxxxxxxxxxxxxxxxxx
    Closes: https://syzkaller.appspot.com/bug?extid=b2545b087a01a7319474
    Signed-off-by: Edward Adam Davis <eadavis@xxxxxx>
    Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index 0b3a76fcfedf5..eb59f418eb6dc 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -6910,6 +6910,10 @@ static void hci_le_big_sync_established_evt(struct hci_dev *hdev, void *data,
 
 		bis = hci_conn_hash_lookup_handle(hdev, handle);
 		if (!bis) {
+			if (handle > HCI_CONN_HANDLE_MAX) {
+				bt_dev_dbg(hdev, "ignore too large handle %u", handle);
+				continue;
+			}
 			bis = hci_conn_add(hdev, ISO_LINK, BDADDR_ANY,
 					   HCI_ROLE_SLAVE, handle);
 			if (IS_ERR(bis))




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux