diff options
author | Florin Coras <fcoras@cisco.com> | 2018-12-06 18:24:19 -0800 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2018-12-07 15:08:58 +0000 |
commit | ab86f86e7c29393fa1da81b5f86296bd5fcb7420 (patch) | |
tree | d410676822b9b51d226cdafe09c98548dbbedfd8 /src | |
parent | df0847831715ef0f639a6d8e79468cd1e2341cd6 (diff) |
tcp: improve check for invalid sack blocks
Change-Id: Ic6a6202a2d5aca33eee7fc6ff8eeaa1db9b58525
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/vnet/tcp/tcp_input.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/vnet/tcp/tcp_input.c b/src/vnet/tcp/tcp_input.c index 0e915505d37..dff18029155 100644 --- a/src/vnet/tcp/tcp_input.c +++ b/src/vnet/tcp/tcp_input.c @@ -905,7 +905,9 @@ tcp_rcv_sacks (tcp_connection_t * tc, u32 ack) { if (seq_lt (blk->start, blk->end) && seq_gt (blk->start, tc->snd_una) - && seq_gt (blk->start, ack) && seq_leq (blk->end, tc->snd_una_max)) + && seq_gt (blk->start, ack) + && seq_lt (blk->start, tc->snd_una_max) + && seq_leq (blk->end, tc->snd_una_max)) { blk++; continue; |