diff options
| author | David S. Miller <davem@sunset.davemloft.net> | 2007-05-31 01:23:58 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@sunset.davemloft.net> | 2007-05-31 01:23:58 -0700 | 
| commit | 1acf6ba085777f91e9a815bb6b4dbe0fe62823b0 (patch) | |
| tree | c8da007bb9627be636bcb6a48cd6710ff239ed84 | |
| parent | 9a834b87c5544c347fd788cd9d4eb276402ab54a (diff) | |
| parent | 91fa558ba28b0014205f2c1a75b1cceb4298aa04 (diff) | |
Merge branch 'mac80211' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
| -rw-r--r-- | net/mac80211/ieee80211.c | 6 | ||||
| -rw-r--r-- | net/mac80211/ieee80211_sta.c | 4 | 
2 files changed, 8 insertions, 2 deletions
| diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c index 6e36df67f8d5..4e84f24fd439 100644 --- a/net/mac80211/ieee80211.c +++ b/net/mac80211/ieee80211.c @@ -2474,6 +2474,8 @@ static int ieee80211_open(struct net_device *dev)  	if (sdata->type == IEEE80211_IF_TYPE_STA &&  	    !local->user_space_mlme)  		netif_carrier_off(dev); +	else +		netif_carrier_on(dev);  	netif_start_queue(dev);  	return 0; @@ -3278,8 +3280,10 @@ ieee80211_rx_h_defragment(struct ieee80211_txrx_data *rx)  			return TXRX_DROP;  		}  	} -	while ((skb = __skb_dequeue(&entry->skb_list))) +	while ((skb = __skb_dequeue(&entry->skb_list))) {  		memcpy(skb_put(rx->skb, skb->len), skb->data, skb->len); +		dev_kfree_skb(skb); +	}  	/* Complete frame has been reassembled - process it now */  	rx->fragmented = 1; diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c index 3e07e9d6fa42..9f30ae4c2ab3 100644 --- a/net/mac80211/ieee80211_sta.c +++ b/net/mac80211/ieee80211_sta.c @@ -1155,6 +1155,8 @@ static void ieee80211_rx_mgmt_assoc_resp(struct net_device *dev,  	if (status_code != WLAN_STATUS_SUCCESS) {  		printk(KERN_DEBUG "%s: AP denied association (code=%d)\n",  		       dev->name, status_code); +		if (status_code == WLAN_STATUS_REASSOC_NO_ASSOC) +			ifsta->prev_bssid_set = 0;  		return;  	} @@ -2995,7 +2997,7 @@ struct sta_info * ieee80211_ibss_add_sta(struct net_device *dev,  {  	struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr);  	struct sta_info *sta; -	struct ieee80211_sub_if_data *sdata = NULL; +	struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);  	/* TODO: Could consider removing the least recently used entry and  	 * allow new one to be added. */ | 
