diff options
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 5 | 
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index f99b81d53cc..09078b9bc6f 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -475,7 +475,7 @@ static int tcp_v6_send_synack(struct sock *sk, struct dst_entry *dst,  	if (!dst && (dst = inet6_csk_route_req(sk, fl6, req)) == NULL)  		goto done; -	skb = tcp_make_synack(sk, dst, req, rvp); +	skb = tcp_make_synack(sk, dst, req, rvp, NULL);  	if (skb) {  		__tcp_v6_send_check(skb, &treq->loc_addr, &treq->rmt_addr); @@ -987,7 +987,7 @@ static struct sock *tcp_v6_hnd_req(struct sock *sk,struct sk_buff *skb)  				   &ipv6_hdr(skb)->saddr,  				   &ipv6_hdr(skb)->daddr, inet6_iif(skb));  	if (req) -		return tcp_check_req(sk, skb, req, prev); +		return tcp_check_req(sk, skb, req, prev, false);  	nsk = __inet6_lookup_established(sock_net(sk), &tcp_hashinfo,  			&ipv6_hdr(skb)->saddr, th->source, @@ -1179,6 +1179,7 @@ have_isn:  	    want_cookie)  		goto drop_and_free; +	tcp_rsk(req)->listener = NULL;  	inet6_csk_reqsk_queue_hash_add(sk, req, TCP_TIMEOUT_INIT);  	return 0;  |