1295f4a1fSJohannes Berg #ifndef __NET_WEXT_H 2295f4a1fSJohannes Berg #define __NET_WEXT_H 3295f4a1fSJohannes Berg 4*3d23e349SJohannes Berg #include <net/iw_handler.h> 5295f4a1fSJohannes Berg 6881d966bSEric W. Biederman struct net; 7881d966bSEric W. Biederman 8*3d23e349SJohannes Berg #ifdef CONFIG_WEXT_CORE 9881d966bSEric W. Biederman extern int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, 10295f4a1fSJohannes Berg void __user *arg); 1187de87d5SDavid S. Miller extern int compat_wext_handle_ioctl(struct net *net, unsigned int cmd, 1287de87d5SDavid S. Miller unsigned long arg); 13*3d23e349SJohannes Berg 148f1546caSJohannes Berg extern struct iw_statistics *get_wireless_stats(struct net_device *dev); 15*3d23e349SJohannes Berg extern int call_commit_handler(struct net_device *dev); 16295f4a1fSJohannes Berg #else 17881d966bSEric W. Biederman static inline int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd, 18295f4a1fSJohannes Berg void __user *arg) 19295f4a1fSJohannes Berg { 20295f4a1fSJohannes Berg return -EINVAL; 21295f4a1fSJohannes Berg } 2287de87d5SDavid S. Miller static inline int compat_wext_handle_ioctl(struct net *net, unsigned int cmd, 2387de87d5SDavid S. Miller unsigned long arg) 2487de87d5SDavid S. Miller { 2587de87d5SDavid S. Miller return -EINVAL; 2687de87d5SDavid S. Miller } 27295f4a1fSJohannes Berg #endif 28295f4a1fSJohannes Berg 29*3d23e349SJohannes Berg #ifdef CONFIG_WEXT_PROC 30*3d23e349SJohannes Berg extern int wext_proc_init(struct net *net); 31*3d23e349SJohannes Berg extern void wext_proc_exit(struct net *net); 32*3d23e349SJohannes Berg #else 33*3d23e349SJohannes Berg static inline int wext_proc_init(struct net *net) 34*3d23e349SJohannes Berg { 35*3d23e349SJohannes Berg return 0; 36*3d23e349SJohannes Berg } 37*3d23e349SJohannes Berg static inline void wext_proc_exit(struct net *net) 38*3d23e349SJohannes Berg { 39*3d23e349SJohannes Berg return; 40*3d23e349SJohannes Berg } 41*3d23e349SJohannes Berg #endif 42*3d23e349SJohannes Berg 43*3d23e349SJohannes Berg #ifdef CONFIG_WEXT_PRIV 44*3d23e349SJohannes Berg int ioctl_private_call(struct net_device *dev, struct iwreq *iwr, 45*3d23e349SJohannes Berg unsigned int cmd, struct iw_request_info *info, 46*3d23e349SJohannes Berg iw_handler handler); 47*3d23e349SJohannes Berg int compat_private_call(struct net_device *dev, struct iwreq *iwr, 48*3d23e349SJohannes Berg unsigned int cmd, struct iw_request_info *info, 49*3d23e349SJohannes Berg iw_handler handler); 50*3d23e349SJohannes Berg int iw_handler_get_private(struct net_device * dev, 51*3d23e349SJohannes Berg struct iw_request_info * info, 52*3d23e349SJohannes Berg union iwreq_data * wrqu, 53*3d23e349SJohannes Berg char * extra); 54*3d23e349SJohannes Berg #else 55*3d23e349SJohannes Berg #define ioctl_private_call NULL 56*3d23e349SJohannes Berg #define compat_private_call NULL 57*3d23e349SJohannes Berg #endif 58*3d23e349SJohannes Berg 59*3d23e349SJohannes Berg 60295f4a1fSJohannes Berg #endif /* __NET_WEXT_H */ 61