extern void dn_dev_init(void);
extern void dn_dev_cleanup(void);
-extern int dn_dev_ioctl(unsigned int cmd, void *arg);
+extern int dn_dev_ioctl(unsigned int cmd, void __user *arg);
extern void dn_dev_devices_off(void);
extern void dn_dev_devices_on(void);
{
case SIOCGIFADDR:
case SIOCSIFADDR:
- return dn_dev_ioctl(cmd, (void *)arg);
+ return dn_dev_ioctl(cmd, (void __user *)arg);
case SIOCATMARK:
lock_sock(sk);
amount = sk->sk_sndbuf - atomic_read(&sk->sk_wmem_alloc);
if (amount < 0)
amount = 0;
- err = put_user(amount, (int *)arg);
+ err = put_user(amount, (int __user *)arg);
break;
case TIOCINQ:
}
}
release_sock(sk);
- err = put_user(amount, (int *)arg);
+ err = put_user(amount, (int __user *)arg);
break;
default:
return err;
}
-static int __dn_setsockopt(struct socket *sock, int level,int optname, char __user __user *optval, int optlen, int flags)
+static int __dn_setsockopt(struct socket *sock, int level,int optname, char __user *optval, int optlen, int flags)
{
struct sock *sk = sock->sk;
struct dn_scp *scp = DN_SK(sk);
static int max_priority[] = { 127 }; /* From DECnet spec */
static int dn_forwarding_proc(ctl_table *, int, struct file *,
- void *, size_t *);
-static int dn_forwarding_sysctl(ctl_table *table, int *name, int nlen,
- void *oldval, size_t *oldlenp,
- void *newval, size_t newlen,
+ void __user *, size_t *);
+static int dn_forwarding_sysctl(ctl_table *table, int __user *name, int nlen,
+ void __user *oldval, size_t __user *oldlenp,
+ void __user *newval, size_t newlen,
void **context);
static struct dn_dev_sysctl_table {
static int dn_forwarding_proc(ctl_table *table, int write,
struct file *filep,
- void *buffer, size_t *lenp)
+ void __user *buffer, size_t *lenp)
{
#ifdef CONFIG_DECNET_ROUTER
struct net_device *dev = table->extra1;
#endif
}
-static int dn_forwarding_sysctl(ctl_table *table, int *name, int nlen,
- void *oldval, size_t *oldlenp,
- void *newval, size_t newlen,
+static int dn_forwarding_sysctl(ctl_table *table, int __user *name, int nlen,
+ void __user *oldval, size_t __user *oldlenp,
+ void __user *newval, size_t newlen,
void **context)
{
#ifdef CONFIG_DECNET_ROUTER
if (newlen != sizeof(int))
return -EINVAL;
- if (get_user(value, (int *)newval))
+ if (get_user(value, (int __user *)newval))
return -EFAULT;
if (value < 0)
return -EINVAL;
}
-int dn_dev_ioctl(unsigned int cmd, void *arg)
+int dn_dev_ioctl(unsigned int cmd, void __user *arg)
{
char buffer[DN_IFREQ_SIZE];
struct ifreq *ifr = (struct ifreq *)buffer;
}
-static int dn_node_address_strategy(ctl_table *table, int *name, int nlen,
- void *oldval, size_t *oldlenp,
- void *newval, size_t newlen,
+static int dn_node_address_strategy(ctl_table *table, int __user *name, int nlen,
+ void __user *oldval, size_t __user *oldlenp,
+ void __user *newval, size_t newlen,
void **context)
{
size_t len;
if (len) {
if (len != sizeof(unsigned short))
return -EINVAL;
- if (put_user(decnet_address, (unsigned short *)oldval))
+ if (put_user(decnet_address, (unsigned short __user *)oldval))
return -EFAULT;
}
}
if (newval && newlen) {
if (newlen != sizeof(unsigned short))
return -EINVAL;
- if (get_user(addr, (unsigned short *)newval))
+ if (get_user(addr, (unsigned short __user *)newval))
return -EFAULT;
dn_dev_devices_off();
static int dn_node_address_handler(ctl_table *table, int write,
struct file *filp,
- void *buffer, size_t *lenp)
+ void __user *buffer, size_t *lenp)
{
char addr[DN_ASCBUF_LEN];
size_t len;
}
-static int dn_def_dev_strategy(ctl_table *table, int *name, int nlen,
- void *oldval, size_t *oldlenp,
- void *newval, size_t newlen,
+static int dn_def_dev_strategy(ctl_table *table, int __user *name, int nlen,
+ void __user *oldval, size_t __user *oldlenp,
+ void __user *newval, size_t newlen,
void **context)
{
size_t len;
static int dn_def_dev_handler(ctl_table *table, int write,
struct file * filp,
- void *buffer, size_t *lenp)
+ void __user *buffer, size_t *lenp)
{
size_t len;
struct net_device *dev;