xref: /freebsd/share/man/man4/net80211.4 (revision a5921bc3653e2e286715e6fe8d473ec0d02da38c)
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
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_INACTIVITY
397Return whether or not the system handles inactivity processing in
398.Va i_val .
399When inactivity processing is enabled the system will track stations
400that have not transmitted frames and periodically probe them to
401check if they are still present.
402Stations that are inactive and do not respond to probes are dropped.
403.It Dv IEEE80211_IOC_MACCMD
404Return information about the state of the MAC address
405access control list (ACL) system.
406There are two requests supported:
407.Dv IEEE80211_MACCMD_POLICY
408(to retrieve the current policy in
409.Va i_val ),
410and
411.Dv IEEE80211_MACCMD_LIST
412to retrieve the list installed/active ACL's via
413.Va i_data .
414The
415.Xr wlan_acl 4
416module must be installed and enabled or
417.Er EINVAL
418will be returned.
419.It Dv IEEE80211_IOC_MESH_AP
420Return whether or not Mesh AP support is enabled in
421.Va i_val .
422.It Dv IEEE80211_IOC_MESH_ID
423Return the Mesh ID in the buffer pointed to by
424.Va i_data .
425.It Dv IEEE80211_IOC_MESH_FWRD
426Return whether or not packet forwarding support is enabled in
427.Va i_val .
428.It Dv IEEE80211_IOC_MESH_PP_METRIC
429Return the link metric protocol in the buffer pointed to by
430.Va i_data .
431.It Dv IEEE80211_IOC_MESH_PP_PATH
432Return the path selection protocol in the buffer pointed to by
433.Va i_data .
434.It Dv IEEE80211_IOC_MESH_RTCMD
435Return information about the state of the Mesh routing tables.
436One request is supported:
437.Dv IEEE80211_MESH_RTCMD_LIST
438to retrieve the contents of the routing table in the buffer pointed to by
439.Va i_data .
440.It Dv IEEE80211_IOC_MESH_TTL
441Return, in
442.Va i_val ,
443the Mesh Time To Live (TTL) setting installed in packets
444transmitted by this mesh node.
445.It Dv IEEE80211_IOC_NUMSSIDS
446Return the number of SSIDs supported in
447.Va i_val .
448.It Dv IEEE80211_IOC_NUMWEPKEYS
449Return the number of WEP keys supported in
450.Va i_val .
451.It Dv IEEE80211_IOC_POWERSAVE
452Return the current powersaving mode in
453.Va i_val .
454Valid values are
455.Dv IEEE80211_POWERSAVE_OFF
456(power save operation is disabled)
457and
458.Dv IEEE80211_POWERSAVE_ON
459(power save operation is enabled).
460.It Dv IEEE80211_IOC_POWERSAVESLEEP
461Return the powersave sleep time in TU in
462.Va i_val .
463This value is also termed the listen interval and represents the maximum time
464a station will sleep before waking to retrieve packets buffered by
465an access point.
466.It Dv IEEE80211_IOC_PRIVACY
467Return the current MLME setting for PRIVACY in
468.Va i_val .
469When PRIVACY is enabled all data packets must be encrypted.
470This value will be zero if PRIVACY is disabled and
471non-zero when PRIVACY is enabled.
472.It Dv IEEE80211_IOC_PROTMODE
473Return the current 802.11g protection mode in
474.Va i_val .
475Protection is the mechanism used to safeguard 802.11b stations operating
476on an 802.11g network.
477Valid values are
478.Dv IEEE80211_PROTMODE_OFF
479(no protection enabled),
480.Dv IEEE80211_PROTMODE_CTS
481(send CTS to yourself),
482and
483.Dv IEEE80211_PROTMODE_RTSCTS
484(send RTS and wait for CTS).
485.It Dv IEEE80211_IOC_PUREG
486Return whether ``pure 11g'' mode is enabled in
487.Va i_val .
488This setting is meaningful only for access point operation;
489when non-zero, 802.11b stations will not be allowed to associate.
490.It Dv IEEE80211_IOC_PUREN
491Return whether ``pure 11n'' mode is enabled in
492.Va i_val .
493This setting is meaningful only for access point operation;
494when non-zero, legacy (non-11n capable) stations will not be
495allowed to associate.
496.It Dv IEEE80211_IOC_REGDOMAIN
497Return the regulatory state in the buffer pointed to by
498.Va i_data .
499.It Dv IEEE80211_IOC_RIFS
500Return whether or not Reduced InterFrame Spacing (RIFS) is enabled in
501.Va i_val .
502This  setting is meaningful only when operating with 802.11n on an HT channel.
503.It Dv IEEE80211_IOC_ROAM
504Return station roaming parameters in the buffer pointed to by
505.Va i_data .
506.It Dv IEEE80211_IOC_ROAMING
507Return the current roaming mode in
508.Va i_val .
509Roaming mode specifies which entity controls operation of the MLME
510state machine when operating as a station in an Infrastructure BSS.
511Valid 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),
516and
517.Dv IEEE80211_ROAMING_MANUAL
518(application is in control).
519.It Dv IEEE80211_IOC_RTSTHRESHOLD
520Return the threshold (in bytes) for enabling transmission of RTS frames in
521.Va i_val .
522Packets larger than this value will automatically have an RTS frame
523sent preceding it to reduce the likelihood of packet loss.
524.It Dv IEEE80211_IOC_SCAN_RESULTS
525Return the current contents of the scan cache in the data area pointed to by
526.Va i_data .
527.It Dv IEEE80211_IOC_SCANVALID
528Return in
529.Va i_val
530how long (in seconds) results from a scan operation will be considered valid.
531When scan results are no longer valid and they are needed (e.g. to roam) the
532system will initiate a scan operation to replenish the scan cache.
533.It Dv IEEE80211_IOC_SHORTGI
534Return whether or not Short Guard Interval (SGI) is enabled in
535.Va i_val .
536Note SGI is only used when operating with 802.11n on an HT channel.
537.It Dv IEEE80211_IOC_SMPS
538Return the Spatial Multiplexing Power Save (SMPS) setting in
539.Va i_val .
540This setting is meaningful only when operating with 802.11n on an HT channel.
541Valid values are:
542.Dv IEEE80211_HTCAP_SMPS_DYNAMIC
543(Dynamic SMPS is enabled),
544.Dv IEEE80211_HTCAP_SMPS_ENA
545(Static SMPS is enabled),
546and
547.Dv IEEE80211_HTCAP_SMPS_OFF
548(SMPS is disabled).
549.It Dv IEEE80211_IOC_SSID
550Return the requested SSID in the buffer pointed to by
551.Va i_data .
552If
553.Va i_val
554is \(>= 0 then the request refers to the configured value for that slot.
555Generally, 0 is the only valid value, but some interfaces support more
556SSIDs.
557.It Dv IEEE80211_IOC_STA_INFO
558Return information about the current state of the specified station(s) via
559.Va i_data .
560The MAC address of a single station may be passed in or, if the broadcast
561address is supplied, information about all stations will be returned.
562If a single station is requested and the MAC address is unknown then
563.Er ENOENT
564will be returned.
565.It Dv IEEE80211_IOC_STA_STATS
566Return collected statistics for the specified station via
567.Va i_data .
568The MAC address of the desired station is passed in; if it is unknown
569.Er ENOENT
570will be returned.
571.It Dv IEEE80211_IOC_STA_VLAN
572Return any VLAN tag assigned to a station via
573.Va i_data .
574.It Dv IEEE80211_IOC_TDMA_SLOT
575Return the slot number for the station in
576.Va i_val .
577Slot number zero is the master station in a TDMA network.
578.It Dv IEEE80211_IOC_TDMA_SLOTCNT
579Return the count of slots in the TDMA network in
580.Va i_val .
581.It Dv IEEE80211_IOC_TDMA_SLOTLEN
582Return the length (in usecs) of the TDMA slot assigned to each
583station in the network in
584.Va i_val .
585.It Dv IEEE80211_IOC_TDMA_BINTERVAL
586Return the number of superframes between Beacon frames in
587.Va i_val .
588A TDMA network with N slots and slot length T has a superframe of NxT.
589.It Dv IEEE80211_IOC_TSN
590Return whether or not Transitional Security Network (TSN) is enabled in
591.Va i_val .
592.It Dv IEEE80211_IOC_TURBOP
593Return whether Atheros Dynamic Turbo mode is enabled in
594.Va i_val .
595Dynamic Turbo mode is a non-standard protocol extension available only
596on Atheros devices where channel width is dynamically
597changed between 20MHz and 40MHz.
598Note that enabling Dynamic Turbo mode support does not guarantee use;
599both client and access point must use Atheros devices and support must
600be enabled on both sides.
601.It Dv IEEE80211_IOC_TXPARAMS
602Return transmit parameters in the buffer pointed to by
603.Va i_data .
604.It Dv IEEE80211_IOC_TXPOWER
605Return the transmit power limit in .5 dBm units in
606.Va i_val .
607This value represents the effective maximum and is calculated according to
608the maximum power allowed by local regulations, any user-specified
609power limit, and the maximum power the device is capable of.
610.It Dv IEEE80211_IOC_TXPOWMAX
611Return the user-specified maximum transmit power in .5 dBm units in
612.Va i_val .
613The maximum setting is applied after any regulatory cap.
614.It Dv IEEE80211_IOC_WEP
615Return the current WEP status in
616.Va i_val .
617Valid values are:
618.Dv IEEE80211_WEP_ON
619(enabled for all packets sent and received),
620.Dv IEEE80211_WEP_OFF
621(disabled),
622and
623.Dv IEEE80211_WEP_MIXED
624(enabled for transmit and receive but also willing to receive
625unencrypted frames).
626This request is deprecated; use
627.Dv IEEE80211_IOC_PRIVACY
628and
629.Dv IEEE80211_IOC_UNENCRYPTED
630instead.
631.It Dv IEEE80211_IOC_WEPKEY
632Return the requested WEP key via
633.Va i_data .
634The key number is specified in
635.Va i_val
636and may be 0-3.
637If the device does not support returning the WEP key or the user is not
638root then the key may be returned as all zeros.
639This request is deprecated in favor of
640.Dv IEEE80211_IOC_WPAKEY .
641.It Dv IEEE80211_IOC_WEPTXKEY
642Return the number of the WEP key used for transmission in
643.Va i_val .
644.It Dv IEEE80211_IOC_WME
645Return whether 802.11e/WME/WMM support is enabled in
646.Va i_val .
647This value will be non-zero when support is enabled and otherwise zero.
648.It Dv IEEE80211_IOC_WME_CWMIN
649Return the WME CWmin setting (log2) for the specified Access Class (AC) in
650.Va i_val .
651The AC is passed in through
652.Va i_len
653together with an optional IEEE80211_WMEPARAM_BSS flag to indicate if the
654parameter for the BSS or the channel is desired.
655If WME is not supported then
656.Er EINVAL
657will be returned.
658.It Dv IEEE80211_IOC_WME_CWMAX
659Return the WME CWmax setting (log2) for the specified Access Class (AC) in
660.Va i_val .
661See
662.Dv IEEE80211_IOC_WME_CWMIN
663above for more details.
664.It Dv IEEE80211_IOC_WME_AIFS
665Return the WME AIFS setting for the specified Access Class (AC) in
666.Va i_val .
667See
668.Dv IEEE80211_IOC_WME_CWMIN
669above for more details.
670.It Dv IEEE80211_IOC_WME_TXOPLIMIT
671Return the WME TxOpLimit (msec) for the specified Access Class (AC) in
672.Va i_val .
673See
674.Dv IEEE80211_IOC_WME_CWMIN
675above for more details.
676.It Dv IEEE80211_IOC_WME_ACM
677Return the WME Admission Control Mechanism (ACM) setting
678for the specified Access Class (AC) in
679.Va i_val .
680This value is meaningful only for the BSS (not channel).
681See
682.Dv IEEE80211_IOC_WME_CWMIN
683above for more details.
684.It Dv IEEE80211_IOC_WME_ACKPOLICY
685Return the WME ACK Policy setting
686for the specified Access Class (AC) in
687.Va i_val .
688When this value is zero frames will be transmitted without waiting for
689an Acknowledgement.
690This value is meaningful only for the channel (not BSS).
691See
692.Dv IEEE80211_IOC_WME_CWMIN
693above for more details.
694.It Dv IEEE80211_IOC_WPA
695Return the WPA configuration in
696.Va i_val .
697Valid values are
6980 (WPA is not enabled),
6991 (WPA1 is enabled),
7002 (WPA2/802.11i is enabled),
701and
7023 (WPA1 and WPA2/802.11i are both enabled).
703.It Dv IEEE80211_IOC_WPAIE
704Return any WPA information element for an associated station via
705.Va i_data .
706The request passed in through
707.Va i_data
708identifies the MAC address of the desired station.
709If an RSN (802.11i) element is present it is returned; otherwise any WPA
710element is returned.
711Note this request is deprecated; use
712.Dv IEEE80211_IOC_WPAIE2
713instead.
714.It Dv IEEE80211_IOC_WPAIE2
715Return any WPA information elements for an associated station via
716.Va i_data .
717The request passed in through
718.Va i_data
719identifies the MAC address of the desired station.
720One or both of RSN (802.11i) and WPA elements may be returned.
721.It Dv IEEE80211_IOC_WPAKEY
722Return the requested cryptographic key in the buffer pointed to by
723.Va i_data .
724The key number is specified in
725.Va i_val
726and may be 0-3.
727A key number of zero is used to retrieve a station's unicast cipher key
728when operating with WPA enabled.
729If the user is not root then the key data returned is all zeros.
730.It Dv IEEE80211_IOC_WPS
731Return whether or not Wi-FI Protected Setup (WPS) is enabled in
732.Va i_val .
733.El
734.Pp
735For
736.Dv SIOCS80211
737the following values of
738.Va i_type
739are valid.
740Note that changing a value on an interface that is running may
741cause the interface to be
742.Sq reset .
743Resets may be handled without altering the state if the parameter
744does not affect the MLME state (e.g. RTS threshold), but in some
745cases the interface may need to scan for a new network or clear
746state (including any associated stations); in that case the interface
747is said to be
748.Sq restarted
749(it is equivalent to marking the interface down and back up).
750The information below identifies whether changing a value affects the
751state of a running interface.
752.Bl -tag -width indent
753.It Dv IEEE80211_IOC_ADDMAC
754Add an entry to the MAC address Access Control List (ACL) database using
755the value pointed to by
756.Va i_data .
757The
758.Xr wlan_acl 4
759module must be installed and enabled or
760.Er EINVAL
761will be returned.
762.It Dv IEEE80211_IOC_AMPDU
763Set whether or not AMPDU is enabled for transmit and/or receive
764using the value in
765.Va i_val .
766This request causes a running interface operating on an HT channel
767to be reset.
768See
769.Dv IEEE80211_IOC_AMPDU
770above for details.
771.It Dv IEEE80211_IOC_AMPDU_DENSITY
772Set the minimum density for bursting AMPDU frames to the value in
773.Va i_val .
774This request causes a running interface to be reset.
775See
776.Dv IEEE80211_IOC_AMPDU_DENSITY
777above for details.
778.It Dv IEEE80211_IOC_AMPDU_LIMIT
779Set the limit on the size of AMPDU frames to the value in
780.Va i_val .
781This request causes a running interface to be reset.
782See
783.Dv IEEE80211_IOC_AMPDU_LIMIT
784above for details.
785.It Dv IEEE80211_IOC_AMSDU
786Set whether or not AMSDU is enabled for transmit and/or receive
787using the value in
788.Va i_val .
789This request causes a running interface operating on an HT channel
790to be reset.
791See
792.Dv IEEE80211_IOC_AMSDU
793above for details.
794.It Dv IEEE80211_IOC_AMSDU_LIMIT
795Set the limit on the size of AMSDU frames to the value in
796.Va i_val .
797This request causes a running interface to be reset.
798See
799.Dv IEEE80211_IOC_AMSDU_LIMIT
800above for details.
801.It Dv IEEE80211_IOC_APBRIDGE
802Set whether AP bridging is enabled using the value in
803.Va i_val .
804See
805.Dv IEEE80211_IOC_APBRIDGE
806above for details.
807.It Dv IEEE80211_IOC_APPIE
808Set an application information element using the data pointed to by
809.Va i_data .
810This request causes a running interface to be restarted if the WPA
811information element is changed.
812See
813.Dv IEEE80211_IOC_APPIE
814above for details.
815.It Dv IEEE80211_IOC_AUTHMODE
816Set the current authentication mode using the value in
817.Va i_val .
818This request causes a running interface to be restarted.
819See
820.Dv IEEE80211_IOC_AUTHMODE
821above for details.
822This request causes a running interface to be restarted.
823.It Dv IEEE80211_IOC_BEACON_INTERVAL
824Set the time between Beacon frames (in TU) to the value in
825.Va i_val .
826This request causes a running interface to be restarted.
827.It Dv IEEE80211_IOC_BGSCAN
828Set whether background scanning is enabled using the value in
829.Va i_val .
830.It Dv IEEE80211_IOC_BGSCAN_IDLE
831Set the minimum time (in msecs) a station must be idle
832before it will do a background scan to the value in
833.Va i_val .
834.It Dv IEEE80211_IOC_BGSCAN_INTERVAL
835Set the minimum time (seconds) between background scan operations to the value in
836.Va i_val .
837.It Dv IEEE80211_IOC_BMISSTHRESHOLD
838Set the number of consecutive missed Beacon frames before the system will
839attempt to roam to the value in
840.Va i_val .
841This request causes a running interface to be reset.
842.It Dv IEEE80211_IOC_BSSID
843Set the 802.11 MAC address for the desired BSS identifier according to
844.Va i_data .
845This request causes a running interface to be restarted.
846.It Dv IEEE80211_IOC_BURST
847Set whether or not packet bursting is enabled using the value in
848.Va i_val .
849This request causes a running interface to be reset.
850.It Dv IEEE80211_IOC_CHANNEL
851Set the desired/current channel to the value given by
852.Va i_val .
853This request causes a running interface to
854immediately change to the specified channel if possible;
855otherwise the interface will be restarted.
856Note this request is deprecated; use
857.Dv IEEE80211_IOC_CURCHAN
858instead.
859.It Dv IEEE80211_IOC_CHANLIST
860Set the list of available channels using the channel list pointed to by
861.Va i_data .
862The channel list is a bit vector with bit N set to 1 if
863IEEE channel number N is available for use.
864The specified channel list is checked against the set of supported
865channels and any channels not supported are silently ignored.
866If the intersection of the channel list and the supported channels is empty
867.Er EINVAL
868is returned.
869Note the current channel may be marked invalid after installing a
870new channel list.
871This request causes a running interface to be restarted.
872.It Dv IEEE80211_IOC_COUNTERMEASURES
873Set whether TKIP Countermeasures are enabled using the value in
874.Va i_val .
875This request can only be used when the authentication mode is set
876WPA; otherwise
877.Er EOPNOTSUPP
878will be returned.
879.It Dv IEEE80211_IOC_CURCHAN
880Set the current channel using the information referenced by
881.Va i_data .
882This request causes a running interface to
883immediately change to the specified channel if possible;
884otherwise the interface will be restarted.
885.It Dv IEEE80211_IOC_DELKEY
886Delete the key specified by the information referenced by
887.Va i_data .
888.It Dv IEEE80211_IOC_DELMAC
889Remove an entry in the MAC address Access Control List (ACL) database using
890the value pointed to by
891.Va i_data .
892The
893.Xr wlan_acl 4
894module must be installed and enabled or
895.Er EINVAL
896will be returned.
897.It Dv IEEE80211_IOC_DFS
898Set whether or not Dynamic Frequency Selection (DFS) is enabled
899using the value in
900.Va i_val .
901This request will fail with
902.Er EINVAL
903if 802.11h support is not enabled.
904See
905.Dv IEEE80211_IOC_DFS
906above for details.
907.It Dv IEEE80211_IOC_DOTD
908Set whether or not 802.11d support is enabled using the value in
909.Va i_val .
910This request causes a running interface to be restarted.
911See
912.Dv IEEE80211_IOC_DOTD
913above for details.
914.It Dv IEEE80211_IOC_DOTH
915Return whether 802.11h support is enabled using the value in
916.Va i_val .
917See
918.Dv IEEE80211_IOC_DOTH
919above for details.
920.It Dv IEEE80211_IOC_DROPUNENCRYPTED
921Set whether unencrypted packets transmit/received should be discarded
922using the value in
923.Va i_val .
924.It Dv IEEE80211_IOC_DTIM_PERIOD
925Set the period (in beacon intervals) between DTIM events to the value in
926.Va i_val .
927This request causes a running interface to be restarted.
928.It Dv IEEE80211_IOC_DWDS
929Set whether or not Dynamic WDS support is enabled using the value in
930.Va i_val .
931See
932.Dv IEEE80211_IOC_DWDS
933above for details.
934.It Dv IEEE80211_IOC_FF
935Set whether Atheros fast-frames support is enabled using the value in
936.Va i_val .
937This request causes a running interface to be restarted.
938See
939.Dv IEEE80211_IOC_FF
940above for details.
941.It Dv IEEE80211_IOC_FRAGTHRESHOLD
942Set the threshold (in bytes) for enabling fragmentation frames using the value in
943.Va i_val .
944This request causes a running interface to be reset.
945See
946.Dv IEEE80211_IOC_FRAGTHRESHOLD
947above for details.
948.It Dv IEEE80211_IOC_GREENFIELD
949Set whether or not Greenfield preamble use is enabled using the value in
950.Va i_val .
951This request causes a running interface to be reset.
952See
953.Dv IEEE80211_IOC_GREENFIELD
954above for details.
955.It Dv IEEE80211_IOC_HIDESSID
956Set whether SSID hiding/cloaking is enabled using the value in
957.Va i_val .
958This request causes a running interface to be reset.
959See
960.Dv IEEE80211_IOC_HIDESSID
961above for details.
962.It Dv IEEE80211_IOC_HTCOMPAT
963Set whether or not 802.11n compatibility support is enabled using the value in
964.Va i_val .
965This request causes a running interface to be reset if operating on HT channel.
966See
967.Dv IEEE80211_IOC_HTCOMPAT
968above for details.
969.It Dv IEEE80211_IOC_HTCONF
970Set automatic promotion of HT channels using the value in
971.Va i_val .
972This request causes a running interface to be restarted.
973See
974.Dv IEEE80211_IOC_HTCONF
975above for details.
976.It Dv IEEE80211_IOC_HTPROTMODE
977Set the technique used to protect HT frames in a mixed 802.11n network
978using the value in
979.Va i_val .
980This request causes a running interface to be reset.
981See
982.Dv IEEE80211_IOC_HTPROTMODE
983above for details.
984.It Dv IEEE80211_IOC_HWMP_MAXHOPS
985Set the maximum acceptable hop count in an HWMP path according to
986.Va i_val .
987Values must be in the range [0-255].
988.It Dv IEEE80211_IOC_HWMP_ROOTMODE
989Set the Mesh root mode operation according to
990.Va i_val .
991Valid 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)
998and
999.Dv IEEE80211_HWMP_ROOTMODE_RANN
1000(send broadcast Root Announcement (RANN) frames).
1001.It Dv IEEE80211_IOC_INACTIVITY
1002Set whether or not the system handles inactivity processing using the value in
1003.Va i_val .
1004When inactivity processing is enabled the system will track stations
1005that have not transmitted frames and periodically probe them to
1006check if they are still present.
1007Stations that are inactive and do not respond to probes are dropped.
1008.It Dv IEEE80211_IOC_MACCMD
1009Change the state of the MAC address Access Control List (ACL) system.
1010There 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),
1021and
1022.Dv IEEE80211_MACCMD_DETACH
1023(detach the ACL subsystem, disabling it).
1024The
1025.Xr wlan_acl 4
1026module must be installed or
1027.Er EINVAL
1028will be returned.
1029.It Dv IEEE80211_IOC_MESH_AP
1030Set whether or not Mesh AP support is enabled using
1031.Va i_val .
1032.It Dv IEEE80211_IOC_MESH_FWRD
1033Set whether or not packet forwarding support is enabled using
1034.Va i_val .
1035.It Dv IEEE80211_IOC_MESH_ID
1036Set the Mesh ID using the value pointed to by
1037.Va i_data .
1038A Mesh ID can be up to
1039.Dv IEEE80211_MESHID_LEN
1040bytes long.
1041.It Dv IEEE80211_IOC_MESH_PP_METRIC
1042Set the link metric protocol using the value pointed to by
1043.Va i_data .
1044.It Dv IEEE80211_IOC_MESH_PP_PATH
1045Set the path selection protocol using the value pointed to by
1046.Va i_data .
1047.It Dv IEEE80211_IOC_MESH_RTCMD
1048Manipulate the state of the Mesh routing tables.
1049Several 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
1055and start the Peer discovery process),
1056and
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
1061Set the Mesh Time To Live (TTL) setting installed in packets
1062transmitted by this mesh node using
1063.Va i_val .
1064.It Dv IEEE80211_IOC_MLME
1065Explicitly control the MLME state machine for a station using the
1066MLME request pointed to by
1067.Va i_data .
1068There 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),
1079and
1080.Dv IEEE80211_MLME_AUTH
1081(request authentication to an access point).
1082Note when this facility is used for stations operating in infrastructure mode
1083the roaming mode should be set to manual.
1084.It Dv IEEE80211_IOC_POWERSAVE
1085Set the current powersaving mode to the value in
1086.Va i_val .
1087See
1088.Dv IEEE80211_IOC_POWERSAVE
1089above for valid values.
1090This request causes a running interface to be reset.
1091.It Dv IEEE80211_IOC_POWERSAVESLEEP
1092Set the powersave sleep time in TU to the value in
1093.Va i_val .
1094This request causes a running interface to be reset.
1095.It Dv IEEE80211_IOC_PRIVACY
1096Set the current MLME setting for PRIVACY using the value in
1097.Va i_val .
1098See
1099.Dv IEEE80211_IOC_PRIVACY
1100above for details.
1101.It Dv IEEE80211_IOC_PROTMODE
1102Set the current 802.11g protection mode to the value in
1103.Va i_val .
1104This request causes a running interface to be reset.
1105See
1106.Dv IEEE80211_IOC_PROTMODE
1107above for details.
1108This request causes a running interface to be reset.
1109.It Dv IEEE80211_IOC_PUREG
1110Set whether ``pure 11g'' mode is enabled using the value in
1111.Va i_val .
1112This request causes a running interface to be restarted.
1113See
1114.Dv IEEE80211_IOC_PUREG
1115above for details.
1116.It Dv IEEE80211_IOC_PUREN
1117Set whether ``pure 11n'' mode is enabled using the value in
1118.Va i_val .
1119This request causes a running interface to be restarted.
1120See
1121.Dv IEEE80211_IOC_PUREN
1122above for details.
1123.It Dv IEEE80211_IOC_REGDOMAIN
1124Set the regulatory state using the data referenced by
1125.Va i_data .
1126This request can only be issued when all interfaces cloned from the
1127underlying physical device are marked down; otherwise
1128.Er EBUSY
1129is returned.
1130Note the new regulatory data may invalidate any desired channel.
1131.It Dv IEEE80211_IOC_RIFS
1132Set whether or not Reduced InterFrame Spacing (RIFS) is enabled
1133using the value in
1134.Va i_val .
1135This  setting is meaningful only when operating with 802.11n on an HT channel.
1136This request causes a running interface to be reset.
1137.It Dv IEEE80211_IOC_ROAM
1138Set station roaming parameters using the data pointed to by
1139.Va i_data .
1140.It Dv IEEE80211_IOC_ROAMING
1141Set the current roaming mode to the value in
1142.Va i_val .
1143See
1144.Dv IEEE80211_IOC_ROAMING
1145above for details.
1146.It Dv IEEE80211_IOC_RTSTHRESHOLD
1147Set the threshold (in bytes) for enabling transmission of RTS frames
1148to the value in
1149.Va i_val .
1150This request causes a running interface to be reset.
1151See
1152.Dv IEEE80211_IOC_RTSTHRESHOLD
1153above for details.
1154.It Dv IEEE80211_IOC_SCANVALID
1155Set the age (in seconds) that results from a scan operation will be
1156considered valid.
1157When scan results are no longer valid and they are needed (e.g. to roam) the
1158system will initiate a scan operation to replenish the scan cache.
1159.It Dv IEEE80211_IOC_SCAN_REQ
1160Request a scan operation using the parameters pointed to by
1161.Va i_val .
1162The underlying device must be running or
1163.Er ENXIO
1164will be returned.
1165Values for
1166.Va sr_duration ,
1167.Va sr_mindwell ,
1168and
1169.Va sr_maxdwell
1170shorter than 1 clock tick are rounded up to a tick.
1171If more SSID's are supplied than the system is capable of handling
1172the extra ones are silently ignored.
1173If a scan operation is already in progress the request will be
1174(silently) ignored.
1175.It Dv IEEE80211_IOC_SCAN_CANCEL
1176Cancel any pending/active scan operation.
1177.It Dv IEEE80211_IOC_SHORTGI
1178Set whether or not Short Guard Interval (SGI) is enabled using the value in
1179.Va i_val .
1180Note SGI is only used when operating on an HT (802.11n) channel.
1181This request causes a running interface to be reset.
1182.It Dv IEEE80211_IOC_SMPS
1183Set the Spatial Multiplexing Power Save (SMPS) setting to the value in
1184.Va i_val .
1185This request causes a running interface to be reset.
1186See
1187.Dv IEEE80211_IOC_SMPS
1188above for details.
1189.It Dv IEEE80211_IOC_SSID
1190Set the desired SSID using the value pointed to by
1191.Va i_data .
1192The string may be at most IEEE80211_NWID_LEN bytes.
1193This request causes a running interface to be restarted.
1194.It Dv IEEE80211_IOC_STA_STATS
1195Clear accumulated statistics for the specified station.
1196.It Dv IEEE80211_IOC_STA_VLAN
1197Set the VLAN tag for the specified station using the information pointed to by
1198.Va i_data .
1199.It Dv IEEE80211_IOC_TDMA_BINTERVAL
1200Set the interval between Beacon frames to the value in
1201.Va i_val .
1202Values must be positive.
1203This request causes a running interface to be reset.
1204.It Dv IEEE80211_IOC_TDMA_SLOT
1205Set the current TDMA slot to the value in
1206.Va i_val .
1207Values must be in the range [0-slotcnt].
1208Slot 0 identifies the master in the TDMA network; if it running it will
1209immediately start sending Beacon frames.
1210.It Dv IEEE80211_IOC_TDMA_SLOTCNT
1211Set the number of slots in the TDMA network to the value in
1212.Va i_val .
1213This request causes a running interface to be reset.
1214.It Dv IEEE80211_IOC_TDMA_SLOTLEN
1215Set the length of the TDMA slot assigned to each station in the network
1216to the value in
1217.Va i_val .
1218Slot lengths must be in the range 200 usecs to 1024 milliseconds
1219(though values outside the range 1-200ms are unlikely to work well).
1220This request causes a running interface to be reset.
1221.It Dv IEEE80211_IOC_TSN
1222Set whether or not Transitional Security Network (TSN) is enabled
1223using the value in
1224.Va i_val .
1225.It Dv IEEE80211_IOC_TURBOP
1226Set whether Atheros Dynamic Turbo mode is enabled using the value in
1227.Va i_val .
1228This request causes a running interface to be restarted.
1229.It Dv IEEE80211_IOC_TXPARAMS
1230Set transmit parameters using the data pointed to be
1231.Va i_data .
1232This request causes a running interface to be restarted.
1233.It Dv IEEE80211_IOC_TXPOWER
1234Set the maximum transmit power limit in .5 dBm units to the value in
1235.Va i_val .
1236This request causes a running interface to be reset.
1237.It Dv IEEE80211_IOC_WEP
1238Set the current WEP mode to the value in
1239.Va i_val .
1240See
1241.Dv IEEE80211_IOC_WEP
1242above for valid values.
1243This request causes a running interface to be restarted.
1244Note this request is deprecated; use
1245.Dv IEEE80211_IOC_PRIVACY
1246and
1247.Dv IEEE80211_IOC_DROPUNENCRYPTED
1248instead.
1249.It Dv IEEE80211_IOC_WEPKEY
1250Set the WEP key indicated by
1251.Va i_val
1252using the data pointed to by
1253.Va i_data .
1254Note this request is deprecated; use
1255.Dv IEEE80211_IOC_WPAKEY
1256instead.
1257.It Dv IEEE80211_IOC_WEPTXKEY
1258Set the default transmit key used for transmission to the value in
1259.Va i_val .
1260.It Dv IEEE80211_IOC_WME
1261Set whether or not WME/WMM support is enabled using the value in
1262.Va i_val .
1263This request causes a running interface to be reset.
1264.It Dv IEEE80211_IOC_WME_ACKPOLICY
1265Set the WME ACK Policy for the Access Class (AC) specified in
1266.Va i_len
1267using the value in
1268.Va i_val .
1269.It Dv IEEE80211_IOC_WME_ACM
1270Set the WME Admission Control Mechanism for the Access Class (AC) specified in
1271.Va i_len
1272using the value in
1273.Va i_val .
1274.It Dv IEEE80211_IOC_WME_AIFS
1275Set the WME AIFS parameter 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_CWMAX
1280Set the WME CWmax parameter 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_CWMIN
1285Set the WME CWmin 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_TXOPLIMIT
1290Set the WME TxOpLimit 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_WPA
1295Set the WPA configuration using the value in
1296.Va i_val .
1297This request causes a running interface to be reset.
1298See
1299.Dv IEEE80211_IOC_WPA
1300above for details.
1301.It Dv IEEE80211_IOC_WPAKEY
1302Set the requested cryptographic key using data in the buffer pointed to by
1303.Va i_data .
1304See
1305.Dv IEEE80211_IOC_WPAKEY
1306for details.
1307.It Dv IEEE80211_IOC_WPS
1308Set 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 hostapd 8 ,
1317.Xr ifconfig 8 ,
1318.Xr wpa_supplicant 8
1319