37 lines
1.1 KiB
Diff
37 lines
1.1 KiB
Diff
From: Richard Alpe <richard.alpe@ericsson.com>
|
|
Date: Mon, 16 May 2016 11:14:54 +0200
|
|
Subject: tipc: check nl sock before parsing nested attributes
|
|
Origin: https://git.kernel.org/linus/45e093ae2830cd1264677d47ff9a95a71f5d9f9c
|
|
|
|
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 <sploving1@gmail.com>
|
|
Signed-off-by: Richard Alpe <richard.alpe@ericsson.com>
|
|
Acked-by: Jon Maloy <jon.maloy@ericsson.cm>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
---
|
|
net/tipc/socket.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/net/tipc/socket.c b/net/tipc/socket.c
|
|
index 1262889..3b7a799 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);
|
|
--
|
|
2.8.1
|
|
|