aboutsummaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorTuomas Taipale <tuomas.taipale@nokia.com>2023-03-03 14:11:54 +0000
committerPetri Savolainen <petri.savolainen@nokia.com>2023-05-04 13:26:59 +0300
commitd74449b80c912851aae669476fe682e8f46cd213 (patch)
tree174f0f8089cd95a971d2be2673305036355c9621 /platform
parentb8152d6ea65d347097b9836f721ddec7bae3016e (diff)
linux-gen: socket_xdp: check input/output queue index validity
Assert that input/output queue index should always be within the configured input/output queue count range when receiving or sending. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
Diffstat (limited to 'platform')
-rw-r--r--platform/linux-generic/pktio/socket_xdp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/platform/linux-generic/pktio/socket_xdp.c b/platform/linux-generic/pktio/socket_xdp.c
index 806fde977..93b6c03d3 100644
--- a/platform/linux-generic/pktio/socket_xdp.c
+++ b/platform/linux-generic/pktio/socket_xdp.c
@@ -836,6 +836,7 @@ static int sock_xdp_recv(pktio_entry_t *pktio_entry, int index, odp_packet_t pac
uint32_t start_idx = 0U, recvd, procd;
priv = pkt_priv(pktio_entry);
+ _ODP_ASSERT((uint32_t)index < priv->q_num_conf.num_in_conf_qs);
sock = &priv->qs[index];
if (!priv->lockless_rx)
@@ -947,6 +948,7 @@ static int sock_xdp_send(pktio_entry_t *pktio_entry, int index, const odp_packet
return 0;
priv = pkt_priv(pktio_entry);
+ _ODP_ASSERT((uint32_t)index < priv->q_num_conf.num_out_conf_qs);
sock = &priv->qs[index];
if (!priv->lockless_tx)