summaryrefslogtreecommitdiffstats
path: root/src/vnet/tcp
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2019-07-24 10:27:20 -0700
committerAndrew Yourtchenko <ayourtch@gmail.com>2019-09-29 16:21:06 +0000
commitfbe948c8131caec64168029ff54802668e423b33 (patch)
tree41491a99d948acddd25386bc7e962f3106f0939e /src/vnet/tcp
parentea584d137d491789abdc4af20f5b6ad92bd21bf1 (diff)
tcp: force zero window on full rx fifo
Type: feature Change-Id: I7c5684a9f88e56fd62d83a59c14c4e4a6f096b89 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 182d2198332c2a20891a7cdbceeaaf62b47924e8)
Diffstat (limited to 'src/vnet/tcp')
-rw-r--r--src/vnet/tcp/tcp_output.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vnet/tcp/tcp_output.c b/src/vnet/tcp/tcp_output.c
index d15d710eafe..9122973fc8e 100644
--- a/src/vnet/tcp/tcp_output.c
+++ b/src/vnet/tcp/tcp_output.c
@@ -122,7 +122,10 @@ tcp_update_rcv_wnd (tcp_connection_t * tc)
*/
available_space = transport_max_rx_enqueue (&tc->connection);
if (PREDICT_FALSE (available_space < tc->rcv_opts.mss))
- available_space = 0;
+ {
+ tc->rcv_wnd = 0;
+ return;
+ }
/*
* Use the above and what we know about what we've previously advertised