diff options
Diffstat (limited to 'include/linux/nl80211.h')
-rw-r--r-- | include/linux/nl80211.h | 54 |
1 files changed, 50 insertions, 4 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index 2f3878806403..7df9b500c804 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h | |||
@@ -565,6 +565,19 @@ | |||
565 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ with | 565 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ with |
566 | * %NL80211_ATTR_WIPHY_CHANNEL_TYPE. | 566 | * %NL80211_ATTR_WIPHY_CHANNEL_TYPE. |
567 | * | 567 | * |
568 | * @NL80211_CMD_START_P2P_DEVICE: Start the given P2P Device, identified by | ||
569 | * its %NL80211_ATTR_WDEV identifier. It must have been created with | ||
570 | * %NL80211_CMD_NEW_INTERFACE previously. After it has been started, the | ||
571 | * P2P Device can be used for P2P operations, e.g. remain-on-channel and | ||
572 | * public action frame TX. | ||
573 | * @NL80211_CMD_STOP_P2P_DEVICE: Stop the given P2P Device, identified by | ||
574 | * its %NL80211_ATTR_WDEV identifier. | ||
575 | * | ||
576 | * @NL80211_CMD_CONN_FAILED: connection request to an AP failed; used to | ||
577 | * notify userspace that AP has rejected the connection request from a | ||
578 | * station, due to particular reason. %NL80211_ATTR_CONN_FAILED_REASON | ||
579 | * is used for this. | ||
580 | * | ||
568 | * @NL80211_CMD_MAX: highest used command number | 581 | * @NL80211_CMD_MAX: highest used command number |
569 | * @__NL80211_CMD_AFTER_LAST: internal use | 582 | * @__NL80211_CMD_AFTER_LAST: internal use |
570 | */ | 583 | */ |
@@ -708,6 +721,11 @@ enum nl80211_commands { | |||
708 | 721 | ||
709 | NL80211_CMD_CH_SWITCH_NOTIFY, | 722 | NL80211_CMD_CH_SWITCH_NOTIFY, |
710 | 723 | ||
724 | NL80211_CMD_START_P2P_DEVICE, | ||
725 | NL80211_CMD_STOP_P2P_DEVICE, | ||
726 | |||
727 | NL80211_CMD_CONN_FAILED, | ||
728 | |||
711 | /* add new commands above here */ | 729 | /* add new commands above here */ |
712 | 730 | ||
713 | /* used to define NL80211_CMD_MAX below */ | 731 | /* used to define NL80211_CMD_MAX below */ |
@@ -1251,6 +1269,10 @@ enum nl80211_commands { | |||
1251 | * was used to provide the hint. For the different types of | 1269 | * was used to provide the hint. For the different types of |
1252 | * allowed user regulatory hints see nl80211_user_reg_hint_type. | 1270 | * allowed user regulatory hints see nl80211_user_reg_hint_type. |
1253 | * | 1271 | * |
1272 | * @NL80211_ATTR_CONN_FAILED_REASON: The reason for which AP has rejected | ||
1273 | * the connection request from a station. nl80211_connect_failed_reason | ||
1274 | * enum has different reasons of connection failure. | ||
1275 | * | ||
1254 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 1276 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
1255 | * @__NL80211_ATTR_AFTER_LAST: internal use | 1277 | * @__NL80211_ATTR_AFTER_LAST: internal use |
1256 | */ | 1278 | */ |
@@ -1506,6 +1528,8 @@ enum nl80211_attrs { | |||
1506 | 1528 | ||
1507 | NL80211_ATTR_USER_REG_HINT_TYPE, | 1529 | NL80211_ATTR_USER_REG_HINT_TYPE, |
1508 | 1530 | ||
1531 | NL80211_ATTR_CONN_FAILED_REASON, | ||
1532 | |||
1509 | /* add attributes here, update the policy in nl80211.c */ | 1533 | /* add attributes here, update the policy in nl80211.c */ |
1510 | 1534 | ||
1511 | __NL80211_ATTR_AFTER_LAST, | 1535 | __NL80211_ATTR_AFTER_LAST, |
@@ -1575,6 +1599,10 @@ enum nl80211_attrs { | |||
1575 | * @NL80211_IFTYPE_MESH_POINT: mesh point | 1599 | * @NL80211_IFTYPE_MESH_POINT: mesh point |
1576 | * @NL80211_IFTYPE_P2P_CLIENT: P2P client | 1600 | * @NL80211_IFTYPE_P2P_CLIENT: P2P client |
1577 | * @NL80211_IFTYPE_P2P_GO: P2P group owner | 1601 | * @NL80211_IFTYPE_P2P_GO: P2P group owner |
1602 | * @NL80211_IFTYPE_P2P_DEVICE: P2P device interface type, this is not a netdev | ||
1603 | * and therefore can't be created in the normal ways, use the | ||
1604 | * %NL80211_CMD_START_P2P_DEVICE and %NL80211_CMD_STOP_P2P_DEVICE | ||
1605 | * commands to create and destroy one | ||
1578 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined | 1606 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined |
1579 | * @NUM_NL80211_IFTYPES: number of defined interface types | 1607 | * @NUM_NL80211_IFTYPES: number of defined interface types |
1580 | * | 1608 | * |
@@ -1593,6 +1621,7 @@ enum nl80211_iftype { | |||
1593 | NL80211_IFTYPE_MESH_POINT, | 1621 | NL80211_IFTYPE_MESH_POINT, |
1594 | NL80211_IFTYPE_P2P_CLIENT, | 1622 | NL80211_IFTYPE_P2P_CLIENT, |
1595 | NL80211_IFTYPE_P2P_GO, | 1623 | NL80211_IFTYPE_P2P_GO, |
1624 | NL80211_IFTYPE_P2P_DEVICE, | ||
1596 | 1625 | ||
1597 | /* keep last */ | 1626 | /* keep last */ |
1598 | NUM_NL80211_IFTYPES, | 1627 | NUM_NL80211_IFTYPES, |
@@ -2994,12 +3023,18 @@ enum nl80211_ap_sme_features { | |||
2994 | * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested | 3023 | * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested |
2995 | * to work properly to suppport receiving regulatory hints from | 3024 | * to work properly to suppport receiving regulatory hints from |
2996 | * cellular base stations. | 3025 | * cellular base stations. |
3026 | * @NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL: If this is set, an active | ||
3027 | * P2P Device (%NL80211_IFTYPE_P2P_DEVICE) requires its own channel | ||
3028 | * in the interface combinations, even when it's only used for scan | ||
3029 | * and remain-on-channel. This could be due to, for example, the | ||
3030 | * remain-on-channel implementation requiring a channel context. | ||
2997 | */ | 3031 | */ |
2998 | enum nl80211_feature_flags { | 3032 | enum nl80211_feature_flags { |
2999 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, | 3033 | NL80211_FEATURE_SK_TX_STATUS = 1 << 0, |
3000 | NL80211_FEATURE_HT_IBSS = 1 << 1, | 3034 | NL80211_FEATURE_HT_IBSS = 1 << 1, |
3001 | NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2, | 3035 | NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2, |
3002 | NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3, | 3036 | NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3, |
3037 | NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 1 << 4, | ||
3003 | }; | 3038 | }; |
3004 | 3039 | ||
3005 | /** | 3040 | /** |
@@ -3023,4 +3058,15 @@ enum nl80211_probe_resp_offload_support_attr { | |||
3023 | NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U = 1<<3, | 3058 | NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U = 1<<3, |
3024 | }; | 3059 | }; |
3025 | 3060 | ||
3061 | /** | ||
3062 | * enum nl80211_connect_failed_reason - connection request failed reasons | ||
3063 | * @NL80211_CONN_FAIL_MAX_CLIENTS: Maximum number of clients that can be | ||
3064 | * handled by the AP is reached. | ||
3065 | * @NL80211_CONN_FAIL_BLOCKED_CLIENT: Client's MAC is in the AP's blocklist. | ||
3066 | */ | ||
3067 | enum nl80211_connect_failed_reason { | ||
3068 | NL80211_CONN_FAIL_MAX_CLIENTS, | ||
3069 | NL80211_CONN_FAIL_BLOCKED_CLIENT, | ||
3070 | }; | ||
3071 | |||
3026 | #endif /* __LINUX_NL80211_H */ | 3072 | #endif /* __LINUX_NL80211_H */ |