can: add missing socket check in can/raw release
v2: added space after 'if' according code style. We can get here with a NULL socket argument passed from userspace, so we need to handle it accordingly. Thanks to Dave Jones pointing at this issue in net/can/bcm.c Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
2430af8b7f
Коммит
10022a6c66
|
@ -305,7 +305,12 @@ static int raw_init(struct sock *sk)
|
||||||
static int raw_release(struct socket *sock)
|
static int raw_release(struct socket *sock)
|
||||||
{
|
{
|
||||||
struct sock *sk = sock->sk;
|
struct sock *sk = sock->sk;
|
||||||
struct raw_sock *ro = raw_sk(sk);
|
struct raw_sock *ro;
|
||||||
|
|
||||||
|
if (!sk)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
ro = raw_sk(sk);
|
||||||
|
|
||||||
unregister_netdevice_notifier(&ro->notifier);
|
unregister_netdevice_notifier(&ro->notifier);
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче