Root/package/iw/patches/001-nl80211_sync.patch

1--- a/nl80211.h
2+++ b/nl80211.h
3@@ -295,7 +295,9 @@
4  * auth and assoc steps. For this, you need to specify the SSID in a
5  * %NL80211_ATTR_SSID attribute, and can optionally specify the association
6  * IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_MAC,
7- * %NL80211_ATTR_WIPHY_FREQ and %NL80211_ATTR_CONTROL_PORT.
8+ * %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT,
9+ * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE and
10+ * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT.
11  * It is also sent as an event, with the BSSID and response IEs when the
12  * connection is established or failed to be established. This can be
13  * determined by the STATUS_CODE attribute.
14@@ -313,8 +315,8 @@
15  * channel for the specified amount of time. This can be used to do
16  * off-channel operations like transmit a Public Action frame and wait for
17  * a response while being associated to an AP on another channel.
18- * %NL80211_ATTR_WIPHY or %NL80211_ATTR_IFINDEX is used to specify which
19- * radio is used. %NL80211_ATTR_WIPHY_FREQ is used to specify the
20+ * %NL80211_ATTR_IFINDEX is used to specify which interface (and thus
21+ * radio) is used. %NL80211_ATTR_WIPHY_FREQ is used to specify the
22  * frequency for the operation and %NL80211_ATTR_WIPHY_CHANNEL_TYPE may be
23  * optionally used to specify additional channel parameters.
24  * %NL80211_ATTR_DURATION is used to specify the duration in milliseconds
25@@ -385,6 +387,8 @@
26  * of any other interfaces, and other interfaces will again take
27  * precedence when they are used.
28  *
29+ * @NL80211_CMD_SET_WDS_PEER: Set the MAC address of the peer on a WDS interface.
30+ *
31  * @NL80211_CMD_MAX: highest used command number
32  * @__NL80211_CMD_AFTER_LAST: internal use
33  */
34@@ -487,6 +491,7 @@ enum nl80211_commands {
35     NL80211_CMD_NOTIFY_CQM,
36 
37     NL80211_CMD_SET_CHANNEL,
38+ NL80211_CMD_SET_WDS_PEER,
39 
40     /* add new commands above here */
41 
42@@ -686,6 +691,15 @@ enum nl80211_commands {
43  * request, the driver will assume that the port is unauthorized until
44  * authorized by user space. Otherwise, port is marked authorized by
45  * default in station mode.
46+ * @NL80211_ATTR_CONTROL_PORT_ETHERTYPE: A 16-bit value indicating the
47+ * ethertype that will be used for key negotiation. It can be
48+ * specified with the associate and connect commands. If it is not
49+ * specified, the value defaults to 0x888E (PAE, 802.1X). This
50+ * attribute is also used as a flag in the wiphy information to
51+ * indicate that protocols other than PAE are supported.
52+ * @NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT: When included along with
53+ * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE, indicates that the custom
54+ * ethertype frames used for key negotiation must not be encrypted.
55  *
56  * @NL80211_ATTR_TESTDATA: Testmode data blob, passed through to the driver.
57  * We recommend using nested, driver-specific attributes within this.
58@@ -787,6 +801,11 @@ enum nl80211_commands {
59  * This is used in association with @NL80211_ATTR_WIPHY_TX_POWER_SETTING
60  * for non-automatic settings.
61  *
62+ * @NL80211_ATTR_SUPPORT_IBSS_RSN: The device supports IBSS RSN, which mostly
63+ * means support for per-station GTKs.
64+ *
65+ * @NL80211_ATTR_MCAST_RATE: Multicast tx rate (in 100 kbps) for IBSS
66+ *
67  * @NL80211_ATTR_MAX: highest attribute number currently defined
68  * @__NL80211_ATTR_AFTER_LAST: internal use
69  */
70@@ -951,6 +970,13 @@ enum nl80211_attrs {
71     NL80211_ATTR_RX_FRAME_TYPES,
72     NL80211_ATTR_FRAME_TYPE,
73 
74+ NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
75+ NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT,
76+
77+ NL80211_ATTR_SUPPORT_IBSS_RSN,
78+
79+ NL80211_ATTR_MCAST_RATE,
80+
81     /* add attributes here, update the policy in nl80211.c */
82 
83     __NL80211_ATTR_AFTER_LAST,
84@@ -1006,6 +1032,8 @@ enum nl80211_attrs {
85  * @NL80211_IFTYPE_WDS: wireless distribution interface
86  * @NL80211_IFTYPE_MONITOR: monitor interface receiving all frames
87  * @NL80211_IFTYPE_MESH_POINT: mesh point
88+ * @NL80211_IFTYPE_P2P_CLIENT: P2P client
89+ * @NL80211_IFTYPE_P2P_GO: P2P group owner
90  * @NL80211_IFTYPE_MAX: highest interface type number currently defined
91  * @NUM_NL80211_IFTYPES: number of defined interface types
92  *
93@@ -1022,6 +1050,8 @@ enum nl80211_iftype {
94     NL80211_IFTYPE_WDS,
95     NL80211_IFTYPE_MONITOR,
96     NL80211_IFTYPE_MESH_POINT,
97+ NL80211_IFTYPE_P2P_CLIENT,
98+ NL80211_IFTYPE_P2P_GO,
99 
100     /* keep last */
101     NUM_NL80211_IFTYPES,
102@@ -1111,6 +1141,8 @@ enum nl80211_rate_info {
103  * @NL80211_STA_INFO_RX_PACKETS: total received packet (u32, from this station)
104  * @NL80211_STA_INFO_TX_PACKETS: total transmitted packets (u32, to this
105  * station)
106+ * @NL80211_STA_INFO_TX_RETRIES: total retries (u32, to this station)
107+ * @NL80211_STA_INFO_TX_FAILED: total failed packets (u32, to this station)
108  */
109 enum nl80211_sta_info {
110     __NL80211_STA_INFO_INVALID,
111@@ -1124,6 +1156,8 @@ enum nl80211_sta_info {
112     NL80211_STA_INFO_TX_BITRATE,
113     NL80211_STA_INFO_RX_PACKETS,
114     NL80211_STA_INFO_TX_PACKETS,
115+ NL80211_STA_INFO_TX_RETRIES,
116+ NL80211_STA_INFO_TX_FAILED,
117 
118     /* keep last */
119     __NL80211_STA_INFO_AFTER_LAST,
120@@ -1382,6 +1416,17 @@ enum nl80211_reg_rule_flags {
121  * @__NL80211_SURVEY_INFO_INVALID: attribute number 0 is reserved
122  * @NL80211_SURVEY_INFO_FREQUENCY: center frequency of channel
123  * @NL80211_SURVEY_INFO_NOISE: noise level of channel (u8, dBm)
124+ * @NL80211_SURVEY_INFO_IN_USE: channel is currently being used
125+ * @NL80211_SURVEY_INFO_CHANNEL_TIME: amount of time (in ms) that the radio
126+ * spent on this channel
127+ * @NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY: amount of the time the primary
128+ * channel was sensed busy (either due to activity or energy detect)
129+ * @NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY: amount of time the extension
130+ * channel was sensed busy
131+ * @NL80211_SURVEY_INFO_CHANNEL_TIME_RX: amount of time the radio spent
132+ * receiving data
133+ * @NL80211_SURVEY_INFO_CHANNEL_TIME_TX: amount of time the radio spent
134+ * transmitting data
135  * @NL80211_SURVEY_INFO_MAX: highest survey info attribute number
136  * currently defined
137  * @__NL80211_SURVEY_INFO_AFTER_LAST: internal use
138@@ -1390,6 +1435,12 @@ enum nl80211_survey_info {
139     __NL80211_SURVEY_INFO_INVALID,
140     NL80211_SURVEY_INFO_FREQUENCY,
141     NL80211_SURVEY_INFO_NOISE,
142+ NL80211_SURVEY_INFO_IN_USE,
143+ NL80211_SURVEY_INFO_CHANNEL_TIME,
144+ NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY,
145+ NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY,
146+ NL80211_SURVEY_INFO_CHANNEL_TIME_RX,
147+ NL80211_SURVEY_INFO_CHANNEL_TIME_TX,
148 
149     /* keep last */
150     __NL80211_SURVEY_INFO_AFTER_LAST,
151@@ -1636,11 +1687,14 @@ enum nl80211_auth_type {
152  * @NL80211_KEYTYPE_GROUP: Group (broadcast/multicast) key
153  * @NL80211_KEYTYPE_PAIRWISE: Pairwise (unicast/individual) key
154  * @NL80211_KEYTYPE_PEERKEY: PeerKey (DLS)
155+ * @NUM_NL80211_KEYTYPES: number of defined key types
156  */
157 enum nl80211_key_type {
158     NL80211_KEYTYPE_GROUP,
159     NL80211_KEYTYPE_PAIRWISE,
160     NL80211_KEYTYPE_PEERKEY,
161+
162+ NUM_NL80211_KEYTYPES
163 };
164 
165 /**
166@@ -1671,6 +1725,9 @@ enum nl80211_wpa_versions {
167  * CCMP keys, each six bytes in little endian
168  * @NL80211_KEY_DEFAULT: flag indicating default key
169  * @NL80211_KEY_DEFAULT_MGMT: flag indicating default management key
170+ * @NL80211_KEY_TYPE: the key type from enum nl80211_key_type, if not
171+ * specified the default depends on whether a MAC address was
172+ * given with the command using the key or not (u32)
173  * @__NL80211_KEY_AFTER_LAST: internal
174  * @NL80211_KEY_MAX: highest key attribute
175  */
176@@ -1682,6 +1739,7 @@ enum nl80211_key_attributes {
177     NL80211_KEY_SEQ,
178     NL80211_KEY_DEFAULT,
179     NL80211_KEY_DEFAULT_MGMT,
180+ NL80211_KEY_TYPE,
181 
182     /* keep last */
183     __NL80211_KEY_AFTER_LAST,
184

Archive Download this file



interactive