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

Commit a4696f4b authored by Dan Carpenter's avatar Dan Carpenter Committed by Deva Ramasubramanian
Browse files

[media] media: info leak in __media_device_enum_links()



These structs have holes and reserved struct members which aren't
cleared.  I've added a memset() so we don't leak stack information.

Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>

Change-Id: Ia22c66d36c0a7bcaee60e65a7db406a40f973006
Git-commit: c88e739b1fad662240e99ecbd0bdaac871717987
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git


Signed-off-by: default avatarDeva Ramasubramanian <dramasub@codeaurora.org>
parent 6ed379b1
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -142,6 +142,8 @@ static long __media_device_enum_links(struct media_device *mdev,

		for (p = 0; p < entity->num_pads; p++) {
			struct media_pad_desc pad;

			memset(&pad, 0, sizeof(pad));
			media_device_kpad_to_upad(&entity->pads[p], &pad);
			if (copy_to_user(&links->pads[p], &pad, sizeof(pad)))
				return -EFAULT;
@@ -159,6 +161,7 @@ static long __media_device_enum_links(struct media_device *mdev,
			if (entity->links[l].source->entity != entity)
				continue;

			memset(&link, 0, sizeof(link));
			media_device_kpad_to_upad(entity->links[l].source,
						  &link.source);
			media_device_kpad_to_upad(entity->links[l].sink,