xref: /linux/include/net/wext.h (revision 2b64b2ed277ff23e785fbdb65098ee7e1252d64f)
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