]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
tipc: fix a missing check of genlmsg_put
authorKangjie Lu <kjlu@umn.edu>
Wed, 26 Dec 2018 06:09:04 +0000 (00:09 -0600)
committerMarcelo Henrique Cerri <marcelo.cerri@canonical.com>
Fri, 17 Jan 2020 17:21:37 +0000 (14:21 -0300)
BugLink: https://bugs.launchpad.net/bugs/1855787
[ Upstream commit 46273cf7e009231d2b6bc10a926e82b8928a9fb2 ]

genlmsg_put could fail. The fix inserts a check of its return value, and
if it fails, returns -EMSGSIZE.

Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
net/tipc/netlink_compat.c

index 7dd6338db4f1efe91f5100397365d1cbaa7f8fc1..111e881ddac8156afdf8e93faa1076783475ff06 100644 (file)
@@ -976,6 +976,8 @@ static int tipc_nl_compat_publ_dump(struct tipc_nl_compat_msg *msg, u32 sock)
 
        hdr = genlmsg_put(args, 0, 0, &tipc_genl_family, NLM_F_MULTI,
                          TIPC_NL_PUBL_GET);
+       if (!hdr)
+               return -EMSGSIZE;
 
        nest = nla_nest_start(args, TIPC_NLA_SOCK);
        if (!nest) {