diff options
Diffstat (limited to 'net/ipv6/udp.c')
-rw-r--r-- | net/ipv6/udp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 2da1896af934..f421c9f23c5b 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c | |||
@@ -653,12 +653,12 @@ int udpv6_queue_rcv_skb(struct sock *sk, struct sk_buff *skb) | |||
653 | } | 653 | } |
654 | } | 654 | } |
655 | 655 | ||
656 | if (rcu_access_pointer(sk->sk_filter)) { | 656 | if (rcu_access_pointer(sk->sk_filter) && |
657 | if (udp_lib_checksum_complete(skb)) | 657 | udp_lib_checksum_complete(skb)) |
658 | goto csum_error; | 658 | goto csum_error; |
659 | if (sk_filter(sk, skb)) | 659 | |
660 | goto drop; | 660 | if (sk_filter(sk, skb)) |
661 | } | 661 | goto drop; |
662 | 662 | ||
663 | udp_csum_pull_header(skb); | 663 | udp_csum_pull_header(skb); |
664 | if (sk_rcvqueues_full(sk, sk->sk_rcvbuf)) { | 664 | if (sk_rcvqueues_full(sk, sk->sk_rcvbuf)) { |