iproute2 seems to accept show and list as aliases.
Let's do the same thing, and by allowing both bring
cgroup syntax back in line with maps and progs.
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
        *OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] | { **-f** | **--bpffs** } }
 
        *COMMANDS* :=
-       { **list** | **attach** | **detach** | **help** }
+       { **show** | **list** | **attach** | **detach** | **help** }
 
 MAP COMMANDS
 =============
 
-|      **bpftool** **cgroup list** *CGROUP*
+|      **bpftool** **cgroup { show | list }** *CGROUP*
 |      **bpftool** **cgroup attach** *CGROUP* *ATTACH_TYPE* *PROG* [*ATTACH_FLAGS*]
 |      **bpftool** **cgroup detach** *CGROUP* *ATTACH_TYPE* *PROG*
 |      **bpftool** **cgroup help**
 
 DESCRIPTION
 ===========
-       **bpftool cgroup list** *CGROUP*
+       **bpftool cgroup { show | list }** *CGROUP*
                  List all programs attached to the cgroup *CGROUP*.
 
                  Output will start with program ID followed by attach type,
 
        *OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] | { **-f** | **--bpffs** } }
 
        *COMMANDS* :=
-       { **show** | **dump** | **update** | **lookup** | **getnext** | **delete**
+       { **show** | **list** | **dump** | **update** | **lookup** | **getnext** | **delete**
        | **pin** | **help** }
 
 MAP COMMANDS
 =============
 
-|      **bpftool** **map show**   [*MAP*]
+|      **bpftool** **map { show | list }**   [*MAP*]
 |      **bpftool** **map dump**    *MAP*
 |      **bpftool** **map update**  *MAP*  **key** *BYTES*   **value** *VALUE* [*UPDATE_FLAGS*]
 |      **bpftool** **map lookup**  *MAP*  **key** *BYTES*
 
 DESCRIPTION
 ===========
-       **bpftool map show**   [*MAP*]
+       **bpftool map { show | list }**   [*MAP*]
                  Show information about loaded maps.  If *MAP* is specified
                  show information only about given map, otherwise list all
                  maps currently loaded on the system.
 
        *OPTIONS* := { { **-j** | **--json** } [{ **-p** | **--pretty** }] | { **-f** | **--bpffs** } }
 
        *COMMANDS* :=
-       { **show** | **dump xlated** | **dump jited** | **pin** | **load** | **help** }
+       { **show** | **list** | **dump xlated** | **dump jited** | **pin** | **load** | **help** }
 
 MAP COMMANDS
 =============
 
-|      **bpftool** **prog show** [*PROG*]
+|      **bpftool** **prog { show | list }** [*PROG*]
 |      **bpftool** **prog dump xlated** *PROG* [{**file** *FILE* | **opcodes**}]
 |      **bpftool** **prog dump jited**  *PROG* [{**file** *FILE* | **opcodes**}]
 |      **bpftool** **prog pin** *PROG* *FILE*
 
 DESCRIPTION
 ===========
-       **bpftool prog show** [*PROG*]
+       **bpftool prog { show | list }** [*PROG*]
                  Show information about loaded programs.  If *PROG* is
                  specified show information only about given program, otherwise
                  list all programs currently loaded on the system.
 
        | { **-j** | **--json** } [{ **-p** | **--pretty** }] }
 
        *MAP-COMMANDS* :=
-       { **show** | **dump** | **update** | **lookup** | **getnext** | **delete**
+       { **show** | **list** | **dump** | **update** | **lookup** | **getnext** | **delete**
        | **pin** | **help** }
 
-       *PROG-COMMANDS* := { **show** | **dump jited** | **dump xlated** | **pin**
+       *PROG-COMMANDS* := { **show** | **list** | **dump jited** | **dump xlated** | **pin**
        | **load** | **help** }
 
-       *CGROUP-COMMANDS* := { **list** | **attach** | **detach** | **help** }
+       *CGROUP-COMMANDS* := { **show** | **list** | **attach** | **detach** | **help** }
 
 DESCRIPTION
 ===========
 
 
             local PROG_TYPE='id pinned tag'
             case $command in
-                show)
+                show|list)
                     [[ $prev != "$command" ]] && return 0
                     COMPREPLY=( $( compgen -W "$PROG_TYPE" -- "$cur" ) )
                     return 0
                     ;;
                 *)
                     [[ $prev == $object ]] && \
-                        COMPREPLY=( $( compgen -W 'dump help pin show' -- \
+                        COMPREPLY=( $( compgen -W 'dump help pin show list' -- \
                             "$cur" ) )
                     ;;
             esac
         map)
             local MAP_TYPE='id pinned'
             case $command in
-                show|dump)
+                show|list|dump)
                     case $prev in
                         $command)
                             COMPREPLY=( $( compgen -W "$MAP_TYPE" -- "$cur" ) )
                 *)
                     [[ $prev == $object ]] && \
                         COMPREPLY=( $( compgen -W 'delete dump getnext help \
-                            lookup pin show update' -- "$cur" ) )
+                            lookup pin show list update' -- "$cur" ) )
                     ;;
             esac
             ;;
 
        }
 
        fprintf(stderr,
-               "Usage: %s %s list CGROUP\n"
+               "Usage: %s %s { show | list } CGROUP\n"
                "       %s %s attach CGROUP ATTACH_TYPE PROG [ATTACH_FLAGS]\n"
                "       %s %s detach CGROUP ATTACH_TYPE PROG\n"
                "       %s %s help\n"
 }
 
 static const struct cmd cmds[] = {
+       { "show",       do_show },
        { "list",       do_show },
        { "attach",     do_attach },
        { "detach",     do_detach },
 
        }
 
        fprintf(stderr,
-               "Usage: %s %s show   [MAP]\n"
+               "Usage: %s %s { show | list }   [MAP]\n"
                "       %s %s dump    MAP\n"
                "       %s %s update  MAP  key BYTES value VALUE [UPDATE_FLAGS]\n"
                "       %s %s lookup  MAP  key BYTES\n"
 
 static const struct cmd cmds[] = {
        { "show",       do_show },
+       { "list",       do_show },
        { "help",       do_help },
        { "dump",       do_dump },
        { "update",     do_update },
 
        }
 
        fprintf(stderr,
-               "Usage: %s %s show [PROG]\n"
+               "Usage: %s %s { show | list } [PROG]\n"
                "       %s %s dump xlated PROG [{ file FILE | opcodes }]\n"
                "       %s %s dump jited  PROG [{ file FILE | opcodes }]\n"
                "       %s %s pin   PROG FILE\n"
 
 static const struct cmd cmds[] = {
        { "show",       do_show },
+       { "list",       do_show },
        { "help",       do_help },
        { "dump",       do_dump },
        { "pin",        do_pin },