]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Bluetooth: ISO: don't leak skb in ISO_CONT RX
authorPauli Virtanen <pav@iki.fi>
Mon, 22 Sep 2025 18:11:22 +0000 (21:11 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 15 Oct 2025 10:00:18 +0000 (12:00 +0200)
[ Upstream commit 5bf863f4c5da055c1eb08887ae4f26d99dbc4aac ]

For ISO_CONT RX, the data from skb is copied to conn->rx_skb, but the
skb is leaked.

Free skb after copying its data.

Fixes: ccf74f2390d6 ("Bluetooth: Add BTPROTO_ISO socket type")
Signed-off-by: Pauli Virtanen <pav@iki.fi>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/bluetooth/iso.c

index e38f52638627dbafad89884d45560269eb4047d8..2cd0b963c96bd0b05dd0ac2e4d9f13ee7416628f 100644 (file)
@@ -2304,7 +2304,7 @@ void iso_recv(struct hci_conn *hcon, struct sk_buff *skb, u16 flags)
                skb_copy_from_linear_data(skb, skb_put(conn->rx_skb, skb->len),
                                          skb->len);
                conn->rx_len -= skb->len;
-               return;
+               break;
 
        case ISO_END:
                skb_copy_from_linear_data(skb, skb_put(conn->rx_skb, skb->len),