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?

Reply via email to