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