aboutsummaryrefslogtreecommitdiff
path: root/json-parser.c
AgeCommit message (Collapse)AuthorFilesLines
2010-03-27json-parser: Output the content of invalid keywordAmos Kong1-1/+7
When input some invalid word 'unknowcmd' through QMP port, qemu outputs this error message: "parse error: invalid keyword `%s'" This patch makes qemu output the content of invalid keyword, like: "parse error: invalid keyword `unknowcmd'" Signed-off-by: Amos Kong <akong@redhat.com> Acked-by: Richard Henderson <rth@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-03-06json-parser: Fix segfault on malformed inputKevin Wolf1-1/+1
If the parser fails to parse the key in parse_pair, it will access a NULL pointer. A simple way to trigger this is sending {foo} via QMP. This patch turns the segfault into a syntax error reply. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-02-10json: fix PRId64 on Win32Roy Tam1-1/+2
OK we are fooled by the json lexer and parser. As we use %I64d to print 'long long' variables in Win32, but lexer and parser only deal with %lld but not %I64d, this patch add support for %I64d and solve 'info pci', 'powser_reset' and 'power_powerdown' assert failure in Win32. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2010-01-13json-parser: remove dead incrementAmit Shah1-2/+0
clang-analyzer points out a redundant increment. Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2009-11-17Add a JSON parserAnthony Liguori1-0/+568
This is the third and final stage of the JSON parser. It parses lexical tokens performing grammar validation and creating the final QObject representation. It uses a recursive decent parser. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>