lkml.org 
[lkml]   [2020]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.7 465/477] tools/bootconfig: Fix to use correct quotes for value
    Date
    From: Masami Hiramatsu <mhiramat@kernel.org>

    commit 272da3279df191f028fd63d1683e5ecd56fcb13b upstream.

    Fix bootconfig tool to select double or single quotes
    correctly according to the value.

    If a bootconfig value includes a double quote character,
    we must use single-quotes to quote that value.

    Link: http://lkml.kernel.org/r/159230245697.65555.12444299015852932304.stgit@devnote2

    Cc: stable@vger.kernel.org
    Fixes: 950313ebf79c ("tools: bootconfig: Add bootconfig command")
    Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
    Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    tools/bootconfig/main.c | 14 ++++++++------
    1 file changed, 8 insertions(+), 6 deletions(-)

    --- a/tools/bootconfig/main.c
    +++ b/tools/bootconfig/main.c
    @@ -14,13 +14,18 @@
    #include <linux/kernel.h>
    #include <linux/bootconfig.h>

    -static int xbc_show_array(struct xbc_node *node)
    +static int xbc_show_value(struct xbc_node *node)
    {
    const char *val;
    + char q;
    int i = 0;

    xbc_array_for_each_value(node, val) {
    - printf("\"%s\"%s", val, node->next ? ", " : ";\n");
    + if (strchr(val, '"'))
    + q = '\'';
    + else
    + q = '"';
    + printf("%c%s%c%s", q, val, q, node->next ? ", " : ";\n");
    i++;
    }
    return i;
    @@ -48,10 +53,7 @@ static void xbc_show_compact_tree(void)
    continue;
    } else if (cnode && xbc_node_is_value(cnode)) {
    printf("%s = ", xbc_node_get_data(node));
    - if (cnode->next)
    - xbc_show_array(cnode);
    - else
    - printf("\"%s\";\n", xbc_node_get_data(cnode));
    + xbc_show_value(cnode);
    } else {
    printf("%s;\n", xbc_node_get_data(node));
    }

    \
     
     \ /
      Last update: 2020-06-23 23:39    [W:4.061 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site