Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06ebb06d authored by Sasha Levin's avatar Sasha Levin Committed by David S. Miller
Browse files

iovec: make sure the caller actually wants anything in memcpy_fromiovecend



Check for cases when the caller requests 0 bytes instead of running off
and dereferencing potentially invalid iovecs.

Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fcdfe3a7
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -85,6 +85,10 @@ EXPORT_SYMBOL(memcpy_toiovecend);
int memcpy_fromiovecend(unsigned char *kdata, const struct iovec *iov,
			int offset, int len)
{
	/* No data? Done! */
	if (len == 0)
		return 0;

	/* Skip over the finished iovecs */
	while (offset >= iov->iov_len) {
		offset -= iov->iov_len;