ip: Add label option to ip monitor
Prefix labelling is currently only activated when monitoring "all" objects. However, the output can still be confusing when monitoring more than 1 object, so add an option to always print prefix labels. Signed-off-by: Martin Schwenke <martin@meltin.net>
This commit is contained in:
parent
b8a45897b9
commit
488c41d216
|
|
@ -2542,13 +2542,15 @@ Namely,
|
||||||
the \verb|monitor| command is the first in the command line and then
|
the \verb|monitor| command is the first in the command line and then
|
||||||
the object list follows:
|
the object list follows:
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
ip monitor [ file FILE ] [ all | OBJECT-LIST ]
|
ip monitor [ file FILE ] [ all | OBJECT-LIST ] [ label ]
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
\verb|OBJECT-LIST| is the list of object types that we want to monitor.
|
\verb|OBJECT-LIST| is the list of object types that we want to
|
||||||
It may contain \verb|link|, \verb|address| and \verb|route|.
|
monitor. It may contain \verb|link|, \verb|address| and \verb|route|.
|
||||||
If no \verb|file| argument is given, \verb|ip| opens RTNETLINK,
|
Specifying \verb|label| indicates that output lines should be labelled
|
||||||
listens on it and dumps state changes in the format described
|
with the type of object being printed --- this happens by default if
|
||||||
in previous sections.
|
\verb|all| is specified. If no \verb|file| argument is given,
|
||||||
|
\verb|ip| opens RTNETLINK, listens on it and dumps state changes in
|
||||||
|
the format described in previous sections.
|
||||||
|
|
||||||
If a file name is given, it does not listen on RTNETLINK,
|
If a file name is given, it does not listen on RTNETLINK,
|
||||||
but opens the file containing RTNETLINK messages saved in binary format
|
but opens the file containing RTNETLINK messages saved in binary format
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ int prefix_banner;
|
||||||
|
|
||||||
static void usage(void)
|
static void usage(void)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Usage: ip monitor [ all | LISTofOBJECTS ] [ FILE ]\n");
|
fprintf(stderr, "Usage: ip monitor [ all | LISTofOBJECTS ] [ FILE ] [ label ]\n");
|
||||||
fprintf(stderr, "LISTofOBJECTS := link | address | route | mroute | prefix |\n");
|
fprintf(stderr, "LISTofOBJECTS := link | address | route | mroute | prefix |\n");
|
||||||
fprintf(stderr, " neigh | netconf\n");
|
fprintf(stderr, " neigh | netconf\n");
|
||||||
fprintf(stderr, "FILE := file FILENAME\n");
|
fprintf(stderr, "FILE := file FILENAME\n");
|
||||||
|
|
@ -157,6 +157,8 @@ int do_ipmonitor(int argc, char **argv)
|
||||||
if (matches(*argv, "file") == 0) {
|
if (matches(*argv, "file") == 0) {
|
||||||
NEXT_ARG();
|
NEXT_ARG();
|
||||||
file = *argv;
|
file = *argv;
|
||||||
|
} else if (matches(*argv, "label") == 0) {
|
||||||
|
prefix_banner = 1;
|
||||||
} else if (matches(*argv, "link") == 0) {
|
} else if (matches(*argv, "link") == 0) {
|
||||||
llink=1;
|
llink=1;
|
||||||
groups = 0;
|
groups = 0;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue