tcp: rx fifo size is u32 91/23191/2
authorDave Wallace <dwallacelf@gmail.com>
Wed, 30 Oct 2019 17:25:24 +0000 (17:25 +0000)
committerAndrew Yourtchenko <ayourtch@gmail.com>
Tue, 5 Nov 2019 10:37:25 +0000 (10:37 +0000)
- Limit cli input for rx fifo size to u32

Type: fix

Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: If5a8e0668acf5b0f369acf4f120e47a012bd1899
(cherry picked from commit db39656d7a85ac6e9e6fbed9ea59b3089acc8cae)

src/vnet/tcp/tcp.c

index 86e5d94..1d030c9 100644 (file)
@@ -1758,10 +1758,26 @@ tcp_config_fn (vlib_main_t * vm, unformat_input_t * input)
        ;
       else if (unformat (input, "max-rx-fifo %U", unformat_memory_size,
                         &memory_size))
-       tcp_cfg.max_rx_fifo = memory_size;
+       {
+         if (memory_size >= 0x100000000)
+           {
+             return clib_error_return
+               (0, "max-rx-fifo %llu (0x%llx) too large", memory_size,
+                memory_size);
+           }
+         tcp_cfg.max_rx_fifo = memory_size;
+       }
       else if (unformat (input, "min-rx-fifo %U", unformat_memory_size,
                         &memory_size))
-       tcp_cfg.min_rx_fifo = memory_size;
+       {
+         if (memory_size >= 0x100000000)
+           {
+             return clib_error_return
+               (0, "min-rx-fifo %llu (0x%llx) too large", memory_size,
+                memory_size);
+           }
+         tcp_cfg.min_rx_fifo = memory_size;
+       }
       else if (unformat (input, "mtu %u", &tcp_cfg.default_mtu))
        ;
       else if (unformat (input, "rwnd-min-update-ack %d",