lkml.org 
[lkml]   [2017]   [Oct]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] virt: Add vboxguest driver for Virtual Box Guest integration
On Wed, Oct 04, 2017 at 12:23:41PM +0200, Arnd Bergmann wrote:
> On Wed, Oct 4, 2017 at 12:11 PM, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > On Wed, Oct 04, 2017 at 11:32:23AM +0200, Hans de Goede wrote:
> >> Hi,
> >>
> >> On 03-10-17 13:41, Hans de Goede wrote:
> >>
> >> <snip>
> >>
> >> > > > +#define CHECK_IOCTL_IN(req) \
> >> > > > +do { \
> >> > > > + if ((req)->Hdr.cbIn != (sizeof((req)->Hdr) + sizeof((req)->u.In)) || \
> >> > > > + (req)->Hdr.cbOut != sizeof((req)->Hdr)) \
> >> > > > + return -EINVAL; \
> >> > > > +} while (0)
> >> > >
> >> > > Make these things functions instead of macros.
> >> >
> >> > Turning these into functions is a good idea I will do so for v2.
> >>
> >> Correction, I forgot that the passed in "req" macro
> >> argument has a different type with all the calls, so
> >> these cannot be changed into functions because they
> >> rely on sizeof on the specific type to do the size
> >> checks.
> >
> > Don't we already have built-in checks for these types of things? Surely
> > we don't require each ioctl user in the kernel to do this by
> > themselves...
>
> No other driver uses this kind of header for the ioctl structures,
> usually we just rely on the ioctl command number to encode the
> size, or we copy a fixed length.

Then why can't we do the same thing here as well?

\
 
 \ /
  Last update: 2017-10-04 12:31    [W:0.063 / U:0.944 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site