![]() |
Wireshark 4.5.0
The Wireshark network protocol analyzer
|
Go to the source code of this file.
Functions | |
WS_DLL_PUBLIC bool | json_validate (const uint8_t *buf, const size_t len) |
WS_DLL_PUBLIC int | json_parse (const char *buf, jsmntok_t *tokens, unsigned int max_tokens) |
WS_DLL_PUBLIC int | json_parse_len (const char *buf, size_t len, jsmntok_t *tokens, unsigned int max_tokens) |
WS_DLL_PUBLIC jsmntok_t * | json_get_object (const char *buf, jsmntok_t *parent, const char *name) |
WS_DLL_PUBLIC jsmntok_t * | json_get_array (const char *buf, jsmntok_t *parent, const char *name) |
WS_DLL_PUBLIC int | json_get_array_len (jsmntok_t *array) |
WS_DLL_PUBLIC jsmntok_t * | json_get_array_index (jsmntok_t *parent, int idx) |
WS_DLL_PUBLIC char * | json_get_string (char *buf, jsmntok_t *parent, const char *name) |
WS_DLL_PUBLIC bool | json_get_double (char *buf, jsmntok_t *parent, const char *name, double *val) |
WS_DLL_PUBLIC bool | json_get_boolean (char *buf, jsmntok_t *parent, const char *name, bool *val) |
WS_DLL_PUBLIC bool | json_decode_string_inplace (char *text) |
JSON parsing functions.
Copyright 2016, Dario Lombardo
Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 1998 Gerald Combs
SPDX-License-Identifier: GPL-2.0-or-later
WS_DLL_PUBLIC bool json_decode_string_inplace | ( | char * | text | ) |
Decode the contents of a JSON string value by overwriting the input data. Returns true on success and false if invalid characters were encountered.
WS_DLL_PUBLIC jsmntok_t * json_get_array | ( | const char * | buf, |
jsmntok_t * | parent, | ||
const char * | name | ||
) |
Get the pointer to an array belonging to parent object and named as the name variable. Returns NULL if not found.
Get the pointer to idx element of an array. Returns NULL if not found.
WS_DLL_PUBLIC int json_get_array_len | ( | jsmntok_t * | array | ) |
Get the number of elements of an array. Returns -1 if the JSON objecct is not an array.
WS_DLL_PUBLIC bool json_get_boolean | ( | char * | buf, |
jsmntok_t * | parent, | ||
const char * | name, | ||
bool * | val | ||
) |
Get the value of a boolean belonging to parent object and named as the name variable. Returns false if not found. (Not the same as the boolean present but false.)
WS_DLL_PUBLIC bool json_get_double | ( | char * | buf, |
jsmntok_t * | parent, | ||
const char * | name, | ||
double * | val | ||
) |
Get the value of a number object belonging to parent object and named as the name variable. Returns false if not found. Caution: it modifies input buffer. Scientific notation not supported yet.
WS_DLL_PUBLIC jsmntok_t * json_get_object | ( | const char * | buf, |
jsmntok_t * | parent, | ||
const char * | name | ||
) |
Get the pointer to an object belonging to parent object and named as the name variable. Returns NULL if not found.
WS_DLL_PUBLIC char * json_get_string | ( | char * | buf, |
jsmntok_t * | parent, | ||
const char * | name | ||
) |
Get the unescaped value of a string object belonging to parent object and named as the name variable. Returns NULL if not found. Caution: it modifies input buffer.
WS_DLL_PUBLIC int json_parse | ( | const char * | buf, |
jsmntok_t * | tokens, | ||
unsigned int | max_tokens | ||
) |
Parse a JSON string and put the location of tokens into the tokens array.
buf | - A null-terminated string containing JSON. |
tokens | - An array of tokens. Can be NULL, to validate only. |
max_tokens | - The length of tokens. Ignored if tokens is NULL. |
WS_DLL_PUBLIC int json_parse_len | ( | const char * | buf, |
size_t | len, | ||
jsmntok_t * | tokens, | ||
unsigned int | max_tokens | ||
) |
Parse a JSON buffer and put the location of tokens into the tokens array.
buf | - A buffer containing JSON, not necessarily null-terminated. |
len | - The length of the JSON data in the buffer. |
tokens | - An array of tokens. Can be NULL, to validate only. |
max_tokens | - The length of tokens. Ignored if tokens is NULL. |
WS_DLL_PUBLIC bool json_validate | ( | const uint8_t * | buf, |
const size_t | len | ||
) |
Check if a buffer is JSON and returns true if it is.