summaryrefslogtreecommitdiffstats
path: root/src/expr/byteorder.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-07-25 22:08:15 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-07-25 22:09:04 +0200
commitf1427774b505e49c381fe51bde58a1cb431a1f70 (patch)
treebf78f366d87f8842fe57184aa180d345de9ddcc3 /src/expr/byteorder.c
parentf57644702ddc427dfafc728fb25085158e93504a (diff)
expr: don't override errno value if nft_mxml_num_parse is used
That function already sets errno for us. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/expr/byteorder.c')
-rw-r--r--src/expr/byteorder.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/expr/byteorder.c b/src/expr/byteorder.c
index 523bae1..79ba439 100644
--- a/src/expr/byteorder.c
+++ b/src/expr/byteorder.c
@@ -211,27 +211,26 @@ nft_rule_expr_byteorder_xml_parse(struct nft_rule_expr *e, mxml_node_t *tree)
byteorder->op = NFT_BYTEORDER_NTOH;
else if (strcmp(op, "hton") == 0)
byteorder->op = NFT_BYTEORDER_HTON;
- else
- goto err;
+ else {
+ errno = EINVAL;
+ return -1;
+ }
e->flags |= (1 << NFT_EXPR_BYTEORDER_OP);
if (nft_mxml_num_parse(tree, "len", MXML_DESCEND_FIRST, BASE_DEC,
&byteorder->len, NFT_TYPE_U8) != 0)
- goto err;
+ return -1;
e->flags |= (1 << NFT_EXPR_BYTEORDER_LEN);
if (nft_mxml_num_parse(tree, "size", MXML_DESCEND_FIRST, BASE_DEC,
&byteorder->size, NFT_TYPE_U8) != 0)
- goto err;
+ return -1;
e->flags |= (1 << NFT_EXPR_BYTEORDER_SIZE);
return 0;
-err:
- errno = EINVAL;
- return -1;
#else
errno = EOPNOTSUPP;
return -1;