From 1e9188c24002a2a01d11499590c95e2e163384eb Mon Sep 17 00:00:00 2001 From: Alexander Viro Date: Thu, 3 Jun 2004 08:34:34 -0700 Subject: [PATCH] [PATCH] sparse: mroute annotation --- include/linux/mroute.h | 2 +- net/ipv4/ipmr.c | 10 +++++----- net/ipv4/raw.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/linux/mroute.h b/include/linux/mroute.h index e11cd45a79f6e..e05d54a90743e 100644 --- a/include/linux/mroute.h +++ b/include/linux/mroute.h @@ -130,7 +130,7 @@ struct igmpmsg extern int ip_mroute_setsockopt(struct sock *, int, char __user *, int); extern int ip_mroute_getsockopt(struct sock *, int, char __user *, int __user *); -extern int ipmr_ioctl(struct sock *sk, int cmd, unsigned long arg); +extern int ipmr_ioctl(struct sock *sk, int cmd, void __user *arg); extern void ip_mr_init(void); diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c index 64ccce5256455..a25e560770728 100644 --- a/net/ipv4/ipmr.c +++ b/net/ipv4/ipmr.c @@ -1008,7 +1008,7 @@ int ip_mroute_getsockopt(struct sock *sk,int optname,char __user *optval,int __u * The IP multicast ioctl support routines. */ -int ipmr_ioctl(struct sock *sk, int cmd, unsigned long arg) +int ipmr_ioctl(struct sock *sk, int cmd, void __user *arg) { struct sioc_sg_req sr; struct sioc_vif_req vr; @@ -1018,7 +1018,7 @@ int ipmr_ioctl(struct sock *sk, int cmd, unsigned long arg) switch(cmd) { case SIOCGETVIFCNT: - if (copy_from_user(&vr,(void *)arg,sizeof(vr))) + if (copy_from_user(&vr,arg,sizeof(vr))) return -EFAULT; if(vr.vifi>=maxvif) return -EINVAL; @@ -1031,14 +1031,14 @@ int ipmr_ioctl(struct sock *sk, int cmd, unsigned long arg) vr.obytes=vif->bytes_out; read_unlock(&mrt_lock); - if (copy_to_user((void *)arg,&vr,sizeof(vr))) + if (copy_to_user(arg,&vr,sizeof(vr))) return -EFAULT; return 0; } read_unlock(&mrt_lock); return -EADDRNOTAVAIL; case SIOCGETSGCNT: - if (copy_from_user(&sr,(void *)arg,sizeof(sr))) + if (copy_from_user(&sr,arg,sizeof(sr))) return -EFAULT; read_lock(&mrt_lock); @@ -1049,7 +1049,7 @@ int ipmr_ioctl(struct sock *sk, int cmd, unsigned long arg) sr.wrong_if = c->mfc_un.res.wrong_if; read_unlock(&mrt_lock); - if (copy_to_user((void *)arg,&sr,sizeof(sr))) + if (copy_to_user(arg,&sr,sizeof(sr))) return -EFAULT; return 0; } diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c index 8bae6ee8a6963..b941c00ddd862 100644 --- a/net/ipv4/raw.c +++ b/net/ipv4/raw.c @@ -647,7 +647,7 @@ static int raw_ioctl(struct sock *sk, int cmd, unsigned long arg) default: #ifdef CONFIG_IP_MROUTE - return ipmr_ioctl(sk, cmd, arg); + return ipmr_ioctl(sk, cmd, (void __user *)arg); #else return -ENOIOCTLCMD; #endif -- 2.53.0