Thread (3 messages) flat view 3 messages, 3 authors, 2016-01-18

Re: net: GPF in __netlink_ns_capable

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2016-01-18 09:21:26
Also in: lkml

On Sat, Jan 16, 2016 at 01:08:33AM +0100, Richard Weinberger wrote:
On Fri, Jan 15, 2016 at 11:31 PM, Dmitry Vyukov [off-list ref] wrote:
quoted
Call Trace:
 [<     inline     >] netlink_ns_capable net/netlink/af_netlink.c:1417
 [<ffffffff8529c0a5>] netlink_capable+0x25/0x30 net/netlink/af_netlink.c:1432
Hmm, we're crashing because NETLINK_CB(skb).sk is NULL.
netlink_dump() creates a new skb without a netlink control block,
but infiniband's dump functions use netlink_capable() which needs a valid
NETLINK_CB(skb).sk.

What about something like that?
No you can't do it here as netlink_unicast also calls this and for
that case you'd be overwriting the original sending user-space
socket with the kernel socket.

I'm adding Eric Bierderman as he wrote some of the code in question.

Cheers,
-- 
Email: Herbert Xu [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help