]> git.ipfire.org Git - thirdparty/libnftnl.git/commitdiff
expr: counter: Use nft_rule_expr_set_* in the xml parsing code
authorAna Rey <anarey@gmail.com>
Tue, 24 Jun 2014 07:15:36 +0000 (09:15 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 24 Jun 2014 08:43:17 +0000 (10:43 +0200)
Code refactoring to use nft_rule_expr_set_* in parse functions.

Signed-off-by: Ana Rey <anarey@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
src/expr/counter.c

index 65acee372f4de25a10d618f8f303b0b2c468d270..9d85a96ad4e88a9f96e5db1926564d8b5b2f52c8 100644 (file)
@@ -147,21 +147,19 @@ nft_rule_expr_counter_xml_parse(struct nft_rule_expr *e, mxml_node_t *tree,
                                struct nft_parse_err *err)
 {
 #ifdef XML_PARSING
-       struct nft_expr_counter *ctr = nft_expr_data(e);
+       uint64_t pkts, bytes;
 
        if (nft_mxml_num_parse(tree, "pkts", MXML_DESCEND_FIRST, BASE_DEC,
-                              &ctr->pkts, NFT_TYPE_U64, NFT_XML_MAND,
+                              &pkts, NFT_TYPE_U64, NFT_XML_MAND,
                               err) != 0)
                return -1;
-
-       e->flags |= (1 << NFT_EXPR_CTR_PACKETS);
+       nft_rule_expr_set_u64(e, NFT_EXPR_CTR_PACKETS, pkts);
 
        if (nft_mxml_num_parse(tree, "bytes", MXML_DESCEND_FIRST, BASE_DEC,
-                              &ctr->bytes, NFT_TYPE_U64, NFT_XML_MAND,
+                              &bytes, NFT_TYPE_U64, NFT_XML_MAND,
                               err) != 0)
                return -1;
-
-       e->flags |= (1 << NFT_EXPR_CTR_BYTES);
+       nft_rule_expr_set_u64(e, NFT_EXPR_CTR_BYTES, bytes);
 
        return 0;
 #else