vcl: validate fs before cleanup 82/31982/2
authorFlorin Coras <fcoras@cisco.com>
Thu, 15 Apr 2021 00:55:02 +0000 (17:55 -0700)
committerDave Barach <openvpp@barachs.net>
Thu, 15 Apr 2021 16:38:02 +0000 (16:38 +0000)
Type: fix

Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: I1d3677923ab28325380c4a9e8469da83077262a9

src/vcl/vcl_private.c

index eb01d1c..ba54c91 100644 (file)
@@ -459,8 +459,11 @@ vcl_session_detach_fifos (vcl_session_t *s)
   fifo_segment_free_client_fifo (fs, s->tx_fifo);
   if (s->ct_rx_fifo)
     {
-      fs = fifo_segment_get_segment (&vcm->segment_main,
-                                    s->ct_rx_fifo->segment_index);
+      fs = fifo_segment_get_segment_if_valid (&vcm->segment_main,
+                                             s->ct_rx_fifo->segment_index);
+      if (!fs)
+       goto done;
+
       fifo_segment_free_client_fifo (fs, s->ct_rx_fifo);
       fifo_segment_free_client_fifo (fs, s->ct_tx_fifo);
     }