summaryrefslogtreecommitdiffstats
path: root/sys/netinet/tcp_input.c
diff options
context:
space:
mode:
authormohans <mohans@FreeBSD.org>2006-08-11 21:15:23 +0000
committermohans <mohans@FreeBSD.org>2006-08-11 21:15:23 +0000
commit707c86ce464655cc21368747d6d2380c3a45d907 (patch)
tree79bc8d154909be166e8a4c6f574e46e753772107 /sys/netinet/tcp_input.c
parentce9f8963fd6c7fcb782d8b9eebf51fb108d847f8 (diff)
downloadFreeBSD-src-707c86ce464655cc21368747d6d2380c3a45d907.zip
FreeBSD-src-707c86ce464655cc21368747d6d2380c3a45d907.tar.gz
Fixes an edge case bug in timewait handling where ticks rolling over causing
the timewait expiry to be exactly 0 corrupts the timewait queues (and that entry). Reviewed by: silby
Diffstat (limited to 'sys/netinet/tcp_input.c')
-rw-r--r--sys/netinet/tcp_input.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index ddea86f..86f9325 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -3251,7 +3251,7 @@ tcp_timewait(inp, to, th, m, tlen)
if (thflags & TH_FIN) {
seq = th->th_seq + tlen + (thflags & TH_SYN ? 1 : 0);
if (seq + 1 == tw->rcv_nxt)
- tcp_timer_2msl_reset(tw, 2 * tcp_msl);
+ tcp_timer_2msl_reset(tw, 2 * tcp_msl, 1);
}
/*
OpenPOWER on IntegriCloud