Skip to contentSkip to conversation

mac80211: fix access to null skb

PATCH In review Luis Carlos Cobo 2 participants 2 messages May 5, 2008 mac80211

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mac80211: fix access to null skb

Without this patch, if xmit_skb is null but net_ratelimit() returns 0 we would go to the else branch and access the null xmit_skb. Pointed out by Johannes Berg.

---
 net/mac80211/rx.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
net/mac80211/rx.c +3 -3
index e8b89c8..bc66d99 100644
@@ -1300,11 +1300,11 @@ ieee80211_deliver_skb(struct ieee80211_rx_data *rx)
 		if (is_multicast_ether_addr(skb->data)) {
 			if (*mesh_ttl > 0) {
 				xmit_skb = skb_copy(skb, GFP_ATOMIC);
-				if (!xmit_skb && net_ratelimit())
+				if (xmit_skb)
+					xmit_skb->pkt_type = PACKET_OTHERHOST;
+				else if (net_ratelimit())
 					printk(KERN_DEBUG "%s: failed to clone "
 					       "multicast frame\n", dev->name);
-				else
-					xmit_skb->pkt_type = PACKET_OTHERHOST;
 			} else
 				IEEE80211_IFSTA_MESH_CTR_INC(&sdata->u.sta,
 							     dropped_frames_ttl);
Signature · 1 line
1.5.4.3
maintainer
#1 lore raw
Quoted 3 lines · Luis Carlos Cobo

Without this patch, if xmit_skb is null but net_ratelimit() returns 0 we would go to the else branch and access the null xmit_skb. Pointed out by Johannes Berg.

Thanks Luis, for both patches.

johannes