]> git.hungrycats.org Git - linux/commitdiff
[PATCH] sparse: netrom annotation
authorAlexander Viro <viro@parcelfarce.linux.theplanet.co.uk>
Thu, 3 Jun 2004 14:27:19 +0000 (07:27 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Thu, 3 Jun 2004 14:27:19 +0000 (07:27 -0700)
include/net/netrom.h
net/netrom/af_netrom.c
net/netrom/nr_route.c

index 01ee604593209247ce64e24284855f28bf8d7e09..8168780417d7dc938507c6954ee722f8e326aa1b 100644 (file)
@@ -206,7 +206,7 @@ extern void nr_check_iframes_acked(struct sock *, unsigned short);
 extern void nr_rt_device_down(struct net_device *);
 extern struct net_device *nr_dev_first(void);
 extern struct net_device *nr_dev_get(ax25_address *);
-extern int  nr_rt_ioctl(unsigned int, void *);
+extern int  nr_rt_ioctl(unsigned int, void __user *);
 extern void nr_link_failed(ax25_cb *, int);
 extern int  nr_route_frame(struct sk_buff *, ax25_cb *);
 extern struct file_operations nr_nodes_fops;
index 1e3fe723799bae81824362deb48db0ee99974471..b761bebac124c07dfd56a103cd286d8a9a496dce 100644 (file)
@@ -1176,6 +1176,7 @@ static int nr_recvmsg(struct kiocb *iocb, struct socket *sock,
 static int nr_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
 {
        struct sock *sk = sock->sk;
+       void __user *argp = (void __user *)arg;
        int ret;
 
        lock_sock(sk);
@@ -1186,7 +1187,7 @@ static int nr_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                if (amount < 0)
                        amount = 0;
                release_sock(sk);
-               return put_user(amount, (int *)arg);
+               return put_user(amount, (int __user *)argp);
        }
 
        case TIOCINQ: {
@@ -1196,13 +1197,13 @@ static int nr_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                if ((skb = skb_peek(&sk->sk_receive_queue)) != NULL)
                        amount = skb->len;
                release_sock(sk);
-               return put_user(amount, (int *)arg);
+               return put_user(amount, (int __user *)argp);
        }
 
        case SIOCGSTAMP:
                ret = -EINVAL;
                if (sk != NULL)
-                       ret = sock_get_timestamp(sk, (struct timeval __user *)arg);
+                       ret = sock_get_timestamp(sk, argp);
                release_sock(sk);
                return ret;
 
@@ -1224,11 +1225,11 @@ static int nr_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
        case SIOCNRDECOBS:
                release_sock(sk);
                if (!capable(CAP_NET_ADMIN)) return -EPERM;
-               return nr_rt_ioctl(cmd, (void *)arg);
+               return nr_rt_ioctl(cmd, argp);
 
        default:
                release_sock(sk);
-               return dev_ioctl(cmd, (void __user *)arg);
+               return dev_ioctl(cmd, argp);
        }
        release_sock(sk);
 
index 0505c00d64ff7c96fb7e071d3b8adfc810cd3682..dac2e36fcb39b90e561124f5d3534b72d239ac47 100644 (file)
@@ -647,7 +647,7 @@ static ax25_digi *nr_call_to_digi(int ndigis, ax25_address *digipeaters)
 /*
  *     Handle the ioctls that control the routing functions.
  */
-int nr_rt_ioctl(unsigned int cmd, void *arg)
+int nr_rt_ioctl(unsigned int cmd, void __user *arg)
 {
        struct nr_route_struct nr_route;
        struct net_device *dev;