We keep printing layer 4 protocols as literals since we do not use /etc/protocols. Add -p option to print layer 4 protocols numerically. Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> --- v3: Expose this -p option, Phil has a usecase for this. doc/nft.txt | 4 ++++ src/main.c | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/doc/nft.txt b/doc/nft.txt index 99ac0e333a93..5ee06f16f642 100644 --- a/doc/nft.txt +++ b/doc/nft.txt @@ -56,6 +56,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 1f01a6c0b528..9a50f30f850b 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); } -- 2.11.0