Remove wicontrol(8) references.
[dragonfly.git] / share / man / man9 / ieee80211_ioctl.9
1 .\"
2 .\" Copyright (c) 2004 Bruce M. Simpson <bms@spc.org>
3 .\" Copyright (c) 2004 Darron Broad <darron@kewl.org>
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\"
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" SUCH DAMAGE.
26 .\"
27 .\" $FreeBSD$
28 .\" $DragonFly: src/share/man/man9/ieee80211_ioctl.9,v 1.7 2008/02/03 02:14:48 swildner Exp $
29 .\" $Id: ieee80211_ioctl.9,v 1.2 2004/07/07 12:59:39 ru Exp $
30 .\"
31 .Dd June 28, 2006
32 .Dt IEEE80211_IOCTL 9
33 .Os
34 .Sh NAME
35 .Nm ieee80211_cfgget ,
36 .Nm ieee80211_cfgset ,
37 .Nm ieee80211_ioctl
38 .Nd 802.11 interface ioctl commands
39 .Sh SYNOPSIS
40 .In netproto/802_11/ieee80211_var.h
41 .In netproto/802_11/ieee80211_proto.h
42 .In netproto/802_11/ieee80211_ioctl.h
43 .Ft int
44 .Fo ieee80211_cfgget
45 .Fa "struct ieee80211com *ic" "u_long cmd" "caddr_t data"
46 .Fa "struct ucred *cr"
47 .Fc
48 .Ft int
49 .Fo ieee80211_cfgset
50 .Fa "struct ieee80211com *ic" "u_long cmd" "caddr_t data"
51 .Fa "struct ucred *cr"
52 .Fc
53 .Ft int
54 .Fo ieee80211_ioctl
55 .Fa "struct ifnet *ifp" "u_long cmd" "caddr_t data"
56 .Fa "struct ucred *cr"
57 .Fc
58 .Sh DESCRIPTION
59 These
60 functions are typically invoked by drivers in response to requests
61 for information or to change settings from the userland.
62 .Pp
63 .\"
64 The
65 .Fn ieee80211_cfgget
66 and
67 .Fn ieee80211_cfgset
68 functions implement a legacy interface for getting and setting 802.11
69 interface attributes respectively.
70 They should not be used by any new drivers.
71 .Pp
72 .\"
73 The
74 .Fn ieee80211_ioctl
75 function provides a default implementation of the
76 .Dv SIOCS80211
77 and
78 .Dv SIOCG80211
79 ifioctls commands for 802.11 drivers.
80 The call signature is identical to that of the
81 .Va if_ioctl
82 member found in
83 .Vt struct ifnet ,
84 however, many drivers store attributes such as
85 .Dv IEEE80211_IOC_STATIONNAME
86 in the driver's private soft state structure, so driver writers may prefer
87 to use this as the catch-all in a switch statement to avoid code duplication.
88 .\"
89 .Sh RETURN VALUES
90 The function
91 .Fn ieee80211_ioctl
92 returns 0 or
93 .Er ENETRESET ,
94 if successful.
95 Otherwise, a non-zero value other than
96 .Er ENETRESET
97 is returned.
98 If
99 .Er ENETRESET
100 is returned and the interface is up and running,
101 a driver will typically reinitialize the hardware by calling
102 .Va if_init .
103 .\"
104 .Sh SEE ALSO
105 .Xr ifconfig 8 ,
106 .Xr ieee80211 9 ,
107 .Xr ifnet 9
108 .Sh HISTORY
109 The
110 .Nm ieee80211
111 series of functions first appeared in
112 .Nx 1.5 ,
113 and were later ported to
114 .Fx 4.6 .
115 .Sh AUTHORS
116 .An -nosplit
117 This man page was written by
118 .An Bruce M. Simpson Aq bms@FreeBSD.org
119 and
120 .An Darron Broad Aq darron@kewl.org .