]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - share/man/man4/net80211.4
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / share / man / man4 / net80211.4
1 .\"-
2 .\" Copyright (c) 2009 Sam Leffler, Errno Consulting
3 .\" All rights reserved.
4 .\""
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\"    notice, this list of conditions and the following disclaimer,
10 .\"    without modification.
11 .\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
12 .\"    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
13 .\"    redistribution must be conditioned upon including a substantially
14 .\"    similar Disclaimer requirement for further binary redistribution.
15 .\"
16 .\" NO WARRANTY
17 .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19 .\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
20 .\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
21 .\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
22 .\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
25 .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
27 .\" THE POSSIBILITY OF SUCH DAMAGES.
28 .\"
29 .\" $FreeBSD$
30 .\"
31 .Dd July 10, 2009
32 .Dt NET80211 4
33 .Os
34 .Sh NAME
35 .Nm net80211
36 .Nd standard interface to IEEE 802.11 devices
37 .Sh SYNOPSIS
38 .In sys/types.h
39 .In sys/socket.h
40 .In net/if.h
41 .In net/ethernet.h
42 .In net80211/ieee80211_ioctl.h
43 .Sh DESCRIPTION
44 This section describes the standard programming
45 interface to configure and retrieve status information
46 for IEEE 802.11 devices that depend on the
47 .Xr wlan 4
48 module for operation.
49 The interface is via one
50 of the following
51 .Xr ioctl 2
52 calls on a socket:
53 .Bl -tag -width ".Dv SIOCG80211"
54 .It Dv SIOCG80211
55 Get configuration or status information.
56 .It Dv SIOCS80211
57 Set configuration information.
58 .El
59 .Pp
60 These requests are made via a modified
61 .Vt ifreq
62 structure.
63 This structure is defined as follows:
64 .Bd -literal
65 struct ieee80211req {
66         char            i_name[IFNAMSIZ];       /* if_name, e.g. "wi0" */
67         uint16_t        i_type;                 /* req type */
68         int16_t         i_val;                  /* Index or simple value */
69         int16_t         i_len;                  /* Index or simple value */
70         void            *i_data;                /* Extra data */
71 };
72 .Ed
73 .Pp
74 Requests that are not supported by the underlying device return
75 -1 and set the global variable errno to
76 .Er EOPNOTSUPP .
77 .Dv SIOCG80211
78 requests that return data to an application place small values in
79 .Va i_val
80 or in a user-specified buffer pointed to by
81 .Va i_data .
82 When an indirect buffer is used
83 .Va i_len
84 specifies how large the indirect buffer is and on return it is set by the
85 system to the actual amount of data returned.
86 .Dv SIOCS80211
87 requests use a similar scheme with data passed to the system taken either
88 from
89 .Va i_val
90 or an indirect buffer pointed to by
91 .Va i_data .
92 .Pp
93 For
94 .Dv SIOCG80211
95 the following values of
96 .Va i_type
97 are valid:
98 .Bl -tag -width indent
99 .It Dv IEEE80211_IOC_AMPDU
100 Return whether or not AMPDU is enabled in
101 .Va i_val .
102 AMPDU is an aggregation scheme that is part of the 802.11n specification
103 and is used only when operating on an HT channel.
104 The value returned is one of:
105 0 (AMPDU disabled),
106 1 (AMPDU enabled for transmit),
107 2 (AMPDU enabled for receive),
108 and
109 3 (AMPDU enabled for transmit and receive).
110 The 802.11n specification says a compliant station must receive AMPDU but
111 may not support transmitting AMPDU frames.
112 Disabling AMPDU receive is mainly useful for testing and working around bugs.
113 .It Dv IEEE80211_IOC_AMPDU_DENSITY
114 Return the minimum density for bursting AMPDU frames in
115 .Va i_val .
116 The value returned is one of:
117 0 (no time restriction),
118 1 (1/4 usec),
119 2 (1/2 usec),
120 3 (1 usec),
121 4 (2 usec),
122 5 (4 usec),
123 6 (8 usec),
124 and
125 7 (16 usec).
126 .It Dv IEEE80211_IOC_AMPDU_LIMIT
127 Return the limit on the size of AMPDU frames in
128 .Va i_val .
129 The value returned is one of:
130 0 (8 kilobytes),
131 1 (16 kilobytes),
132 2 (32 kilobytes),
133 and
134 3 (64 kilobytes).
135 .It Dv IEEE80211_IOC_AMSDU
136 Return whether or not AMSDU is enabled in
137 .Va i_val .
138 AMSDU is an aggregation scheme that is part of the 802.11n specification
139 and is used only when operating on an HT channel.
140 The value returned is one of:
141 0 (AMSDU disabled),
142 1 (AMSDU enabled for transmit),
143 2 (AMSDU enabled for receive),
144 and
145 3 (AMSDU enabled for transmit and receive).
146 The 802.11n specification says a compliant station must receive AMSDU but
147 may not support transmitting AMSDU frames.
148 Disabling AMSDU receive is mainly useful for testing and working around bugs.
149 .It Dv IEEE80211_IOC_AMSDU_LIMIT
150 Return the limit on the size of AMSDU frames in
151 .Va i_val .
152 The value returned is one of:
153 3839 (bytes)
154 and
155 7935 (bytes).
156 Note these values are specified by 802.11n; arbitrary values are not allowed.
157 .It Dv IEEE80211_IOC_APBRIDGE
158 Return whether AP bridging is enabled in
159 .Va i_val .
160 Normally packets sent between stations associated
161 to the same access point are delivered without going through system layers
162 that do packet filtering; when AP bridging is disabled packets are
163 passed up the system to be forwarded using some other mechanism.
164 This value will be non-zero when AP bridging is enabled and otherwise zero.
165 .It Dv IEEE80211_IOC_APPIE
166 Return an application information element via
167 .Va i_data .
168 Application IE's are maintained for many 802.11 frames; the
169 request must identify the frame to return an IE for in
170 .Va i_val .
171 For example, to retrieve the IE sent in each Beacon frame
172 .Va i_val
173 would be set to
174 .Va IEEE80211_FC0_SUBTYPE_BEACON | IEEE80211_FC0_TYPE_MGT .
175 If no information element is installed then
176 .Er EINVAL
177 is returned.
178 If the data buffer for returning data is too small to hold the information
179 element the value is truncated; this permits querying the presence of
180 data by requesting zero bytes of data be returned.
181 .It Dv IEEE80211_IOC_AUTHMODE
182 Return the current authentication mode in
183 .Va i_val .
184 Valid values are
185 .Dv IEEE80211_AUTH_NONE
186 (no authentication),
187 .Dv IEEE80211_AUTH_OPEN
188 (open authentication),
189 .Dv IEEE80211_AUTH_SHARED
190 (shared key authentication),
191 .Dv IEEE80211_AUTH_8021X
192 (802.1x only authentication),
193 and
194 .Dv IEEE80211_AUTH_WPA
195 (WPA/802.11i/802.1x authentication).
196 .It Dv IEEE80211_IOC_BEACON_INTERVAL
197 Return the time between Beacon frames (in TU) in
198 .Va i_val .
199 .It Dv IEEE80211_IOC_BGSCAN
200 Return whether background scanning is enabled in
201 .Va i_val .
202 When this value is non-zero and operating in station mode
203 the station will periodically leave
204 the current channel and scan for neighboring stations.
205 See also
206 .Dv IEEE80211_IOC_BGSCAN_IDLE
207 and
208 .Dv IEEE80211_IOC_BGSCAN_INTERVAL .
209 .It Dv IEEE80211_IOC_BGSCAN_IDLE
210 Return in
211 .Va i_val
212 the minimum time (msecs) a station must be idle
213 (i.e. not transmitting or receiving frames)
214 before it will do a background scan.
215 See also
216 .Dv IEEE80211_IOC_BGSCAN_INTERVAL .
217 .It Dv IEEE80211_IOC_BGSCAN_INTERVAL
218 Return in
219 .Va i_val
220 the minimum time (seconds) between background scan operations.
221 See also
222 .Dv IEEE80211_IOC_BGSCAN_IDLE .
223 .It Dv IEEE80211_IOC_BMISSTHRESHOLD
224 Return in
225 .Va i_val
226 the number of consecutive missed Beacon frames before the system will
227 attempt to roam to a different/better access point.
228 .It Dv IEEE80211_IOC_BSSID
229 Return the MAC address for the current BSS identifier via
230 .Va i_data .
231 When the interface is running, the bssid is either the value
232 configured locally (e.g. for an IBSS network started by the local station)
233 or the value adopted when joining an existing network.
234 For WDS interfaces this value is the address of the remote station.
235 When the interface is not running, the bssid returned is the desired
236 bssid, if any, that has been configured.
237 .It Dv IEEE80211_IOC_BURST
238 Return whether or not packet bursting is enabled in
239 .Va i_val .
240 If this value is non-zero then the system will try to send packets closely
241 spaced to improve throughput.
242 .It Dv IEEE80211_IOC_CHANINFO
243 Return the set of available channels via
244 .Va i_data .
245 Note this data should be used by user applications to map between
246 channel specifications (frequency and attributes) and IEEE channel numbers
247 as user applications may not have the necessary information to do
248 this directly (e.g. for 900MHz radios, operation in the Public Safety Band).
249 .It Dv IEEE80211_IOC_CHANLIST
250 Return the current list of usable channels via
251 .Va i_data .
252 The channel list is returned as a bit vector with bit N set to 1 if
253 IEEE channel number N is available for use.
254 .It Dv IEEE80211_IOC_CHANNEL
255 Return the IEEE channel number of the current channel in
256 .Va i_val .
257 Note this request is deprecated; use
258 .Dv IEEE80211_IOC_CURCHAN
259 instead.
260 .It Dv IEEE80211_IOC_COUNTERMEASURES
261 Return whether TKIP Countermeasures are enabled in
262 .Va i_val .
263 This value will be non-zero when Countermeasures are enabled and
264 otherwise zero.
265 .It Dv IEEE80211_IOC_CURCHAN
266 Return information for the current channel via
267 .Va i_data .
268 This information includes the IEEE channel number, the frequency, and
269 attributes that describe the operating constraints (e.g. Passive Scan,
270 DFS, usage restrictions).
271 .It Dv IEEE80211_IOC_DEVCAPS
272 Return device capabilities in the data buffer pointed at by
273 .Va i_data .
274 The buffer must be large enough to return the number of available
275 channels but otherwise may be made small to limit how much information
276 is returned.
277 .It Dv IEEE80211_IOC_DFS
278 Return whether or not Dynamic Frequency Selection (DFS) is enabled in
279 .Va i_val .
280 DFS embodies several facilities including detection of overlapping
281 radar signals, dynamic transmit power control, and channel selection
282 according to a least-congested criteria.
283 DFS support is mandatory for some 5GHz frequencies in certain
284 locales (e.g. ETSI).
285 By default DFS is enabled according to the regulatory definitions
286 and the current country code, regdomain, and channel.
287 .It Dv IEEE80211_IOC_DOTD
288 Return whether or not 802.11d support is enabled in
289 .Va i_val .
290 When 802.11d is enabled in station mode, Beacon frames that advertise
291 a country code different than the currently configured country code will
292 cause an event to be dispatched to user applications.
293 This event can be used by the station to adopt that country code and
294 operate according to the associated regulatory constraints.
295 When operating as an access point with 802.11d enabled the Beacon and
296 ProbeResponse frames transmitted will advertise the current regulatory
297 domain settings.
298 .It Dv IEEE80211_IOC_DOTH
299 Return whether 802.11h support is enabled in
300 .Va i_val .
301 When 802.11h is enabled Beacon and ProbeResponse frames will have
302 the SpectrumMgt bit set in the capabilities field and
303 country and power constraint information elements will be present.
304 802.11h support also includes handling Channel Switch Announcements (CSA)
305 which are a mechanism to coordinate channel changes by an access point.
306 By default 802.11h is enabled if the device is capable.
307 .It Dv IEEE80211_IOC_DROPUNENCRYPTED
308 Return, in
309 .Va i_val ,
310 whether unencrypted packets transmit/received should be discarded.
311 This value will be zero if unencrypted packets will be accepted and
312 non-zero if they are to be discarded.
313 .It Dv IEEE80211_IOC_DTIM_PERIOD
314 Return the period (in beacon intervals) between DTIM events in
315 .Va i_val .
316 .It Dv IEEE80211_IOC_DWDS
317 Return, in
318 .Va i_val ,
319 whether or not Dynamic WDS support is enabled.
320 Dynamic WDS is a facility by which packets may be tunneled over normal
321 Infrastructure BSS associations using 4-address (WDS) frames.
322 .It Dv IEEE80211_IOC_FF
323 Return, in
324 .Va i_val ,
325 whether Atheros fast-frames support is enabled.
326 Fast-frames is a non-standard protocol extension that aggregates multiple
327 frames to improve throughput.
328 Note that enabling fast-frames support does not guarantee use;
329 the client and access point must negotiate its use.
330 .It Dv IEEE80211_IOC_FRAGTHRESHOLD
331 Return, in
332 .Va i_val ,
333 the threshold (in bytes) for enabling fragmentation frames.
334 Packets larger than this value will automatically be split into multiple
335 fragmented frames that are sent one after the other.
336 .It Dv IEEE80211_IOC_GREENFIELD
337 Return, in
338 .Va i_val ,
339 whether or not Greenfield preamble use is enabled.
340 This  setting is meaningful only when operating with 802.11n on an HT channel.
341 .It Dv IEEE80211_IOC_HIDESSID
342 Return, in
343 .Va i_val ,
344 whether SSID hiding/cloaking is enabled.
345 SSID hiding is only meaningful when operating as an access point.
346 When this is enabled Beacon frames do not include the SSID and
347 ProbeRequest frames are not answered unless they include the AP's SSID.
348 This value will be non-zero when SSID hiding is enabled and otherwise zero.
349 .It Dv IEEE80211_IOC_HTCOMPAT
350 Return, in
351 .Va i_val ,
352 whether or not 802.11n compatibility support is enabled.
353 The 802.11n protocol specification went through several incompatible iterations.
354 Some vendors implemented 11n support to older specifications that
355 will not interoperate with a purely 11n-compliant station.
356 In particular the information elements included in management frames
357 for old devices are different.
358 When compatibility support is enabled both standard and compatible data
359 will be provided and/or accepted.
360 .It Dv IEEE80211_IOC_HTCONF
361 Return the setting for automatic promotion of HT channels in
362 .Va i_val .
363 Promotion happens when the system must select a channel and may choose
364 between legacy, HT20, and HT40 operation (e.g. when scanning).
365 Valid values are:
366 0 (do not promote, use legacy),
367 1 (promote to HT20),
368 and
369 2 (promote to HT40).
370 .It Dv IEEE80211_IOC_HTPROTMODE
371 Return, in
372 .Va i_val ,
373 the technique used to protect HT frames in a mixed 802.11n network.
374 Valid values are:
375 .Dv IEEE80211_PROTMODE_OFF
376 (no protection enabled)
377 and
378 .Dv IEEE80211_PROTMODE_RTSCTS
379 (send RTS and wait for CTS).
380 .It Dv IEEE80211_IOC_HWMP_MAXHOPS
381 Return the maximum acceptable hop count in an HWMP path in
382 .Va i_val .
383 .It Dv IEEE80211_IOC_HWMP_ROOTMODE
384 Return the setting for Mesh root mode operation in
385 .Va i_val .
386 Valid values are:
387 .Dv IEEE80211_HWMP_ROOTMODE_DISABLED
388 (root mode is disabled),
389 .Dv IEEE80211_HWMP_ROOTMODE_NORMAL
390 (send broadcast Path Request frames),
391 .Dv IEEE80211_HWMP_ROOTMODE_PROACTIVE
392 (send broadcast Path Request frames and force replies)
393 and
394 .Dv IEEE80211_HWMP_ROOTMODE_RANN
395 (send broadcast Root Announcement (RANN) frames).
396 .It Dv IEEE80211_IOC_INACTIVITY
397 Return whether or not the system handles inactivity processing in
398 .Va i_val .
399 When inactivity processing is enabled the system will track stations
400 that have not transmitted frames and periodically probe them to
401 check if they are still present.
402 Stations that are inactive and do not respond to probes are dropped.
403 .It Dv IEEE80211_IOC_MACCMD
404 Return information about the state of the MAC address
405 access control list (ACL) system.
406 There are two requests supported:
407 .Dv IEEE80211_MACCMD_POLICY
408 (to retrieve the current policy in
409 .Va i_val ),
410 and
411 .Dv IEEE80211_MACCMD_LIST
412 to retrieve the list installed/active ACL's via
413 .Va i_data .
414 The
415 .Xr wlan_acl 4
416 module must be installed and enabled or
417 .Er EINVAL
418 will be returned.
419 .It Dv IEEE80211_IOC_MESH_AP
420 Return whether or not Mesh AP support is enabled in
421 .Va i_val .
422 .It Dv IEEE80211_IOC_MESH_ID
423 Return the Mesh ID in the buffer pointed to by
424 .Va i_data .
425 .It Dv IEEE80211_IOC_MESH_FWRD
426 Return whether or not packet forwarding support is enabled in
427 .Va i_val .
428 .It Dv IEEE80211_IOC_MESH_PP_METRIC
429 Return the link metric protocol in the buffer pointed to by
430 .Va i_data .
431 .It Dv IEEE80211_IOC_MESH_PP_PATH
432 Return the path selection protocol in the buffer pointed to by
433 .Va i_data .
434 .It Dv IEEE80211_IOC_MESH_RTCMD
435 Return information about the state of the Mesh routing tables.
436 One request is supported:
437 .Dv IEEE80211_MESH_RTCMD_LIST
438 to retrieve the contents of the routing table in the buffer pointed to by
439 .Va i_data .
440 .It Dv IEEE80211_IOC_MESH_TTL
441 Return, in
442 .Va i_val ,
443 the Mesh Time To Live (TTL) setting installed in packets
444 transmitted by this mesh node.
445 .It Dv IEEE80211_IOC_NUMSSIDS
446 Return the number of SSIDs supported in
447 .Va i_val .
448 .It Dv IEEE80211_IOC_NUMWEPKEYS
449 Return the number of WEP keys supported in
450 .Va i_val .
451 .It Dv IEEE80211_IOC_POWERSAVE
452 Return the current powersaving mode in
453 .Va i_val .
454 Valid values are
455 .Dv IEEE80211_POWERSAVE_OFF
456 (power save operation is disabled)
457 and
458 .Dv IEEE80211_POWERSAVE_ON
459 (power save operation is enabled).
460 .It Dv IEEE80211_IOC_POWERSAVESLEEP
461 Return the powersave sleep time in TU in
462 .Va i_val .
463 This value is also termed the listen interval and represents the maximum time
464 a station will sleep before waking to retrieve packets buffered by
465 an access point.
466 .It Dv IEEE80211_IOC_PRIVACY
467 Return the current MLME setting for PRIVACY in
468 .Va i_val .
469 When PRIVACY is enabled all data packets must be encrypted.
470 This value will be zero if PRIVACY is disabled and
471 non-zero when PRIVACY is enabled.
472 .It Dv IEEE80211_IOC_PROTMODE
473 Return the current 802.11g protection mode in
474 .Va i_val .
475 Protection is the mechanism used to safeguard 802.11b stations operating
476 on an 802.11g network.
477 Valid values are
478 .Dv IEEE80211_PROTMODE_OFF
479 (no protection enabled),
480 .Dv IEEE80211_PROTMODE_CTS
481 (send CTS to yourself),
482 and
483 .Dv IEEE80211_PROTMODE_RTSCTS
484 (send RTS and wait for CTS).
485 .It Dv IEEE80211_IOC_PUREG
486 Return whether ``pure 11g'' mode is enabled in
487 .Va i_val .
488 This setting is meaningful only for access point operation;
489 when non-zero, 802.11b stations will not be allowed to associate.
490 .It Dv IEEE80211_IOC_PUREN
491 Return whether ``pure 11n'' mode is enabled in
492 .Va i_val .
493 This setting is meaningful only for access point operation;
494 when non-zero, legacy (non-11n capable) stations will not be
495 allowed to associate.
496 .It Dv IEEE80211_IOC_REGDOMAIN
497 Return the regulatory state in the buffer pointed to by
498 .Va i_data .
499 .It Dv IEEE80211_IOC_RIFS
500 Return whether or not Reduced InterFrame Spacing (RIFS) is enabled in
501 .Va i_val .
502 This  setting is meaningful only when operating with 802.11n on an HT channel.
503 .It Dv IEEE80211_IOC_ROAM
504 Return station roaming parameters in the buffer pointed to by
505 .Va i_data .
506 .It Dv IEEE80211_IOC_ROAMING
507 Return the current roaming mode in
508 .Va i_val .
509 Roaming mode specifies which entity controls operation of the MLME
510 state machine when operating as a station in an Infrastructure BSS.
511 Valid values are:
512 .Dv IEEE80211_ROAMING_DEVICE
513 (driver/firmware is in control),
514 .Dv IEEE80211_ROAMING_AUTO
515 (host 802.11 layer is in control),
516 and
517 .Dv IEEE80211_ROAMING_MANUAL
518 (application is in control).
519 .It Dv IEEE80211_IOC_RTSTHRESHOLD
520 Return the threshold (in bytes) for enabling transmission of RTS frames in
521 .Va i_val .
522 Packets larger than this value will automatically have an RTS frame
523 sent preceding it to reduce the likelihood of packet loss.
524 .It Dv IEEE80211_IOC_SCAN_RESULTS
525 Return the current contents of the scan cache in the data area pointed to by
526 .Va i_data .
527 .It Dv IEEE80211_IOC_SCANVALID
528 Return in
529 .Va i_val
530 how long (in seconds) results from a scan operation will be considered valid.
531 When scan results are no longer valid and they are needed (e.g. to roam) the
532 system will initiate a scan operation to replenish the scan cache.
533 .It Dv IEEE80211_IOC_SHORTGI
534 Return whether or not Short Guard Interval (SGI) is enabled in
535 .Va i_val .
536 Note SGI is only used when operating with 802.11n on an HT channel.
537 .It Dv IEEE80211_IOC_SMPS
538 Return the Spatial Multiplexing Power Save (SMPS) setting in
539 .Va i_val .
540 This setting is meaningful only when operating with 802.11n on an HT channel.
541 Valid values are:
542 .Dv IEEE80211_HTCAP_SMPS_DYNAMIC
543 (Dynamic SMPS is enabled),
544 .Dv IEEE80211_HTCAP_SMPS_ENA
545 (Static SMPS is enabled),
546 and
547 .Dv IEEE80211_HTCAP_SMPS_OFF
548 (SMPS is disabled).
549 .It Dv IEEE80211_IOC_SSID
550 Return the requested SSID in the buffer pointed to by
551 .Va i_data .
552 If
553 .Va i_val
554 is \(>= 0 then the request refers to the configured value for that slot.
555 Generally, 0 is the only valid value, but some interfaces support more
556 SSIDs.
557 .It Dv IEEE80211_IOC_STA_INFO
558 Return information about the current state of the specified station(s) via
559 .Va i_data .
560 The MAC address of a single station may be passed in or, if the broadcast
561 address is supplied, information about all stations will be returned.
562 If a single station is requested and the MAC address is unknown then
563 .Er ENOENT
564 will be returned.
565 .It Dv IEEE80211_IOC_STA_STATS
566 Return collected statistics for the specified station via
567 .Va i_data .
568 The MAC address of the desired station is passed in; if it is unknown
569 .Er ENOENT
570 will be returned.
571 .It Dv IEEE80211_IOC_STA_VLAN
572 Return any VLAN tag assigned to a station via
573 .Va i_data .
574 .It Dv IEEE80211_IOC_TDMA_SLOT
575 Return the slot number for the station in
576 .Va i_val .
577 Slot number zero is the master station in a TDMA network.
578 .It Dv IEEE80211_IOC_TDMA_SLOTCNT
579 Return the count of slots in the TDMA network in
580 .Va i_val .
581 .It Dv IEEE80211_IOC_TDMA_SLOTLEN
582 Return the length (in usecs) of the TDMA slot assigned to each
583 station in the network in
584 .Va i_val .
585 .It Dv IEEE80211_IOC_TDMA_BINTERVAL
586 Return the number of superframes between Beacon frames in
587 .Va i_val .
588 A TDMA network with N slots and slot length T has a superframe of NxT.
589 .It Dv IEEE80211_IOC_TSN
590 Return whether or not Transitional Security Network (TSN) is enabled in
591 .Va i_val .
592 .It Dv IEEE80211_IOC_TURBOP
593 Return whether Atheros Dynamic Turbo mode is enabled in
594 .Va i_val .
595 Dynamic Turbo mode is a non-standard protocol extension available only
596 on Atheros devices where channel width is dynamically
597 changed between 20MHz and 40MHz.
598 Note that enabling Dynamic Turbo mode support does not guarantee use;
599 both client and access point must use Atheros devices and support must
600 be enabled on both sides.
601 .It Dv IEEE80211_IOC_TXPARAMS
602 Return transmit parameters in the buffer pointed to by
603 .Va i_data .
604 .It Dv IEEE80211_IOC_TXPOWER
605 Return the transmit power limit in .5 dBm units in
606 .Va i_val .
607 This value represents the effective maximum and is calculated according to
608 the maximum power allowed by local regulations, any user-specified
609 power limit, and the maximum power the device is capable of.
610 .It Dv IEEE80211_IOC_TXPOWMAX
611 Return the user-specified maximum transmit power in .5 dBm units in
612 .Va i_val .
613 The maximum setting is applied after any regulatory cap.
614 .It Dv IEEE80211_IOC_WEP
615 Return the current WEP status in
616 .Va i_val .
617 Valid values are:
618 .Dv IEEE80211_WEP_ON
619 (enabled for all packets sent and received),
620 .Dv IEEE80211_WEP_OFF
621 (disabled),
622 and
623 .Dv IEEE80211_WEP_MIXED
624 (enabled for transmit and receive but also willing to receive
625 unencrypted frames).
626 This request is deprecated; use
627 .Dv IEEE80211_IOC_PRIVACY
628 and
629 .Dv IEEE80211_IOC_UNENCRYPTED
630 instead.
631 .It Dv IEEE80211_IOC_WEPKEY
632 Return the requested WEP key via
633 .Va i_data .
634 The key number is specified in
635 .Va i_val
636 and may be 0-3.
637 If the device does not support returning the WEP key or the user is not
638 root then the key may be returned as all zeros.
639 This request is deprecated in favor of
640 .Dv IEEE80211_IOC_WPAKEY .
641 .It Dv IEEE80211_IOC_WEPTXKEY
642 Return the number of the WEP key used for transmission in
643 .Va i_val .
644 .It Dv IEEE80211_IOC_WME
645 Return whether 802.11e/WME/WMM support is enabled in
646 .Va i_val .
647 This value will be non-zero when support is enabled and otherwise zero.
648 .It Dv IEEE80211_IOC_WME_CWMIN
649 Return the WME CWmin setting (log2) for the specified Access Class (AC) in
650 .Va i_val .
651 The AC is passed in through
652 .Va i_len
653 together with an optional IEEE80211_WMEPARAM_BSS flag to indicate if the
654 parameter for the BSS or the channel is desired.
655 If WME is not supported then
656 .Er EINVAL
657 will be returned.
658 .It Dv IEEE80211_IOC_WME_CWMAX
659 Return the WME CWmax setting (log2) for the specified Access Class (AC) in
660 .Va i_val .
661 See
662 .Dv IEEE80211_IOC_WME_CWMIN
663 above for more details.
664 .It Dv IEEE80211_IOC_WME_AIFS
665 Return the WME AIFS setting for the specified Access Class (AC) in
666 .Va i_val .
667 See
668 .Dv IEEE80211_IOC_WME_CWMIN
669 above for more details.
670 .It Dv IEEE80211_IOC_WME_TXOPLIMIT
671 Return the WME TxOpLimit (msec) for the specified Access Class (AC) in
672 .Va i_val .
673 See
674 .Dv IEEE80211_IOC_WME_CWMIN
675 above for more details.
676 .It Dv IEEE80211_IOC_WME_ACM
677 Return the WME Admission Control Mechanism (ACM) setting
678 for the specified Access Class (AC) in
679 .Va i_val .
680 This value is meaningful only for the BSS (not channel).
681 See
682 .Dv IEEE80211_IOC_WME_CWMIN
683 above for more details.
684 .It Dv IEEE80211_IOC_WME_ACKPOLICY
685 Return the WME ACK Policy setting
686 for the specified Access Class (AC) in
687 .Va i_val .
688 When this value is zero frames will be transmitted without waiting for
689 an Acknowledgement.
690 This value is meaningful only for the channel (not BSS).
691 See
692 .Dv IEEE80211_IOC_WME_CWMIN
693 above for more details.
694 .It Dv IEEE80211_IOC_WPA
695 Return the WPA configuration in
696 .Va i_val .
697 Valid values are
698 0 (WPA is not enabled),
699 1 (WPA1 is enabled),
700 2 (WPA2/802.11i is enabled),
701 and
702 3 (WPA1 and WPA2/802.11i are both enabled).
703 .It Dv IEEE80211_IOC_WPAIE
704 Return any WPA information element for an associated station via
705 .Va i_data .
706 The request passed in through
707 .Va i_data
708 identifies the MAC address of the desired station.
709 If an RSN (802.11i) element is present it is returned; otherwise any WPA
710 element is returned.
711 Note this request is deprecated; use
712 .Dv IEEE80211_IOC_WPAIE2
713 instead.
714 .It Dv IEEE80211_IOC_WPAIE2
715 Return any WPA information elements for an associated station via
716 .Va i_data .
717 The request passed in through
718 .Va i_data
719 identifies the MAC address of the desired station.
720 One or both of RSN (802.11i) and WPA elements may be returned.
721 .It Dv IEEE80211_IOC_WPAKEY
722 Return the requested cryptographic key in the buffer pointed to by
723 .Va i_data .
724 The key number is specified in
725 .Va i_val
726 and may be 0-3.
727 A key number of zero is used to retrieve a station's unicast cipher key
728 when operating with WPA enabled.
729 If the user is not root then the key data returned is all zeros.
730 .It Dv IEEE80211_IOC_WPS
731 Return whether or not Wi-FI Protected Setup (WPS) is enabled in
732 .Va i_val .
733 .El
734 .Pp
735 For
736 .Dv SIOCS80211
737 the following values of
738 .Va i_type
739 are valid.
740 Note that changing a value on an interface that is running may
741 cause the interface to be
742 .Sq reset .
743 Resets may be handled without altering the state if the parameter
744 does not affect the MLME state (e.g. RTS threshold), but in some
745 cases the interface may need to scan for a new network or clear
746 state (including any associated stations); in that case the interface
747 is said to be
748 .Sq restarted
749 (it is equivalent to marking the interface down and back up).
750 The information below identifies whether changing a value affects the
751 state of a running interface.
752 .Bl -tag -width indent
753 .It Dv IEEE80211_IOC_ADDMAC
754 Add an entry to the MAC address Access Control List (ACL) database using
755 the value pointed to by
756 .Va i_data .
757 The
758 .Xr wlan_acl 4
759 module must be installed and enabled or
760 .Er EINVAL
761 will be returned.
762 .It Dv IEEE80211_IOC_AMPDU
763 Set whether or not AMPDU is enabled for transmit and/or receive
764 using the value in
765 .Va i_val .
766 This request causes a running interface operating on an HT channel
767 to be reset.
768 See
769 .Dv IEEE80211_IOC_AMPDU
770 above for details.
771 .It Dv IEEE80211_IOC_AMPDU_DENSITY
772 Set the minimum density for bursting AMPDU frames to the value in
773 .Va i_val .
774 This request causes a running interface to be reset.
775 See
776 .Dv IEEE80211_IOC_AMPDU_DENSITY
777 above for details.
778 .It Dv IEEE80211_IOC_AMPDU_LIMIT
779 Set the limit on the size of AMPDU frames to the value in
780 .Va i_val .
781 This request causes a running interface to be reset.
782 See
783 .Dv IEEE80211_IOC_AMPDU_LIMIT
784 above for details.
785 .It Dv IEEE80211_IOC_AMSDU
786 Set whether or not AMSDU is enabled for transmit and/or receive
787 using the value in
788 .Va i_val .
789 This request causes a running interface operating on an HT channel
790 to be reset.
791 See
792 .Dv IEEE80211_IOC_AMSDU
793 above for details.
794 .It Dv IEEE80211_IOC_AMSDU_LIMIT
795 Set the limit on the size of AMSDU frames to the value in
796 .Va i_val .
797 This request causes a running interface to be reset.
798 See
799 .Dv IEEE80211_IOC_AMSDU_LIMIT
800 above for details.
801 .It Dv IEEE80211_IOC_APBRIDGE
802 Set whether AP bridging is enabled using the value in
803 .Va i_val .
804 See
805 .Dv IEEE80211_IOC_APBRIDGE
806 above for details.
807 .It Dv IEEE80211_IOC_APPIE
808 Set an application information element using the data pointed to by
809 .Va i_data .
810 This request causes a running interface to be restarted if the WPA
811 information element is changed.
812 See
813 .Dv IEEE80211_IOC_APPIE
814 above for details.
815 .It Dv IEEE80211_IOC_AUTHMODE
816 Set the current authentication mode using the value in
817 .Va i_val .
818 This request causes a running interface to be restarted.
819 See
820 .Dv IEEE80211_IOC_AUTHMODE
821 above for details.
822 This request causes a running interface to be restarted.
823 .It Dv IEEE80211_IOC_BEACON_INTERVAL
824 Set the time between Beacon frames (in TU) to the value in
825 .Va i_val .
826 This request causes a running interface to be restarted.
827 .It Dv IEEE80211_IOC_BGSCAN
828 Set whether background scanning is enabled using the value in
829 .Va i_val .
830 .It Dv IEEE80211_IOC_BGSCAN_IDLE
831 Set the minimum time (in msecs) a station must be idle
832 before it will do a background scan to the value in
833 .Va i_val .
834 .It Dv IEEE80211_IOC_BGSCAN_INTERVAL
835 Set the minimum time (seconds) between background scan operations to the value in
836 .Va i_val .
837 .It Dv IEEE80211_IOC_BMISSTHRESHOLD
838 Set the number of consecutive missed Beacon frames before the system will
839 attempt to roam to the value in
840 .Va i_val .
841 This request causes a running interface to be reset.
842 .It Dv IEEE80211_IOC_BSSID
843 Set the 802.11 MAC address for the desired BSS identifier according to
844 .Va i_data .
845 This request causes a running interface to be restarted.
846 .It Dv IEEE80211_IOC_BURST
847 Set whether or not packet bursting is enabled using the value in
848 .Va i_val .
849 This request causes a running interface to be reset.
850 .It Dv IEEE80211_IOC_CHANNEL
851 Set the desired/current channel to the value given by
852 .Va i_val .
853 This request causes a running interface to
854 immediately change to the specified channel if possible;
855 otherwise the interface will be restarted.
856 Note this request is deprecated; use
857 .Dv IEEE80211_IOC_CURCHAN
858 instead.
859 .It Dv IEEE80211_IOC_CHANLIST
860 Set the list of available channels using the channel list pointed to by
861 .Va i_data .
862 The channel list is a bit vector with bit N set to 1 if
863 IEEE channel number N is available for use.
864 The specified channel list is checked against the set of supported
865 channels and any channels not supported are silently ignored.
866 If the intersection of the channel list and the supported channels is empty
867 .Er EINVAL
868 is returned.
869 Note the current channel may be marked invalid after installing a
870 new channel list.
871 This request causes a running interface to be restarted.
872 .It Dv IEEE80211_IOC_COUNTERMEASURES
873 Set whether TKIP Countermeasures are enabled using the value in
874 .Va i_val .
875 This request can only be used when the authentication mode is set
876 WPA; otherwise
877 .Er EOPNOTSUPP
878 will be returned.
879 .It Dv IEEE80211_IOC_CURCHAN
880 Set the current channel using the information referenced by
881 .Va i_data .
882 This request causes a running interface to
883 immediately change to the specified channel if possible;
884 otherwise the interface will be restarted.
885 .It Dv IEEE80211_IOC_DELKEY
886 Delete the key specified by the information referenced by
887 .Va i_data .
888 .It Dv IEEE80211_IOC_DELMAC
889 Remove an entry in the MAC address Access Control List (ACL) database using
890 the value pointed to by
891 .Va i_data .
892 The
893 .Xr wlan_acl 4
894 module must be installed and enabled or
895 .Er EINVAL
896 will be returned.
897 .It Dv IEEE80211_IOC_DFS
898 Set whether or not Dynamic Frequency Selection (DFS) is enabled
899 using the value in
900 .Va i_val .
901 This request will fail with
902 .Er EINVAL
903 if 802.11h support is not enabled.
904 See
905 .Dv IEEE80211_IOC_DFS
906 above for details.
907 .It Dv IEEE80211_IOC_DOTD
908 Set whether or not 802.11d support is enabled using the value in
909 .Va i_val .
910 This request causes a running interface to be restarted.
911 See
912 .Dv IEEE80211_IOC_DOTD
913 above for details.
914 .It Dv IEEE80211_IOC_DOTH
915 Return whether 802.11h support is enabled using the value in
916 .Va i_val .
917 See
918 .Dv IEEE80211_IOC_DOTH
919 above for details.
920 .It Dv IEEE80211_IOC_DROPUNENCRYPTED
921 Set whether unencrypted packets transmit/received should be discarded
922 using the value in
923 .Va i_val .
924 .It Dv IEEE80211_IOC_DTIM_PERIOD
925 Set the period (in beacon intervals) between DTIM events to the value in
926 .Va i_val .
927 This request causes a running interface to be restarted.
928 .It Dv IEEE80211_IOC_DWDS
929 Set whether or not Dynamic WDS support is enabled using the value in
930 .Va i_val .
931 See
932 .Dv IEEE80211_IOC_DWDS
933 above for details.
934 .It Dv IEEE80211_IOC_FF
935 Set whether Atheros fast-frames support is enabled using the value in
936 .Va i_val .
937 This request causes a running interface to be restarted.
938 See
939 .Dv IEEE80211_IOC_FF
940 above for details.
941 .It Dv IEEE80211_IOC_FRAGTHRESHOLD
942 Set the threshold (in bytes) for enabling fragmentation frames using the value in
943 .Va i_val .
944 This request causes a running interface to be reset.
945 See
946 .Dv IEEE80211_IOC_FRAGTHRESHOLD
947 above for details.
948 .It Dv IEEE80211_IOC_GREENFIELD
949 Set whether or not Greenfield preamble use is enabled using the value in
950 .Va i_val .
951 This request causes a running interface to be reset.
952 See
953 .Dv IEEE80211_IOC_GREENFIELD
954 above for details.
955 .It Dv IEEE80211_IOC_HIDESSID
956 Set whether SSID hiding/cloaking is enabled using the value in
957 .Va i_val .
958 This request causes a running interface to be reset.
959 See
960 .Dv IEEE80211_IOC_HIDESSID
961 above for details.
962 .It Dv IEEE80211_IOC_HTCOMPAT
963 Set whether or not 802.11n compatibility support is enabled using the value in
964 .Va i_val .
965 This request causes a running interface to be reset if operating on HT channel.
966 See
967 .Dv IEEE80211_IOC_HTCOMPAT
968 above for details.
969 .It Dv IEEE80211_IOC_HTCONF
970 Set automatic promotion of HT channels using the value in
971 .Va i_val .
972 This request causes a running interface to be restarted.
973 See
974 .Dv IEEE80211_IOC_HTCONF
975 above for details.
976 .It Dv IEEE80211_IOC_HTPROTMODE
977 Set the technique used to protect HT frames in a mixed 802.11n network
978 using the value in
979 .Va i_val .
980 This request causes a running interface to be reset.
981 See
982 .Dv IEEE80211_IOC_HTPROTMODE
983 above for details.
984 .It Dv IEEE80211_IOC_HWMP_MAXHOPS
985 Set the maximum acceptable hop count in an HWMP path according to
986 .Va i_val .
987 Values must be in the range [0-255].
988 .It Dv IEEE80211_IOC_HWMP_ROOTMODE
989 Set the Mesh root mode operation according to
990 .Va i_val .
991 Valid values are
992 .Dv IEEE80211_HWMP_ROOTMODE_DISABLED
993 (root mode is disabled),
994 .Dv IEEE80211_HWMP_ROOTMODE_NORMAL
995 (send broadcast Path Request frames),
996 .Dv IEEE80211_HWMP_ROOTMODE_PROACTIVE
997 (send broadcast Path Request frames and force replies)
998 and
999 .Dv IEEE80211_HWMP_ROOTMODE_RANN
1000 (send broadcast Root Announcement (RANN) frames).
1001 .It Dv IEEE80211_IOC_INACTIVITY
1002 Set whether or not the system handles inactivity processing using the value in
1003 .Va i_val .
1004 When inactivity processing is enabled the system will track stations
1005 that have not transmitted frames and periodically probe them to
1006 check if they are still present.
1007 Stations that are inactive and do not respond to probes are dropped.
1008 .It Dv IEEE80211_IOC_MACCMD
1009 Change the state of the MAC address Access Control List (ACL) system.
1010 There are several requests supported:
1011 .Dv IEEE80211_MACCMD_POLICY_OPEN
1012 (set the current policy to disable ACL use),
1013 .Dv IEEE80211_MACCMD_POLICY_ALLOW
1014 (set the current policy to allow only addresses listed in the database),
1015 .Dv IEEE80211_MACCMD_POLICY_DENY
1016 (set the current policy to deny addresses listed in the database),
1017 .Dv IEEE80211_MACCMD_POLICY_RADUS
1018 (set the current policy to enable use of a RADIUS backend),
1019 .Dv IEEE80211_MACCMD_FLUSH
1020 (flush all addresses from the database),
1021 and
1022 .Dv IEEE80211_MACCMD_DETACH
1023 (detach the ACL subsystem, disabling it).
1024 The
1025 .Xr wlan_acl 4
1026 module must be installed or
1027 .Er EINVAL
1028 will be returned.
1029 .It Dv IEEE80211_IOC_MESH_AP
1030 Set whether or not Mesh AP support is enabled using
1031 .Va i_val .
1032 .It Dv IEEE80211_IOC_MESH_FWRD
1033 Set whether or not packet forwarding support is enabled using
1034 .Va i_val .
1035 .It Dv IEEE80211_IOC_MESH_ID
1036 Set the Mesh ID using the value pointed to by
1037 .Va i_data .
1038 A Mesh ID can be up to
1039 .Dv IEEE80211_MESHID_LEN
1040 bytes long.
1041 .It Dv IEEE80211_IOC_MESH_PP_METRIC
1042 Set the link metric protocol using the value pointed to by
1043 .Va i_data .
1044 .It Dv IEEE80211_IOC_MESH_PP_PATH
1045 Set the path selection protocol using the value pointed to by
1046 .Va i_data .
1047 .It Dv IEEE80211_IOC_MESH_RTCMD
1048 Manipulate the state of the Mesh routing tables.
1049 Several requests are supported:
1050 .Dv IEEE80211_MESH_RTCMD_FLUSH
1051 (flush the contents of the routing table),
1052 .Dv IEEE80211_MESH_RTCMD_ADD
1053 (add an entry for the MAC address specified in
1054 .Va i_data
1055 and start the Peer discovery process),
1056 and
1057 .Dv IEEE80211_MESH_RTCMD_DELETE
1058 (delete the entry corresponding to the MAC address specified in
1059 .Va i_data ).
1060 .It Dv IEEE80211_IOC_MESH_TTL
1061 Set the Mesh Time To Live (TTL) setting installed in packets
1062 transmitted by this mesh node using
1063 .Va i_val .
1064 .It Dv IEEE80211_IOC_MLME
1065 Explicitly control the MLME state machine for a station using the
1066 MLME request pointed to by
1067 .Va i_data .
1068 There are several MLME operations supported:
1069 .Dv IEEE80211_MLME_ASSOC
1070 (request association to an access point),
1071 .Dv IEEE80211_MLME_DIASSOC
1072 (diassociate the specified station),
1073 .Dv IEEE80211_MLME_DEAUTH
1074 (deauthenticate the specified station),
1075 .Dv IEEE80211_MLME_AUHORIZE
1076 (mark the specified station authorized to pass data frames),
1077 .Dv IEEE80211_MLME_UNAUTHORIZE
1078 (revoke the specified station's ability to pass data frames),
1079 and
1080 .Dv IEEE80211_MLME_AUTH
1081 (request authentication to an access point).
1082 Note when this facility is used for stations operating in infrastructure mode
1083 the roaming mode should be set to manual.
1084 .It Dv IEEE80211_IOC_POWERSAVE
1085 Set the current powersaving mode to the value in
1086 .Va i_val .
1087 See
1088 .Dv IEEE80211_IOC_POWERSAVE
1089 above for valid values.
1090 This request causes a running interface to be reset.
1091 .It Dv IEEE80211_IOC_POWERSAVESLEEP
1092 Set the powersave sleep time in TU to the value in
1093 .Va i_val .
1094 This request causes a running interface to be reset.
1095 .It Dv IEEE80211_IOC_PRIVACY
1096 Set the current MLME setting for PRIVACY using the value in
1097 .Va i_val .
1098 See
1099 .Dv IEEE80211_IOC_PRIVACY
1100 above for details.
1101 .It Dv IEEE80211_IOC_PROTMODE
1102 Set the current 802.11g protection mode to the value in
1103 .Va i_val .
1104 This request causes a running interface to be reset.
1105 See
1106 .Dv IEEE80211_IOC_PROTMODE
1107 above for details.
1108 This request causes a running interface to be reset.
1109 .It Dv IEEE80211_IOC_PUREG
1110 Set whether ``pure 11g'' mode is enabled using the value in
1111 .Va i_val .
1112 This request causes a running interface to be restarted.
1113 See
1114 .Dv IEEE80211_IOC_PUREG
1115 above for details.
1116 .It Dv IEEE80211_IOC_PUREN
1117 Set whether ``pure 11n'' mode is enabled using the value in
1118 .Va i_val .
1119 This request causes a running interface to be restarted.
1120 See
1121 .Dv IEEE80211_IOC_PUREN
1122 above for details.
1123 .It Dv IEEE80211_IOC_REGDOMAIN
1124 Set the regulatory state using the data referenced by
1125 .Va i_data .
1126 This request can only be issued when all interfaces cloned from the
1127 underlying physical device are marked down; otherwise
1128 .Er EBUSY
1129 is returned.
1130 Note the new regulatory data may invalidate any desired channel.
1131 .It Dv IEEE80211_IOC_RIFS
1132 Set whether or not Reduced InterFrame Spacing (RIFS) is enabled
1133 using the value in
1134 .Va i_val .
1135 This  setting is meaningful only when operating with 802.11n on an HT channel.
1136 This request causes a running interface to be reset.
1137 .It Dv IEEE80211_IOC_ROAM
1138 Set station roaming parameters using the data pointed to by
1139 .Va i_data .
1140 .It Dv IEEE80211_IOC_ROAMING
1141 Set the current roaming mode to the value in
1142 .Va i_val .
1143 See
1144 .Dv IEEE80211_IOC_ROAMING
1145 above for details.
1146 .It Dv IEEE80211_IOC_RTSTHRESHOLD
1147 Set the threshold (in bytes) for enabling transmission of RTS frames
1148 to the value in
1149 .Va i_val .
1150 This request causes a running interface to be reset.
1151 See
1152 .Dv IEEE80211_IOC_RTSTHRESHOLD
1153 above for details.
1154 .It Dv IEEE80211_IOC_SCANVALID
1155 Set the age (in seconds) that results from a scan operation will be
1156 considered valid.
1157 When scan results are no longer valid and they are needed (e.g. to roam) the
1158 system will initiate a scan operation to replenish the scan cache.
1159 .It Dv IEEE80211_IOC_SCAN_REQ
1160 Request a scan operation using the parameters pointed to by
1161 .Va i_val .
1162 The underlying device must be running or
1163 .Er ENXIO
1164 will be returned.
1165 Values for
1166 .Va sr_duration ,
1167 .Va sr_mindwell ,
1168 and
1169 .Va sr_maxdwell
1170 shorter than 1 clock tick are rounded up to a tick.
1171 If more SSID's are supplied than the system is capable of handling
1172 the extra ones are silently ignored.
1173 If a scan operation is already in progress the request will be
1174 (silently) ignored.
1175 .It Dv IEEE80211_IOC_SCAN_CANCEL
1176 Cancel any pending/active scan operation.
1177 .It Dv IEEE80211_IOC_SHORTGI
1178 Set whether or not Short Guard Interval (SGI) is enabled using the value in
1179 .Va i_val .
1180 Note SGI is only used when operating on an HT (802.11n) channel.
1181 This request causes a running interface to be reset.
1182 .It Dv IEEE80211_IOC_SMPS
1183 Set the Spatial Multiplexing Power Save (SMPS) setting to the value in
1184 .Va i_val .
1185 This request causes a running interface to be reset.
1186 See
1187 .Dv IEEE80211_IOC_SMPS
1188 above for details.
1189 .It Dv IEEE80211_IOC_SSID
1190 Set the desired SSID using the value pointed to by
1191 .Va i_data .
1192 The string may be at most IEEE80211_NWID_LEN bytes.
1193 This request causes a running interface to be restarted.
1194 .It Dv IEEE80211_IOC_STA_STATS
1195 Clear accumulated statistics for the specified station.
1196 .It Dv IEEE80211_IOC_STA_VLAN
1197 Set the VLAN tag for the specified station using the information pointed to by
1198 .Va i_data .
1199 .It Dv IEEE80211_IOC_TDMA_BINTERVAL
1200 Set the interval between Beacon frames to the value in
1201 .Va i_val .
1202 Values must be positive.
1203 This request causes a running interface to be reset.
1204 .It Dv IEEE80211_IOC_TDMA_SLOT
1205 Set the current TDMA slot to the value in
1206 .Va i_val .
1207 Values must be in the range [0-slotcnt].
1208 Slot 0 identifies the master in the TDMA network; if it running it will
1209 immediately start sending Beacon frames.
1210 .It Dv IEEE80211_IOC_TDMA_SLOTCNT
1211 Set the number of slots in the TDMA network to the value in
1212 .Va i_val .
1213 This request causes a running interface to be reset.
1214 .It Dv IEEE80211_IOC_TDMA_SLOTLEN
1215 Set the length of the TDMA slot assigned to each station in the network
1216 to the value in
1217 .Va i_val .
1218 Slot lengths must be in the range 200 usecs to 1024 milliseconds
1219 (though values outside the range 1-200ms are unlikely to work well).
1220 This request causes a running interface to be reset.
1221 .It Dv IEEE80211_IOC_TSN
1222 Set whether or not Transitional Security Network (TSN) is enabled
1223 using the value in
1224 .Va i_val .
1225 .It Dv IEEE80211_IOC_TURBOP
1226 Set whether Atheros Dynamic Turbo mode is enabled using the value in
1227 .Va i_val .
1228 This request causes a running interface to be restarted.
1229 .It Dv IEEE80211_IOC_TXPARAMS
1230 Set transmit parameters using the data pointed to be
1231 .Va i_data .
1232 This request causes a running interface to be restarted.
1233 .It Dv IEEE80211_IOC_TXPOWER
1234 Set the maximum transmit power limit in .5 dBm units to the value in
1235 .Va i_val .
1236 This request causes a running interface to be reset.
1237 .It Dv IEEE80211_IOC_WEP
1238 Set the current WEP mode to the value in
1239 .Va i_val .
1240 See
1241 .Dv IEEE80211_IOC_WEP
1242 above for valid values.
1243 This request causes a running interface to be restarted.
1244 Note this request is deprecated; use
1245 .Dv IEEE80211_IOC_PRIVACY
1246 and
1247 .Dv IEEE80211_IOC_DROPUNENCRYPTED
1248 instead.
1249 .It Dv IEEE80211_IOC_WEPKEY
1250 Set the WEP key indicated by
1251 .Va i_val
1252 using the data pointed to by
1253 .Va i_data .
1254 Note this request is deprecated; use
1255 .Dv IEEE80211_IOC_WPAKEY
1256 instead.
1257 .It Dv IEEE80211_IOC_WEPTXKEY
1258 Set the default transmit key used for transmission to the value in
1259 .Va i_val .
1260 .It Dv IEEE80211_IOC_WME
1261 Set whether or not WME/WMM support is enabled using the value in
1262 .Va i_val .
1263 This request causes a running interface to be reset.
1264 .It Dv IEEE80211_IOC_WME_ACKPOLICY
1265 Set the WME ACK Policy for the Access Class (AC) specified in
1266 .Va i_len
1267 using the value in
1268 .Va i_val .
1269 .It Dv IEEE80211_IOC_WME_ACM
1270 Set the WME Admission Control Mechanism for the Access Class (AC) specified in
1271 .Va i_len
1272 using the value in
1273 .Va i_val .
1274 .It Dv IEEE80211_IOC_WME_AIFS
1275 Set the WME AIFS parameter for the Access Class (AC) specified in
1276 .Va i_len
1277 using the value in
1278 .Va i_val .
1279 .It Dv IEEE80211_IOC_WME_CWMAX
1280 Set the WME CWmax parameter for the Access Class (AC) specified in
1281 .Va i_len
1282 using the value in
1283 .Va i_val .
1284 .It Dv IEEE80211_IOC_WME_CWMIN
1285 Set the WME CWmin parameter for the Access Class (AC) specified in
1286 .Va i_len
1287 using the value in
1288 .Va i_val .
1289 .It Dv IEEE80211_IOC_WME_TXOPLIMIT
1290 Set the WME TxOpLimit parameter for the Access Class (AC) specified in
1291 .Va i_len
1292 using the value in
1293 .Va i_val .
1294 .It Dv IEEE80211_IOC_WPA
1295 Set the WPA configuration using the value in
1296 .Va i_val .
1297 This request causes a running interface to be reset.
1298 See
1299 .Dv IEEE80211_IOC_WPA
1300 above for details.
1301 .It Dv IEEE80211_IOC_WPAKEY
1302 Set the requested cryptographic key using data in the buffer pointed to by
1303 .Va i_data .
1304 See
1305 .Dv IEEE80211_IOC_WPAKEY
1306 for details.
1307 .It Dv IEEE80211_IOC_WPS
1308 Set whether or not Wi-FI Protected Setup (WPS) is enabled using the value in
1309 .Va i_val .
1310 .El
1311 .Sh SEE ALSO
1312 .Xr ioctl 2 ,
1313 .Xr wlan 4 ,
1314 .Xr wlan_acl 4 ,
1315 .Xr wlan_xauth 4 ,
1316 .Xr ifconfig 8 ,
1317 .Xr hostapd 8 ,
1318 .Xr wpa_supplicant 8 .