From mboxrd@z Thu Jan 1 00:00:00 1970 From: Johannes Berg Subject: Re: [RFC 2/5] netlink: set extack error message in nla_validate() Date: Tue, 18 Sep 2018 19:36:57 +0200 Message-ID: <1537292217.610.0.camel@sipsolutions.net> References: <20180918131212.20266-1-johannes@sipsolutions.net> <20180918131212.20266-2-johannes@sipsolutions.net> (sfid-20180918_191810_537033_2D7C6060) Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit To: David Ahern , netdev@vger.kernel.org Return-path: Received: from s3.sipsolutions.net ([144.76.43.62]:42406 "EHLO sipsolutions.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730146AbeIRXKr (ORCPT ); Tue, 18 Sep 2018 19:10:47 -0400 In-Reply-To: (sfid-20180918_191810_537033_2D7C6060) Sender: netdev-owner@vger.kernel.org List-ID: On Tue, 2018-09-18 at 10:18 -0700, David Ahern wrote: > On 9/18/18 6:12 AM, Johannes Berg wrote: > > diff --git a/lib/nlattr.c b/lib/nlattr.c > > index 120ad569e13d..efbd6c1aff29 100644 > > --- a/lib/nlattr.c > > +++ b/lib/nlattr.c > > @@ -181,9 +181,13 @@ int nla_validate(const struct nlattr *head, int len, int maxtype, > > int rem; > > > > nla_for_each_attr(nla, head, len, rem) { > > - int err = validate_nla(nla, maxtype, policy, NULL); > > + static const char _msg[] = "Attribute failed policy validation"; > > + const char *msg = _msg; > > + int err = validate_nla(nla, maxtype, policy, &msg); > > > > if (err < 0) { > > + if (extack) > > + extack->_msg = msg; > > NL_SET_BAD_ATTR(extack, nla); > > return err; > > } > > > > I take it this set is on top of another set - the NLA_REJECT? Yeah, these two: https://patchwork.ozlabs.org/project/netdev/list/?series=65982 johannes