From fbf5d033041e406ecefd27c2deebf5a4953d1155 Mon Sep 17 00:00:00 2001 From: vincent Date: Thu, 29 Sep 2005 11:25:50 +0000 Subject: 2005-09-29 Alain Ritoux * lib/filer.c: show protocol name in filter_show() * lib/plist.c: show protocol name in vty_show_prefix_entry() * routemap.c: show protocol name in vty_show_route_map_entry() * lib/vty.c: in vty_command(), show protocol name if command unknown * zebra/zserv.c: Always provide distance fo route add * ripd/rip_snmp.c: rip2IfConfReceive() sends values in conformance with RFC. Also PeerDomain is now set to a STRING type. * ripd/ripd.h: rip_redistribute_add() API includes metric and distance * ripd/ripd.c: rip_redistribute_add() API i.e. stores metric and distance Now allows a RIP-route to overcome a redistributed route coming from a protocol with worse (higher) administrative distance Metrics from redistribution are shown in show ip rip * ripd/rip_zebra.c: adapt to the rip_redistribute_add() API, i.e. provide distance and metric * ripd/rip_interface.c: adapt to the rip_redistribute_add() API * ripd/rip_routemap.c: no RMAP_COMPILE_ERROR on (metric > 16) usage rather a CMD_WARNING, because set metric ius shared with other protocols using larger values (such as OSPF) The match metric action takes first external metric if present (from redistribution) then RIP metric. --- lib/ChangeLog | 7 +++++++ lib/filter.c | 6 ++++++ lib/plist.c | 5 +++++ lib/routemap.c | 5 +++++ lib/vty.c | 9 ++++++++- 5 files changed, 31 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/ChangeLog b/lib/ChangeLog index 8a92df33..e0605022 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,10 @@ +2005-09-29 Alain Ritoux + + * filer.c: show protocol name in filter_show() + * plist.c: show protocol name in vty_show_prefix_entry() + * routemap.c: show protocol name in vty_show_route_map_entry() + * vty.c: in vty_command(), show protocol name if command unknown + 2005-09-28 Alain Ritoux * md5-gnu.h: removed diff --git a/lib/filter.c b/lib/filter.c index 55bcdf4b..069919bb 100644 --- a/lib/filter.c +++ b/lib/filter.c @@ -27,6 +27,7 @@ #include "command.h" #include "sockunion.h" #include "buffer.h" +#include "log.h" struct filter_cisco { @@ -1580,6 +1581,11 @@ filter_show (struct vty *vty, const char *name, afi_t afi) if (master == NULL) return 0; + /* Print the name of the protocol */ + if (zlog_default) + vty_out (vty, "%s:%s", + zlog_proto_names[zlog_default->protocol], VTY_NEWLINE); + for (access = master->num.head; access; access = access->next) { if (name && strcmp (access->name, name) != 0) diff --git a/lib/plist.c b/lib/plist.c index 97d254f4..83c5aa0c 100644 --- a/lib/plist.c +++ b/lib/plist.c @@ -28,6 +28,7 @@ #include "sockunion.h" #include "buffer.h" #include "stream.h" +#include "log.h" /* Each prefix-list's entry. */ struct prefix_list_entry @@ -918,6 +919,10 @@ vty_show_prefix_entry (struct vty *vty, afi_t afi, struct prefix_list *plist, { struct prefix_list_entry *pentry; + /* Print the name of the protocol */ + if (zlog_default) + vty_out (vty, "%s: ", zlog_proto_names[zlog_default->protocol]); + if (dtype == normal_display) { vty_out (vty, "ip%s prefix-list %s: %d entries%s", diff --git a/lib/routemap.c b/lib/routemap.c index 0a4eeb99..a9d94f27 100644 --- a/lib/routemap.c +++ b/lib/routemap.c @@ -205,6 +205,11 @@ vty_show_route_map_entry (struct vty *vty, struct route_map *map) struct route_map_index *index; struct route_map_rule *rule; + /* Print the name of the protocol */ + if (zlog_default) + vty_out (vty, "%s:%s", zlog_proto_names[zlog_default->protocol], + VTY_NEWLINE); + for (index = map->head; index; index = index->next) { vty_out (vty, "route-map %s, %s, sequence %d%s", diff --git a/lib/vty.c b/lib/vty.c index 540f7b98..2f0bd3f6 100644 --- a/lib/vty.c +++ b/lib/vty.c @@ -388,6 +388,7 @@ vty_command (struct vty *vty, char *buf) { int ret; vector vline; + const char *protocolname; /* Split readline string up into the vector */ vline = cmd_make_strvec (buf); @@ -406,6 +407,12 @@ vty_command (struct vty *vty, char *buf) ret = cmd_execute_command (vline, vty, NULL, 0); + /* Get the name of the protocol if any */ + if (zlog_default) + protocolname = zlog_proto_names[zlog_default->protocol]; + else + protocolname = zlog_proto_names[ZLOG_NONE]; + #ifdef CONSUMED_TIME_CHECK GETRUSAGE(&after); if ((realtime = thread_consumed_time(&after, &before, &cputime)) > @@ -427,7 +434,7 @@ vty_command (struct vty *vty, char *buf) vty_out (vty, "%% Ambiguous command.%s", VTY_NEWLINE); break; case CMD_ERR_NO_MATCH: - vty_out (vty, "%% Unknown command.%s", VTY_NEWLINE); + vty_out (vty, "%% [%s] Unknown command: %s%s", protocolname, buf, VTY_NEWLINE); break; case CMD_ERR_INCOMPLETE: vty_out (vty, "%% Command incomplete.%s", VTY_NEWLINE); -- cgit v1.2.1