]> git.baikalelectronics.ru Git - kernel.git/commit
net/llc: avoid BUG_ON() in skb_orphan()
authorEric Dumazet <edumazet@google.com>
Sun, 12 Feb 2017 22:03:52 +0000 (14:03 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 13 Feb 2017 03:14:49 +0000 (22:14 -0500)
commitfd0b0ea9e3e5cec532ee66d01a651f24326f8e82
treeedfcfac1f41af2d3c3397eea8a66ae9b53f29ab3
parent1d26b42bb58e8cce74521a0f4bc82dd0948e1587
net/llc: avoid BUG_ON() in skb_orphan()

It seems nobody used LLC since linux-3.12.

Fortunately fuzzers like syzkaller still know how to run this code,
otherwise it would be no fun.

Setting skb->sk without skb->destructor leads to all kinds of
bugs, we now prefer to be very strict about it.

Ideally here we would use skb_set_owner() but this helper does not exist yet,
only CAN seems to have a private helper for that.

Fixes: a782fe151d4f ("net: add a temporary sanity check in skb_orphan()")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/llc/llc_conn.c
net/llc/llc_sap.c