summaryrefslogtreecommitdiffstats
path: root/src/expr/nat.c
diff options
context:
space:
mode:
authorArturo Borrero Gonzalez <arturo.borrero.glez@gmail.com>2013-06-26 13:37:03 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-06-27 19:36:28 +0200
commit2c34e9efb30606d5d649addb7c6c74ece0a9839e (patch)
treedb9cd02e25159af14da44a98b16d3195774e5b54 /src/expr/nat.c
parent8e7acbfae3017cd5f30e3b17ca16354f76b81b8a (diff)
nat: xml: change nat types string to dnat/snat
This patch replaces the string NFT_NAT_{S|D}NAT with {s|d}nat in the <type> node. Signed-off-by: Arturo Borrero Gonzalez <arturo.borrero.glez@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/expr/nat.c')
-rw-r--r--src/expr/nat.c25
1 files changed, 11 insertions, 14 deletions
diff --git a/src/expr/nat.c b/src/expr/nat.c
index 2061618..e838317 100644
--- a/src/expr/nat.c
+++ b/src/expr/nat.c
@@ -237,9 +237,9 @@ static int nft_rule_expr_nat_xml_parse(struct nft_rule_expr *e, char *xml)
return -1;
}
- if (strcmp(node->child->value.opaque, "NFT_NAT_SNAT") == 0) {
+ if (strcmp(node->child->value.opaque, "snat") == 0) {
nat->type = NFT_NAT_SNAT;
- } else if (strcmp(node->child->value.opaque, "NFT_NAT_DNAT") == 0) {
+ } else if (strcmp(node->child->value.opaque, "dnat") == 0) {
nat->type = NFT_NAT_DNAT;
} else {
mxmlDelete(tree);
@@ -334,18 +334,15 @@ nft_rule_expr_nat_snprintf_xml(char *buf, size_t size,
struct nft_expr_nat *nat = (struct nft_expr_nat *)e->data;
int len = size, offset = 0, ret = 0;
- switch (nat->type) {
- case NFT_NAT_SNAT:
- ret = snprintf(buf, len,
- "<type>NFT_NAT_SNAT</type>");
- SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- break;
- case NFT_NAT_DNAT:
- ret = snprintf(buf, len,
- "<type>NFT_NAT_DNAT</type>");
- SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- break;
- }
+ /* Is a mandatory element. Provide a default, even empty */
+ if (nat->type == NFT_NAT_SNAT)
+ ret = snprintf(buf, len, "<type>snat</type>");
+ else if (nat->type == NFT_NAT_DNAT)
+ ret = snprintf(buf, len, "<type>dnat</type>");
+ else
+ ret = snprintf(buf, len, "<type>unknown</type>");
+
+ SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
ret = snprintf(buf+offset, len, "<family>%s</family>",
nft_family2str(nat->family));