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

Commit 742e4b63 authored by Wim Van Sebroeck's avatar Wim Van Sebroeck
Browse files

watchdog: jz4740_wdt - fix magic character checking



When writing to /dev/watchdog all characters should be checked
for the magic character 'V'.

Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
parent f865c352
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -130,11 +130,18 @@ static ssize_t jz4740_wdt_write(struct file *file, const char *data,
		size_t len, loff_t *ppos)
{
	if (len) {
		if (data[len-1] == 'V')
			set_bit(WDT_OK_TO_CLOSE, &jz4740_wdt.status);
		else
		size_t i;

		clear_bit(WDT_OK_TO_CLOSE, &jz4740_wdt.status);
		for (i = 0; i != len; i++) {
			char c;

			if (get_user(c, data + i))
				return -EFAULT;

			if (c == 'V')
				set_bit(WDT_OK_TO_CLOSE, &jz4740_wdt.status);
		}
		jz4740_wdt_service();
	}