aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJouni Malinen <jouni.malinen@atheros.com>2009-04-22 14:38:25 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-04-22 16:57:21 -0400
commit1965c85331ed29dc4fd32479ff31663e3e9a518f (patch)
tree1542f0fdf4121491671bbb604564cb4f6dd1ad58 /include
parentff2ba188fc5eaae529cb2ef9b127c3ca2a7df4b9 (diff)
nl80211: Add event for authentication/association timeout
SME needs to be notified when the authentication or association attempt times out and MLME has stopped processing in order to allow the SME to decide what to do next. Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nl80211.h13
-rw-r--r--include/net/cfg80211.h22
2 files changed, 31 insertions, 4 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h
index b6a48dd502ce..e9fd13aa79f0 100644
--- a/include/linux/nl80211.h
+++ b/include/linux/nl80211.h
@@ -203,8 +203,12 @@
203 * frame, i.e., it was for the local STA and was received in correct 203 * frame, i.e., it was for the local STA and was received in correct
204 * state. This is similar to MLME-AUTHENTICATE.confirm primitive in the 204 * state. This is similar to MLME-AUTHENTICATE.confirm primitive in the
205 * MLME SAP interface (kernel providing MLME, userspace SME). The 205 * MLME SAP interface (kernel providing MLME, userspace SME). The
206 * included NL80211_ATTR_FRAME attribute contains the management frame 206 * included %NL80211_ATTR_FRAME attribute contains the management frame
207 * (including both the header and frame body, but not FCS). 207 * (including both the header and frame body, but not FCS). This event is
208 * also used to indicate if the authentication attempt timed out. In that
209 * case the %NL80211_ATTR_FRAME attribute is replaced with a
210 * %NL80211_ATTR_TIMED_OUT flag (and %NL80211_ATTR_MAC to indicate which
211 * pending authentication timed out).
208 * @NL80211_CMD_ASSOCIATE: association request and notification; like 212 * @NL80211_CMD_ASSOCIATE: association request and notification; like
209 * NL80211_CMD_AUTHENTICATE but for Association and Reassociation 213 * NL80211_CMD_AUTHENTICATE but for Association and Reassociation
210 * (similar to MLME-ASSOCIATE.request, MLME-REASSOCIATE.request, 214 * (similar to MLME-ASSOCIATE.request, MLME-REASSOCIATE.request,
@@ -487,6 +491,9 @@ enum nl80211_commands {
487 * @NL80211_ATTR_FREQ_FIXED: a flag indicating the IBSS should not try to look 491 * @NL80211_ATTR_FREQ_FIXED: a flag indicating the IBSS should not try to look
488 * for other networks on different channels 492 * for other networks on different channels
489 * 493 *
494 * @NL80211_ATTR_TIMED_OUT: a flag indicating than an operation timed out; this
495 * is used, e.g., with %NL80211_CMD_AUTHENTICATE event
496 *
490 * @NL80211_ATTR_MAX: highest attribute number currently defined 497 * @NL80211_ATTR_MAX: highest attribute number currently defined
491 * @__NL80211_ATTR_AFTER_LAST: internal use 498 * @__NL80211_ATTR_AFTER_LAST: internal use
492 */ 499 */
@@ -587,6 +594,8 @@ enum nl80211_attrs {
587 NL80211_ATTR_WIPHY_FRAG_THRESHOLD, 594 NL80211_ATTR_WIPHY_FRAG_THRESHOLD,
588 NL80211_ATTR_WIPHY_RTS_THRESHOLD, 595 NL80211_ATTR_WIPHY_RTS_THRESHOLD,
589 596
597 NL80211_ATTR_TIMED_OUT,
598
590 /* add attributes here, update the policy in nl80211.c */ 599 /* add attributes here, update the policy in nl80211.c */
591 600
592 __NL80211_ATTR_AFTER_LAST, 601 __NL80211_ATTR_AFTER_LAST,
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 7f7b53b69cb2..b8a76764e1c5 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1475,22 +1475,40 @@ void cfg80211_unlink_bss(struct wiphy *wiphy, struct cfg80211_bss *bss);
1475 * @len: length of the frame data 1475 * @len: length of the frame data
1476 * 1476 *
1477 * This function is called whenever an authentication has been processed in 1477 * This function is called whenever an authentication has been processed in
1478 * station mode. 1478 * station mode. The driver is required to call either this function or
1479 * cfg80211_send_auth_timeout() to indicate the result of cfg80211_ops::auth()
1480 * call.
1479 */ 1481 */
1480void cfg80211_send_rx_auth(struct net_device *dev, const u8 *buf, size_t len); 1482void cfg80211_send_rx_auth(struct net_device *dev, const u8 *buf, size_t len);
1481 1483
1482/** 1484/**
1485 * cfg80211_send_auth_timeout - notification of timed out authentication
1486 * @dev: network device
1487 * @addr: The MAC address of the device with which the authentication timed out
1488 */
1489void cfg80211_send_auth_timeout(struct net_device *dev, const u8 *addr);
1490
1491/**
1483 * cfg80211_send_rx_assoc - notification of processed association 1492 * cfg80211_send_rx_assoc - notification of processed association
1484 * @dev: network device 1493 * @dev: network device
1485 * @buf: (re)association response frame (header + body) 1494 * @buf: (re)association response frame (header + body)
1486 * @len: length of the frame data 1495 * @len: length of the frame data
1487 * 1496 *
1488 * This function is called whenever a (re)association response has been 1497 * This function is called whenever a (re)association response has been
1489 * processed in station mode. 1498 * processed in station mode. The driver is required to call either this
1499 * function or cfg80211_send_assoc_timeout() to indicate the result of
1500 * cfg80211_ops::assoc() call.
1490 */ 1501 */
1491void cfg80211_send_rx_assoc(struct net_device *dev, const u8 *buf, size_t len); 1502void cfg80211_send_rx_assoc(struct net_device *dev, const u8 *buf, size_t len);
1492 1503
1493/** 1504/**
1505 * cfg80211_send_assoc_timeout - notification of timed out association
1506 * @dev: network device
1507 * @addr: The MAC address of the device with which the association timed out
1508 */
1509void cfg80211_send_assoc_timeout(struct net_device *dev, const u8 *addr);
1510
1511/**
1494 * cfg80211_send_deauth - notification of processed deauthentication 1512 * cfg80211_send_deauth - notification of processed deauthentication
1495 * @dev: network device 1513 * @dev: network device
1496 * @buf: deauthentication frame (header + body) 1514 * @buf: deauthentication frame (header + body)