ipv6: Need to sock_put on csum error

Commit 4068579e1e ("net: Implmement
RFC 6936 (zero RX csums for UDP/IPv6)") introduced zero checksums
being allowed for IPv6, but in the case that a socket disallows a
zero checksum on RX we need to sock_put.

Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Tom Herbert 2014-05-05 16:43:58 -07:00 committed by David S. Miller
parent 5a50a92784
commit 79e0f1c9f2

View File

@ -884,6 +884,7 @@ int __udp6_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
int ret;
if (!uh->check && !sk->sk_no_check) {
sock_put(sk);
udp6_csum_zero_error(skb);
goto csum_error;
}