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

Commit cb1185a4 authored by Dan Carpenter's avatar Dan Carpenter Committed by Greg Kroah-Hartman
Browse files

staging: dgnc: off by one in dgnc_mgmt_ioctl()



"dgnc_NumBoards" is the number of initialized elements in the
dgnc_Board[] array so the comparison should be ">=" instead of ">" so we
don't read invalid data.  We can remove the special handling of the
empty array now that we've fixed this bug.

Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 65da04c1
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -153,8 +153,7 @@ long dgnc_mgmt_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
		if (copy_from_user(&brd, uarg, sizeof(int)))
			return -EFAULT;

		if ((brd < 0) || (brd > dgnc_NumBoards) ||
		    (dgnc_NumBoards == 0))
		if (brd < 0 || brd >= dgnc_NumBoards)
			return -ENODEV;

		memset(&di, 0, sizeof(di));