Commit c318f884 authored by Pan Bian's avatar Pan Bian Committed by Greg Kroah-Hartman

rtl818x: fix potential use after free

[ Upstream commit afbb1947 ]

entry is released via usb_put_urb just after calling usb_submit_urb.
However, entry is used if the submission fails, resulting in a use after
free bug. The patch fixes this.
Signed-off-by: default avatarPan Bian <bianpan2016@163.com>
ACKed-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 7cf86c89
...@@ -444,12 +444,13 @@ static int rtl8187_init_urbs(struct ieee80211_hw *dev) ...@@ -444,12 +444,13 @@ static int rtl8187_init_urbs(struct ieee80211_hw *dev)
skb_queue_tail(&priv->rx_queue, skb); skb_queue_tail(&priv->rx_queue, skb);
usb_anchor_urb(entry, &priv->anchored); usb_anchor_urb(entry, &priv->anchored);
ret = usb_submit_urb(entry, GFP_KERNEL); ret = usb_submit_urb(entry, GFP_KERNEL);
usb_put_urb(entry);
if (ret) { if (ret) {
skb_unlink(skb, &priv->rx_queue); skb_unlink(skb, &priv->rx_queue);
usb_unanchor_urb(entry); usb_unanchor_urb(entry);
usb_put_urb(entry);
goto err; goto err;
} }
usb_put_urb(entry);
} }
return ret; return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment