*/
static int wanrouter_device_setup(struct wan_device *wandev,
- wandev_conf_t *u_conf);
+ wandev_conf_t __user *u_conf);
static int wanrouter_device_stat(struct wan_device *wandev,
- wandev_stat_t *u_stat);
+ wandev_stat_t __user *u_stat);
static int wanrouter_device_shutdown(struct wan_device *wandev);
static int wanrouter_device_new_if(struct wan_device *wandev,
- wanif_conf_t *u_conf);
-static int wanrouter_device_del_if(struct wan_device *wandev, char *u_name);
+ wanif_conf_t __user *u_conf);
+static int wanrouter_device_del_if(struct wan_device *wandev,
+ char __user *u_name);
/*
* Miscellaneous
int err = 0;
struct proc_dir_entry *dent;
struct wan_device *wandev;
+ void __user *data = (void __user *)arg;
if (!capable(CAP_NET_ADMIN))
return -EPERM;
switch (cmd) {
case ROUTER_SETUP:
- err = wanrouter_device_setup(wandev, (void*)arg);
+ err = wanrouter_device_setup(wandev, data);
break;
case ROUTER_DOWN:
break;
case ROUTER_STAT:
- err = wanrouter_device_stat(wandev, (void*)arg);
+ err = wanrouter_device_stat(wandev, data);
break;
case ROUTER_IFNEW:
- err = wanrouter_device_new_if(wandev, (void*)arg);
+ err = wanrouter_device_new_if(wandev, data);
break;
case ROUTER_IFDEL:
- err = wanrouter_device_del_if(wandev, (void*)arg);
+ err = wanrouter_device_del_if(wandev, data);
break;
case ROUTER_IFSTAT:
*/
static int wanrouter_device_setup(struct wan_device *wandev,
- wandev_conf_t *u_conf)
+ wandev_conf_t __user *u_conf)
{
void *data = NULL;
wandev_conf_t *conf;
*/
static int wanrouter_device_stat(struct wan_device *wandev,
- wandev_stat_t *u_stat)
+ wandev_stat_t __user *u_stat)
{
wandev_stat_t stat;
*/
static int wanrouter_device_new_if(struct wan_device *wandev,
- wanif_conf_t *u_conf)
+ wanif_conf_t __user *u_conf)
{
wanif_conf_t *cnf;
struct net_device *dev = NULL;
* o copy configuration data to kernel address space
*/
-static int wanrouter_device_del_if(struct wan_device *wandev, char *u_name)
+static int wanrouter_device_del_if(struct wan_device *wandev, char __user *u_name)
{
char name[WAN_IFNAME_SZ + 1];
int err = 0;