Subject: Re: [PATCH] net: ipv6: Truncate single route when it doesn't fit into dump buffer.

From: Johannes Berg <[email-masked]>
Date: Sun, 14 May 2017 23:00:37 +0200

On Sat, 2017-05-13 at 19:29 +0200, Jan Moskyto Matejka wrote:
> 
> > When adding a route to the skb, track whether it contains at least
> > 1
> > route. If not, it means the next route in the dump is larger than
> > the
> > given buffer. Detect this condition and error out of the dump -
> > returning an error to the user (-ENOSPC? or EMSGSIZE?)
> 
> EMSGSIZE seems OK for me.

If we return an error here, and consequently allow for userspace
changes to pick this up, perhaps we could also consider allowing to
split the dump between nexthops, so that arbitrary such things can be
returned.

We did a similar thing in nl80211 at some point - originally, a dump of
wireless devices present was doing a whole device per message, we later
allowed splitting a single device across multiple messages because
capability information was reaching a reasonable message size limit.

johannes