diff options
author | Arturo Borrero <arturo.borrero.glez@gmail.com> | 2014-01-09 12:19:12 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2014-01-09 17:19:46 +0100 |
commit | d34f0c0508f08a84f4351f2a9369e85ccccfe5a0 (patch) | |
tree | 43e2cb863ea4d26ec91d77c2b6bdf1ddca8eaf42 /src/set.c | |
parent | fc423ae81487e906141f700c7b3515328ff62b7c (diff) |
src: add interface to parse from file
This patch adds a new API to parse rule-set expressed in XML/JSON from
a file. A new enum nft_parse_input type is added for this purpose.
Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/set.c')
-rw-r--r-- | src/set.c | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -376,7 +376,8 @@ err: #endif static int nft_set_json_parse(struct nft_set *s, const void *json, - struct nft_parse_err *err, enum nft_parse_input input) + struct nft_parse_err *err, + enum nft_parse_input input) { #ifdef JSON_PARSING json_t *tree; @@ -484,7 +485,8 @@ int nft_mxml_set_parse(mxml_node_t *tree, struct nft_set *s, #endif static int nft_set_xml_parse(struct nft_set *s, const void *xml, - struct nft_parse_err *err, enum nft_parse_input input) + struct nft_parse_err *err, + enum nft_parse_input input) { #ifdef XML_PARSING int ret; @@ -533,6 +535,13 @@ int nft_set_parse(struct nft_set *s, enum nft_parse_type type, } EXPORT_SYMBOL(nft_set_parse); +int nft_set_parse_file(struct nft_set *s, enum nft_parse_type type, + FILE *fp, struct nft_parse_err *err) +{ + return nft_set_do_parse(s, type, fp, err, NFT_PARSE_FILE); +} +EXPORT_SYMBOL(nft_set_parse_file); + static int nft_set_snprintf_json(char *buf, size_t size, struct nft_set *s, uint32_t type, uint32_t flags) { |