Commit b9cc4489 authored by Rusty Russell's avatar Rusty Russell

params: handle quotes properly for values not of form foo="bar".

When starting kernel with arguments like:
  init=/bin/sh -c "echo arguments"
the trailing double quote is not removed which results in following command
being executed:
  /bin/sh -c 'echo arguments"'
Reported-by: default avatarArthur Gautier <baloo@gandi.net>
Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
parent e5d8f59a
...@@ -173,9 +173,9 @@ static char *next_arg(char *args, char **param, char **val) ...@@ -173,9 +173,9 @@ static char *next_arg(char *args, char **param, char **val)
if (args[i-1] == '"') if (args[i-1] == '"')
args[i-1] = '\0'; args[i-1] = '\0';
} }
if (quoted && args[i-1] == '"')
args[i-1] = '\0';
} }
if (quoted && args[i-1] == '"')
args[i-1] = '\0';
if (args[i]) { if (args[i]) {
args[i] = '\0'; args[i] = '\0';
......
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