Skip to contentSkip to conversation

mwl8k: fix configure_filter() memory leak on error

PATCH New Lennert Buytenhek 1 participant 1 message Jan 2, 2010 Networking drivers (wireless)

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 mwl8k: fix configure_filter() memory leak on error

If there was an error acquiring the firmware lock in mwl8k_configure_filter(), we would end up leaking the multicast command packet prepared by mwl8k_prepare_multicast().

---
 drivers/net/wireless/mwl8k.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
drivers/net/wireless/mwl8k.c +3 -1
index 59d4915..59f9210 100644
@@ -3157,8 +3157,10 @@ static void mwl8k_configure_filter(struct ieee80211_hw *hw,
 	/* Clear unsupported feature flags */
 	*total_flags &= FIF_ALLMULTI | FIF_BCN_PRBRESP_PROMISC;
 
-	if (mwl8k_fw_lock(hw))
+	if (mwl8k_fw_lock(hw)) {
+		kfree(cmd);
 		return;
+	}
 
 	if (priv->sniffer_enabled) {
 		mwl8k_enable_sniffer(hw, 0);
Signature · 1 line
1.5.6.4