Skip to contentSkip to conversation

VLAN: Add two missing checks to vlan_ioctl_handler()

PATCH In review Mika Kukkonen 2 participants 2 messages Dec 21, 2005 – Dec 22, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 VLAN: Add two missing checks to vlan_ioctl_handler()

In vlan_ioctl_handler() the code misses couple checks for error return values.

---

 net/8021q/vlan.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)
net/8021q/vlan.c +5 -1
index 91e412b..67465b6 100644
@@ -753,6 +753,8 @@ static int vlan_ioctl_handler(void __use
 		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 __use
 
 	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 __use
 			__FUNCTION__, args.cmd);
 		return -EINVAL;
 	};
-
+out:
 	return err;
 }