*/
static int nr_setsockopt(struct socket *sock, int level, int optname,
- char *optval, int optlen)
+ char __user *optval, int optlen)
{
struct sock *sk = sock->sk;
nr_cb *nr = nr_sk(sk);
if (optlen < sizeof(int))
return -EINVAL;
- if (get_user(opt, (int *)optval))
+ if (get_user(opt, (int __user *)optval))
return -EFAULT;
switch (optname) {
}
static int nr_getsockopt(struct socket *sock, int level, int optname,
- char *optval, int *optlen)
+ char __user *optval, int __user *optlen)
{
struct sock *sk = sock->sk;
nr_cb *nr = nr_sk(sk);
case SIOCGSTAMP:
ret = -EINVAL;
if (sk != NULL)
- ret = sock_get_timestamp(sk, (struct timeval *)arg);
+ ret = sock_get_timestamp(sk, (struct timeval __user *)arg);
release_sock(sk);
return ret;
default:
release_sock(sk);
- return dev_ioctl(cmd, (void *)arg);
+ return dev_ioctl(cmd, (void __user *)arg);
}
release_sock(sk);