aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/syncookies.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2008-07-26 02:21:54 -0700
committerDavid S. Miller <davem@davemloft.net>2008-07-26 02:21:54 -0700
commit16df845f4566bc252f3e09db12f5c2f22cb44226 (patch)
treec83f5b664b669ff26bbf5c9a44b9ccecfa53c506 /net/ipv4/syncookies.c
parentnet: drop unused BUG_TRAP() (diff)
downloadlinux-dev-16df845f4566bc252f3e09db12f5c2f22cb44226.tar.xz
linux-dev-16df845f4566bc252f3e09db12f5c2f22cb44226.zip
syncookies: Make sure ECN is disabled
ecn_ok is not initialized when a connection is established by cookies. The cookie syn-ack never sets ECN, so ecn_ok must be set to 0. Spotted using ns-3/network simulation cradle simulator and valgrind. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/syncookies.c')
-rw-r--r--net/ipv4/syncookies.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/syncookies.c b/net/ipv4/syncookies.c
index 51bc24d3b8a7..9d38005abbac 100644
--- a/net/ipv4/syncookies.c
+++ b/net/ipv4/syncookies.c
@@ -299,6 +299,7 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb,
ireq->rmt_port = th->source;
ireq->loc_addr = ip_hdr(skb)->daddr;
ireq->rmt_addr = ip_hdr(skb)->saddr;
+ ireq->ecn_ok = 0;
ireq->snd_wscale = tcp_opt.snd_wscale;
ireq->rcv_wscale = tcp_opt.rcv_wscale;
ireq->sack_ok = tcp_opt.sack_ok;