Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream
Conflicts: drivers/net/wireless/zd1211rw/zd_mac.h net/ieee80211/softmac/ieee80211softmac_assoc.c
This commit is contained in:
@ -431,6 +431,17 @@ ieee80211softmac_handle_assoc_response(struct net_device * dev,
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
ieee80211softmac_try_reassoc(struct ieee80211softmac_device *mac)
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&mac->lock, flags);
|
||||
mac->associnfo.associating = 1;
|
||||
schedule_work(&mac->associnfo.work);
|
||||
spin_unlock_irqrestore(&mac->lock, flags);
|
||||
}
|
||||
|
||||
int
|
||||
ieee80211softmac_handle_disassoc(struct net_device * dev,
|
||||
struct ieee80211_disassoc *disassoc)
|
||||
@ -449,8 +460,7 @@ ieee80211softmac_handle_disassoc(struct net_device * dev,
|
||||
dprintk(KERN_INFO PFX "got disassoc frame\n");
|
||||
ieee80211softmac_disassoc(mac);
|
||||
|
||||
/* try to reassociate */
|
||||
schedule_delayed_work(&mac->associnfo.work, 0);
|
||||
ieee80211softmac_try_reassoc(mac);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -337,6 +337,8 @@ ieee80211softmac_deauth_from_net(struct ieee80211softmac_device *mac,
|
||||
/* can't transmit data right now... */
|
||||
netif_carrier_off(mac->dev);
|
||||
spin_unlock_irqrestore(&mac->lock, flags);
|
||||
|
||||
ieee80211softmac_try_reassoc(mac);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -239,4 +239,6 @@ void ieee80211softmac_call_events_locked(struct ieee80211softmac_device *mac, in
|
||||
int ieee80211softmac_notify_internal(struct ieee80211softmac_device *mac,
|
||||
int event, void *event_context, notify_function_ptr fun, void *context, gfp_t gfp_mask);
|
||||
|
||||
void ieee80211softmac_try_reassoc(struct ieee80211softmac_device *mac);
|
||||
|
||||
#endif /* IEEE80211SOFTMAC_PRIV_H_ */
|
||||
|
@ -495,7 +495,8 @@ ieee80211softmac_wx_set_mlme(struct net_device *dev,
|
||||
printk(KERN_DEBUG PFX "wx_set_mlme: we should know the net here...\n");
|
||||
goto out;
|
||||
}
|
||||
return ieee80211softmac_deauth_req(mac, net, reason);
|
||||
err = ieee80211softmac_deauth_req(mac, net, reason);
|
||||
goto out;
|
||||
case IW_MLME_DISASSOC:
|
||||
ieee80211softmac_send_disassoc_req(mac, reason);
|
||||
mac->associnfo.associated = 0;
|
||||
|
Reference in New Issue
Block a user