summaryrefslogtreecommitdiffstats
path: root/src/jansson.c
diff options
context:
space:
mode:
authorAna Rey <anarey@gmail.com>2014-04-09 11:16:19 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2014-04-14 10:46:06 +0200
commit1a0abb3036452852757d13fe394c6c72dff877bd (patch)
treea9d8902e2725659d274d4830cf8809ed34c4b160 /src/jansson.c
parent5d20b27ac4365ab153afe476895926ede9b74528 (diff)
xml, json: Delete a cmpdata label in xml and json file
It delete the cmpdata label in the structure of json and xml file. Example of xmlfile: The old structure of xml file: [...] <expr type="cmp"> <sreg>1</sreg> <op>eq</op> <cmpdata> <data_reg type="value"> <len>4</len> <data0>0x0100a8c0</data0> </data_reg> </cmpdata> </expr> The new structure of json file: [...] <expr type="cmp"> <sreg>1</sreg> <op>eq</op> <data_reg type="value"> <len>4</len> <data0>0x0100a8c0</data0> </data_reg> </expr> [...] To generate the new testfiles, It use the option -u of nft-parsing-test script. Signed-off-by: Ana Rey <anarey@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/jansson.c')
-rw-r--r--src/jansson.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/jansson.c b/src/jansson.c
index 5107eb5..affe8fe 100644
--- a/src/jansson.c
+++ b/src/jansson.c
@@ -215,13 +215,10 @@ int nft_jansson_data_reg_parse(json_t *root, const char *node_name,
json_t *data;
int ret;
+ /* It is necessary for the compatibility with cmpdata label. */
data = json_object_get(root, node_name);
- if (data == NULL) {
- err->error = NFT_PARSE_EMISSINGNODE;
- err->node_name = node_name;
- errno = EINVAL;
- return -1;
- }
+ if (data == NULL)
+ data = root;
data = json_object_get(data, "data_reg");
if (data == NULL) {