For crash dump debugging, we use kgdb.
[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.5 2006/06/28 19:41:59 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 It is used by the
71 .Xr wicontrol 8
72 utility but should not be used by any new drivers.
73 .Pp
74 .\"
75 The
76 .Fn ieee80211_ioctl
77 function provides a default implementation of the
78 .Dv SIOCS80211
79 and
80 .Dv SIOCG80211
81 ifioctls commands for 802.11 drivers.
82 The call signature is identical to that of the
83 .Va if_ioctl
84 member found in
85 .Vt struct ifnet ,
86 however, many drivers store attributes such as
87 .Dv IEEE80211_IOC_STATIONNAME
88 in the driver's private soft state structure, so driver writers may prefer
89 to use this as the catch-all in a switch statement to avoid code duplication.
90 .\"
91 .Sh RETURN VALUES
92 The function
93 .Fn ieee80211_ioctl
94 returns 0 or
95 .Er ENETRESET,
96 if successful.
97 Otherwise, a non-zero value other than
98 .Er ENETRESET
99 is returned.
100 If
101 .Er ENETRESET
102 is returned and the interface is up and running,
103 a driver will typically reinitialize the hardware by calling
104 .Va if_init .
105 .\"
106 .Sh SEE ALSO
107 .Xr ifconfig 8 ,
108 .Xr wicontrol 8 ,
109 .Xr ieee80211 9 ,
110 .Xr ifnet 9
111 .Sh HISTORY
112 The
113 .Nm ieee80211
114 series of functions first appeared in
115 .Nx 1.5 ,
116 and were later ported to
117 .Fx 4.6 .
118 .Sh AUTHORS
119 .An -nosplit
120 This man page was written by
121 .An Bruce M. Simpson Aq bms@FreeBSD.org
122 and
123 .An Darron Broad Aq darron@kewl.org .