ieee80211_ioctl.h (195561) | ieee80211_ioctl.h (195618) |
---|---|
1/*- 2 * Copyright (c) 2001 Atsushi Onoe 3 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting 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 unchanged lines hidden (view full) --- 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 2001 Atsushi Onoe 3 * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting 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 unchanged lines hidden (view full) --- 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/sys/net80211/ieee80211_ioctl.h 195561 2009-07-10 15:26:33Z sam $ | 26 * $FreeBSD: head/sys/net80211/ieee80211_ioctl.h 195618 2009-07-11 15:02:45Z rpaulo $ |
27 */ 28#ifndef _NET80211_IEEE80211_IOCTL_H_ 29#define _NET80211_IEEE80211_IOCTL_H_ 30 31/* 32 * IEEE 802.11 ioctls. 33 */ 34#include <net80211/_ieee80211.h> --- 183 unchanged lines hidden (view full) --- 218 uint8_t is_rx_disassoc_code; /* last rx'd disassoc reason */ 219 uint8_t is_rx_authfail_code; /* last rx'd auth fail reason */ 220 uint32_t is_beacon_miss; /* beacon miss notification */ 221 uint32_t is_rx_badstate; /* rx discard state != RUN */ 222 uint32_t is_ff_flush; /* ff's flush'd from stageq */ 223 uint32_t is_tx_ctl; /* tx ctrl frames */ 224 uint32_t is_ampdu_rexmt; /* A-MPDU frames rexmt ok */ 225 uint32_t is_ampdu_rexmt_fail; /* A-MPDU frames rexmt fail */ | 27 */ 28#ifndef _NET80211_IEEE80211_IOCTL_H_ 29#define _NET80211_IEEE80211_IOCTL_H_ 30 31/* 32 * IEEE 802.11 ioctls. 33 */ 34#include <net80211/_ieee80211.h> --- 183 unchanged lines hidden (view full) --- 218 uint8_t is_rx_disassoc_code; /* last rx'd disassoc reason */ 219 uint8_t is_rx_authfail_code; /* last rx'd auth fail reason */ 220 uint32_t is_beacon_miss; /* beacon miss notification */ 221 uint32_t is_rx_badstate; /* rx discard state != RUN */ 222 uint32_t is_ff_flush; /* ff's flush'd from stageq */ 223 uint32_t is_tx_ctl; /* tx ctrl frames */ 224 uint32_t is_ampdu_rexmt; /* A-MPDU frames rexmt ok */ 225 uint32_t is_ampdu_rexmt_fail; /* A-MPDU frames rexmt fail */ |
226 227 uint32_t is_mesh_wrongmesh; /* dropped 'cuz not mesh sta*/ 228 uint32_t is_mesh_nolink; /* dropped 'cuz link not estab*/ 229 uint32_t is_mesh_fwd_ttl; /* mesh not fwd'd 'cuz ttl 0 */ 230 uint32_t is_mesh_fwd_nobuf; /* mesh not fwd'd 'cuz no mbuf*/ 231 uint32_t is_mesh_fwd_tooshort; /* mesh not fwd'd 'cuz no hdr */ 232 uint32_t is_mesh_fwd_disabled; /* mesh not fwd'd 'cuz disabled */ 233 uint32_t is_mesh_fwd_nopath; /* mesh not fwd'd 'cuz path unknown */ 234 235 uint32_t is_hwmp_wrongseq; /* wrong hwmp seq no. */ 236 uint32_t is_hwmp_rootreqs; /* root PREQs sent */ 237 uint32_t is_hwmp_rootrann; /* root RANNs sent */ 238 |
|
226 uint32_t is_spare[16]; 227}; 228 229/* 230 * Max size of optional information elements. We artificially 231 * constrain this; it's limited only by the max frame size (and 232 * the max parameter size of the wireless extensions). 233 */ --- 66 unchanged lines hidden (view full) --- 300 IEEE80211_MACCMD_POLICY_RADIUS = 7, /* set policy: RADIUS managed */ 301}; 302 303struct ieee80211req_maclist { 304 uint8_t ml_macaddr[IEEE80211_ADDR_LEN]; 305} __packed; 306 307/* | 239 uint32_t is_spare[16]; 240}; 241 242/* 243 * Max size of optional information elements. We artificially 244 * constrain this; it's limited only by the max frame size (and 245 * the max parameter size of the wireless extensions). 246 */ --- 66 unchanged lines hidden (view full) --- 313 IEEE80211_MACCMD_POLICY_RADIUS = 7, /* set policy: RADIUS managed */ 314}; 315 316struct ieee80211req_maclist { 317 uint8_t ml_macaddr[IEEE80211_ADDR_LEN]; 318} __packed; 319 320/* |
321 * Mesh Routing Table Operations. 322 */ 323enum { 324 IEEE80211_MESH_RTCMD_LIST = 0, /* list HWMP routing table */ 325 IEEE80211_MESH_RTCMD_FLUSH = 1, /* flush HWMP routing table */ 326 IEEE80211_MESH_RTCMD_ADD = 2, /* add entry to the table */ 327 IEEE80211_MESH_RTCMD_DELETE = 3, /* delete an entry from the table */ 328}; 329 330/* 331 * HWMP root modes 332 */ 333enum { 334 IEEE80211_HWMP_ROOTMODE_DISABLED = 0, /* disabled */ 335 IEEE80211_HWMP_ROOTMODE_NORMAL = 1, /* normal PREPs */ 336 IEEE80211_HWMP_ROOTMODE_PROACTIVE = 2, /* proactive PREPS */ 337 IEEE80211_HWMP_ROOTMODE_RANN = 3, /* use RANN elemid */ 338}; 339 340 341/* |
|
308 * Set the active channel list by IEEE channel #: each channel 309 * to be marked active is set in a bit vector. Note this list is 310 * intersected with the available channel list in calculating 311 * the set of channels actually used in scanning. 312 */ 313struct ieee80211req_chanlist { 314 uint8_t ic_channels[32]; /* NB: can be variable length */ 315}; --- 63 unchanged lines hidden (view full) --- 379 /* NB: [IEEE80211_NONQOS_TID] holds seq#'s for non-QoS stations */ 380 uint16_t isi_txseqs[IEEE80211_TID_SIZE];/* tx seq #/TID */ 381 uint16_t isi_rxseqs[IEEE80211_TID_SIZE];/* rx seq#/TID */ 382 uint16_t isi_inact; /* inactivity timer */ 383 uint16_t isi_txmbps; /* current tx rate in .5 Mb/s */ 384 uint16_t isi_pad; 385 uint32_t isi_jointime; /* time of assoc/join */ 386 struct ieee80211_mimo_info isi_mimo; /* MIMO info for 11n sta's */ | 342 * Set the active channel list by IEEE channel #: each channel 343 * to be marked active is set in a bit vector. Note this list is 344 * intersected with the available channel list in calculating 345 * the set of channels actually used in scanning. 346 */ 347struct ieee80211req_chanlist { 348 uint8_t ic_channels[32]; /* NB: can be variable length */ 349}; --- 63 unchanged lines hidden (view full) --- 413 /* NB: [IEEE80211_NONQOS_TID] holds seq#'s for non-QoS stations */ 414 uint16_t isi_txseqs[IEEE80211_TID_SIZE];/* tx seq #/TID */ 415 uint16_t isi_rxseqs[IEEE80211_TID_SIZE];/* rx seq#/TID */ 416 uint16_t isi_inact; /* inactivity timer */ 417 uint16_t isi_txmbps; /* current tx rate in .5 Mb/s */ 418 uint16_t isi_pad; 419 uint32_t isi_jointime; /* time of assoc/join */ 420 struct ieee80211_mimo_info isi_mimo; /* MIMO info for 11n sta's */ |
421 /* 11s info */ 422 uint16_t isi_peerid; 423 uint16_t isi_localid; 424 uint8_t isi_peerstate; |
|
387 /* XXX frag state? */ 388 /* variable length IE data */ 389}; 390 391/* 392 * Retrieve per-station information; to retrieve all 393 * specify a mac address of ff:ff:ff:ff:ff:ff. 394 */ --- 237 unchanged lines hidden (view full) --- 632#define IEEE80211_IOC_ROAM 107 /* roaming params en masse */ 633#define IEEE80211_IOC_TXPARAMS 108 /* tx parameters */ 634#define IEEE80211_IOC_STA_VLAN 109 /* per-station vlan tag */ 635#define IEEE80211_IOC_SMPS 110 /* MIMO power save */ 636#define IEEE80211_IOC_RIFS 111 /* RIFS config (on, off) */ 637#define IEEE80211_IOC_GREENFIELD 112 /* Greenfield (on, off) */ 638#define IEEE80211_IOC_STBC 113 /* STBC Tx/RX (on, off) */ 639 | 425 /* XXX frag state? */ 426 /* variable length IE data */ 427}; 428 429/* 430 * Retrieve per-station information; to retrieve all 431 * specify a mac address of ff:ff:ff:ff:ff:ff. 432 */ --- 237 unchanged lines hidden (view full) --- 670#define IEEE80211_IOC_ROAM 107 /* roaming params en masse */ 671#define IEEE80211_IOC_TXPARAMS 108 /* tx parameters */ 672#define IEEE80211_IOC_STA_VLAN 109 /* per-station vlan tag */ 673#define IEEE80211_IOC_SMPS 110 /* MIMO power save */ 674#define IEEE80211_IOC_RIFS 111 /* RIFS config (on, off) */ 675#define IEEE80211_IOC_GREENFIELD 112 /* Greenfield (on, off) */ 676#define IEEE80211_IOC_STBC 113 /* STBC Tx/RX (on, off) */ 677 |
678#define IEEE80211_IOC_MESH_ID 170 /* mesh identifier */ 679#define IEEE80211_IOC_MESH_AP 171 /* accepting peerings */ 680#define IEEE80211_IOC_MESH_FWRD 172 /* forward frames */ 681#define IEEE80211_IOC_MESH_PROTO 173 /* mesh protocols */ 682#define IEEE80211_IOC_MESH_TTL 174 /* mesh TTL */ 683#define IEEE80211_IOC_MESH_RTCMD 175 /* mesh routing table commands*/ 684#define IEEE80211_IOC_MESH_PR_METRIC 176 /* mesh metric protocol */ 685#define IEEE80211_IOC_MESH_PR_PATH 177 /* mesh path protocol */ 686#define IEEE80211_IOC_MESH_PR_SIG 178 /* mesh sig protocol */ 687#define IEEE80211_IOC_MESH_PR_CC 179 /* mesh congestion protocol */ 688#define IEEE80211_IOC_MESH_PR_AUTH 180 /* mesh auth protocol */ 689 690#define IEEE80211_IOC_HWMP_ROOTMODE 190 /* HWMP root mode */ 691#define IEEE80211_IOC_HWMP_MAXHOPS 191 /* number of hops before drop */ 692#define IEEE80211_IOC_HWMP_TTL 192 /* HWMP TTL */ 693 |
|
640#define IEEE80211_IOC_TDMA_SLOT 201 /* TDMA: assigned slot */ 641#define IEEE80211_IOC_TDMA_SLOTCNT 202 /* TDMA: slots in bss */ 642#define IEEE80211_IOC_TDMA_SLOTLEN 203 /* TDMA: slot length (usecs) */ 643#define IEEE80211_IOC_TDMA_BINTERVAL 204 /* TDMA: beacon intvl (slots) */ 644 645/* 646 * Parameters for controlling a scan requested with 647 * IEEE80211_IOC_SCAN_REQ. --- 71 unchanged lines hidden (view full) --- 719 int8_t isr_rssi; 720 uint8_t isr_intval; /* beacon interval */ 721 uint8_t isr_capinfo; /* capabilities */ 722 uint8_t isr_erp; /* ERP element */ 723 uint8_t isr_bssid[IEEE80211_ADDR_LEN]; 724 uint8_t isr_nrates; 725 uint8_t isr_rates[IEEE80211_RATE_MAXSIZE]; 726 uint8_t isr_ssid_len; /* SSID length */ | 694#define IEEE80211_IOC_TDMA_SLOT 201 /* TDMA: assigned slot */ 695#define IEEE80211_IOC_TDMA_SLOTCNT 202 /* TDMA: slots in bss */ 696#define IEEE80211_IOC_TDMA_SLOTLEN 203 /* TDMA: slot length (usecs) */ 697#define IEEE80211_IOC_TDMA_BINTERVAL 204 /* TDMA: beacon intvl (slots) */ 698 699/* 700 * Parameters for controlling a scan requested with 701 * IEEE80211_IOC_SCAN_REQ. --- 71 unchanged lines hidden (view full) --- 773 int8_t isr_rssi; 774 uint8_t isr_intval; /* beacon interval */ 775 uint8_t isr_capinfo; /* capabilities */ 776 uint8_t isr_erp; /* ERP element */ 777 uint8_t isr_bssid[IEEE80211_ADDR_LEN]; 778 uint8_t isr_nrates; 779 uint8_t isr_rates[IEEE80211_RATE_MAXSIZE]; 780 uint8_t isr_ssid_len; /* SSID length */ |
727 /* variable length SSID followed by IE data */ | 781 uint8_t isr_meshid_len; /* MESH ID length */ 782 /* variable length SSID, followed by variable length MESH ID, 783 followed by IE data */ |
728}; 729 730/* 731 * Virtual AP cloning parameters. The parent device must 732 * be a vap-capable device. All parameters specified with 733 * the clone request are fixed for the lifetime of the vap. 734 * 735 * There are two flavors of WDS vaps: legacy and dynamic. --- 39 unchanged lines hidden --- | 784}; 785 786/* 787 * Virtual AP cloning parameters. The parent device must 788 * be a vap-capable device. All parameters specified with 789 * the clone request are fixed for the lifetime of the vap. 790 * 791 * There are two flavors of WDS vaps: legacy and dynamic. --- 39 unchanged lines hidden --- |