Subject: Re: [PATCH net 0/4] various compat ioctl fixes

From: Al Viro <[email-masked]>
Date: Wed, 30 Jan 2019 15:40:09 +0000

On Mon, Jan 28, 2019 at 10:32:30PM +0100, Johannes Berg wrote:

> At the same time, fixing all this _completely_ is not very realistic, it
> would require passing the ifreq size through to lots of places and
> making the user copy there take the size rather than sizeof(ifreq),
> obviously the very least to the method decnet uses, i.e. sock->ioctl() I
> think, but clearly that affects every other protocol too.
> This was what my previous patch had done partially for the directly
> handled ioctls (the revert of which is the first patch in this series).
> 
> > From what I can see this looks like probably the simplest way to
> > fix this in net and -stable currently.
> 
> I tend to agree, at least to fix the regression.
> 
> We can still deliberate separately if we want to fix decnet for compat
> or if nobody cares now. But perhaps better decnet broken (quite
> obviously and detectably) like it basically always was, than IP broken
> (subtly, if your struct ends up landing at the end of a page).
> 
> Al, care to speak up about this here?

Umm...  Short-term I don't see anything better; long-term I would really
like to see compat_alloc_user_space()/copy_in_user() crap gone and
copyin-copyout for anything more or less generic lifted up as far as
cleanly possible, but let's not mix it with regression fixing.

So for the lack of better short-term solutions,
Acked-by: Al Viro <[email-masked]>
on the series.