nl80211: Generate deauth/disassoc event for locally generated frames
[linux-2.6.git] / net / wireless / mlme.c
1 /*
2  * cfg80211 MLME SAP interface
3  *
4  * Copyright (c) 2009, Jouni Malinen <j@w1.fi>
5  */
6
7 #include <linux/kernel.h>
8 #include <linux/module.h>
9 #include <linux/netdevice.h>
10 #include <linux/nl80211.h>
11 #include <net/cfg80211.h>
12 #include "core.h"
13 #include "nl80211.h"
14
15 void cfg80211_send_rx_auth(struct net_device *dev, const u8 *buf, size_t len)
16 {
17         struct wiphy *wiphy = dev->ieee80211_ptr->wiphy;
18         struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy);
19         nl80211_send_rx_auth(rdev, dev, buf, len);
20 }
21 EXPORT_SYMBOL(cfg80211_send_rx_auth);
22
23 void cfg80211_send_rx_assoc(struct net_device *dev, const u8 *buf, size_t len)
24 {
25         struct wiphy *wiphy = dev->ieee80211_ptr->wiphy;
26         struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy);
27         nl80211_send_rx_assoc(rdev, dev, buf, len);
28 }
29 EXPORT_SYMBOL(cfg80211_send_rx_assoc);
30
31 void cfg80211_send_deauth(struct net_device *dev, const u8 *buf, size_t len)
32 {
33         struct wiphy *wiphy = dev->ieee80211_ptr->wiphy;
34         struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy);
35         nl80211_send_deauth(rdev, dev, buf, len);
36 }
37 EXPORT_SYMBOL(cfg80211_send_deauth);
38
39 void cfg80211_send_disassoc(struct net_device *dev, const u8 *buf, size_t len)
40 {
41         struct wiphy *wiphy = dev->ieee80211_ptr->wiphy;
42         struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy);
43         nl80211_send_disassoc(rdev, dev, buf, len);
44 }
45 EXPORT_SYMBOL(cfg80211_send_disassoc);