[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191011091652.GH2901@nanopsycho>
Date: Fri, 11 Oct 2019 11:16:52 +0200
From: Jiri Pirko <jiri@...nulli.us>
To: Michal Kubecek <mkubecek@...e.cz>
Cc: "David S. Miller" <davem@...emloft.net>,
Jiri Pirko <jiri@...lanox.com>,
Johannes Berg <johannes@...solutions.net>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next v3] genetlink: do not parse attributes for
families with zero maxattr
Fri, Oct 11, 2019 at 09:40:09AM CEST, mkubecek@...e.cz wrote:
>Commit c10e6cf85e7d ("net: genetlink: push attrbuf allocation and parsing
>to a separate function") moved attribute buffer allocation and attribute
>parsing from genl_family_rcv_msg_doit() into a separate function
>genl_family_rcv_msg_attrs_parse() which, unlike the previous code, calls
>__nlmsg_parse() even if family->maxattr is 0 (i.e. the family does its own
>parsing). The parser error is ignored and does not propagate out of
>genl_family_rcv_msg_attrs_parse() but an error message ("Unknown attribute
>type") is set in extack and if further processing generates no error or
>warning, it stays there and is interpreted as a warning by userspace.
>
>Dumpit requests are not affected as genl_family_rcv_msg_dumpit() bypasses
>the call of genl_family_rcv_msg_attrs_parse() if family->maxattr is zero.
>Move this logic inside genl_family_rcv_msg_attrs_parse() so that we don't
>have to handle it in each caller.
>
>v3: put the check inside genl_family_rcv_msg_attrs_parse()
>v2: adjust also argument of genl_family_rcv_msg_attrs_free()
>
>Fixes: c10e6cf85e7d ("net: genetlink: push attrbuf allocation and parsing to a separate function")
>Signed-off-by: Michal Kubecek <mkubecek@...e.cz>
Acked-by: Jiri Pirko <jiri@...lanox.com>
Thanks!
Powered by blists - more mailing lists