summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKavin Gunasekara <[email protected]>2026-03-09 16:55:05 +0000
committerTom Rini <[email protected]>2026-03-25 14:32:38 -0600
commite0eef12a1f46bf946e24050a1da0f067c3952b89 (patch)
tree06158989b76e8f8462dfba4bfcb7861396839769
parent8019e3b35df5e780a722fbcb1bf6b2f63eaccc9f (diff)
virtio: rng: Handle oversized return buffers
If extra random bytes are returned, truncate and use the requested number instead of returning an error. Signed-off-by: Kavin Gunasekara <[email protected]> Signed-off-by: Meet Patel <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
-rw-r--r--drivers/virtio/virtio_rng.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/virtio/virtio_rng.c b/drivers/virtio/virtio_rng.c
index 90a371a59cc..c6de62142bb 100644
--- a/drivers/virtio/virtio_rng.c
+++ b/drivers/virtio/virtio_rng.c
@@ -46,7 +46,7 @@ static int virtio_rng_read(struct udevice *dev, void *data, size_t len)
;
if (rsize > sg.length)
- return -EIO;
+ rsize = sg.length;
memcpy(ptr, buf, rsize);
len -= rsize;