From: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Date: Wed, 12 Sep 2018 10:36:09 +0200 > From: Johannes Berg <johannes.berg@xxxxxxxxx> > > In some situations some netlink attributes may be used for output > only (kernel->userspace) or may be reserved for future use. It's > then helpful to be able to prevent userspace from using them in > messages sent to the kernel, since they'd otherwise be ignored and > any future will become impossible if this happens. > > Add NLA_REJECT to the policy which does nothing but reject (with > EINVAL) validation of any messages containing this attribute. > Allow for returning a specific extended ACK error message in the > validation_data pointer. > > While at it fix the indentation of NLA_BITFIELD32 and describe the > validation_data pointer for it. > > The specific case I have in mind now is a shared nested attribute > containing request/response data, and it would be pointless and > potentially confusing to have userspace include response data in > the messages that actually contain a request. > > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> This looks great, no objections to this idea or the facility. It does, however, remind me about about the classic problem of how bad we are at feature support detection because unrecognized attributes are ignored. I do really hope we can fully solve that problem some day.