Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

leds: pattern trigger -- check pattern for validity

Don't allow invalid brightness in the pattern.

Signed-off-by: Pavel Machek <pavel@ucw.cz>

+4 -2
+4 -2
drivers/leds/trigger/ledtrig-pattern.c
··· 227 227 228 228 while (offset < count - 1 && data->npatterns < MAX_PATTERNS) { 229 229 cr = 0; 230 - ccount = sscanf(buf + offset, "%d %u %n", 230 + ccount = sscanf(buf + offset, "%u %u %n", 231 231 &data->patterns[data->npatterns].brightness, 232 232 &data->patterns[data->npatterns].delta_t, &cr); 233 - if (ccount != 2) { 233 + 234 + if (ccount != 2 || 235 + data->patterns[data->npatterns].brightness > data->led_cdev->max_brightness) { 234 236 data->npatterns = 0; 235 237 return -EINVAL; 236 238 }