]> git.ipfire.org Git - thirdparty/libnftnl.git/commitdiff
src: rule: fix compat XML output
authorArturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>
Sun, 7 Apr 2013 22:35:02 +0000 (22:35 +0000)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 18 Apr 2013 23:35:41 +0000 (01:35 +0200)
The compat struct was not printed in XML. So, I think give output
format is the first step to parse it.

Signed-off-by: Arturo Borrero <arturo.borrero.glez@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/rule.c

index 68fb6d9ce45f76fd85c55195e29c745b70544e79..3df178040be2d681d40f57c1980205070db3b3de 100644 (file)
@@ -450,6 +450,13 @@ static int nft_rule_snprintf_xml(char *buf, size_t size, struct nft_rule *r,
                                (unsigned long long)r->handle);
        SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
 
+       ret = snprintf(buf+offset, len, "<rule_flags>%u</rule_flags>"
+                                       "<compat_flags>%u</compat_flags>"
+                                       "<compat_proto>%u</compat_proto>",
+                                       r->rule_flags,
+                                       r->compat.flags, r->compat.proto);
+       SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
+
        list_for_each_entry(expr, &r->expr_list, head) {
                ret = snprintf(buf+offset, len,
                                "\n\t<expr type=\"%s\">\n", expr->ops->name);