Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f199a80c authored by Vincent Pelletier's avatar Vincent Pelletier Committed by Felipe Balbi
Browse files

usb: gadger: f_fs: Do not copy past descriptor end.



Endpoint descriptors come in 2 sizes, struct usb_endpoint_descriptor being
the largest. Use bLength to stop on endpoint descriptor boundary, and not
2 bytes too far.

Signed-off-by: default avatarVincent Pelletier <plr.vincent@gmail.com>
Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
parent a98feef7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1230,7 +1230,7 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code,
			desc = epfile->ep->descs[desc_idx];

			spin_unlock_irq(&epfile->ffs->eps_lock);
			ret = copy_to_user((void *)value, desc, sizeof(*desc));
			ret = copy_to_user((void *)value, desc, desc->bLength);
			if (ret)
				ret = -EFAULT;
			return ret;