[VLAN]: Add two missing checks to vlan_ioctl_handler()
In vlan_ioctl_handler() the code misses couple checks for error return values. Signed-off-by: Mika Kukkonen <mikukkon@iki.fi> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0d77d59f62
commit
7eb1b3d372
|
@ -753,6 +753,8 @@ static int vlan_ioctl_handler(void __user *arg)
|
|||
break;
|
||||
case GET_VLAN_REALDEV_NAME_CMD:
|
||||
err = vlan_dev_get_realdev_name(args.device1, args.u.device2);
|
||||
if (err)
|
||||
goto out;
|
||||
if (copy_to_user(arg, &args,
|
||||
sizeof(struct vlan_ioctl_args))) {
|
||||
err = -EFAULT;
|
||||
|
@ -761,6 +763,8 @@ static int vlan_ioctl_handler(void __user *arg)
|
|||
|
||||
case GET_VLAN_VID_CMD:
|
||||
err = vlan_dev_get_vid(args.device1, &vid);
|
||||
if (err)
|
||||
goto out;
|
||||
args.u.VID = vid;
|
||||
if (copy_to_user(arg, &args,
|
||||
sizeof(struct vlan_ioctl_args))) {
|
||||
|
@ -774,7 +778,7 @@ static int vlan_ioctl_handler(void __user *arg)
|
|||
__FUNCTION__, args.cmd);
|
||||
return -EINVAL;
|
||||
};
|
||||
|
||||
out:
|
||||
return err;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue