summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ruleset.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/ruleset.c b/src/ruleset.c
index f5b6d55..89ea344 100644
--- a/src/ruleset.c
+++ b/src/ruleset.c
@@ -255,7 +255,8 @@ static int nft_ruleset_parse_tables(struct nft_parse_ctx *ctx,
#endif
break;
default:
- return -1;
+ errno = EOPNOTSUPP;
+ goto err;
}
nft_ruleset_ctx_set_u32(ctx, NFT_RULESET_CTX_TYPE, NFT_RULESET_TABLE);
@@ -292,7 +293,8 @@ static int nft_ruleset_parse_chains(struct nft_parse_ctx *ctx,
#endif
break;
default:
- return -1;
+ errno = EOPNOTSUPP;
+ goto err;
}
nft_ruleset_ctx_set_u32(ctx, NFT_RULESET_CTX_TYPE, NFT_RULESET_CHAIN);
@@ -346,7 +348,8 @@ static int nft_ruleset_parse_set_elems(struct nft_parse_ctx *ctx,
#endif
break;
default:
- return -1;
+ errno = EOPNOTSUPP;
+ goto err;
}
if (nft_ruleset_parse_set(ctx, set, NFT_RULESET_SET_ELEMS, err) < 0)
@@ -381,7 +384,8 @@ static int nft_ruleset_parse_sets(struct nft_parse_ctx *ctx,
#endif
break;
default:
- return -1;
+ errno = EOPNOTSUPP;
+ goto err;
}
if (nft_ruleset_parse_set(ctx, set, NFT_RULESET_SET, err) < 0)
@@ -417,7 +421,8 @@ static int nft_ruleset_parse_rules(struct nft_parse_ctx *ctx,
#endif
break;
default:
- return -1;
+ errno = EOPNOTSUPP;
+ goto err;
}
nft_ruleset_ctx_set_u32(ctx, NFT_RULESET_CTX_TYPE, NFT_RULESET_RULE);