]> git.proxmox.com Git - mirror_iproute2.git/commitdiff
dcb: Support -N to suppress translation to human-readable names
authorPetr Machata <me@pmachata.org>
Sat, 2 Jan 2021 00:03:39 +0000 (01:03 +0100)
committerDavid Ahern <dsahern@kernel.org>
Mon, 18 Jan 2021 04:09:29 +0000 (04:09 +0000)
Some DSCP values can be translated to symbolic names. That may not be
always desirable. Introduce a command-line option similar to other tools,
-N or --Numeric, to suppress this translation.

Signed-off-by: Petr Machata <me@pmachata.org>
Signed-off-by: David Ahern <dsahern@kernel.org>
dcb/dcb.c
dcb/dcb.h
man/man8/dcb.8

index 89f9b0ec7ef9f02881b0710255aba2d2ad15a560..cc5103da84a828b3ae95ce3a36a2b25724f1b6de 100644 (file)
--- a/dcb/dcb.c
+++ b/dcb/dcb.c
@@ -467,7 +467,8 @@ static void dcb_help(void)
                "       dcb [ -f | --force ] { -b | --batch } filename [ -n | --netns ] netnsname\n"
                "where  OBJECT := { buffer | ets | maxrate | pfc }\n"
                "       OPTIONS := [ -V | --Version | -i | --iec | -j | --json\n"
-               "                  | -p | --pretty | -s | --statistics | -v | --verbose]\n");
+               "                  | -N | --Numeric | -p | --pretty\n"
+               "                  | -s | --statistics | -v | --verbose]\n");
 }
 
 static int dcb_cmd(struct dcb *dcb, int argc, char **argv)
@@ -509,6 +510,7 @@ int main(int argc, char **argv)
                { "batch",              required_argument,      NULL, 'b' },
                { "iec",                no_argument,            NULL, 'i' },
                { "json",               no_argument,            NULL, 'j' },
+               { "Numeric",            no_argument,            NULL, 'N' },
                { "pretty",             no_argument,            NULL, 'p' },
                { "statistics",         no_argument,            NULL, 's' },
                { "netns",              required_argument,      NULL, 'n' },
@@ -528,7 +530,7 @@ int main(int argc, char **argv)
                return EXIT_FAILURE;
        }
 
-       while ((opt = getopt_long(argc, argv, "b:fhijn:psvV",
+       while ((opt = getopt_long(argc, argv, "b:fhijn:psvNV",
                                  long_options, NULL)) >= 0) {
 
                switch (opt) {
@@ -545,6 +547,9 @@ int main(int argc, char **argv)
                case 'j':
                        dcb->json_output = true;
                        break;
+               case 'N':
+                       dcb->numeric = true;
+                       break;
                case 'p':
                        pretty = true;
                        break;
index 8c7327a435888f036abb4c2a260254b73215058f..37657c594a78814d5fb91bcd6277ec04dfa013df 100644 (file)
--- a/dcb/dcb.h
+++ b/dcb/dcb.h
@@ -14,6 +14,7 @@ struct dcb {
        bool json_output;
        bool stats;
        bool use_iec;
+       bool numeric;
 };
 
 int dcb_parse_mapping(const char *what_key, __u32 key, __u32 max_key,
index 7293bb3035775b17e285158a60fba831808bf6ae..1e161eb37a5856f4f0c07fdd15ecae3d8ea18931 100644 (file)
@@ -59,6 +59,11 @@ the 1000-based ones (K, M, B).
 .BR "\-j" , " --json"
 Generate JSON output.
 
+.TP
+.BR "\-N" , " --Numeric"
+If the subtool in question translates numbers to symbolic names in some way,
+suppress this translation.
+
 .TP
 .BR "\-p" , " --pretty"
 When combined with -j generate a pretty JSON output.