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
7struct net;
8
9#ifdef CONFIG_WEXT_CORE
10int wext_handle_ioctl(struct net *net, unsigned int cmd,
11 void __user *arg);
12int compat_wext_handle_ioctl(struct net *net, unsigned int cmd,
13 unsigned long arg);
14
15struct iw_statistics *get_wireless_stats(struct net_device *dev);
16int call_commit_handler(struct net_device *dev);
17#else
18static inline int wext_handle_ioctl(struct net *net, unsigned int cmd,
19 void __user *arg)
20{
21 return -EINVAL;
22}
23static 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
31int wext_proc_init(struct net *net);
32void wext_proc_exit(struct net *net);
33#else
34static inline int wext_proc_init(struct net *net)
35{
36 return 0;
37}
38static inline void wext_proc_exit(struct net *net)
39{
40 return;
41}
42#endif
43
44#ifdef CONFIG_WEXT_PRIV
45int ioctl_private_call(struct net_device *dev, struct iwreq *iwr,
46 unsigned int cmd, struct iw_request_info *info,
47 iw_handler handler);
48int compat_private_call(struct net_device *dev, struct iwreq *iwr,
49 unsigned int cmd, struct iw_request_info *info,
50 iw_handler handler);
51int 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