From 0758d102627744847d0bd2e4744d27695edb9a14 Mon Sep 17 00:00:00 2001 From: Arturo Borrero Date: Thu, 22 Sep 2016 16:58:13 +0200 Subject: src: remove libmxml support This patch removes the libmxml integration in libnftnl, since we have JSON in place and there is no need to support two at the same time. The JSON support is much better, for example libjansson has a better parsing error reporting. Moreover, libmxml 2.10 breaks the integration with libnftnl somehow, as reported in Debian bug #83870 [0]. Also, the XML support inside libnftnl has never been in good shape, with several tiny inconsitencies. [0] https://bugs.debian.org/838370 Signed-off-by: Arturo Borrero Gonzalez Signed-off-by: Pablo Neira Ayuso --- examples/nft-chain-get.c | 7 ++----- examples/nft-chain-parse-add.c | 9 +++------ examples/nft-events.c | 6 ++---- examples/nft-rule-get.c | 8 +++----- examples/nft-rule-parse-add.c | 9 +++------ examples/nft-ruleset-get.c | 8 +++----- examples/nft-ruleset-parse-file.c | 5 +---- examples/nft-set-elem-get.c | 4 +--- examples/nft-set-get.c | 4 +--- examples/nft-set-parse-add.c | 9 +++------ examples/nft-table-get.c | 8 ++------ examples/nft-table-parse-add.c | 9 +++------ 12 files changed, 27 insertions(+), 59 deletions(-) (limited to 'examples') diff --git a/examples/nft-chain-get.c b/examples/nft-chain-get.c index f5d4593..6fda2d8 100644 --- a/examples/nft-chain-get.c +++ b/examples/nft-chain-get.c @@ -58,7 +58,7 @@ int main(int argc, char *argv[]) seq = time(NULL); if (argc < 2 || argc > 5) { - fprintf(stderr, "Usage: %s [] [xml]\n", + fprintf(stderr, "Usage: %s [
] [json]\n", argv[0]); exit(EXIT_FAILURE); } @@ -95,11 +95,8 @@ int main(int argc, char *argv[]) NLM_F_DUMP, seq); } - if (strcmp(argv[argc-1], "xml") == 0){ - type = NFTNL_OUTPUT_XML; - }else if (strcmp(argv[argc-1], "json") == 0){ + if (strcmp(argv[argc-1], "json") == 0) type = NFTNL_OUTPUT_JSON; - } nl = mnl_socket_open(NETLINK_NETFILTER); if (nl == NULL) { diff --git a/examples/nft-chain-parse-add.c b/examples/nft-chain-parse-add.c index cf43cc2..dd27343 100644 --- a/examples/nft-chain-parse-add.c +++ b/examples/nft-chain-parse-add.c @@ -81,18 +81,15 @@ int main(int argc, char *argv[]) struct mnl_nlmsg_batch *batch; if (argc < 3) { - printf("Usage: %s {xml|json} \n", argv[0]); + printf("Usage: %s {json} \n", argv[0]); exit(EXIT_FAILURE); } - if (strcmp(argv[1], "xml") == 0) { - format = NFTNL_PARSE_XML; - outformat = NFTNL_OUTPUT_XML; - } else if (strcmp(argv[1], "json") == 0) { + if (strcmp(argv[1], "json") == 0) { format = NFTNL_PARSE_JSON; outformat = NFTNL_OUTPUT_JSON; } else { - printf("Unknown format: xml, json\n"); + printf("Unknown format: only json is supported\n"); exit(EXIT_FAILURE); } diff --git a/examples/nft-events.c b/examples/nft-events.c index 885af45..bd8c752 100644 --- a/examples/nft-events.c +++ b/examples/nft-events.c @@ -236,9 +236,7 @@ int main(int argc, char *argv[]) type = NFTNL_OUTPUT_DEFAULT; break; case 2: - if (strcmp(argv[1], "xml") == 0) { - type = NFTNL_OUTPUT_XML; - } else if (strcmp(argv[1], "json") == 0) { + if (strcmp(argv[1], "json") == 0) { type = NFTNL_OUTPUT_JSON; } else if (strcmp(argv[1], "default") == 0) { type = NFTNL_OUTPUT_DEFAULT; @@ -248,7 +246,7 @@ int main(int argc, char *argv[]) } break; default: - fprintf(stderr, "%s []\n", argv[0]); + fprintf(stderr, "%s []\n", argv[0]); return EXIT_FAILURE; } diff --git a/examples/nft-rule-get.c b/examples/nft-rule-get.c index 6a15d56..aa49612 100644 --- a/examples/nft-rule-get.c +++ b/examples/nft-rule-get.c @@ -82,7 +82,7 @@ int main(int argc, char *argv[]) int ret, family; if (argc < 2 || argc > 5) { - fprintf(stderr, "Usage: %s [
] [xml|json]\n", + fprintf(stderr, "Usage: %s [
] [json]\n", argv[0]); exit(EXIT_FAILURE); } @@ -102,11 +102,9 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } - /* [xml|json] specified */ + /* json specified */ if (argc == 3 || argc == 5) { - if (strcmp(argv[argc - 1], "xml") == 0) - type = NFTNL_OUTPUT_XML; - else if (strcmp(argv[argc - 1], "json") == 0) + if (strcmp(argv[argc - 1], "json") == 0) type = NFTNL_OUTPUT_JSON; } diff --git a/examples/nft-rule-parse-add.c b/examples/nft-rule-parse-add.c index 3707de3..90f1da7 100644 --- a/examples/nft-rule-parse-add.c +++ b/examples/nft-rule-parse-add.c @@ -84,18 +84,15 @@ int main(int argc, char *argv[]) uint16_t family, format, outformat; if (argc < 3) { - printf("Usage: %s {xml|json} \n", argv[0]); + printf("Usage: %s {json} \n", argv[0]); exit(EXIT_FAILURE); } - if (strcmp(argv[1], "xml") == 0) { - format = NFTNL_PARSE_XML; - outformat = NFTNL_OUTPUT_XML; - } else if (strcmp(argv[1], "json") == 0) { + if (strcmp(argv[1], "json") == 0) { format = NFTNL_PARSE_JSON; outformat = NFTNL_OUTPUT_JSON; } else { - printf("Unknown format: xml, json\n"); + printf("Unknown format: json\n"); exit(EXIT_FAILURE); } diff --git a/examples/nft-ruleset-get.c b/examples/nft-ruleset-get.c index 2c9d775..9e997c2 100644 --- a/examples/nft-ruleset-get.c +++ b/examples/nft-ruleset-get.c @@ -344,18 +344,16 @@ int main(int argc, char *argv[]) int ret; if (argc > 2) { - fprintf(stderr, "%s {xml|json}\n", + fprintf(stderr, "%s {json}\n", argv[0]); exit(EXIT_FAILURE); } if (argc == 2) { - if (strcmp(argv[1], "xml") == 0) - type = NFTNL_OUTPUT_XML; - else if (strcmp(argv[1], "json") == 0) + if (strcmp(argv[1], "json") == 0) type = NFTNL_OUTPUT_JSON; else { - fprintf(stderr, "Unknown type: {xml|json}\n"); + fprintf(stderr, "Unknown type: only json is supported\n"); exit(EXIT_FAILURE); } } diff --git a/examples/nft-ruleset-parse-file.c b/examples/nft-ruleset-parse-file.c index 84dc304..505c43c 100644 --- a/examples/nft-ruleset-parse-file.c +++ b/examples/nft-ruleset-parse-file.c @@ -422,11 +422,8 @@ int main(int argc, char *argv[]) if (len >= 5 && strcmp(&filename[len - 5], ".json") == 0) ret = nftnl_ruleset_parse_file_cb(NFTNL_PARSE_JSON, fp, err, NULL, &ruleset_elems_cb); - else if (len >= 4 && strcmp(&filename[len - 4], ".xml") == 0) - ret = nftnl_ruleset_parse_file_cb(NFTNL_PARSE_XML, fp, err, NULL, - &ruleset_elems_cb); else { - printf("the filename %s must to end in .xml or .json\n", + printf("the filename %s does not have a trailing .json\n", filename); exit(EXIT_FAILURE); } diff --git a/examples/nft-set-elem-get.c b/examples/nft-set-elem-get.c index 9c637ee..9a3ccd7 100644 --- a/examples/nft-set-elem-get.c +++ b/examples/nft-set-elem-get.c @@ -57,7 +57,7 @@ int main(int argc, char *argv[]) int ret; if (argc < 4 || argc > 5) { - fprintf(stderr, "%s
[]\n", + fprintf(stderr, "%s
[]\n", argv[0]); return EXIT_FAILURE; } @@ -82,8 +82,6 @@ int main(int argc, char *argv[]) if (argc == 5 && strcmp(argv[4], "json") == 0 ) type = NFTNL_OUTPUT_JSON; - else if (argc == 5 && strcmp(argv[4], "xml") == 0) - type = NFTNL_OUTPUT_XML; nlh = nftnl_set_nlmsg_build_hdr(buf, NFT_MSG_GETSETELEM, family, NLM_F_DUMP|NLM_F_ACK, seq); diff --git a/examples/nft-set-get.c b/examples/nft-set-get.c index 245ac5f..c4ad8ee 100644 --- a/examples/nft-set-get.c +++ b/examples/nft-set-get.c @@ -57,7 +57,7 @@ int main(int argc, char *argv[]) int ret; if (argc < 2 || argc > 3) { - fprintf(stderr, "%s []\n", argv[0]); + fprintf(stderr, "%s []\n", argv[0]); return EXIT_FAILURE; } t = nftnl_set_alloc(); @@ -83,8 +83,6 @@ int main(int argc, char *argv[]) if (argc == 3 && strcmp(argv[2], "json") == 0) type = NFTNL_OUTPUT_JSON; - else if (argc == 3 && strcmp(argv[2], "xml") == 0) - type = NFTNL_OUTPUT_XML; nlh = nftnl_set_nlmsg_build_hdr(buf, NFT_MSG_GETSET, family, NLM_F_DUMP|NLM_F_ACK, seq); diff --git a/examples/nft-set-parse-add.c b/examples/nft-set-parse-add.c index 3648730..550e8f4 100644 --- a/examples/nft-set-parse-add.c +++ b/examples/nft-set-parse-add.c @@ -85,18 +85,15 @@ int main(int argc, char *argv[]) struct mnl_nlmsg_batch *batch; if (argc < 2) { - printf("Usage: %s {xml|json} \n", argv[0]); + printf("Usage: %s {json} \n", argv[0]); exit(EXIT_FAILURE); } - if (strcmp(argv[1], "xml") == 0) { - format = NFTNL_PARSE_XML; - outformat = NFTNL_OUTPUT_XML; - } else if (strcmp(argv[1], "json") == 0) { + if (strcmp(argv[1], "json") == 0) { format = NFTNL_PARSE_JSON; outformat = NFTNL_OUTPUT_JSON; } else { - printf("Unknown format: xml, json\n"); + printf("Unknown format: only json is supported\n"); exit(EXIT_FAILURE); } diff --git a/examples/nft-table-get.c b/examples/nft-table-get.c index d648a11..193db77 100644 --- a/examples/nft-table-get.c +++ b/examples/nft-table-get.c @@ -57,7 +57,7 @@ int main(int argc, char *argv[]) uint32_t type = NFTNL_OUTPUT_DEFAULT; if (argc < 2 || argc > 4) { - fprintf(stderr, "%s [
] []\n", + fprintf(stderr, "%s [
] []\n", argv[0]); return EXIT_FAILURE; } @@ -77,11 +77,7 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } - if (strcmp(argv[argc-1], "xml") == 0) { - type = NFTNL_OUTPUT_XML; - argv[argc-1] = NULL; - argc--; - }else if (strcmp(argv[argc-1], "json") == 0) { + if (strcmp(argv[argc-1], "json") == 0) { type = NFTNL_OUTPUT_JSON; argv[argc-1] = NULL; argc--; diff --git a/examples/nft-table-parse-add.c b/examples/nft-table-parse-add.c index 31d31cc..28cb276 100644 --- a/examples/nft-table-parse-add.c +++ b/examples/nft-table-parse-add.c @@ -80,18 +80,15 @@ int main(int argc, char *argv[]) struct mnl_nlmsg_batch *batch; if (argc < 3) { - printf("Usage: %s {xml|json} \n", argv[0]); + printf("Usage: %s {json} \n", argv[0]); exit(EXIT_FAILURE); } - if (strcmp(argv[1], "xml") == 0) { - format = NFTNL_PARSE_XML; - outformat = NFTNL_OUTPUT_XML; - } else if (strcmp(argv[1], "json") == 0) { + if (strcmp(argv[1], "json") == 0) { format = NFTNL_PARSE_JSON; outformat = NFTNL_OUTPUT_JSON; } else { - printf("Unknown format: xml, json\n"); + printf("Unknown format: only json is supported\n"); exit(EXIT_FAILURE); } -- cgit v1.2.3