diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2018-10-24 17:37:47 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2018-10-29 15:07:34 +0100 |
commit | a42d2865bc7e96fe63276e22acd523d996aaf0a4 (patch) | |
tree | b0779465bba8cf7562628ae884278fed73963362 /src/expression.c | |
parent | f27fc14cbd3097e98c4d3549ff93c9284134b866 (diff) |
src: Revert --literal, add -S/--service
This is a partial revert of b0f6a45b25dd1 ("src: add --literal option")
which was added during the development cycle before 0.9.1 is released.
After looking at patch: https://patchwork.ozlabs.org/patch/969864/ that
allows to print priority, uid, gid and protocols as numerics, I decided
to revisit this to provide individual options to turn on literal
printing.
What I'm proposing is to provide a good default for everyone, and
provide options to turn on literal/numeric printing.
This patch adds nft_ctx_output_{set,get}_flags() and define two flags to
enable reverse DNS lookups and to print ports as service names.
This patch introduces -S/--services, to print service names as per
/etc/services.
Acked-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/expression.c')
-rw-r--r-- | src/expression.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/expression.c b/src/expression.c index 0bd51122..d1d6bee4 100644 --- a/src/expression.c +++ b/src/expression.c @@ -660,11 +660,13 @@ void relational_expr_pctx_update(struct proto_ctx *ctx, static void range_expr_print(const struct expr *expr, struct output_ctx *octx) { - octx->numeric += NFT_NUMERIC_ALL + 1; + unsigned int flags = octx->flags; + + octx->flags &= ~NFT_CTX_OUTPUT_SERVICE; expr_print(expr->left, octx); nft_print(octx, "-"); expr_print(expr->right, octx); - octx->numeric -= NFT_NUMERIC_ALL + 1; + octx->flags = flags; } static void range_expr_clone(struct expr *new, const struct expr *expr) |