On Fri, Apr 5, 2024 at 7:38 PM Luiz Augusto von Dentz <luiz.dentz@xxxxxxxxx> wrote: > > Hi Eric, > > On Fri, Apr 5, 2024 at 12:30 PM Eric Dumazet <edumazet@xxxxxxxxxx> wrote: > > > > On Fri, Apr 5, 2024 at 6:24 PM Luiz Augusto von Dentz > > <luiz.dentz@xxxxxxxxx> wrote: > > > > > ave used this so far (without risking a kernel bug) > > > > > > Fair enough, if we don't really have any risk of breaking the API > > > (would result in using uninitialized memory) then I propose we do > > > something like this: > > > > > > https://gist.github.com/Vudentz/c9092e8a3cb1e7e6a8fd384a51300eee > > > > > > That said perhaps copy_from_sockptr shall really take into account > > > both source and destination lengths so it could incorporate the check > > > e.g. if (dst_size > src_size) but that might result in changing every > > > user of copy_from_sockptr thus I left it to be specific to bluetooth. > > > > Make sure to return -EINVAL if the user provided length is too small, > > not -EFAULT. > > Sure, there was also a use of -EOVERFLOW and the fact we are using the > return of copy_from_sockptr so if it fails we just return -EFAULT > anyway, so if we do start returning the error from the like > bt_copy_from_sockptr then we better figure out the errors it returns > are proper. > > Btw, do you want me to spin a new version containing these changes or > you would like to incorporate them into your patch and spin a v2? Please go ahead and submit your own patch(es), thanks !