Commit dea3302c authored by Nicolas Iooss's avatar Nicolas Iooss Committed by Ben Hutchings

printk: fix parsing of "brl=" option

commit ae6c33ba upstream.

Commit bbeddf52 ("printk: move braille console support into separate
braille.[ch] files") moved the parsing of braille-related options into
_braille_console_setup(), changing the type of variable str from char*
to char**.  In this commit, memcmp(str, "brl,", 4) was correctly updated
to memcmp(*str, "brl,", 4) but not memcmp(str, "brl=", 4).

Update the code to make "brl=" option work again and replace memcmp()
with strncmp() to make the compiler able to detect such an issue.

Fixes: bbeddf52 ("printk: move braille console support into separate braille.[ch] files")
Link: http://lkml.kernel.org/r/20160823165700.28952-1-nicolas.iooss_linux@m4x.orgSigned-off-by: default avatarNicolas Iooss <nicolas.iooss_linux@m4x.org>
Cc: Joe Perches <joe@perches.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
parent 60a9f376
...@@ -9,10 +9,10 @@ ...@@ -9,10 +9,10 @@
char *_braille_console_setup(char **str, char **brl_options) char *_braille_console_setup(char **str, char **brl_options)
{ {
if (!memcmp(*str, "brl,", 4)) { if (!strncmp(*str, "brl,", 4)) {
*brl_options = ""; *brl_options = "";
*str += 4; *str += 4;
} else if (!memcmp(str, "brl=", 4)) { } else if (!strncmp(*str, "brl=", 4)) {
*brl_options = *str + 4; *brl_options = *str + 4;
*str = strchr(*brl_options, ','); *str = strchr(*brl_options, ',');
if (!*str) if (!*str)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment