Bluetooth: hci_sync: Avoid use-after-free in dbg for hci_add_adv_monitor()
authorManish Mandlik <mmandlik@google.com>
Fri, 4 Aug 2023 18:14:45 +0000 (11:14 -0700)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Fri, 11 Aug 2023 18:56:35 +0000 (11:56 -0700)
commita2bcd2b63271a93a695fabbfbf459c603d956d48
tree815444d71ee42efd9d83bbd29077fa8afa3b51d6
parent3673952cf0c6cf81b06c66a0b788abeeb02ff3ae
Bluetooth: hci_sync: Avoid use-after-free in dbg for hci_add_adv_monitor()

KSAN reports use-after-free in hci_add_adv_monitor().

While adding an adv monitor,
    hci_add_adv_monitor() calls ->
    msft_add_monitor_pattern() calls ->
    msft_add_monitor_sync() calls ->
    msft_le_monitor_advertisement_cb() calls in an error case ->
    hci_free_adv_monitor() which frees the *moniter.

This is referenced by bt_dev_dbg() in hci_add_adv_monitor().

Fix the bt_dev_dbg() by using handle instead of monitor->handle.

Fixes: b747a83690c8 ("Bluetooth: hci_sync: Refactor add Adv Monitor")
Signed-off-by: Manish Mandlik <mmandlik@google.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
net/bluetooth/hci_core.c