diff options
| author | Kavin Gunasekara <[email protected]> | 2026-03-09 16:55:05 +0000 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-03-25 14:32:38 -0600 |
| commit | e0eef12a1f46bf946e24050a1da0f067c3952b89 (patch) | |
| tree | 06158989b76e8f8462dfba4bfcb7861396839769 | |
| parent | 8019e3b35df5e780a722fbcb1bf6b2f63eaccc9f (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.c | 2 |
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; |
