From: Richard Alpe Date: Mon, 16 May 2016 09:14:54 +0000 (+0200) Subject: tipc: check nl sock before parsing nested attributes X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=45e093ae2830cd1264677d47ff9a95a71f5d9f9c;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git tipc: check nl sock before parsing nested attributes Make sure the socket for which the user is listing publication exists before parsing the socket netlink attributes. Prior to this patch a call without any socket caused a NULL pointer dereference in tipc_nl_publ_dump(). Tested-and-reported-by: Baozeng Ding Signed-off-by: Richard Alpe Acked-by: Jon Maloy Signed-off-by: David S. Miller --- diff --git a/net/tipc/socket.c b/net/tipc/socket.c index 12628890c219..3b7a79991d55 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c @@ -2853,6 +2853,9 @@ int tipc_nl_publ_dump(struct sk_buff *skb, struct netlink_callback *cb) if (err) return err; + if (!attrs[TIPC_NLA_SOCK]) + return -EINVAL; + err = nla_parse_nested(sock, TIPC_NLA_SOCK_MAX, attrs[TIPC_NLA_SOCK], tipc_nl_sock_policy);