diff --git a/sys/netinet/tcp_sack.c b/sys/netinet/tcp_sack.c index c288da84b2e1..efe3bb6c469e 100644 --- a/sys/netinet/tcp_sack.c +++ b/sys/netinet/tcp_sack.c @@ -463,6 +463,8 @@ tcp_sack_option(struct tcpcb *tp, struct tcphdr *th, u_char *cp, int optlen) tp->snd_numholes++; tcp_sack_globalholes++; } + if (SEQ_LT(tp->rcv_lastsack, sack.end)) + tp->rcv_lastsack = sack.end; } return (0); }