Correctly calculate snd_max in persist case.

In the persist case, take the SYN and FIN flags into account when updating
the sequence space sent.

Reviewed by:	gnn
MFC after:	2 weeks
Sponsored by:	Juniper Networks, Netflix
Differential Revision:	https://reviews.freebsd.org/D7075
Tested by:	Limelight, Netflix
This commit is contained in:
Jonathan T. Looney 2016-10-06 16:00:48 +00:00
parent 55a429a6dc
commit 15c825712e

View File

@ -1519,7 +1519,7 @@ tcp_output(struct tcpcb *tp)
tp->t_flags |= TF_SENTFIN; tp->t_flags |= TF_SENTFIN;
} }
if (SEQ_GT(tp->snd_nxt + xlen, tp->snd_max)) if (SEQ_GT(tp->snd_nxt + xlen, tp->snd_max))
tp->snd_max = tp->snd_nxt + len; tp->snd_max = tp->snd_nxt + xlen;
} }
if (error) { if (error) {