summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorArturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>2013-02-13 12:15:13 +0000
committerPablo Neira Ayuso <pablo@netfilter.org>2013-02-14 09:33:33 +0100
commitd696047efe8d7356f441a52b43a531e6ca8ad3c7 (patch)
tree51363605ba54b46eb4da54571d2ce24fc08a6b9d /src
parentc6aeca496fc747066ad09ac76c1fc281a948cd68 (diff)
src: change XML output format to use element instead of attributes
There are some problems in using attributes: * they cannot contain multiple values (child elements can) * they are not easily expandable (for future changes) * they cannot describe structures (child elements can) * they are more difficult to manipulate by program code * attribute values are not easy to test against a DTD Extracted from "XML Elements vs. Attributes" at: http://www.w3schools.com/dtd/dtd_el_vs_attr.asp For more information. Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r--src/chain.c16
-rw-r--r--src/table.c5
2 files changed, 11 insertions, 10 deletions
diff --git a/src/chain.c b/src/chain.c
index 3c83e6d..1b1c3fe 100644
--- a/src/chain.c
+++ b/src/chain.c
@@ -443,14 +443,14 @@ static int nft_chain_snprintf_xml(char *buf, size_t size, struct nft_chain *c)
"<chain name=\"%s\" handle=\"%lu\""
" bytes=\"%lu\" packets=\"%lu\" >\n"
"\t<properties>\n"
- "\t\t<flags value=\"%d\" />\n"
- "\t\t<type value=\"%s\" />\n"
- "\t\t<table value=\"%s\" />\n"
- "\t\t<prio value=\"%d\" />\n"
- "\t\t<use value=\"%d\" />\n"
- "\t\t<hooknum value=\"%d\" />\n"
- "\t\t<policy value=\"%d\" />\n"
- "\t\t<family value=\"%d\" />\n"
+ "\t\t<flags>%d</flags>\n"
+ "\t\t<type>%s</type>\n"
+ "\t\t<table>%s</table>\n"
+ "\t\t<prio>%d</prio>\n"
+ "\t\t<use>%d</use>\n"
+ "\t\t<hooknum>%d</hooknum>\n"
+ "\t\t<policy>%d</policy>\n"
+ "\t\t<family>%d</family>\n"
"\t</properties>\n"
"</chain>\n",
c->name, c->handle, c->bytes, c->packets,
diff --git a/src/table.c b/src/table.c
index eb485b2..d2e07db 100644
--- a/src/table.c
+++ b/src/table.c
@@ -179,8 +179,9 @@ static int nft_table_snprintf_xml(char *buf, size_t size, struct nft_table *t)
return snprintf(buf, size,
"<table name=\"%s\" >\n"
"\t<properties>\n"
- "\t\t<family value=\"%u\" />\n"
- "\t\t<flags value=\"%d\" table_flags=\"%d\" />\n"
+ "\t\t<family>%u</family>\n"
+ "\t\t<flags>%d</flags>\n"
+ "\t\t<table_flags>%d</table_flags>\n"
"\t</properties>\n"
"</table>\n" ,
t->name, t->family, t->flags, t->table_flags);