Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
91bcc018
Commit
91bcc018
authored
Jun 04, 2005
by
Committed by
Jeff Garzik
Jun 04, 2005
Browse files
Options
Browse Files
Download
Plain Diff
Automatic merge of /spare/repo/netdev-2.6 branch we18
parents
105adfc6
1f15d694
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
352 additions
and
5 deletions
+352
-5
include/linux/wireless.h
include/linux/wireless.h
+280
-3
net/core/wireless.c
net/core/wireless.c
+72
-2
No files found.
include/linux/wireless.h
View file @
91bcc018
/*
/*
* This file define a set of standard wireless extensions
* This file define a set of standard wireless extensions
*
*
* Version : 1
7 21.6.04
* Version : 1
8 12.3.05
*
*
* Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com>
* Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com>
* Copyright (c) 1997-200
4
Jean Tourrilhes, All Rights Reserved.
* Copyright (c) 1997-200
5
Jean Tourrilhes, All Rights Reserved.
*/
*/
#ifndef _LINUX_WIRELESS_H
#ifndef _LINUX_WIRELESS_H
...
@@ -82,7 +82,7 @@
...
@@ -82,7 +82,7 @@
* (there is some stuff that will be added in the future...)
* (there is some stuff that will be added in the future...)
* I just plan to increment with each new version.
* I just plan to increment with each new version.
*/
*/
#define WIRELESS_EXT 1
7
#define WIRELESS_EXT 1
8
/*
/*
* Changes :
* Changes :
...
@@ -182,6 +182,21 @@
...
@@ -182,6 +182,21 @@
* - Document (struct iw_quality *)->updated, add new flags (INVALID)
* - Document (struct iw_quality *)->updated, add new flags (INVALID)
* - Wireless Event capability in struct iw_range
* - Wireless Event capability in struct iw_range
* - Add support for relative TxPower (yick !)
* - Add support for relative TxPower (yick !)
*
* V17 to V18 (From Jouni Malinen <jkmaline@cc.hut.fi>)
* ----------
* - Add support for WPA/WPA2
* - Add extended encoding configuration (SIOCSIWENCODEEXT and
* SIOCGIWENCODEEXT)
* - Add SIOCSIWGENIE/SIOCGIWGENIE
* - Add SIOCSIWMLME
* - Add SIOCSIWPMKSA
* - Add struct iw_range bit field for supported encoding capabilities
* - Add optional scan request parameters for SIOCSIWSCAN
* - Add SIOCSIWAUTH/SIOCGIWAUTH for setting authentication and WPA
* related parameters (extensible up to 4096 parameter values)
* - Add wireless events: IWEVGENIE, IWEVMICHAELMICFAILURE,
* IWEVASSOCREQIE, IWEVASSOCRESPIE, IWEVPMKIDCAND
*/
*/
/**************************** CONSTANTS ****************************/
/**************************** CONSTANTS ****************************/
...
@@ -256,6 +271,30 @@
...
@@ -256,6 +271,30 @@
#define SIOCSIWPOWER 0x8B2C
/* set Power Management settings */
#define SIOCSIWPOWER 0x8B2C
/* set Power Management settings */
#define SIOCGIWPOWER 0x8B2D
/* get Power Management settings */
#define SIOCGIWPOWER 0x8B2D
/* get Power Management settings */
/* WPA : Generic IEEE 802.11 informatiom element (e.g., for WPA/RSN/WMM).
* This ioctl uses struct iw_point and data buffer that includes IE id and len
* fields. More than one IE may be included in the request. Setting the generic
* IE to empty buffer (len=0) removes the generic IE from the driver. Drivers
* are allowed to generate their own WPA/RSN IEs, but in these cases, drivers
* are required to report the used IE as a wireless event, e.g., when
* associating with an AP. */
#define SIOCSIWGENIE 0x8B30
/* set generic IE */
#define SIOCGIWGENIE 0x8B31
/* get generic IE */
/* WPA : IEEE 802.11 MLME requests */
#define SIOCSIWMLME 0x8B16
/* request MLME operation; uses
* struct iw_mlme */
/* WPA : Authentication mode parameters */
#define SIOCSIWAUTH 0x8B32
/* set authentication mode params */
#define SIOCGIWAUTH 0x8B33
/* get authentication mode params */
/* WPA : Extended version of encoding configuration */
#define SIOCSIWENCODEEXT 0x8B34
/* set encoding token & mode */
#define SIOCGIWENCODEEXT 0x8B35
/* get encoding token & mode */
/* WPA2 : PMKSA cache management */
#define SIOCSIWPMKSA 0x8B36
/* PMKSA cache operation */
/* -------------------- DEV PRIVATE IOCTL LIST -------------------- */
/* -------------------- DEV PRIVATE IOCTL LIST -------------------- */
/* These 32 ioctl are wireless device private, for 16 commands.
/* These 32 ioctl are wireless device private, for 16 commands.
...
@@ -297,6 +336,34 @@
...
@@ -297,6 +336,34 @@
#define IWEVCUSTOM 0x8C02
/* Driver specific ascii string */
#define IWEVCUSTOM 0x8C02
/* Driver specific ascii string */
#define IWEVREGISTERED 0x8C03
/* Discovered a new node (AP mode) */
#define IWEVREGISTERED 0x8C03
/* Discovered a new node (AP mode) */
#define IWEVEXPIRED 0x8C04
/* Expired a node (AP mode) */
#define IWEVEXPIRED 0x8C04
/* Expired a node (AP mode) */
#define IWEVGENIE 0x8C05
/* Generic IE (WPA, RSN, WMM, ..)
* (scan results); This includes id and
* length fields. One IWEVGENIE may
* contain more than one IE. Scan
* results may contain one or more
* IWEVGENIE events. */
#define IWEVMICHAELMICFAILURE 0x8C06
/* Michael MIC failure
* (struct iw_michaelmicfailure)
*/
#define IWEVASSOCREQIE 0x8C07
/* IEs used in (Re)Association Request.
* The data includes id and length
* fields and may contain more than one
* IE. This event is required in
* Managed mode if the driver
* generates its own WPA/RSN IE. This
* should be sent just before
* IWEVREGISTERED event for the
* association. */
#define IWEVASSOCRESPIE 0x8C08
/* IEs used in (Re)Association
* Response. The data includes id and
* length fields and may contain more
* than one IE. This may be sent
* between IWEVASSOCREQIE and
* IWEVREGISTERED events for the
* association. */
#define IWEVPMKIDCAND 0x8C09
/* PMKID candidate for RSN
* pre-authentication
* (struct iw_pmkid_cand) */
#define IWEVFIRST 0x8C00
#define IWEVFIRST 0x8C00
...
@@ -432,12 +499,94 @@
...
@@ -432,12 +499,94 @@
#define IW_SCAN_THIS_MODE 0x0020
/* Scan only this Mode */
#define IW_SCAN_THIS_MODE 0x0020
/* Scan only this Mode */
#define IW_SCAN_ALL_RATE 0x0040
/* Scan all Bit-Rates */
#define IW_SCAN_ALL_RATE 0x0040
/* Scan all Bit-Rates */
#define IW_SCAN_THIS_RATE 0x0080
/* Scan only this Bit-Rate */
#define IW_SCAN_THIS_RATE 0x0080
/* Scan only this Bit-Rate */
/* struct iw_scan_req scan_type */
#define IW_SCAN_TYPE_ACTIVE 0
#define IW_SCAN_TYPE_PASSIVE 1
/* Maximum size of returned data */
/* Maximum size of returned data */
#define IW_SCAN_MAX_DATA 4096
/* In bytes */
#define IW_SCAN_MAX_DATA 4096
/* In bytes */
/* Max number of char in custom event - use multiple of them if needed */
/* Max number of char in custom event - use multiple of them if needed */
#define IW_CUSTOM_MAX 256
/* In bytes */
#define IW_CUSTOM_MAX 256
/* In bytes */
/* Generic information element */
#define IW_GENERIC_IE_MAX 1024
/* MLME requests (SIOCSIWMLME / struct iw_mlme) */
#define IW_MLME_DEAUTH 0
#define IW_MLME_DISASSOC 1
/* SIOCSIWAUTH/SIOCGIWAUTH struct iw_param flags */
#define IW_AUTH_INDEX 0x0FFF
#define IW_AUTH_FLAGS 0xF000
/* SIOCSIWAUTH/SIOCGIWAUTH parameters (0 .. 4095)
* (IW_AUTH_INDEX mask in struct iw_param flags; this is the index of the
* parameter that is being set/get to; value will be read/written to
* struct iw_param value field) */
#define IW_AUTH_WPA_VERSION 0
#define IW_AUTH_CIPHER_PAIRWISE 1
#define IW_AUTH_CIPHER_GROUP 2
#define IW_AUTH_KEY_MGMT 3
#define IW_AUTH_TKIP_COUNTERMEASURES 4
#define IW_AUTH_DROP_UNENCRYPTED 5
#define IW_AUTH_80211_AUTH_ALG 6
#define IW_AUTH_WPA_ENABLED 7
#define IW_AUTH_RX_UNENCRYPTED_EAPOL 8
#define IW_AUTH_ROAMING_CONTROL 9
#define IW_AUTH_PRIVACY_INVOKED 10
/* IW_AUTH_WPA_VERSION values (bit field) */
#define IW_AUTH_WPA_VERSION_DISABLED 0x00000001
#define IW_AUTH_WPA_VERSION_WPA 0x00000002
#define IW_AUTH_WPA_VERSION_WPA2 0x00000004
/* IW_AUTH_PAIRWISE_CIPHER and IW_AUTH_GROUP_CIPHER values (bit field) */
#define IW_AUTH_CIPHER_NONE 0x00000001
#define IW_AUTH_CIPHER_WEP40 0x00000002
#define IW_AUTH_CIPHER_TKIP 0x00000004
#define IW_AUTH_CIPHER_CCMP 0x00000008
#define IW_AUTH_CIPHER_WEP104 0x00000010
/* IW_AUTH_KEY_MGMT values (bit field) */
#define IW_AUTH_KEY_MGMT_802_1X 1
#define IW_AUTH_KEY_MGMT_PSK 2
/* IW_AUTH_80211_AUTH_ALG values (bit field) */
#define IW_AUTH_ALG_OPEN_SYSTEM 0x00000001
#define IW_AUTH_ALG_SHARED_KEY 0x00000002
#define IW_AUTH_ALG_LEAP 0x00000004
/* IW_AUTH_ROAMING_CONTROL values */
#define IW_AUTH_ROAMING_ENABLE 0
/* driver/firmware based roaming */
#define IW_AUTH_ROAMING_DISABLE 1
/* user space program used for roaming
* control */
/* SIOCSIWENCODEEXT definitions */
#define IW_ENCODE_SEQ_MAX_SIZE 8
/* struct iw_encode_ext ->alg */
#define IW_ENCODE_ALG_NONE 0
#define IW_ENCODE_ALG_WEP 1
#define IW_ENCODE_ALG_TKIP 2
#define IW_ENCODE_ALG_CCMP 3
/* struct iw_encode_ext ->ext_flags */
#define IW_ENCODE_EXT_TX_SEQ_VALID 0x00000001
#define IW_ENCODE_EXT_RX_SEQ_VALID 0x00000002
#define IW_ENCODE_EXT_GROUP_KEY 0x00000004
#define IW_ENCODE_EXT_SET_TX_KEY 0x00000008
/* IWEVMICHAELMICFAILURE : struct iw_michaelmicfailure ->flags */
#define IW_MICFAILURE_KEY_ID 0x00000003
/* Key ID 0..3 */
#define IW_MICFAILURE_GROUP 0x00000004
#define IW_MICFAILURE_PAIRWISE 0x00000008
#define IW_MICFAILURE_STAKEY 0x00000010
#define IW_MICFAILURE_COUNT 0x00000060
/* 1 or 2 (0 = count not supported)
*/
/* Bit field values for enc_capa in struct iw_range */
#define IW_ENC_CAPA_WPA 0x00000001
#define IW_ENC_CAPA_WPA2 0x00000002
#define IW_ENC_CAPA_CIPHER_TKIP 0x00000004
#define IW_ENC_CAPA_CIPHER_CCMP 0x00000008
/* Event capability macros - in (struct iw_range *)->event_capa
/* Event capability macros - in (struct iw_range *)->event_capa
* Because we have more than 32 possible events, we use an array of
* Because we have more than 32 possible events, we use an array of
* 32 bit bitmasks. Note : 32 bits = 0x20 = 2^5. */
* 32 bit bitmasks. Note : 32 bits = 0x20 = 2^5. */
...
@@ -546,6 +695,132 @@ struct iw_thrspy
...
@@ -546,6 +695,132 @@ struct iw_thrspy
struct
iw_quality
high
;
/* High threshold */
struct
iw_quality
high
;
/* High threshold */
};
};
/*
* Optional data for scan request
*
* Note: these optional parameters are controlling parameters for the
* scanning behavior, these do not apply to getting scan results
* (SIOCGIWSCAN). Drivers are expected to keep a local BSS table and
* provide a merged results with all BSSes even if the previous scan
* request limited scanning to a subset, e.g., by specifying an SSID.
* Especially, scan results are required to include an entry for the
* current BSS if the driver is in Managed mode and associated with an AP.
*/
struct
iw_scan_req
{
__u8
scan_type
;
/* IW_SCAN_TYPE_{ACTIVE,PASSIVE} */
__u8
essid_len
;
__u8
num_channels
;
/* num entries in channel_list;
* 0 = scan all allowed channels */
__u8
flags
;
/* reserved as padding; use zero, this may
* be used in the future for adding flags
* to request different scan behavior */
struct
sockaddr
bssid
;
/* ff:ff:ff:ff:ff:ff for broadcast BSSID or
* individual address of a specific BSS */
/*
* Use this ESSID if IW_SCAN_THIS_ESSID flag is used instead of using
* the current ESSID. This allows scan requests for specific ESSID
* without having to change the current ESSID and potentially breaking
* the current association.
*/
__u8
essid
[
IW_ESSID_MAX_SIZE
];
/*
* Optional parameters for changing the default scanning behavior.
* These are based on the MLME-SCAN.request from IEEE Std 802.11.
* TU is 1.024 ms. If these are set to 0, driver is expected to use
* reasonable default values. min_channel_time defines the time that
* will be used to wait for the first reply on each channel. If no
* replies are received, next channel will be scanned after this. If
* replies are received, total time waited on the channel is defined by
* max_channel_time.
*/
__u32
min_channel_time
;
/* in TU */
__u32
max_channel_time
;
/* in TU */
struct
iw_freq
channel_list
[
IW_MAX_FREQUENCIES
];
};
/* ------------------------- WPA SUPPORT ------------------------- */
/*
* Extended data structure for get/set encoding (this is used with
* SIOCSIWENCODEEXT/SIOCGIWENCODEEXT. struct iw_point and IW_ENCODE_*
* flags are used in the same way as with SIOCSIWENCODE/SIOCGIWENCODE and
* only the data contents changes (key data -> this structure, including
* key data).
*
* If the new key is the first group key, it will be set as the default
* TX key. Otherwise, default TX key index is only changed if
* IW_ENCODE_EXT_SET_TX_KEY flag is set.
*
* Key will be changed with SIOCSIWENCODEEXT in all cases except for
* special "change TX key index" operation which is indicated by setting
* key_len = 0 and ext_flags |= IW_ENCODE_EXT_SET_TX_KEY.
*
* tx_seq/rx_seq are only used when respective
* IW_ENCODE_EXT_{TX,RX}_SEQ_VALID flag is set in ext_flags. Normal
* TKIP/CCMP operation is to set RX seq with SIOCSIWENCODEEXT and start
* TX seq from zero whenever key is changed. SIOCGIWENCODEEXT is normally
* used only by an Authenticator (AP or an IBSS station) to get the
* current TX sequence number. Using TX_SEQ_VALID for SIOCSIWENCODEEXT and
* RX_SEQ_VALID for SIOCGIWENCODEEXT are optional, but can be useful for
* debugging/testing.
*/
struct
iw_encode_ext
{
__u32
ext_flags
;
/* IW_ENCODE_EXT_* */
__u8
tx_seq
[
IW_ENCODE_SEQ_MAX_SIZE
];
/* LSB first */
__u8
rx_seq
[
IW_ENCODE_SEQ_MAX_SIZE
];
/* LSB first */
struct
sockaddr
addr
;
/* ff:ff:ff:ff:ff:ff for broadcast/multicast
* (group) keys or unicast address for
* individual keys */
__u16
alg
;
/* IW_ENCODE_ALG_* */
__u16
key_len
;
__u8
key
[
0
];
};
/* SIOCSIWMLME data */
struct
iw_mlme
{
__u16
cmd
;
/* IW_MLME_* */
__u16
reason_code
;
struct
sockaddr
addr
;
};
/* SIOCSIWPMKSA data */
#define IW_PMKSA_ADD 1
#define IW_PMKSA_REMOVE 2
#define IW_PMKSA_FLUSH 3
#define IW_PMKID_LEN 16
struct
iw_pmksa
{
__u32
cmd
;
/* IW_PMKSA_* */
struct
sockaddr
bssid
;
__u8
pmkid
[
IW_PMKID_LEN
];
};
/* IWEVMICHAELMICFAILURE data */
struct
iw_michaelmicfailure
{
__u32
flags
;
struct
sockaddr
src_addr
;
__u8
tsc
[
IW_ENCODE_SEQ_MAX_SIZE
];
/* LSB first */
};
/* IWEVPMKIDCAND data */
#define IW_PMKID_CAND_PREAUTH 0x00000001
/* RNS pre-authentication enabled */
struct
iw_pmkid_cand
{
__u32
flags
;
/* IW_PMKID_CAND_* */
__u32
index
;
/* the smaller the index, the higher the
* priority */
struct
sockaddr
bssid
;
};
/* ------------------------ WIRELESS STATS ------------------------ */
/* ------------------------ WIRELESS STATS ------------------------ */
/*
/*
* Wireless statistics (used for /proc/net/wireless)
* Wireless statistics (used for /proc/net/wireless)
...
@@ -725,6 +1000,8 @@ struct iw_range
...
@@ -725,6 +1000,8 @@ struct iw_range
struct
iw_freq
freq
[
IW_MAX_FREQUENCIES
];
/* list */
struct
iw_freq
freq
[
IW_MAX_FREQUENCIES
];
/* list */
/* Note : this frequency list doesn't need to fit channel numbers,
/* Note : this frequency list doesn't need to fit channel numbers,
* because each entry contain its channel index */
* because each entry contain its channel index */
__u32
enc_capa
;
/* IW_ENC_CAPA_* bit field */
};
};
/*
/*
...
...
net/core/wireless.c
View file @
91bcc018
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
* This file implement the Wireless Extensions APIs.
* This file implement the Wireless Extensions APIs.
*
*
* Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com>
* Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com>
* Copyright (c) 1997-200
4
Jean Tourrilhes, All Rights Reserved.
* Copyright (c) 1997-200
5
Jean Tourrilhes, All Rights Reserved.
*
*
* (As all part of the Linux kernel, this file is GPL)
* (As all part of the Linux kernel, this file is GPL)
*/
*/
...
@@ -187,6 +187,12 @@ static const struct iw_ioctl_description standard_ioctl[] = {
...
@@ -187,6 +187,12 @@ static const struct iw_ioctl_description standard_ioctl[] = {
.
header_type
=
IW_HEADER_TYPE_ADDR
,
.
header_type
=
IW_HEADER_TYPE_ADDR
,
.
flags
=
IW_DESCR_FLAG_DUMP
,
.
flags
=
IW_DESCR_FLAG_DUMP
,
},
},
[
SIOCSIWMLME
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
min_tokens
=
sizeof
(
struct
iw_mlme
),
.
max_tokens
=
sizeof
(
struct
iw_mlme
),
},
[
SIOCGIWAPLIST
-
SIOCIWFIRST
]
=
{
[
SIOCGIWAPLIST
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
sizeof
(
struct
sockaddr
)
+
.
token_size
=
sizeof
(
struct
sockaddr
)
+
...
@@ -195,7 +201,10 @@ static const struct iw_ioctl_description standard_ioctl[] = {
...
@@ -195,7 +201,10 @@ static const struct iw_ioctl_description standard_ioctl[] = {
.
flags
=
IW_DESCR_FLAG_NOMAX
,
.
flags
=
IW_DESCR_FLAG_NOMAX
,
},
},
[
SIOCSIWSCAN
-
SIOCIWFIRST
]
=
{
[
SIOCSIWSCAN
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_PARAM
,
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
min_tokens
=
0
,
.
max_tokens
=
sizeof
(
struct
iw_scan_req
),
},
},
[
SIOCGIWSCAN
-
SIOCIWFIRST
]
=
{
[
SIOCGIWSCAN
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
header_type
=
IW_HEADER_TYPE_POINT
,
...
@@ -273,6 +282,42 @@ static const struct iw_ioctl_description standard_ioctl[] = {
...
@@ -273,6 +282,42 @@ static const struct iw_ioctl_description standard_ioctl[] = {
[
SIOCGIWPOWER
-
SIOCIWFIRST
]
=
{
[
SIOCGIWPOWER
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_PARAM
,
.
header_type
=
IW_HEADER_TYPE_PARAM
,
},
},
[
SIOCSIWGENIE
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
IW_GENERIC_IE_MAX
,
},
[
SIOCGIWGENIE
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
IW_GENERIC_IE_MAX
,
},
[
SIOCSIWAUTH
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_PARAM
,
},
[
SIOCGIWAUTH
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_PARAM
,
},
[
SIOCSIWENCODEEXT
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
min_tokens
=
sizeof
(
struct
iw_encode_ext
),
.
max_tokens
=
sizeof
(
struct
iw_encode_ext
)
+
IW_ENCODING_TOKEN_MAX
,
},
[
SIOCGIWENCODEEXT
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
min_tokens
=
sizeof
(
struct
iw_encode_ext
),
.
max_tokens
=
sizeof
(
struct
iw_encode_ext
)
+
IW_ENCODING_TOKEN_MAX
,
},
[
SIOCSIWPMKSA
-
SIOCIWFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
min_tokens
=
sizeof
(
struct
iw_pmksa
),
.
max_tokens
=
sizeof
(
struct
iw_pmksa
),
},
};
};
static
const
int
standard_ioctl_num
=
(
sizeof
(
standard_ioctl
)
/
static
const
int
standard_ioctl_num
=
(
sizeof
(
standard_ioctl
)
/
sizeof
(
struct
iw_ioctl_description
));
sizeof
(
struct
iw_ioctl_description
));
...
@@ -299,6 +344,31 @@ static const struct iw_ioctl_description standard_event[] = {
...
@@ -299,6 +344,31 @@ static const struct iw_ioctl_description standard_event[] = {
[
IWEVEXPIRED
-
IWEVFIRST
]
=
{
[
IWEVEXPIRED
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_ADDR
,
.
header_type
=
IW_HEADER_TYPE_ADDR
,
},
},
[
IWEVGENIE
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
IW_GENERIC_IE_MAX
,
},
[
IWEVMICHAELMICFAILURE
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
sizeof
(
struct
iw_michaelmicfailure
),
},
[
IWEVASSOCREQIE
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
IW_GENERIC_IE_MAX
,
},
[
IWEVASSOCRESPIE
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
IW_GENERIC_IE_MAX
,
},
[
IWEVPMKIDCAND
-
IWEVFIRST
]
=
{
.
header_type
=
IW_HEADER_TYPE_POINT
,
.
token_size
=
1
,
.
max_tokens
=
sizeof
(
struct
iw_pmkid_cand
),
},
};
};
static
const
int
standard_event_num
=
(
sizeof
(
standard_event
)
/
static
const
int
standard_event_num
=
(
sizeof
(
standard_event
)
/
sizeof
(
struct
iw_ioctl_description
));
sizeof
(
struct
iw_ioctl_description
));
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment