From: Colin Ian King Date: Thu, 21 Feb 2019 12:35:49 +0000 (+0000) Subject: rsi: fix missing null pointer check from a failed ieee80211_probereq_get call X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=74ee436f958126f96f2e10d44a8ef13cd8d46ef9;p=openwrt%2Fstaging%2Fblogic.git rsi: fix missing null pointer check from a failed ieee80211_probereq_get call The call to ieee80211_probereq_get can return NULL if a skb allocation fails, so add a null pointer check and free an earlier skb on the error exit return path. Fixes: 7fdcb8e12660 ("rsi: add support for hardware scan offload") Signed-off-by: Colin Ian King Signed-off-by: Kalle Valo --- diff --git a/drivers/net/wireless/rsi/rsi_91x_mgmt.c b/drivers/net/wireless/rsi/rsi_91x_mgmt.c index 8c17842ac507..844f2fac298f 100644 --- a/drivers/net/wireless/rsi/rsi_91x_mgmt.c +++ b/drivers/net/wireless/rsi/rsi_91x_mgmt.c @@ -1726,6 +1726,10 @@ int rsi_send_bgscan_probe_req(struct rsi_common *common, probereq_skb = ieee80211_probereq_get(common->priv->hw, vif->addr, ssid, ssid_len, scan_req->ie_len); + if (!probereq_skb) { + dev_kfree_skb(skb); + return -ENOMEM; + } memcpy(&skb->data[frame_len], probereq_skb->data, probereq_skb->len);