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

index 26b5553e3cb0e480ec8b58d6e8b3af3897f3a03e..bf86bf67bdb98e881b16500a5e75b9c1280e6216 100644 (file)
@@ -312,7 +312,7 @@ extern int  ax25_check_iframes_acked(ax25_cb *, unsigned short);
 
 /* ax25_route.c */
 extern void ax25_rt_device_down(struct net_device *);
-extern int  ax25_rt_ioctl(unsigned int, void *);
+extern int  ax25_rt_ioctl(unsigned int, void __user *);
 extern struct file_operations ax25_route_fops;
 extern int  ax25_rt_autobind(ax25_cb *, ax25_address *);
 extern ax25_route *ax25_rt_find_route(ax25_route *, ax25_address *,
index 563350a0ae7021ae84e7c11ed905a36e063b1137..a963428728943269a9046abe2e5b058273c73628 100644 (file)
@@ -336,7 +336,7 @@ void ax25_destroy_socket(ax25_cb *ax25)
  *               includes a KILL command to abort any connection.
  *               VERY useful for debugging ;-)
  */
-static int ax25_ctl_ioctl(const unsigned int cmd, void *arg)
+static int ax25_ctl_ioctl(const unsigned int cmd, void __user *arg)
 {
        struct ax25_ctl_struct ax25_ctl;
        ax25_digi digi;
@@ -1669,6 +1669,7 @@ static int ax25_shutdown(struct socket *sk, int how)
 static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
 {
        struct sock *sk = sock->sk;
+       void __user *argp = (void __user *)arg;
        int res = 0;
 
        lock_sock(sk);
@@ -1678,7 +1679,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                amount = sk->sk_sndbuf - atomic_read(&sk->sk_wmem_alloc);
                if (amount < 0)
                        amount = 0;
-               res = put_user(amount, (int *)arg);
+               res = put_user(amount, (int __user *)argp);
                break;
        }
 
@@ -1688,13 +1689,13 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                /* These two are safe on a single CPU system as only user tasks fiddle here */
                if ((skb = skb_peek(&sk->sk_receive_queue)) != NULL)
                        amount = skb->len;
-               res = put_user(amount, (int *)arg);
+               res = put_user(amount, (int __user *)argp);
                break;
        }
 
        case SIOCGSTAMP:
                if (sk != NULL) {
-                       res = sock_get_timestamp(sk, (struct timeval __user *)arg);
+                       res = sock_get_timestamp(sk, argp);
                        break;
                }
                res = -EINVAL;
@@ -1704,7 +1705,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
        case SIOCAX25DELUID:    /* Delete a uid from the uid/call map table */
        case SIOCAX25GETUID: {
                struct sockaddr_ax25 sax25;
-               if (copy_from_user(&sax25, (void *)arg, sizeof(sax25))) {
+               if (copy_from_user(&sax25, argp, sizeof(sax25))) {
                        res = -EFAULT;
                        break;
                }
@@ -1718,7 +1719,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                        res = -EPERM;
                        break;
                }
-               if (get_user(amount, (long *)arg)) {
+               if (get_user(amount, (long __user *)argp)) {
                        res = -EFAULT;
                        break;
                }
@@ -1738,7 +1739,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                        res = -EPERM;
                        break;
                }
-               res = ax25_rt_ioctl(cmd, (void *)arg);
+               res = ax25_rt_ioctl(cmd, argp);
                break;
 
        case SIOCAX25CTLCON:
@@ -1746,7 +1747,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                        res = -EPERM;
                        break;
                }
-               res = ax25_ctl_ioctl(cmd, (void *)arg);
+               res = ax25_ctl_ioctl(cmd, argp);
                break;
 
        case SIOCAX25GETINFO:
@@ -1783,12 +1784,12 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                                warned=1;
                        }
 
-                       if (copy_to_user((void *)arg, &ax25_info, sizeof(struct ax25_info_struct_deprecated))) {
+                       if (copy_to_user(argp, &ax25_info, sizeof(struct ax25_info_struct_deprecated))) {
                                res = -EFAULT;
                                break;
                        }
                } else {
-                       if (copy_to_user((void *)arg, &ax25_info, sizeof(struct ax25_info_struct))) {
+                       if (copy_to_user(argp, &ax25_info, sizeof(struct ax25_info_struct))) {
                                res = -EINVAL;
                                break;
                        }
@@ -1804,7 +1805,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                        res = -EPERM;
                        break;
                }
-               if (copy_from_user(&ax25_fwd, (void *)arg, sizeof(ax25_fwd))) {
+               if (copy_from_user(&ax25_fwd, argp, sizeof(ax25_fwd))) {
                        res = -EFAULT;
                        break;
                }
@@ -1826,7 +1827,7 @@ static int ax25_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
                break;
 
        default:
-               res = dev_ioctl(cmd, (void __user *)arg);
+               res = dev_ioctl(cmd, argp);
                break;
        }
        release_sock(sk);
index 7c977ebcc9a0a51289b4d254d1b5c383ae8e34c1..de40eee76a18396907c6978f37c89c33a20b4bae 100644 (file)
@@ -253,7 +253,7 @@ out:
        return err;
 }
 
-int ax25_rt_ioctl(unsigned int cmd, void *arg)
+int ax25_rt_ioctl(unsigned int cmd, void __user *arg)
 {
        struct ax25_route_opt_struct rt_option;
        struct ax25_routes_struct route;