diff options
| author | 2021-12-24 02:49:56 +0100 | |
|---|---|---|
| committer | 2021-12-24 02:49:56 +0100 | |
| commit | a22f0f5dd020958c7a61282e067479add99a0a5a (patch) | |
| tree | 7ea42064702a5826def5e3b584516922d168094e /src/jplist.c | |
| parent | 914480a8771959bc2dc0f5e8e83365c15c05c36d (diff) | |
| download | libplist-a22f0f5dd020958c7a61282e067479add99a0a5a.tar.gz libplist-a22f0f5dd020958c7a61282e067479add99a0a5a.tar.bz2 | |
json: Update parser (jsmn) to verify the length of the input data
This way the string doesn't have to be 0-terminated.
Diffstat (limited to 'src/jplist.c')
| -rw-r--r-- | src/jplist.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/jplist.c b/src/jplist.c index fbc963e..889ce30 100644 --- a/src/jplist.c +++ b/src/jplist.c | |||
| @@ -661,7 +661,7 @@ PLIST_API int plist_from_json(const char *json, uint32_t length, plist_t * plist | |||
| 661 | } | 661 | } |
| 662 | tokens = newtokens; | 662 | tokens = newtokens; |
| 663 | 663 | ||
| 664 | r = jsmn_parse(&parser, json, tokens, maxtoks); | 664 | r = jsmn_parse(&parser, json, length, tokens, maxtoks); |
| 665 | if (r == JSMN_ERROR_NOMEM) { | 665 | if (r == JSMN_ERROR_NOMEM) { |
| 666 | maxtoks+=16; | 666 | maxtoks+=16; |
| 667 | continue; | 667 | continue; |
