diff options
author | Martin Mares <mj@ucw.cz> | 2000-05-08 16:58:00 +0200 |
---|---|---|
committer | Martin Mares <mj@ucw.cz> | 2000-05-08 16:58:00 +0200 |
commit | 33a368ad594822239bfbaa2eab50c76171e09b9e (patch) | |
tree | e148b7bb0af78a0473520f1672e54721c3b80a4c | |
parent | 0c3588bf5e43936ea0f1e630dea500912b598c60 (diff) | |
download | bird-33a368ad594822239bfbaa2eab50c76171e09b9e.tar bird-33a368ad594822239bfbaa2eab50c76171e09b9e.zip |
Implemented `show route count' which is `show route stats' with
exception that it doesn't print the routes themselves.
-rw-r--r-- | TODO | 1 | ||||
-rw-r--r-- | nest/config.Y | 6 | ||||
-rw-r--r-- | nest/rt-table.c | 3 |
3 files changed, 7 insertions, 3 deletions
@@ -15,7 +15,6 @@ Core - filters: user defined attributes? - cli: show tables? -- cli: show route count (like stats, but doesn't print the routes) - cli: show where is routed given IP address? - client: Ctrl-R eats one more enter diff --git a/nest/config.Y b/nest/config.Y index 65142f7..e5249ea 100644 --- a/nest/config.Y +++ b/nest/config.Y @@ -22,7 +22,7 @@ CF_DECLS CF_KEYWORDS(ROUTER, ID, PROTOCOL, PREFERENCE, DISABLED, DEBUG, ALL, OFF, DIRECT) CF_KEYWORDS(INTERFACE, IMPORT, EXPORT, FILTER, NONE, TABLE, STATES, ROUTES, FILTERS) CF_KEYWORDS(PASSWORD, FROM, PASSIVE, TO, ID, EVENTS, PACKETS, PROTOCOLS, INTERFACES) -CF_KEYWORDS(PRIMARY, STATS) +CF_KEYWORDS(PRIMARY, STATS, COUNT) CF_ENUM(T_ENUM_RTS, RTS_, DUMMY, STATIC, INHERIT, DEVICE, STATIC_DEVICE, REDIRECT, RIP, OSPF, OSPF_EXT, OSPF_IA, OSPF_BOUNDARY, BGP, PIPE) @@ -294,6 +294,10 @@ r_args: $$ = $1; $$->stats = 1; } + | r_args COUNT { + $$ = $1; + $$->stats = 2; + } ; import_or_proto: diff --git a/nest/rt-table.c b/nest/rt-table.c index 975874a..cf87a70 100644 --- a/nest/rt-table.c +++ b/nest/rt-table.c @@ -749,7 +749,8 @@ rt_show_net(struct cli *c, net *n, struct rt_show_data *d) if (ok) { d->show_counter++; - rt_show_rte(c, ia, e, d, tmpa); + if (d->stats < 2) + rt_show_rte(c, ia, e, d, tmpa); ia[0] = 0; } if (e != ee) |