[PATCH 2/3 nft,v3] src: add -p to print layer 4 protocol numerically

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux