diff options
Diffstat (limited to 'kernel/include/linux/sock_diag.h')
-rw-r--r-- | kernel/include/linux/sock_diag.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/include/linux/sock_diag.h b/kernel/include/linux/sock_diag.h index fddebc617..8ff34ed1a 100644 --- a/kernel/include/linux/sock_diag.h +++ b/kernel/include/linux/sock_diag.h @@ -35,6 +35,9 @@ enum sknetlink_groups sock_diag_destroy_group(const struct sock *sk) { switch (sk->sk_family) { case AF_INET: + if (sk->sk_type == SOCK_RAW) + return SKNLGRP_NONE; + switch (sk->sk_protocol) { case IPPROTO_TCP: return SKNLGRP_INET_TCP_DESTROY; @@ -44,6 +47,9 @@ enum sknetlink_groups sock_diag_destroy_group(const struct sock *sk) return SKNLGRP_NONE; } case AF_INET6: + if (sk->sk_type == SOCK_RAW) + return SKNLGRP_NONE; + switch (sk->sk_protocol) { case IPPROTO_TCP: return SKNLGRP_INET6_TCP_DESTROY; |