From 6bc50bb3ff693d73b71b82f3a3f4eb335db9aef9 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Mon, 29 Oct 2018 21:43:25 +0100 Subject: src: add -p to print layer 4 protocol numerically We keep printing layer 4 protocols as literals since we do not use /etc/protocols. Add -p option to print layer 4 protocols numerically. Acked-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- doc/nft.txt | 6 +++++- src/main.c | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/doc/nft.txt b/doc/nft.txt index 8e18d908..cff04a6a 100644 --- a/doc/nft.txt +++ b/doc/nft.txt @@ -9,7 +9,7 @@ nft - Administration tool of the nftables framework for packet filtering and cla SYNOPSIS -------- [verse] -*nft* [ *-nNscaeS* ] [ *-I* 'directory' ] [ *-f* 'filename' | *-i* | 'cmd' ...] +*nft* [ *-nNscaeSupy* ] [ *-I* 'directory' ] [ *-f* 'filename' | *-i* | 'cmd' ...] *nft* *-h* *nft* *-v* @@ -53,6 +53,10 @@ For a full summary of options, run *nft --help*. *--guid**:: Translate numeric UID/GID to names as defined by /etc/passwd and /etc/group. +*-p*:: +*--numeric-protocol**:: + Display layer 4 protocol numerically. + *-y*:: *--numeric-priority**:: Display base chain priority numerically. diff --git a/src/main.c b/src/main.c index 1f01a6c0..9a50f30f 100644 --- a/src/main.c +++ b/src/main.c @@ -41,9 +41,10 @@ enum opt_vals { OPT_ECHO = 'e', OPT_GUID = 'u', OPT_NUMERIC_PRIO = 'y', + OPT_NUMERIC_PROTO = 'p', OPT_INVALID = '?', }; -#define OPTSTRING "hvcf:iI:jvnsNaeSupy" +#define OPTSTRING "hvcf:iI:jvnsNaeSupyp" static const struct option options[] = { { @@ -137,6 +138,7 @@ static void show_help(const char *name) " -u, --guid Print UID/GID as defined in /etc/passwd and /etc/group.\n" " -N Translate IP addresses to names.\n" " -S, --service Translate ports to service names as described in /etc/services.\n" +" -p, --numeric-protocol Print layer 4 protocols numerically.\n" " -y, --numeric-priority Print chain priority numerically.\n" " -a, --handle Output rule handle.\n" " -e, --echo Echo what has been added, inserted or replaced.\n" @@ -283,6 +285,9 @@ int main(int argc, char * const *argv) case OPT_NUMERIC_PRIO: output_flags |= NFT_CTX_OUTPUT_NUMERIC_PRIO; break; + case OPT_NUMERIC_PROTO: + output_flags |= NFT_CTX_OUTPUT_NUMERIC_PROTO; + break; case OPT_INVALID: exit(EXIT_FAILURE); } -- cgit v1.2.3