The result buffer was not initialized before parsing, inducing garbage in unused fields or padding of the parsed structure.
Initialize the result buffer each time before parsing. Fixes: af75078fece3 ("first public release") Cc: sta...@dpdk.org Signed-off-by: Xueming Li <xuemi...@mellanox.com> --- lib/librte_cmdline/cmdline_parse.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/librte_cmdline/cmdline_parse.c b/lib/librte_cmdline/cmdline_parse.c index c74b146fc..7f799f94d 100644 --- a/lib/librte_cmdline/cmdline_parse.c +++ b/lib/librte_cmdline/cmdline_parse.c @@ -168,6 +168,8 @@ match_inst(cmdline_parse_inst_t *inst, const char *buf, int n = 0; struct cmdline_token_hdr token_hdr; + if (resbuf != NULL) + memset(resbuf, 0, resbuf_size); /* check if we match all tokens of inst */ while (!nb_match_token || i < nb_match_token) { token_p = get_token(inst, i); -- 2.13.3