ieee80211_ioctl.h revision 116742
1/*- 2 * Copyright (c) 2002, 2003 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 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * 26 * $FreeBSD: head/sys/net80211/ieee80211_ioctl.h 116742 2003-06-23 16:55:01Z sam $ 27 */ 28#ifndef _NET80211_IEEE80211_IOCTL_H_ 29#define _NET80211_IEEE80211_IOCTL_H_ 30 31/* 32 * IEEE 802.11 ioctls. 33 */ 34 35#ifdef __FreeBSD__ 36/* 37 * FreeBSD-style ioctls. 38 */ 39/* the first member must be matched with struct ifreq */ 40struct ieee80211req { 41 char i_name[IFNAMSIZ]; /* if_name, e.g. "wi0" */ 42 u_int16_t i_type; /* req type */ 43 int16_t i_val; /* Index or simple value */ 44 int16_t i_len; /* Index or simple value */ 45 void *i_data; /* Extra data */ 46}; 47#define SIOCS80211 _IOW('i', 234, struct ieee80211req) 48#define SIOCG80211 _IOWR('i', 235, struct ieee80211req) 49 50#define IEEE80211_IOC_SSID 1 51#define IEEE80211_IOC_NUMSSIDS 2 52#define IEEE80211_IOC_WEP 3 53#define IEEE80211_WEP_NOSUP -1 54#define IEEE80211_WEP_OFF 0 55#define IEEE80211_WEP_ON 1 56#define IEEE80211_WEP_MIXED 2 57#define IEEE80211_IOC_WEPKEY 4 58#define IEEE80211_IOC_NUMWEPKEYS 5 59#define IEEE80211_IOC_WEPTXKEY 6 60#define IEEE80211_IOC_AUTHMODE 7 61#define IEEE80211_IOC_STATIONNAME 8 62#define IEEE80211_IOC_CHANNEL 9 63#define IEEE80211_IOC_POWERSAVE 10 64#define IEEE80211_POWERSAVE_NOSUP -1 65#define IEEE80211_POWERSAVE_OFF 0 66#define IEEE80211_POWERSAVE_CAM 1 67#define IEEE80211_POWERSAVE_PSP 2 68#define IEEE80211_POWERSAVE_PSP_CAM 3 69#define IEEE80211_POWERSAVE_ON IEEE80211_POWERSAVE_CAM 70#define IEEE80211_IOC_POWERSAVESLEEP 11 71#define IEEE80211_IOCT_RTSTHRESHOLD 12 72 73#ifndef IEEE80211_CHAN_ANY 74#define IEEE80211_CHAN_ANY 0xffff /* token for ``any channel'' */ 75#endif 76#endif /* __FreeBSD__ */ 77 78#endif /* _NET80211_IEEE80211_IOCTL_H_ */ 79