From 72c0f5ccc16bed01cd8a0a0629f74f3dc25486ac Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Wed, 5 Feb 2025 10:07:25 +0100 Subject: [PATCH] grlib/grcanfd: Mask frame data length value to prevent overflow --- bsps/shared/grlib/can/grcanfd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bsps/shared/grlib/can/grcanfd.c b/bsps/shared/grlib/can/grcanfd.c index e95df0f853..8325475e1f 100644 --- a/bsps/shared/grlib/can/grcanfd.c +++ b/bsps/shared/grlib/can/grcanfd.c @@ -347,7 +347,7 @@ static int grcan_hw_write_try_fd( return GRCAN_RET_INVARG; break; } - dest->head[1] = (dlc << 28) | + dest->head[1] = ((dlc & 0xf) << 28) | ((source->fdopts & GRCAN_FDMASK) << 25); dp = &dest->data0; for (i = 0; i < ((source->len + 7) / 8); i++) {