1 /*
2 *
3 * Copyright (c) 2003 The Regents of the University of California. All
4 * 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 *
10 * - Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 *
13 * - Neither the name of the University nor the names of its
14 * contributors may be used to endorse or promote products derived
15 * from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS''
18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
21 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
25 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 */
30
31 #ifndef __LINK_IOCTLS_H__
32 #define __LINK_IOCTLS_H__
33
34 /* ioctl numbers for commands on a link */
35 #define LINK_IOCTL_TYPE 0x8c
36
37 enum {
38 LINK_PROMISC_MODE_NONE=0, /* not promisc */
39 LINK_PROMISC_MODE_ACTIVE, /* cause lower layer to become promisc */
40 LINK_PROMISC_MODE_PASSIVE, /* just passively receive all traffic */
41 LINK_PROMISC_MODE_MAX
42 };
43
44 // sets promiscuous listening of a link connection
45 #define LINK_SET_PROMISC _IOW(LINK_IOCTL_TYPE, 0x4, int)
46
47 /*****************************************************
48 ***
49 *** NOTE: ioctl() is deprecated as a means of
50 *** configuring links. Please use and extent the
51 *** link command/status facility instead, for any
52 *** device-wide configuration mechanisms.
53 ***
54 *** (Note: PROMISC will stay in ioctl() form because
55 *** it is necessarily per-connection)
56 ***
57 *****************************************************/
58
59 // ioctl to get a link status struct out for the link
60 #define LINK_GET_STATUS _IOR(LINK_IOCTL_TYPE, 0x0, link_status_t)
61
62 // Resets the link device
63 #define LINK_RESET _IO(LINK_IOCTL_TYPE, 0x1)
64
65 // set interface id, for interfaces where it is supported
66 #define LINK_SET_IFID _IOW(LINK_IOCTL_TYPE, 0x2, if_id_t)
67
68 // sets the On/Off state for the radio -- 1 for on, 0 for off
69 #define LINK_SET_ACTIVE _IOW(LINK_IOCTL_TYPE, 0x3, int)
70
71 // sets the POT value for the radio, if supported
72 #define LINK_SET_POT _IOW(LINK_IOCTL_TYPE, 0x5, int)
73
74 // Sets TX power mode. Used in berkeley mac for low power operation
75 #define LINK_SET_TXMODE _IOW(LINK_IOCTL_TYPE, 0x6, int)
76
77 // Sets LISTEN power mode. Used in berkeley mac for low power operation
78 #define LINK_SET_LSMODE _IOW(LINK_IOCTL_TYPE, 0x7, int)
79
80 /*****************************************************
81 ***
82 *** NOTE: ioctl() is deprecated as a means of
83 *** configuring links. Please use and extent the
84 *** link command/status facility instead, for any
85 *** device-wide configuration mechanisms.
86 ***
87 *** (Note: PROMISC will stay in ioctl() form because
88 *** it is per-connection)
89 ***
90 *****************************************************/
91
92 #endif
93
94
95
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.