* MOSPF/PIM router set up we can clean this up.
*/
-int ip_mroute_setsockopt(struct sock *sk,int optname,char *optval,int optlen)
+int ip_mroute_setsockopt(struct sock *sk,int optname,char __user *optval,int optlen)
{
int ret;
struct vifctl vif;
case MRT_ASSERT:
{
int v;
- if(get_user(v,(int *)optval))
+ if(get_user(v,(int __user *)optval))
return -EFAULT;
mroute_do_assert=(v)?1:0;
return 0;
case MRT_PIM:
{
int v, ret;
- if(get_user(v,(int *)optval))
+ if(get_user(v,(int __user *)optval))
return -EFAULT;
v = (v)?1:0;
rtnl_lock();
* Getsock opt support for the multicast routing system.
*/
-int ip_mroute_getsockopt(struct sock *sk,int optname,char *optval,int *optlen)
+int ip_mroute_getsockopt(struct sock *sk,int optname,char __user *optval,int __user *optlen)
{
int olr;
int val;
* 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;
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;
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);
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;
}
{
struct ip_options * opt = &(IPCB(skb)->opt);
- IP_INC_STATS_BH(IpForwDatagrams);
+ IP_INC_STATS_BH(OutForwDatagrams);
if (unlikely(opt->optlen))
ip_forward_options(skb);
to blackhole.
*/
- IP_INC_STATS_BH(IpFragFails);
+ IP_INC_STATS_BH(FragFails);
ip_rt_put(rt);
goto out_free;
}