Limit nesting depth to 1000 and make it configurable.

This commit is contained in:
Max Bruckner
2017-04-27 01:48:40 +02:00
parent 5aa152fa83
commit e0d3a8a265
12 changed files with 54 additions and 23 deletions

View File

@@ -52,10 +52,9 @@ static void assert_is_child(cJSON *child_item, const char *name, int type)
static void assert_not_object(const char *json)
{
parse_buffer parsebuffer;
parse_buffer parsebuffer = { 0, 0, 0, 0 };
parsebuffer.content = (const unsigned char*)json;
parsebuffer.length = strlen(json) + sizeof("");
parsebuffer.offset = 0;
TEST_ASSERT_FALSE(parse_object(item, &parsebuffer, &global_hooks));
assert_is_invalid(item);
@@ -64,10 +63,9 @@ static void assert_not_object(const char *json)
static void assert_parse_object(const char *json)
{
parse_buffer parsebuffer;
parse_buffer parsebuffer = { 0, 0, 0, 0 };
parsebuffer.content = (const unsigned char*)json;
parsebuffer.length = strlen(json) + sizeof("");
parsebuffer.offset = 0;
TEST_ASSERT_TRUE(parse_object(item, &parsebuffer, &global_hooks));
assert_is_object(item);