Re: [PATCH] USB: add usbfs ioctl to get specific superspeedplus rates

From: Oliver Neukum
Date: Wed Jul 26 2023 - 04:43:25 EST


On 25.07.23 18:11, Dingyan Li wrote:
In proc_conninfo_ex(), the number of returned bytes is determined by
the smaller number between sizeof(struct usbdevfs_conninfo_ex) and a
user specified size. So if we only append new members to the end of
struct usbdevfs_conninfo_ex, it won't impact the bytes in the beginning.

You have just caused memory corruption in user space by overwriting what
was right behind the buffer of the agreed upon size. Or, not much better,
caused a segmentation fault.

Regards
Oliver