diff options
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/wireless.c | 74 |
1 files changed, 72 insertions, 2 deletions
diff --git a/net/core/wireless.c b/net/core/wireless.c index 750cc5daeb03..b2fe378dfbf8 100644 --- a/net/core/wireless.c +++ b/net/core/wireless.c | |||
@@ -2,7 +2,7 @@ | |||
2 | * This file implement the Wireless Extensions APIs. | 2 | * This file implement the Wireless Extensions APIs. |
3 | * | 3 | * |
4 | * Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com> | 4 | * Authors : Jean Tourrilhes - HPL - <jt@hpl.hp.com> |
5 | * Copyright (c) 1997-2004 Jean Tourrilhes, All Rights Reserved. | 5 | * Copyright (c) 1997-2005 Jean Tourrilhes, All Rights Reserved. |
6 | * | 6 | * |
7 | * (As all part of the Linux kernel, this file is GPL) | 7 | * (As all part of the Linux kernel, this file is GPL) |
8 | */ | 8 | */ |
@@ -187,6 +187,12 @@ static const struct iw_ioctl_description standard_ioctl[] = { | |||
187 | .header_type = IW_HEADER_TYPE_ADDR, | 187 | .header_type = IW_HEADER_TYPE_ADDR, |
188 | .flags = IW_DESCR_FLAG_DUMP, | 188 | .flags = IW_DESCR_FLAG_DUMP, |
189 | }, | 189 | }, |
190 | [SIOCSIWMLME - SIOCIWFIRST] = { | ||
191 | .header_type = IW_HEADER_TYPE_POINT, | ||
192 | .token_size = 1, | ||
193 | .min_tokens = sizeof(struct iw_mlme), | ||
194 | .max_tokens = sizeof(struct iw_mlme), | ||
195 | }, | ||
190 | [SIOCGIWAPLIST - SIOCIWFIRST] = { | 196 | [SIOCGIWAPLIST - SIOCIWFIRST] = { |
191 | .header_type = IW_HEADER_TYPE_POINT, | 197 | .header_type = IW_HEADER_TYPE_POINT, |
192 | .token_size = sizeof(struct sockaddr) + | 198 | .token_size = sizeof(struct sockaddr) + |
@@ -195,7 +201,10 @@ static const struct iw_ioctl_description standard_ioctl[] = { | |||
195 | .flags = IW_DESCR_FLAG_NOMAX, | 201 | .flags = IW_DESCR_FLAG_NOMAX, |
196 | }, | 202 | }, |
197 | [SIOCSIWSCAN - SIOCIWFIRST] = { | 203 | [SIOCSIWSCAN - SIOCIWFIRST] = { |
198 | .header_type = IW_HEADER_TYPE_PARAM, | 204 | .header_type = IW_HEADER_TYPE_POINT, |
205 | .token_size = 1, | ||
206 | .min_tokens = 0, | ||
207 | .max_tokens = sizeof(struct iw_scan_req), | ||
199 | }, | 208 | }, |
200 | [SIOCGIWSCAN - SIOCIWFIRST] = { | 209 | [SIOCGIWSCAN - SIOCIWFIRST] = { |
201 | .header_type = IW_HEADER_TYPE_POINT, | 210 | .header_type = IW_HEADER_TYPE_POINT, |
@@ -273,6 +282,42 @@ static const struct iw_ioctl_description standard_ioctl[] = { | |||
273 | [SIOCGIWPOWER - SIOCIWFIRST] = { | 282 | [SIOCGIWPOWER - SIOCIWFIRST] = { |
274 | .header_type = IW_HEADER_TYPE_PARAM, | 283 | .header_type = IW_HEADER_TYPE_PARAM, |
275 | }, | 284 | }, |
285 | [SIOCSIWGENIE - SIOCIWFIRST] = { | ||
286 | .header_type = IW_HEADER_TYPE_POINT, | ||
287 | .token_size = 1, | ||
288 | .max_tokens = IW_GENERIC_IE_MAX, | ||
289 | }, | ||
290 | [SIOCGIWGENIE - SIOCIWFIRST] = { | ||
291 | .header_type = IW_HEADER_TYPE_POINT, | ||
292 | .token_size = 1, | ||
293 | .max_tokens = IW_GENERIC_IE_MAX, | ||
294 | }, | ||
295 | [SIOCSIWAUTH - SIOCIWFIRST] = { | ||
296 | .header_type = IW_HEADER_TYPE_PARAM, | ||
297 | }, | ||
298 | [SIOCGIWAUTH - SIOCIWFIRST] = { | ||
299 | .header_type = IW_HEADER_TYPE_PARAM, | ||
300 | }, | ||
301 | [SIOCSIWENCODEEXT - SIOCIWFIRST] = { | ||
302 | .header_type = IW_HEADER_TYPE_POINT, | ||
303 | .token_size = 1, | ||
304 | .min_tokens = sizeof(struct iw_encode_ext), | ||
305 | .max_tokens = sizeof(struct iw_encode_ext) + | ||
306 | IW_ENCODING_TOKEN_MAX, | ||
307 | }, | ||
308 | [SIOCGIWENCODEEXT - SIOCIWFIRST] = { | ||
309 | .header_type = IW_HEADER_TYPE_POINT, | ||
310 | .token_size = 1, | ||
311 | .min_tokens = sizeof(struct iw_encode_ext), | ||
312 | .max_tokens = sizeof(struct iw_encode_ext) + | ||
313 | IW_ENCODING_TOKEN_MAX, | ||
314 | }, | ||
315 | [SIOCSIWPMKSA - SIOCIWFIRST] = { | ||
316 | .header_type = IW_HEADER_TYPE_POINT, | ||
317 | .token_size = 1, | ||
318 | .min_tokens = sizeof(struct iw_pmksa), | ||
319 | .max_tokens = sizeof(struct iw_pmksa), | ||
320 | }, | ||
276 | }; | 321 | }; |
277 | static const int standard_ioctl_num = (sizeof(standard_ioctl) / | 322 | static const int standard_ioctl_num = (sizeof(standard_ioctl) / |
278 | sizeof(struct iw_ioctl_description)); | 323 | sizeof(struct iw_ioctl_description)); |
@@ -299,6 +344,31 @@ static const struct iw_ioctl_description standard_event[] = { | |||
299 | [IWEVEXPIRED - IWEVFIRST] = { | 344 | [IWEVEXPIRED - IWEVFIRST] = { |
300 | .header_type = IW_HEADER_TYPE_ADDR, | 345 | .header_type = IW_HEADER_TYPE_ADDR, |
301 | }, | 346 | }, |
347 | [IWEVGENIE - IWEVFIRST] = { | ||
348 | .header_type = IW_HEADER_TYPE_POINT, | ||
349 | .token_size = 1, | ||
350 | .max_tokens = IW_GENERIC_IE_MAX, | ||
351 | }, | ||
352 | [IWEVMICHAELMICFAILURE - IWEVFIRST] = { | ||
353 | .header_type = IW_HEADER_TYPE_POINT, | ||
354 | .token_size = 1, | ||
355 | .max_tokens = sizeof(struct iw_michaelmicfailure), | ||
356 | }, | ||
357 | [IWEVASSOCREQIE - IWEVFIRST] = { | ||
358 | .header_type = IW_HEADER_TYPE_POINT, | ||
359 | .token_size = 1, | ||
360 | .max_tokens = IW_GENERIC_IE_MAX, | ||
361 | }, | ||
362 | [IWEVASSOCRESPIE - IWEVFIRST] = { | ||
363 | .header_type = IW_HEADER_TYPE_POINT, | ||
364 | .token_size = 1, | ||
365 | .max_tokens = IW_GENERIC_IE_MAX, | ||
366 | }, | ||
367 | [IWEVPMKIDCAND - IWEVFIRST] = { | ||
368 | .header_type = IW_HEADER_TYPE_POINT, | ||
369 | .token_size = 1, | ||
370 | .max_tokens = sizeof(struct iw_pmkid_cand), | ||
371 | }, | ||
302 | }; | 372 | }; |
303 | static const int standard_event_num = (sizeof(standard_event) / | 373 | static const int standard_event_num = (sizeof(standard_event) / |
304 | sizeof(struct iw_ioctl_description)); | 374 | sizeof(struct iw_ioctl_description)); |