diff options
Diffstat (limited to 'include/uapi/linux/nl80211.h')
| -rw-r--r-- | include/uapi/linux/nl80211.h | 147 |
1 files changed, 139 insertions, 8 deletions
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index 4b28dc07bcb1..b37bd5a1cb82 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h | |||
| @@ -227,7 +227,11 @@ | |||
| 227 | * the interface identified by %NL80211_ATTR_IFINDEX. | 227 | * the interface identified by %NL80211_ATTR_IFINDEX. |
| 228 | * @NL80211_CMD_DEL_STATION: Remove a station identified by %NL80211_ATTR_MAC | 228 | * @NL80211_CMD_DEL_STATION: Remove a station identified by %NL80211_ATTR_MAC |
| 229 | * or, if no MAC address given, all stations, on the interface identified | 229 | * or, if no MAC address given, all stations, on the interface identified |
| 230 | * by %NL80211_ATTR_IFINDEX. | 230 | * by %NL80211_ATTR_IFINDEX. %NL80211_ATTR_MGMT_SUBTYPE and |
| 231 | * %NL80211_ATTR_REASON_CODE can optionally be used to specify which type | ||
| 232 | * of disconnection indication should be sent to the station | ||
| 233 | * (Deauthentication or Disassociation frame and reason code for that | ||
| 234 | * frame). | ||
| 231 | * | 235 | * |
| 232 | * @NL80211_CMD_GET_MPATH: Get mesh path attributes for mesh path to | 236 | * @NL80211_CMD_GET_MPATH: Get mesh path attributes for mesh path to |
| 233 | * destination %NL80211_ATTR_MAC on the interface identified by | 237 | * destination %NL80211_ATTR_MAC on the interface identified by |
| @@ -639,7 +643,18 @@ | |||
| 639 | * @NL80211_CMD_CH_SWITCH_NOTIFY: An AP or GO may decide to switch channels | 643 | * @NL80211_CMD_CH_SWITCH_NOTIFY: An AP or GO may decide to switch channels |
| 640 | * independently of the userspace SME, send this event indicating | 644 | * independently of the userspace SME, send this event indicating |
| 641 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ and the | 645 | * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ and the |
| 642 | * attributes determining channel width. | 646 | * attributes determining channel width. This indication may also be |
| 647 | * sent when a remotely-initiated switch (e.g., when a STA receives a CSA | ||
| 648 | * from the remote AP) is completed; | ||
| 649 | * | ||
| 650 | * @NL80211_CMD_CH_SWITCH_STARTED_NOTIFY: Notify that a channel switch | ||
| 651 | * has been started on an interface, regardless of the initiator | ||
| 652 | * (ie. whether it was requested from a remote device or | ||
| 653 | * initiated on our own). It indicates that | ||
| 654 | * %NL80211_ATTR_IFINDEX will be on %NL80211_ATTR_WIPHY_FREQ | ||
| 655 | * after %NL80211_ATTR_CH_SWITCH_COUNT TBTT's. The userspace may | ||
| 656 | * decide to react to this indication by requesting other | ||
| 657 | * interfaces to change channel as well. | ||
| 643 | * | 658 | * |
| 644 | * @NL80211_CMD_START_P2P_DEVICE: Start the given P2P Device, identified by | 659 | * @NL80211_CMD_START_P2P_DEVICE: Start the given P2P Device, identified by |
| 645 | * its %NL80211_ATTR_WDEV identifier. It must have been created with | 660 | * its %NL80211_ATTR_WDEV identifier. It must have been created with |
| @@ -738,6 +753,27 @@ | |||
| 738 | * before removing a station entry entirely, or before disassociating | 753 | * before removing a station entry entirely, or before disassociating |
| 739 | * or similar, cleanup will happen in the driver/device in this case. | 754 | * or similar, cleanup will happen in the driver/device in this case. |
| 740 | * | 755 | * |
| 756 | * @NL80211_CMD_GET_MPP: Get mesh path attributes for mesh proxy path to | ||
| 757 | * destination %NL80211_ATTR_MAC on the interface identified by | ||
| 758 | * %NL80211_ATTR_IFINDEX. | ||
| 759 | * | ||
| 760 | * @NL80211_CMD_JOIN_OCB: Join the OCB network. The center frequency and | ||
| 761 | * bandwidth of a channel must be given. | ||
| 762 | * @NL80211_CMD_LEAVE_OCB: Leave the OCB network -- no special arguments, the | ||
| 763 | * network is determined by the network interface. | ||
| 764 | * | ||
| 765 | * @NL80211_CMD_TDLS_CHANNEL_SWITCH: Start channel-switching with a TDLS peer, | ||
| 766 | * identified by the %NL80211_ATTR_MAC parameter. A target channel is | ||
| 767 | * provided via %NL80211_ATTR_WIPHY_FREQ and other attributes determining | ||
| 768 | * channel width/type. The target operating class is given via | ||
| 769 | * %NL80211_ATTR_OPER_CLASS. | ||
| 770 | * The driver is responsible for continually initiating channel-switching | ||
| 771 | * operations and returning to the base channel for communication with the | ||
| 772 | * AP. | ||
| 773 | * @NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH: Stop channel-switching with a TDLS | ||
| 774 | * peer given by %NL80211_ATTR_MAC. Both peers must be on the base channel | ||
| 775 | * when this command completes. | ||
| 776 | * | ||
| 741 | * @NL80211_CMD_MAX: highest used command number | 777 | * @NL80211_CMD_MAX: highest used command number |
| 742 | * @__NL80211_CMD_AFTER_LAST: internal use | 778 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 743 | */ | 779 | */ |
| @@ -912,6 +948,16 @@ enum nl80211_commands { | |||
| 912 | NL80211_CMD_ADD_TX_TS, | 948 | NL80211_CMD_ADD_TX_TS, |
| 913 | NL80211_CMD_DEL_TX_TS, | 949 | NL80211_CMD_DEL_TX_TS, |
| 914 | 950 | ||
| 951 | NL80211_CMD_GET_MPP, | ||
| 952 | |||
| 953 | NL80211_CMD_JOIN_OCB, | ||
| 954 | NL80211_CMD_LEAVE_OCB, | ||
| 955 | |||
| 956 | NL80211_CMD_CH_SWITCH_STARTED_NOTIFY, | ||
| 957 | |||
| 958 | NL80211_CMD_TDLS_CHANNEL_SWITCH, | ||
| 959 | NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH, | ||
| 960 | |||
| 915 | /* add new commands above here */ | 961 | /* add new commands above here */ |
| 916 | 962 | ||
| 917 | /* used to define NL80211_CMD_MAX below */ | 963 | /* used to define NL80211_CMD_MAX below */ |
| @@ -1606,9 +1652,9 @@ enum nl80211_commands { | |||
| 1606 | * @NL80211_ATTR_TDLS_PEER_CAPABILITY: flags for TDLS peer capabilities, u32. | 1652 | * @NL80211_ATTR_TDLS_PEER_CAPABILITY: flags for TDLS peer capabilities, u32. |
| 1607 | * As specified in the &enum nl80211_tdls_peer_capability. | 1653 | * As specified in the &enum nl80211_tdls_peer_capability. |
| 1608 | * | 1654 | * |
| 1609 | * @NL80211_ATTR_IFACE_SOCKET_OWNER: flag attribute, if set during interface | 1655 | * @NL80211_ATTR_SOCKET_OWNER: Flag attribute, if set during interface |
| 1610 | * creation then the new interface will be owned by the netlink socket | 1656 | * creation then the new interface will be owned by the netlink socket |
| 1611 | * that created it and will be destroyed when the socket is closed | 1657 | * that created it and will be destroyed when the socket is closed. |
| 1612 | * | 1658 | * |
| 1613 | * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is | 1659 | * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is |
| 1614 | * the TDLS link initiator. | 1660 | * the TDLS link initiator. |
| @@ -1638,6 +1684,11 @@ enum nl80211_commands { | |||
| 1638 | * @NL80211_ATTR_SMPS_MODE: SMPS mode to use (ap mode). see | 1684 | * @NL80211_ATTR_SMPS_MODE: SMPS mode to use (ap mode). see |
| 1639 | * &enum nl80211_smps_mode. | 1685 | * &enum nl80211_smps_mode. |
| 1640 | * | 1686 | * |
| 1687 | * @NL80211_ATTR_OPER_CLASS: operating class | ||
| 1688 | * | ||
| 1689 | * @NL80211_ATTR_MAC_MASK: MAC address mask | ||
| 1690 | * | ||
| 1691 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available | ||
| 1641 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 1692 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 1642 | * @__NL80211_ATTR_AFTER_LAST: internal use | 1693 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| 1643 | */ | 1694 | */ |
| @@ -1973,7 +2024,7 @@ enum nl80211_attrs { | |||
| 1973 | 2024 | ||
| 1974 | NL80211_ATTR_TDLS_PEER_CAPABILITY, | 2025 | NL80211_ATTR_TDLS_PEER_CAPABILITY, |
| 1975 | 2026 | ||
| 1976 | NL80211_ATTR_IFACE_SOCKET_OWNER, | 2027 | NL80211_ATTR_SOCKET_OWNER, |
| 1977 | 2028 | ||
| 1978 | NL80211_ATTR_CSA_C_OFFSETS_TX, | 2029 | NL80211_ATTR_CSA_C_OFFSETS_TX, |
| 1979 | NL80211_ATTR_MAX_CSA_COUNTERS, | 2030 | NL80211_ATTR_MAX_CSA_COUNTERS, |
| @@ -1990,15 +2041,21 @@ enum nl80211_attrs { | |||
| 1990 | 2041 | ||
| 1991 | NL80211_ATTR_SMPS_MODE, | 2042 | NL80211_ATTR_SMPS_MODE, |
| 1992 | 2043 | ||
| 2044 | NL80211_ATTR_OPER_CLASS, | ||
| 2045 | |||
| 2046 | NL80211_ATTR_MAC_MASK, | ||
| 2047 | |||
| 1993 | /* add attributes here, update the policy in nl80211.c */ | 2048 | /* add attributes here, update the policy in nl80211.c */ |
| 1994 | 2049 | ||
| 1995 | __NL80211_ATTR_AFTER_LAST, | 2050 | __NL80211_ATTR_AFTER_LAST, |
| 2051 | NUM_NL80211_ATTR = __NL80211_ATTR_AFTER_LAST, | ||
| 1996 | NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1 | 2052 | NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1 |
| 1997 | }; | 2053 | }; |
| 1998 | 2054 | ||
| 1999 | /* source-level API compatibility */ | 2055 | /* source-level API compatibility */ |
| 2000 | #define NL80211_ATTR_SCAN_GENERATION NL80211_ATTR_GENERATION | 2056 | #define NL80211_ATTR_SCAN_GENERATION NL80211_ATTR_GENERATION |
| 2001 | #define NL80211_ATTR_MESH_PARAMS NL80211_ATTR_MESH_CONFIG | 2057 | #define NL80211_ATTR_MESH_PARAMS NL80211_ATTR_MESH_CONFIG |
| 2058 | #define NL80211_ATTR_IFACE_SOCKET_OWNER NL80211_ATTR_SOCKET_OWNER | ||
| 2002 | 2059 | ||
| 2003 | /* | 2060 | /* |
| 2004 | * Allow user space programs to use #ifdef on new attributes by defining them | 2061 | * Allow user space programs to use #ifdef on new attributes by defining them |
| @@ -2064,6 +2121,8 @@ enum nl80211_attrs { | |||
| 2064 | * and therefore can't be created in the normal ways, use the | 2121 | * and therefore can't be created in the normal ways, use the |
| 2065 | * %NL80211_CMD_START_P2P_DEVICE and %NL80211_CMD_STOP_P2P_DEVICE | 2122 | * %NL80211_CMD_START_P2P_DEVICE and %NL80211_CMD_STOP_P2P_DEVICE |
| 2066 | * commands to create and destroy one | 2123 | * commands to create and destroy one |
| 2124 | * @NL80211_IF_TYPE_OCB: Outside Context of a BSS | ||
| 2125 | * This mode corresponds to the MIB variable dot11OCBActivated=true | ||
| 2067 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined | 2126 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined |
| 2068 | * @NUM_NL80211_IFTYPES: number of defined interface types | 2127 | * @NUM_NL80211_IFTYPES: number of defined interface types |
| 2069 | * | 2128 | * |
| @@ -2083,6 +2142,7 @@ enum nl80211_iftype { | |||
| 2083 | NL80211_IFTYPE_P2P_CLIENT, | 2142 | NL80211_IFTYPE_P2P_CLIENT, |
| 2084 | NL80211_IFTYPE_P2P_GO, | 2143 | NL80211_IFTYPE_P2P_GO, |
| 2085 | NL80211_IFTYPE_P2P_DEVICE, | 2144 | NL80211_IFTYPE_P2P_DEVICE, |
| 2145 | NL80211_IFTYPE_OCB, | ||
| 2086 | 2146 | ||
| 2087 | /* keep last */ | 2147 | /* keep last */ |
| 2088 | NUM_NL80211_IFTYPES, | 2148 | NUM_NL80211_IFTYPES, |
| @@ -2631,6 +2691,11 @@ enum nl80211_sched_scan_match_attr { | |||
| 2631 | * @NL80211_RRF_AUTO_BW: maximum available bandwidth should be calculated | 2691 | * @NL80211_RRF_AUTO_BW: maximum available bandwidth should be calculated |
| 2632 | * base on contiguous rules and wider channels will be allowed to cross | 2692 | * base on contiguous rules and wider channels will be allowed to cross |
| 2633 | * multiple contiguous/overlapping frequency ranges. | 2693 | * multiple contiguous/overlapping frequency ranges. |
| 2694 | * @NL80211_RRF_GO_CONCURRENT: See &NL80211_FREQUENCY_ATTR_GO_CONCURRENT | ||
| 2695 | * @NL80211_RRF_NO_HT40MINUS: channels can't be used in HT40- operation | ||
| 2696 | * @NL80211_RRF_NO_HT40PLUS: channels can't be used in HT40+ operation | ||
| 2697 | * @NL80211_RRF_NO_80MHZ: 80MHz operation not allowed | ||
| 2698 | * @NL80211_RRF_NO_160MHZ: 160MHz operation not allowed | ||
| 2634 | */ | 2699 | */ |
| 2635 | enum nl80211_reg_rule_flags { | 2700 | enum nl80211_reg_rule_flags { |
| 2636 | NL80211_RRF_NO_OFDM = 1<<0, | 2701 | NL80211_RRF_NO_OFDM = 1<<0, |
| @@ -2643,11 +2708,18 @@ enum nl80211_reg_rule_flags { | |||
| 2643 | NL80211_RRF_NO_IR = 1<<7, | 2708 | NL80211_RRF_NO_IR = 1<<7, |
| 2644 | __NL80211_RRF_NO_IBSS = 1<<8, | 2709 | __NL80211_RRF_NO_IBSS = 1<<8, |
| 2645 | NL80211_RRF_AUTO_BW = 1<<11, | 2710 | NL80211_RRF_AUTO_BW = 1<<11, |
