diff options
author | David S. Miller <davem@davemloft.net> | 2009-10-09 17:40:09 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-10-09 17:40:09 -0400 |
commit | 8aa0f64ac3835a6daf84d0b0e07c4c01d7d8eddc (patch) | |
tree | e5e6cc8637a44354997624f26d4d55834c9915b4 /include | |
parent | cd7e1f0b056c071860db65c847a854b3093d6606 (diff) | |
parent | eab2ec83dbf0e32e28f3108f302ffdaa225d4cce (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/nl80211.h | 2 | ||||
-rw-r--r-- | include/net/cfg80211.h | 9 | ||||
-rw-r--r-- | include/net/iw_handler.h | 14 | ||||
-rw-r--r-- | include/net/net_namespace.h | 2 | ||||
-rw-r--r-- | include/net/wext.h | 49 |
5 files changed, 54 insertions, 22 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index a8d71ed43a0e..50afca3dcff1 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h | |||
@@ -1277,6 +1277,7 @@ enum nl80211_channel_type { | |||
1277 | * @NL80211_BSS_SIGNAL_UNSPEC: signal strength of the probe response/beacon | 1277 | * @NL80211_BSS_SIGNAL_UNSPEC: signal strength of the probe response/beacon |
1278 | * in unspecified units, scaled to 0..100 (u8) | 1278 | * in unspecified units, scaled to 0..100 (u8) |
1279 | * @NL80211_BSS_STATUS: status, if this BSS is "used" | 1279 | * @NL80211_BSS_STATUS: status, if this BSS is "used" |
1280 | * @NL80211_BSS_SEEN_MS_AGO: age of this BSS entry in ms | ||
1280 | * @__NL80211_BSS_AFTER_LAST: internal | 1281 | * @__NL80211_BSS_AFTER_LAST: internal |
1281 | * @NL80211_BSS_MAX: highest BSS attribute | 1282 | * @NL80211_BSS_MAX: highest BSS attribute |
1282 | */ | 1283 | */ |
@@ -1291,6 +1292,7 @@ enum nl80211_bss { | |||
1291 | NL80211_BSS_SIGNAL_MBM, | 1292 | NL80211_BSS_SIGNAL_MBM, |
1292 | NL80211_BSS_SIGNAL_UNSPEC, | 1293 | NL80211_BSS_SIGNAL_UNSPEC, |
1293 | NL80211_BSS_STATUS, | 1294 | NL80211_BSS_STATUS, |
1295 | NL80211_BSS_SEEN_MS_AGO, | ||
1294 | 1296 | ||
1295 | /* keep last */ | 1297 | /* keep last */ |
1296 | __NL80211_BSS_AFTER_LAST, | 1298 | __NL80211_BSS_AFTER_LAST, |
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 3d874c620219..6f4862b3ec2c 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -1142,6 +1142,9 @@ struct wiphy { | |||
1142 | u32 frag_threshold; | 1142 | u32 frag_threshold; |
1143 | u32 rts_threshold; | 1143 | u32 rts_threshold; |
1144 | 1144 | ||
1145 | char fw_version[ETHTOOL_BUSINFO_LEN]; | ||
1146 | u32 hw_version; | ||
1147 | |||
1145 | /* If multiple wiphys are registered and you're handed e.g. | 1148 | /* If multiple wiphys are registered and you're handed e.g. |
1146 | * a regular netdev with assigned ieee80211_ptr, you won't | 1149 | * a regular netdev with assigned ieee80211_ptr, you won't |
1147 | * know whether it points to a wiphy your driver has registered | 1150 | * know whether it points to a wiphy your driver has registered |
@@ -1171,6 +1174,10 @@ struct wiphy { | |||
1171 | struct net *_net; | 1174 | struct net *_net; |
1172 | #endif | 1175 | #endif |
1173 | 1176 | ||
1177 | #ifdef CONFIG_CFG80211_WEXT | ||
1178 | const struct iw_handler_def *wext; | ||
1179 | #endif | ||
1180 | |||
1174 | char priv[0] __attribute__((__aligned__(NETDEV_ALIGN))); | 1181 | char priv[0] __attribute__((__aligned__(NETDEV_ALIGN))); |
1175 | }; | 1182 | }; |
1176 | 1183 | ||
@@ -1345,7 +1352,7 @@ struct wireless_dev { | |||
1345 | struct cfg80211_internal_bss *auth_bsses[MAX_AUTH_BSSES]; | 1352 | struct cfg80211_internal_bss *auth_bsses[MAX_AUTH_BSSES]; |
1346 | struct cfg80211_internal_bss *current_bss; /* associated / joined */ | 1353 | struct cfg80211_internal_bss *current_bss; /* associated / joined */ |
1347 | 1354 | ||
1348 | #ifdef CONFIG_WIRELESS_EXT | 1355 | #ifdef CONFIG_CFG80211_WEXT |
1349 | /* wext data */ | 1356 | /* wext data */ |
1350 | struct { | 1357 | struct { |
1351 | struct cfg80211_ibss_params ibss; | 1358 | struct cfg80211_ibss_params ibss; |
diff --git a/include/net/iw_handler.h b/include/net/iw_handler.h index e9054a283fde..d5d337170a56 100644 --- a/include/net/iw_handler.h +++ b/include/net/iw_handler.h | |||
@@ -323,18 +323,19 @@ typedef int (*iw_handler)(struct net_device *dev, struct iw_request_info *info, | |||
323 | */ | 323 | */ |
324 | struct iw_handler_def | 324 | struct iw_handler_def |
325 | { | 325 | { |
326 | /* Number of handlers defined (more precisely, index of the | ||
327 | * last defined handler + 1) */ | ||
328 | __u16 num_standard; | ||
329 | __u16 num_private; | ||
330 | /* Number of private arg description */ | ||
331 | __u16 num_private_args; | ||
332 | 326 | ||
333 | /* Array of handlers for standard ioctls | 327 | /* Array of handlers for standard ioctls |
334 | * We will call dev->wireless_handlers->standard[ioctl - SIOCSIWCOMMIT] | 328 | * We will call dev->wireless_handlers->standard[ioctl - SIOCSIWCOMMIT] |
335 | */ | 329 | */ |
336 | const iw_handler * standard; | 330 | const iw_handler * standard; |
331 | /* Number of handlers defined (more precisely, index of the | ||
332 | * last defined handler + 1) */ | ||
333 | __u16 num_standard; | ||
337 | 334 | ||
335 | #ifdef CONFIG_WEXT_PRIV | ||
336 | __u16 num_private; | ||
337 | /* Number of private arg description */ | ||
338 | __u16 num_private_args; | ||
338 | /* Array of handlers for private ioctls | 339 | /* Array of handlers for private ioctls |
339 | * Will call dev->wireless_handlers->private[ioctl - SIOCIWFIRSTPRIV] | 340 | * Will call dev->wireless_handlers->private[ioctl - SIOCIWFIRSTPRIV] |
340 | */ | 341 | */ |
@@ -344,6 +345,7 @@ struct iw_handler_def | |||
344 | * can put it in any order you want and should not leave holes... | 345 | * can put it in any order you want and should not leave holes... |
345 | * We will automatically export that to user space... */ | 346 | * We will automatically export that to user space... */ |
346 | const struct iw_priv_args * private_args; | 347 | const struct iw_priv_args * private_args; |
348 | #endif | ||
347 | 349 | ||
348 | /* New location of get_wireless_stats, to de-bloat struct net_device. | 350 | /* New location of get_wireless_stats, to de-bloat struct net_device. |
349 | * The old pointer in struct net_device will be gradually phased | 351 | * The old pointer in struct net_device will be gradually phased |
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h index a1202841aadd..699410142bfa 100644 --- a/include/net/net_namespace.h +++ b/include/net/net_namespace.h | |||
@@ -80,7 +80,7 @@ struct net { | |||
80 | #ifdef CONFIG_XFRM | 80 | #ifdef CONFIG_XFRM |
81 | struct netns_xfrm xfrm; | 81 | struct netns_xfrm xfrm; |
82 | #endif | 82 | #endif |
83 | #ifdef CONFIG_WIRELESS_EXT | 83 | #ifdef CONFIG_WEXT_CORE |
84 | struct sk_buff_head wext_nlevents; | 84 | struct sk_buff_head wext_nlevents; |
85 | #endif | 85 | #endif |
86 | struct net_generic *gen; | 86 | struct net_generic *gen; |
diff --git a/include/net/wext.h b/include/net/wext.h index 3f2b94de2cfa..4f6e7423174c 100644 --- a/include/net/wext.h +++ b/include/net/wext.h | |||
@@ -1,29 +1,19 @@ | |||
1 | #ifndef __NET_WEXT_H | 1 | #ifndef __NET_WEXT_H |
2 | #define __NET_WEXT_H | 2 | #define __NET_WEXT_H |
3 | 3 | ||
4 | /* | 4 | #include <net/iw_handler.h> |
5 | * wireless extensions interface to the core code | ||
6 | */ | ||
7 | 5 | ||
8 | struct net; | 6 | struct net; |
9 | 7 | ||
10 | #ifdef CONFIG_WIRELESS_EXT | 8 | #ifdef CONFIG_WEXT_CORE |
11 | extern int wext_proc_init(struct net *net); | ||
12 | extern void wext_proc_exit(struct net *net); | ||
13 | extern int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, | 9 | extern int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, |
14 | void __user *arg); | 10 | void __user *arg); |
15 | extern int compat_wext_handle_ioctl(struct net *net, unsigned int cmd, | 11 | extern int compat_wext_handle_ioctl(struct net *net, unsigned int cmd, |
16 | unsigned long arg); | 12 | unsigned long arg); |
13 | |||
17 | extern struct iw_statistics *get_wireless_stats(struct net_device *dev); | 14 | extern struct iw_statistics *get_wireless_stats(struct net_device *dev); |
15 | extern int call_commit_handler(struct net_device *dev); | ||
18 | #else | 16 | #else |
19 | static inline int wext_proc_init(struct net *net) | ||
20 | { | ||
21 | return 0; | ||
22 | } | ||
23 | static inline void wext_proc_exit(struct net *net) | ||
24 | { | ||
25 | return; | ||
26 | } | ||
27 | static inline int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, | 17 | static inline int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, |
28 | void __user *arg) | 18 | void __user *arg) |
29 | { | 19 | { |
@@ -36,4 +26,35 @@ static inline int compat_wext_handle_ioctl(struct net *net, unsigned int cmd, | |||
36 | } | 26 | } |
37 | #endif | 27 | #endif |
38 | 28 | ||
29 | #ifdef CONFIG_WEXT_PROC | ||
30 | extern int wext_proc_init(struct net *net); | ||
31 | extern void wext_proc_exit(struct net *net); | ||
32 | #else | ||
33 | static inline int wext_proc_init(struct net *net) | ||
34 | { | ||
35 | return 0; | ||
36 | } | ||
37 | static inline void wext_proc_exit(struct net *net) | ||
38 | { | ||
39 | return; | ||
40 | } | ||
41 | #endif | ||
42 | |||
43 | #ifdef CONFIG_WEXT_PRIV | ||
44 | int ioctl_private_call(struct net_device *dev, struct iwreq *iwr, | ||
45 | unsigned int cmd, struct iw_request_info *info, | ||
46 | iw_handler handler); | ||
47 | int compat_private_call(struct net_device *dev, struct iwreq *iwr, | ||
48 | unsigned int cmd, struct iw_request_info *info, | ||
49 | iw_handler handler); | ||
50 | int iw_handler_get_private(struct net_device * dev, | ||
51 | struct iw_request_info * info, | ||
52 | union iwreq_data * wrqu, | ||
53 | char * extra); | ||
54 | #else | ||
55 | #define ioctl_private_call NULL | ||
56 | #define compat_private_call NULL | ||
57 | #endif | ||
58 | |||
59 | |||
39 | #endif /* __NET_WEXT_H */ | 60 | #endif /* __NET_WEXT_H */ |