diff options
| author | John W. Linville <linville@tuxdriver.com> | 2012-06-22 14:39:53 -0400 |
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2012-06-22 14:39:53 -0400 |
| commit | 133189a46c2c522eb4ef26b1ede63dd0a9fdc920 (patch) | |
| tree | 04ab3567c3bea31503c4dfa94909f99dc4b3789f /include/linux | |
| parent | f761b6947dde42890beea59b020e1be87491809e (diff) | |
| parent | 0f6b3f597daab2254614e2773e322e73fb1b6f4b (diff) | |
Merge branch 'for-john' of git://git.sipsolutions.net/mac80211-next
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/ieee80211.h | 50 | ||||
| -rw-r--r-- | include/linux/nl80211.h | 150 |
2 files changed, 144 insertions, 56 deletions
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index ce9af8918514..6e0601189db9 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h | |||
| @@ -568,6 +568,26 @@ struct ieee80211s_hdr { | |||
| 568 | #define MESH_FLAGS_PS_DEEP 0x4 | 568 | #define MESH_FLAGS_PS_DEEP 0x4 |
| 569 | 569 | ||
| 570 | /** | 570 | /** |
| 571 | * enum ieee80211_preq_flags - mesh PREQ element flags | ||
| 572 | * | ||
| 573 | * @IEEE80211_PREQ_PROACTIVE_PREP_FLAG: proactive PREP subfield | ||
| 574 | */ | ||
| 575 | enum ieee80211_preq_flags { | ||
| 576 | IEEE80211_PREQ_PROACTIVE_PREP_FLAG = 1<<2, | ||
| 577 | }; | ||
| 578 | |||
| 579 | /** | ||
| 580 | * enum ieee80211_preq_target_flags - mesh PREQ element per target flags | ||
| 581 | * | ||
| 582 | * @IEEE80211_PREQ_TO_FLAG: target only subfield | ||
| 583 | * @IEEE80211_PREQ_USN_FLAG: unknown target HWMP sequence number subfield | ||
| 584 | */ | ||
| 585 | enum ieee80211_preq_target_flags { | ||
| 586 | IEEE80211_PREQ_TO_FLAG = 1<<0, | ||
| 587 | IEEE80211_PREQ_USN_FLAG = 1<<2, | ||
| 588 | }; | ||
| 589 | |||
| 590 | /** | ||
| 571 | * struct ieee80211_quiet_ie | 591 | * struct ieee80211_quiet_ie |
| 572 | * | 592 | * |
| 573 | * This structure refers to "Quiet information element" | 593 | * This structure refers to "Quiet information element" |
| @@ -1443,7 +1463,7 @@ enum ieee80211_tdls_actioncode { | |||
| 1443 | * | 1463 | * |
| 1444 | * @IEEE80211_SYNC_METHOD_NEIGHBOR_OFFSET: the default synchronization method | 1464 | * @IEEE80211_SYNC_METHOD_NEIGHBOR_OFFSET: the default synchronization method |
| 1445 | * @IEEE80211_SYNC_METHOD_VENDOR: a vendor specific synchronization method | 1465 | * @IEEE80211_SYNC_METHOD_VENDOR: a vendor specific synchronization method |
| 1446 | * that will be specified in a vendor specific information element | 1466 | * that will be specified in a vendor specific information element |
| 1447 | */ | 1467 | */ |
| 1448 | enum { | 1468 | enum { |
| 1449 | IEEE80211_SYNC_METHOD_NEIGHBOR_OFFSET = 1, | 1469 | IEEE80211_SYNC_METHOD_NEIGHBOR_OFFSET = 1, |
| @@ -1455,7 +1475,7 @@ enum { | |||
| 1455 | * | 1475 | * |
| 1456 | * @IEEE80211_PATH_PROTOCOL_HWMP: the default path selection protocol | 1476 | * @IEEE80211_PATH_PROTOCOL_HWMP: the default path selection protocol |
| 1457 | * @IEEE80211_PATH_PROTOCOL_VENDOR: a vendor specific protocol that will | 1477 | * @IEEE80211_PATH_PROTOCOL_VENDOR: a vendor specific protocol that will |
| 1458 | * be specified in a vendor specific information element | 1478 | * be specified in a vendor specific information element |
| 1459 | */ | 1479 | */ |
| 1460 | enum { | 1480 | enum { |
| 1461 | IEEE80211_PATH_PROTOCOL_HWMP = 1, | 1481 | IEEE80211_PATH_PROTOCOL_HWMP = 1, |
| @@ -1467,13 +1487,35 @@ enum { | |||
| 1467 | * | 1487 | * |
| 1468 | * @IEEE80211_PATH_METRIC_AIRTIME: the default path selection metric | 1488 | * @IEEE80211_PATH_METRIC_AIRTIME: the default path selection metric |
| 1469 | * @IEEE80211_PATH_METRIC_VENDOR: a vendor specific metric that will be | 1489 | * @IEEE80211_PATH_METRIC_VENDOR: a vendor specific metric that will be |
| 1470 | * specified in a vendor specific information element | 1490 | * specified in a vendor specific information element |
| 1471 | */ | 1491 | */ |
| 1472 | enum { | 1492 | enum { |
| 1473 | IEEE80211_PATH_METRIC_AIRTIME = 1, | 1493 | IEEE80211_PATH_METRIC_AIRTIME = 1, |
| 1474 | IEEE80211_PATH_METRIC_VENDOR = 255, | 1494 | IEEE80211_PATH_METRIC_VENDOR = 255, |
| 1475 | }; | 1495 | }; |
| 1476 | 1496 | ||
| 1497 | /** | ||
| 1498 | * enum ieee80211_root_mode_identifier - root mesh STA mode identifier | ||
| 1499 | * | ||
| 1500 | * These attribute are used by dot11MeshHWMPRootMode to set root mesh STA mode | ||
| 1501 | * | ||
| 1502 | * @IEEE80211_ROOTMODE_NO_ROOT: the mesh STA is not a root mesh STA (default) | ||
| 1503 | * @IEEE80211_ROOTMODE_ROOT: the mesh STA is a root mesh STA if greater than | ||
| 1504 | * this value | ||
| 1505 | * @IEEE80211_PROACTIVE_PREQ_NO_PREP: the mesh STA is a root mesh STA supports | ||
| 1506 | * the proactive PREQ with proactive PREP subfield set to 0 | ||
| 1507 | * @IEEE80211_PROACTIVE_PREQ_WITH_PREP: the mesh STA is a root mesh STA | ||
| 1508 | * supports the proactive PREQ with proactive PREP subfield set to 1 | ||
| 1509 | * @IEEE80211_PROACTIVE_RANN: the mesh STA is a root mesh STA supports | ||
| 1510 | * the proactive RANN | ||
| 1511 | */ | ||
| 1512 | enum ieee80211_root_mode_identifier { | ||
| 1513 | IEEE80211_ROOTMODE_NO_ROOT = 0, | ||
| 1514 | IEEE80211_ROOTMODE_ROOT = 1, | ||
| 1515 | IEEE80211_PROACTIVE_PREQ_NO_PREP = 2, | ||
| 1516 | IEEE80211_PROACTIVE_PREQ_WITH_PREP = 3, | ||
| 1517 | IEEE80211_PROACTIVE_RANN = 4, | ||
| 1518 | }; | ||
| 1477 | 1519 | ||
| 1478 | /* | 1520 | /* |
| 1479 | * IEEE 802.11-2007 7.3.2.9 Country information element | 1521 | * IEEE 802.11-2007 7.3.2.9 Country information element |
| @@ -1589,6 +1631,8 @@ enum ieee80211_sa_query_action { | |||
| 1589 | 1631 | ||
| 1590 | #define WLAN_OUI_WFA 0x506f9a | 1632 | #define WLAN_OUI_WFA 0x506f9a |
| 1591 | #define WLAN_OUI_TYPE_WFA_P2P 9 | 1633 | #define WLAN_OUI_TYPE_WFA_P2P 9 |
| 1634 | #define WLAN_OUI_MICROSOFT 0x0050f2 | ||
| 1635 | #define WLAN_OUI_TYPE_MICROSOFT_WPA 1 | ||
| 1592 | 1636 | ||
| 1593 | /* | 1637 | /* |
| 1594 | * WMM/802.11e Tspec Element | 1638 | * WMM/802.11e Tspec Element |
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index 970afdf5a605..b7c3b737ddde 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h | |||
| @@ -277,6 +277,12 @@ | |||
| 277 | * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to | 277 | * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to |
| 278 | * NL80211_CMD_GET_SURVEY and on the "scan" multicast group) | 278 | * NL80211_CMD_GET_SURVEY and on the "scan" multicast group) |
| 279 | * | 279 | * |
| 280 | * @NL80211_CMD_SET_PMKSA: Add a PMKSA cache entry, using %NL80211_ATTR_MAC | ||
| 281 | * (for the BSSID) and %NL80211_ATTR_PMKID. | ||
| 282 | * @NL80211_CMD_DEL_PMKSA: Delete a PMKSA cache entry, using %NL80211_ATTR_MAC | ||
| 283 | * (for the BSSID) and %NL80211_ATTR_PMKID. | ||
| 284 | * @NL80211_CMD_FLUSH_PMKSA: Flush all PMKSA cache entries. | ||
| 285 | * | ||
| 280 | * @NL80211_CMD_REG_CHANGE: indicates to userspace the regulatory domain | 286 | * @NL80211_CMD_REG_CHANGE: indicates to userspace the regulatory domain |
| 281 | * has been changed and provides details of the request information | 287 | * has been changed and provides details of the request information |
| 282 | * that caused the change such as who initiated the regulatory request | 288 | * that caused the change such as who initiated the regulatory request |
| @@ -456,6 +462,10 @@ | |||
| 456 | * the frame. | 462 | * the frame. |
| 457 | * @NL80211_CMD_ACTION_TX_STATUS: Alias for @NL80211_CMD_FRAME_TX_STATUS for | 463 | * @NL80211_CMD_ACTION_TX_STATUS: Alias for @NL80211_CMD_FRAME_TX_STATUS for |
| 458 | * backward compatibility. | 464 | * backward compatibility. |
| 465 | * | ||
| 466 | * @NL80211_CMD_SET_POWER_SAVE: Set powersave, using %NL80211_ATTR_PS_STATE | ||
| 467 | * @NL80211_CMD_GET_POWER_SAVE: Get powersave status in %NL80211_ATTR_PS_STATE | ||
| 468 | * | ||
| 459 | * @NL80211_CMD_SET_CQM: Connection quality monitor configuration. This command | 469 | * @NL80211_CMD_SET_CQM: Connection quality monitor configuration. This command |
| 460 | * is used to configure connection quality monitoring notification trigger | 470 | * is used to configure connection quality monitoring notification trigger |
| 461 | * levels. | 471 | * levels. |
| @@ -771,6 +781,13 @@ enum nl80211_commands { | |||
| 771 | * section 7.3.2.25.1, e.g. 0x000FAC04) | 781 | * section 7.3.2.25.1, e.g. 0x000FAC04) |
| 772 | * @NL80211_ATTR_KEY_SEQ: transmit key sequence number (IV/PN) for TKIP and | 782 | * @NL80211_ATTR_KEY_SEQ: transmit key sequence number (IV/PN) for TKIP and |
| 773 | * CCMP keys, each six bytes in little endian | 783 | * CCMP keys, each six bytes in little endian |
| 784 | * @NL80211_ATTR_KEY_DEFAULT: Flag attribute indicating the key is default key | ||
| 785 | * @NL80211_ATTR_KEY_DEFAULT_MGMT: Flag attribute indicating the key is the | ||
| 786 | * default management key | ||
| 787 | * @NL80211_ATTR_CIPHER_SUITES_PAIRWISE: For crypto settings for connect or | ||
| 788 | * other commands, indicates which pairwise cipher suites are used | ||
| 789 | * @NL80211_ATTR_CIPHER_SUITE_GROUP: For crypto settings for connect or | ||
| 790 | * other commands, indicates which group cipher suite is used | ||
| 774 | * | 791 | * |
| 775 | * @NL80211_ATTR_BEACON_INTERVAL: beacon interval in TU | 792 | * @NL80211_ATTR_BEACON_INTERVAL: beacon interval in TU |
| 776 | * @NL80211_ATTR_DTIM_PERIOD: DTIM period for beaconing | 793 | * @NL80211_ATTR_DTIM_PERIOD: DTIM period for beaconing |
| @@ -1006,6 +1023,8 @@ enum nl80211_commands { | |||
| 1006 | * @NL80211_ATTR_ACK: Flag attribute indicating that the frame was | 1023 | * @NL80211_ATTR_ACK: Flag attribute indicating that the frame was |
| 1007 | * acknowledged by the recipient. | 1024 | * acknowledged by the recipient. |
| 1008 | * | 1025 | * |
| 1026 | * @NL80211_ATTR_PS_STATE: powersave state, using &enum nl80211_ps_state values. | ||
| 1027 | * | ||
| 1009 | * @NL80211_ATTR_CQM: connection quality monitor configuration in a | 1028 | * @NL80211_ATTR_CQM: connection quality monitor configuration in a |
| 1010 | * nested attribute with %NL80211_ATTR_CQM_* sub-attributes. | 1029 | * nested attribute with %NL80211_ATTR_CQM_* sub-attributes. |
| 1011 | * | 1030 | * |
| @@ -1063,7 +1082,7 @@ enum nl80211_commands { | |||
| 1063 | * flag isn't set, the frame will be rejected. This is also used as an | 1082 | * flag isn't set, the frame will be rejected. This is also used as an |
| 1064 | * nl80211 capability flag. | 1083 | * nl80211 capability flag. |
| 1065 | * | 1084 | * |
| 1066 | * @NL80211_ATTR_BSS_HTOPMODE: HT operation mode (u16) | 1085 | * @NL80211_ATTR_BSS_HT_OPMODE: HT operation mode (u16) |
| 1067 | * | 1086 | * |
| 1068 | * @NL80211_ATTR_KEY_DEFAULT_TYPES: A nested attribute containing flags | 1087 | * @NL80211_ATTR_KEY_DEFAULT_TYPES: A nested attribute containing flags |
| 1069 | * attributes, specifying what a key should be set as default as. | 1088 | * attributes, specifying what a key should be set as default as. |
| @@ -1087,10 +1106,10 @@ enum nl80211_commands { | |||
| 1087 | * indicate which WoW triggers should be enabled. This is also | 1106 | * indicate which WoW triggers should be enabled. This is also |
| 1088 | * used by %NL80211_CMD_GET_WOWLAN to get the currently enabled WoWLAN | 1107 | * used by %NL80211_CMD_GET_WOWLAN to get the currently enabled WoWLAN |
| 1089 | * triggers. | 1108 | * triggers. |
| 1090 | 1109 | * | |
| 1091 | * @NL80211_ATTR_SCHED_SCAN_INTERVAL: Interval between scheduled scan | 1110 | * @NL80211_ATTR_SCHED_SCAN_INTERVAL: Interval between scheduled scan |
| 1092 | * cycles, in msecs. | 1111 | * cycles, in msecs. |
| 1093 | 1112 | * | |
| 1094 | * @NL80211_ATTR_SCHED_SCAN_MATCH: Nested attribute with one or more | 1113 | * @NL80211_ATTR_SCHED_SCAN_MATCH: Nested attribute with one or more |
| 1095 | * sets of attributes to match during scheduled scans. Only BSSs | 1114 | * sets of attributes to match during scheduled scans. Only BSSs |
| 1096 | * that match any of the sets will be reported. These are | 1115 | * that match any of the sets will be reported. These are |
| @@ -1117,7 +1136,7 @@ enum nl80211_commands { | |||
| 1117 | * are managed in software: interfaces of these types aren't subject to | 1136 | * are managed in software: interfaces of these types aren't subject to |
| 1118 | * any restrictions in their number or combinations. | 1137 | * any restrictions in their number or combinations. |
| 1119 | * | 1138 | * |
| 1120 | * @%NL80211_ATTR_REKEY_DATA: nested attribute containing the information | 1139 | * @NL80211_ATTR_REKEY_DATA: nested attribute containing the information |
| 1121 | * necessary for GTK rekeying in the device, see &enum nl80211_rekey_data. | 1140 | * necessary for GTK rekeying in the device, see &enum nl80211_rekey_data. |
| 1122 | * | 1141 | * |
| 1123 | * @NL80211_ATTR_SCAN_SUPP_RATES: rates per to be advertised as supported in scan, | 1142 | * @NL80211_ATTR_SCAN_SUPP_RATES: rates per to be advertised as supported in scan, |
| @@ -1184,7 +1203,6 @@ enum nl80211_commands { | |||
| 1184 | * @NL80211_ATTR_FEATURE_FLAGS: This u32 attribute contains flags from | 1203 | * @NL80211_ATTR_FEATURE_FLAGS: This u32 attribute contains flags from |
| 1185 | * &enum nl80211_feature_flags and is advertised in wiphy information. | 1204 | * &enum nl80211_feature_flags and is advertised in wiphy information. |
| 1186 | * @NL80211_ATTR_PROBE_RESP_OFFLOAD: Indicates that the HW responds to probe | 1205 | * @NL80211_ATTR_PROBE_RESP_OFFLOAD: Indicates that the HW responds to probe |
| 1187 | * | ||
| 1188 | * requests while operating in AP-mode. | 1206 | * requests while operating in AP-mode. |
| 1189 | * This attribute holds a bitmap of the supported protocols for | 1207 | * This attribute holds a bitmap of the supported protocols for |
| 1190 | * offloading (see &enum nl80211_probe_resp_offload_support_attr). | 1208 | * offloading (see &enum nl80211_probe_resp_offload_support_attr). |
| @@ -1963,7 +1981,7 @@ enum nl80211_reg_rule_attr { | |||
| 1963 | enum nl80211_sched_scan_match_attr { | 1981 | enum nl80211_sched_scan_match_attr { |
| 1964 | __NL80211_SCHED_SCAN_MATCH_ATTR_INVALID, | 1982 | __NL80211_SCHED_SCAN_MATCH_ATTR_INVALID, |
| 1965 | 1983 | ||
| 1966 | NL80211_ATTR_SCHED_SCAN_MATCH_SSID, | 1984 | NL80211_SCHED_SCAN_MATCH_ATTR_SSID, |
| 1967 | 1985 | ||
| 1968 | /* keep last */ | 1986 | /* keep last */ |
| 1969 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST, | 1987 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST, |
| @@ -1971,6 +1989,9 @@ enum nl80211_sched_scan_match_attr { | |||
| 1971 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST - 1 | 1989 | __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST - 1 |
| 1972 | }; | 1990 | }; |
| 1973 | 1991 | ||
| 1992 | /* only for backward compatibility */ | ||
| 1993 | #define NL80211_ATTR_SCHED_SCAN_MATCH_SSID NL80211_SCHED_SCAN_MATCH_ATTR_SSID | ||
| 1994 | |||
| 1974 | /** | 1995 | /** |
| 1975 | * enum nl80211_reg_rule_flags - regulatory rule flags | 1996 | * enum nl80211_reg_rule_flags - regulatory rule flags |
| 1976 | * | 1997 | * |
| @@ -2090,78 +2111,91 @@ enum nl80211_mntr_flags { | |||
| 2090 | * @__NL80211_MESHCONF_INVALID: internal use | 2111 | * @__NL80211_MESHCONF_INVALID: internal use |
| 2091 | * | 2112 | * |
| 2092 | * @NL80211_MESHCONF_RETRY_TIMEOUT: specifies the initial retry timeout in | 2113 | * @NL80211_MESHCONF_RETRY_TIMEOUT: specifies the initial retry timeout in |
| 2093 | * millisecond units, used by the Peer Link Open message | 2114 | * millisecond units, used by the Peer Link Open message |
| 2094 | * | 2115 | * |
| 2095 | * @NL80211_MESHCONF_CONFIRM_TIMEOUT: specifies the initial confirm timeout, in | 2116 | * @NL80211_MESHCONF_CONFIRM_TIMEOUT: specifies the initial confirm timeout, in |
| 2096 | * millisecond units, used by the peer link management to close a peer link | 2117 | * millisecond units, used by the peer link management to close a peer link |
| 2097 | * | 2118 | * |
| 2098 | * @NL80211_MESHCONF_HOLDING_TIMEOUT: specifies the holding timeout, in | 2119 | * @NL80211_MESHCONF_HOLDING_TIMEOUT: specifies the holding timeout, in |
| 2099 | * millisecond units | 2120 | * millisecond units |
| 2100 | * | 2121 | * |
| 2101 | * @NL80211_MESHCONF_MAX_PEER_LINKS: maximum number of peer links allowed | 2122 | * @NL80211_MESHCONF_MAX_PEER_LINKS: maximum number of peer links allowed |
| 2102 | * on this mesh interface | 2123 | * on this mesh interface |
| 2103 | * | 2124 | * |
| 2104 | * @NL80211_MESHCONF_MAX_RETRIES: specifies the maximum number of peer link | 2125 | * @NL80211_MESHCONF_MAX_RETRIES: specifies the maximum number of peer link |
| 2105 | * open retries that can be sent to establish a new peer link instance in a | 2126 | * open retries that can be sent to establish a new peer link instance in a |
| 2106 | * mesh | 2127 | * mesh |
| 2107 | * | 2128 | * |
| 2108 | * @NL80211_MESHCONF_TTL: specifies the value of TTL field set at a source mesh | 2129 | * @NL80211_MESHCONF_TTL: specifies the value of TTL field set at a source mesh |
| 2109 | * point. | 2130 | * point. |
| 2110 | * | 2131 | * |
| 2111 | * @NL80211_MESHCONF_AUTO_OPEN_PLINKS: whether we should automatically | 2132 | * @NL80211_MESHCONF_AUTO_OPEN_PLINKS: whether we should automatically |
| 2112 | * open peer links when we detect compatible mesh peers. | 2133 | * open peer links when we detect compatible mesh peers. |
| 2113 | * | 2134 | * |
| 2114 | * @NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES: the number of action frames | 2135 | * @NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES: the number of action frames |
| 2115 | * containing a PREQ that an MP can send to a particular destination (path | 2136 | * containing a PREQ that an MP can send to a particular destination (path |
| 2116 | * target) | 2137 | * target) |
| 2117 | * | 2138 | * |
| 2118 | * @NL80211_MESHCONF_PATH_REFRESH_TIME: how frequently to refresh mesh paths | 2139 | * @NL80211_MESHCONF_PATH_REFRESH_TIME: how frequently to refresh mesh paths |
| 2119 | * (in milliseconds) | 2140 | * (in milliseconds) |
| 2120 | * | 2141 | * |
| 2121 | * @NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT: minimum length of time to wait | 2142 | * @NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT: minimum length of time to wait |
| 2122 | * until giving up on a path discovery (in milliseconds) | 2143 | * until giving up on a path discovery (in milliseconds) |
| 2123 | * | 2144 | * |
| 2124 | * @NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT: The time (in TUs) for which mesh | 2145 | * @NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT: The time (in TUs) for which mesh |
| 2125 | * points receiving a PREQ shall consider the forwarding information from the | 2146 | * points receiving a PREQ shall consider the forwarding information from |
| 2126 | * root to be valid. (TU = time unit) | 2147 | * the root to be valid. (TU = time unit) |
| 2127 | * | 2148 | * |
| 2128 | * @NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL: The minimum interval of time (in | 2149 | * @NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL: The minimum interval of time (in |
| 2129 | * TUs) during which an MP can send only one action frame containing a PREQ | 2150 | * TUs) during which an MP can send only one action frame containing a PREQ |
| 2130 | * reference element | 2151 | * reference element |
| 2131 | * | 2152 | * |
| 2132 | * @NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME: The interval of time (in TUs) | 2153 | * @NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME: The interval of time (in TUs) |
| 2133 | * that it takes for an HWMP information element to propagate across the mesh | 2154 | * that it takes for an HWMP information element to propagate across the |
| 2155 | * mesh | ||
| 2134 | * | 2156 | * |
| 2135 | * @NL80211_MESHCONF_HWMP_ROOTMODE: whether root mode is enabled or not | 2157 | * @NL80211_MESHCONF_HWMP_ROOTMODE: whether root mode is enabled or not |
| 2136 | * | 2158 | * |
| 2137 | * @NL80211_MESHCONF_ELEMENT_TTL: specifies the value of TTL field set at a | 2159 | * @NL80211_MESHCONF_ELEMENT_TTL: specifies the value of TTL field set at a |
| 2138 | * source mesh point for path selection elements. | 2160 | * source mesh point for path selection elements. |
| 2139 | * | 2161 | * |
| 2140 | * @NL80211_MESHCONF_HWMP_RANN_INTERVAL: The interval of time (in TUs) between | 2162 | * @NL80211_MESHCONF_HWMP_RANN_INTERVAL: The interval of time (in TUs) between |
| 2141 | * root announcements are transmitted. | 2163 | * root announcements are transmitted. |
| 2142 | * | 2164 | * |
| 2143 | * @NL80211_MESHCONF_GATE_ANNOUNCEMENTS: Advertise that this mesh station has | 2165 | * @NL80211_MESHCONF_GATE_ANNOUNCEMENTS: Advertise that this mesh station has |
| 2144 | * access to a broader network beyond the MBSS. This is done via Root | 2166 | * access to a broader network beyond the MBSS. This is done via Root |
| 2145 | * Announcement frames. | 2167 | * Announcement frames. |
| 2146 | * | 2168 | * |
| 2147 | * @NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL: The minimum interval of time (in | 2169 | * @NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL: The minimum interval of time (in |
| 2148 | * TUs) during which a mesh STA can send only one Action frame containing a | 2170 | * TUs) during which a mesh STA can send only one Action frame containing a |
| 2149 | * PERR element. | 2171 | * PERR element. |
| 2150 | * | 2172 | * |
| 2151 | * @NL80211_MESHCONF_FORWARDING: set Mesh STA as forwarding or non-forwarding | 2173 | * @NL80211_MESHCONF_FORWARDING: set Mesh STA as forwarding or non-forwarding |
| 2152 | * or forwarding entity (default is TRUE - forwarding entity) | 2174 | * or forwarding entity (default is TRUE - forwarding entity) |
| 2153 | * | 2175 | * |
| 2154 | * @NL80211_MESHCONF_RSSI_THRESHOLD: RSSI threshold in dBm. This specifies the | 2176 | * @NL80211_MESHCONF_RSSI_THRESHOLD: RSSI threshold in dBm. This specifies the |
| 2155 | * threshold for average signal strength of candidate station to establish | 2177 | * threshold for average signal strength of candidate station to establish |
| 2156 | * a peer link. | 2178 | * a peer link. |
| 2157 | * | ||
| 2158 | * @NL80211_MESHCONF_ATTR_MAX: highest possible mesh configuration attribute | ||
| 2159 | * | 2179 | * |
| 2160 | * @NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR: maximum number of neighbors | 2180 | * @NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR: maximum number of neighbors |
| 2161 | * to synchronize to for 11s default synchronization method (see 11C.12.2.2) | 2181 | * to synchronize to for 11s default synchronization method |
| 2182 | * (see 11C.12.2.2) | ||
| 2162 | * | 2183 | * |
| 2163 | * @NL80211_MESHCONF_HT_OPMODE: set mesh HT protection mode. | 2184 | * @NL80211_MESHCONF_HT_OPMODE: set mesh HT protection mode. |
| 2164 | * | 2185 | * |
| 2186 | * @NL80211_MESHCONF_ATTR_MAX: highest possible mesh configuration attribute | ||
| 2187 | * | ||
| 2188 | * @NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT: The time (in TUs) for | ||
| 2189 | * which mesh STAs receiving a proactive PREQ shall consider the forwarding | ||
| 2190 | * information to the root mesh STA to be valid. | ||
| 2191 | * | ||
| 2192 | * @NL80211_MESHCONF_HWMP_ROOT_INTERVAL: The interval of time (in TUs) between | ||
| 2193 | * proactive PREQs are transmitted. | ||
| 2194 | * | ||
| 2195 | * @NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL: The minimum interval of time | ||
| 2196 | * (in TUs) during which a mesh STA can send only one Action frame | ||
| 2197 | * containing a PREQ element for root path confirmation. | ||
| 2198 | * | ||
| 2165 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use | 2199 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use |
| 2166 | */ | 2200 | */ |
| 2167 | enum nl80211_meshconf_params { | 2201 | enum nl80211_meshconf_params { |
| @@ -2188,6 +2222,9 @@ enum nl80211_meshconf_params { | |||
| 2188 | NL80211_MESHCONF_RSSI_THRESHOLD, | 2222 | NL80211_MESHCONF_RSSI_THRESHOLD, |
| 2189 | NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR, | 2223 | NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR, |
| 2190 | NL80211_MESHCONF_HT_OPMODE, | 2224 | NL80211_MESHCONF_HT_OPMODE, |
| 2225 | NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT, | ||
| 2226 | NL80211_MESHCONF_HWMP_ROOT_INTERVAL, | ||
| 2227 | NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, | ||
| 2191 | 2228 | ||
| 2192 | /* keep last */ | 2229 | /* keep last */ |
| 2193 | __NL80211_MESHCONF_ATTR_AFTER_LAST, | 2230 | __NL80211_MESHCONF_ATTR_AFTER_LAST, |
| @@ -2203,34 +2240,36 @@ enum nl80211_meshconf_params { | |||
| 2203 | * @__NL80211_MESH_SETUP_INVALID: Internal use | 2240 | * @__NL80211_MESH_SETUP_INVALID: Internal use |
| 2204 | * | 2241 | * |
| 2205 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL: Enable this option to use a | 2242 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL: Enable this option to use a |
| 2206 | * vendor specific path selection algorithm or disable it to use the default | 2243 | * vendor specific path selection algorithm or disable it to use the |
| 2207 | * HWMP. | 2244 | * default HWMP. |
| 2208 | * | 2245 | * |
| 2209 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC: Enable this option to use a | 2246 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC: Enable this option to use a |
| 2210 | * vendor specific path metric or disable it to use the default Airtime | 2247 | * vendor specific path metric or disable it to use the default Airtime |
| 2211 | * metric. | 2248 | * metric. |
| 2212 | * | 2249 | * |
| 2213 | * @NL80211_MESH_SETUP_IE: Information elements for this mesh, for instance, a | 2250 | * @NL80211_MESH_SETUP_IE: Information elements for this mesh, for instance, a |
| 2214 | * robust security network ie, or a vendor specific information element that | 2251 | * robust security network ie, or a vendor specific information element |
| 2215 | * vendors will use to identify the path selection methods and metrics in use. | 2252 | * that vendors will use to identify the path selection methods and |
| 2253 | * metrics in use. | ||
| 2216 | * | 2254 | * |
| 2217 | * @NL80211_MESH_SETUP_USERSPACE_AUTH: Enable this option if an authentication | 2255 | * @NL80211_MESH_SETUP_USERSPACE_AUTH: Enable this option if an authentication |
| 2218 | * daemon will be authenticating mesh candidates. | 2256 | * daemon will be authenticating mesh candidates. |
| 2219 | * | 2257 | * |
| 2220 | * @NL80211_MESH_SETUP_USERSPACE_AMPE: Enable this option if an authentication | 2258 | * @NL80211_MESH_SETUP_USERSPACE_AMPE: Enable this option if an authentication |
| 2221 | * daemon will be securing peer link frames. AMPE is a secured version of Mesh | 2259 | * daemon will be securing peer link frames. AMPE is a secured version of |
| 2222 | * Peering Management (MPM) and is implemented with the assistance of a | 2260 | * Mesh Peering Management (MPM) and is implemented with the assistance of |
| 2223 | * userspace daemon. When this flag is set, the kernel will send peer | 2261 | * a userspace daemon. When this flag is set, the kernel will send peer |
| 2224 | * management frames to a userspace daemon that will implement AMPE | 2262 | * management frames to a userspace daemon that will implement AMPE |
| 2225 | * functionality (security capabilities selection, key confirmation, and key | 2263 | * functionality (security capabilities selection, key confirmation, and |
| 2226 | * management). When the flag is unset (default), the kernel can autonomously | 2264 | * key management). When the flag is unset (default), the kernel can |
| 2227 | * complete (unsecured) mesh peering without the need of a userspace daemon. | 2265 | * autonomously complete (unsecured) mesh peering without the need of a |
| 2228 | * | 2266 | * userspace daemon. |
| 2229 | * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number | ||
| 2230 | * | 2267 | * |
| 2231 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC: Enable this option to use a | 2268 | * @NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC: Enable this option to use a |
| 2232 | * vendor specific synchronization method or disable it to use the default | 2269 | * vendor specific synchronization method or disable it to use the default |
| 2233 | * neighbor offset synchronization | 2270 | * neighbor offset synchronization |
| 2271 | * | ||
| 2272 | * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number | ||
| 2234 | * | 2273 | * |
| 2235 | * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use | 2274 | * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use |
| 2236 | */ | 2275 | */ |
| @@ -2500,6 +2539,11 @@ enum nl80211_band { | |||
| 2500 | NL80211_BAND_5GHZ, | 2539 | NL80211_BAND_5GHZ, |
| 2501 | }; | 2540 | }; |
| 2502 | 2541 | ||
| 2542 | /** | ||
| 2543 | * enum nl80211_ps_state - powersave state | ||
| 2544 | * @NL80211_PS_DISABLED: powersave is disabled | ||
| 2545 | * @NL80211_PS_ENABLED: powersave is enabled | ||
| 2546 | */ | ||
| 2503 | enum nl80211_ps_state { | 2547 | enum nl80211_ps_state { |
| 2504 | NL80211_PS_DISABLED, | 2548 | NL80211_PS_DISABLED, |
| 2505 | NL80211_PS_ENABLED, | 2549 | NL80211_PS_ENABLED, |
