xref: /linux/include/net/wext.h (revision 24bce201d79807b668bf9d9e0aca801c5c0d5f78)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NET_WEXT_H
3 #define __NET_WEXT_H
4 
5 #include <net/iw_handler.h>
6 
7 struct net;
8 
9 #ifdef CONFIG_WEXT_CORE
10 int wext_handle_ioctl(struct net *net, unsigned int cmd,
11 		      void __user *arg);
12 int compat_wext_handle_ioctl(struct net *net, unsigned int cmd,
13 			     unsigned long arg);
14 
15 struct iw_statistics *get_wireless_stats(struct net_device *dev);
16 int call_commit_handler(struct net_device *dev);
17 #else
18 static inline int wext_handle_ioctl(struct net *net, unsigned int cmd,
19 				    void __user *arg)
20 {
21 	return -EINVAL;
22 }
23 static inline int compat_wext_handle_ioctl(struct net *net, unsigned int cmd,
24 					   unsigned long arg)
25 {
26 	return -EINVAL;
27 }
28 #endif
29 
30 #ifdef CONFIG_WEXT_PROC
31 int wext_proc_init(struct net *net);
32 void wext_proc_exit(struct net *net);
33 #else
34 static inline int wext_proc_init(struct net *net)
35 {
36 	return 0;
37 }
38 static inline void wext_proc_exit(struct net *net)
39 {
40 	return;
41 }
42 #endif
43 
44 #ifdef CONFIG_WEXT_PRIV
45 int ioctl_private_call(struct net_device *dev, struct iwreq *iwr,
46 		       unsigned int cmd, struct iw_request_info *info,
47 		       iw_handler handler);
48 int compat_private_call(struct net_device *dev, struct iwreq *iwr,
49 			unsigned int cmd, struct iw_request_info *info,
50 			iw_handler handler);
51 int iw_handler_get_private(struct net_device *		dev,
52 			   struct iw_request_info *	info,
53 			   union iwreq_data *		wrqu,
54 			   char *			extra);
55 #else
56 #define ioctl_private_call NULL
57 #define compat_private_call NULL
58 #endif
59 
60 
61 #endif /* __NET_WEXT_H */
62