missing copy_*_user checks in sbni wan driver
PATCH 1/1 missing copy_*_user checks in sbni wan driver
drivers/net/wan/sbni.c +7 -4
@@ -1287,8 +1287,9 @@ sbni_ioctl( struct net_device *dev, st error =verify_area (VERIFY_WRITE , ifr->ifr_data,sizeof (struct sbni_in_stats ) );if ( !error ) -copy_to_user ( ifr->ifr_data, &nl->in_stats, -sizeof (struct sbni_in_stats ) ); +if (copy_to_user ( ifr->ifr_data, &nl->in_stats, +sizeof (struct sbni_in_stats ) )) +return -EFAULT ;break ;case SIOCDEVRESINSTATS :
@@ -1307,7 +1308,8 @@ sbni_ioctl( struct net_device *dev, st error =verify_area (VERIFY_WRITE , ifr->ifr_data,sizeof flags );if ( !error ) -copy_to_user ( ifr->ifr_data, &flags,sizeof flags ); +if (copy_to_user ( ifr->ifr_data, &flags,sizeof flags )) +return -EFAULT ;break ;case SIOCDEVSHWSTATE :
@@ -1339,7 +1341,8 @@ sbni_ioctl( struct net_device *dev, st sizeof slave_name )) != 0 )return error; -copy_from_user ( slave_name, ifr->ifr_data,sizeof slave_name ); +if (copy_from_user ( slave_name, ifr->ifr_data,sizeof slave_name )) +return -EFAULT ; slave_dev =dev_get_by_name ( slave_name );if ( !slave_dev || !(slave_dev->flags &IFF_UP ) ) { printk( KERN_ERR "%s: trying to enslave non-active "