Acked. Thanks Jiri.

///jon


> -----Original Message-----
> From: Jiri Pirko <j...@resnulli.us>
> Sent: 8-Oct-19 07:02
> To: netdev@vger.kernel.org
> Cc: da...@davemloft.net; Jon Maloy <jon.ma...@ericsson.com>;
> ying....@windriver.com; johannes.b...@intel.com; mkube...@suse.cz;
> ml...@mellanox.com
> Subject: [patch net-next] net: tipc: prepare attrs in
> __tipc_nl_compat_dumpit()
> 
> From: Jiri Pirko <j...@mellanox.com>
> 
> __tipc_nl_compat_dumpit() calls tipc_nl_publ_dump() which expects the
> attrs to be available by genl_dumpit_info(cb)->attrs. Add info struct and attr
> parsing in compat dumpit function.
> 
> Reported-by: syzbot+8d37c50ffb0f52941...@syzkaller.appspotmail.com
> Fixes: 057af7071344 ("net: tipc: have genetlink code to parse the attrs during
> dumpit")
> 
> Signed-off-by: Jiri Pirko <j...@mellanox.com>
> ---
>  net/tipc/netlink_compat.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/net/tipc/netlink_compat.c b/net/tipc/netlink_compat.c index
> 4950b754dacd..17a529739f8d 100644
> --- a/net/tipc/netlink_compat.c
> +++ b/net/tipc/netlink_compat.c
> @@ -181,6 +181,7 @@ static int __tipc_nl_compat_dumpit(struct
> tipc_nl_compat_cmd_dump *cmd,
>                                  struct tipc_nl_compat_msg *msg,
>                                  struct sk_buff *arg)
>  {
> +     struct genl_dumpit_info info;
>       int len = 0;
>       int err;
>       struct sk_buff *buf;
> @@ -191,6 +192,7 @@ static int __tipc_nl_compat_dumpit(struct
> tipc_nl_compat_cmd_dump *cmd,
>       memset(&cb, 0, sizeof(cb));
>       cb.nlh = (struct nlmsghdr *)arg->data;
>       cb.skb = arg;
> +     cb.data = &info;
> 
>       buf = nlmsg_new(NLMSG_GOODSIZE, GFP_KERNEL);
>       if (!buf)
> @@ -209,6 +211,13 @@ static int __tipc_nl_compat_dumpit(struct
> tipc_nl_compat_cmd_dump *cmd,
>               goto err_out;
>       }
> 
> +     info.attrs = attrbuf;
> +     err = nlmsg_parse_deprecated(cb.nlh, GENL_HDRLEN, attrbuf,
> +                                  tipc_genl_family.maxattr,
> +                                  tipc_genl_family.policy, NULL);
> +     if (err)
> +             goto err_out;
> +
>       do {
>               int rem;
> 
> --
> 2.21.0

Reply via email to