diff options
author | ajs <ajs> | 2005-10-01 17:38:06 +0000 |
---|---|---|
committer | ajs <ajs> | 2005-10-01 17:38:06 +0000 |
commit | f52d13cb2e8e7197934d5f241f88647f9b9d78b8 (patch) | |
tree | b0aa01befc07f57ed47e83ac7dfb383284c49d26 /ospfd | |
parent | c05612b9a702d0f49c379c92deb6daab55372aea (diff) |
2005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* zebra.h: Declare new functions zebra_route_string() and
zebra_route_char().
* log.c: (zroute_lookup,zebra_route_string,zebra_route_char) New
functions to map zebra route numbers to strings.
* zebra_vty.c: (route_type_str) Remove obsolete function: use new
library function zebra_route_string() instead. Note that there
are a few differences: for IPv6 routes, we now get "ripng" and
"ospf6" instead of the old behavior ("rip" and "ospf").
(route_type_char) Remove obsolete function: ues new library function
zebra_route_char() instead. Note that there is one difference:
the old function returned 'S' for a ZEBRA_ROUTE_SYSTEM route,
whereas the new one returns 'X'.
(vty_show_ip_route_detail,vty_show_ipv6_route_detail) Replace
route_type_str() with zebra_route_string().
(vty_show_ip_route,vty_show_ipv6_route) Replace route_type_char()
with zebra_route_char().
* bgp_vty.c: (bgp_config_write_redistribute) Use new library function
zebra_route_string instead of a local hard-coded table.
* ospf6_asbr.c: Remove local hard-coded tables zroute_name and
zroute_abname. Change the ZROUTE_NAME macro to use new library
function zebra_route_string(). Remove the ZROUTE_ABNAME macro.
(ospf6_asbr_external_route_show): Replace ZROUTE_ABNAME() with
a call to zebra_route_char(), and be sure to fix the format string,
since we now have a char instead of a char *.
* ospf6_zebra.c: Remove local hard-coded tables zebra_route_name and
zebra_route_abname. Note that the zebra_route_name[] table
contained mixed-case strings, whereas the zebra_route_string()
function returns lower-case strings.
(ospf6_zebra_read_ipv6): Change debug message to use new library
function zebra_route_string() instead of zebra_route_name[].
(show_zebra): Use new library function zebra_route_string() instead
of zebra_route_name[].
* ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto.
(ospf_redist_string) New function implemented using new library
function zebra_route_string(). Note that there are a few differences
in the output that will result: the new function returns strings
that are lower-case, whereas the old table was mixed case. Also,
the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the
new function returns "ospf6".
* ospfd.h: Remove extern struct message ospf_redistributed_proto[],
and add extern const char *ospf_redist_string(u_int route_type)
instead.
* ospf_asbr.c: (ospf_external_info_add) In two messages, use
ospf_redist_string instead of LOOKUP(ospf_redistributed_proto).
* ospf_vty.c: Remove local hard-coded table distribute_str.
(config_write_ospf_redistribute,config_write_ospf_distribute): Use
new library function zebra_route_string() instead of distribute_str[].
* ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset,
ospf_redistribute_default_set,ospf_redistribute_check)
In debug messages, use ospf_redist_string() instead of
LOOKUP(ospf_redistributed_proto).
* rip_zebra.c: (config_write_rip_redistribute): Remove local hard-coded
table str[]. Replace str[] with calls to new library function
zebra_route_string().
* ripd.c: Remove local hard-coded table route_info[].
(show_ip_rip) Replace uses of str[] with calls to new library
functions zebra_route_char and zebra_route_string.
* ripng_zebra.c: (ripng_redistribute_write) Remove local hard-coded
table str[]. Replace str[i] with new library function
zebra_route_string(i).
* ripngd.c: Remove local hard-coded table route_info[].
(show_ipv6_ripng) Use new library function zebra_route_char() instead
of table route_info[].
Diffstat (limited to 'ospfd')
-rw-r--r-- | ospfd/ChangeLog | 22 | ||||
-rw-r--r-- | ospfd/ospf_asbr.c | 4 | ||||
-rw-r--r-- | ospfd/ospf_dump.c | 23 | ||||
-rw-r--r-- | ospfd/ospf_vty.c | 6 | ||||
-rw-r--r-- | ospfd/ospf_zebra.c | 12 | ||||
-rw-r--r-- | ospfd/ospfd.h | 2 |
6 files changed, 41 insertions, 28 deletions
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog index 2e288a7d..7d56bfe8 100644 --- a/ospfd/ChangeLog +++ b/ospfd/ChangeLog @@ -1,3 +1,25 @@ +2005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu> + + * ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto. + (ospf_redist_string) New function implemented using new library + function zebra_route_string(). Note that there are a few differences + in the output that will result: the new function returns strings + that are lower-case, whereas the old table was mixed case. Also, + the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the + new function returns "ospf6". + * ospfd.h: Remove extern struct message ospf_redistributed_proto[], + and add extern const char *ospf_redist_string(u_int route_type) + instead. + * ospf_asbr.c: (ospf_external_info_add) In two messages, use + ospf_redist_string instead of LOOKUP(ospf_redistributed_proto). + * ospf_vty.c: Remove local hard-coded table distribute_str. + (config_write_ospf_redistribute,config_write_ospf_distribute): Use + new library function zebra_route_string() instead of distribute_str[]. + * ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset, + ospf_redistribute_default_set,ospf_redistribute_check) + In debug messages, use ospf_redist_string() instead of + LOOKUP(ospf_redistributed_proto). + 2005-09-30 Vincent Jardin <vincent.jardin@6wind.com> * ospf_dump.c, ospf_ia.c, ospf_spf.c, ospf_ase.c: diff --git a/ospfd/ospf_asbr.c b/ospfd/ospf_asbr.c index 2eb01d0e..426fac49 100644 --- a/ospfd/ospf_asbr.c +++ b/ospfd/ospf_asbr.c @@ -152,7 +152,7 @@ ospf_external_info_add (u_char type, struct prefix_ipv4 p, { route_unlock_node (rn); zlog_warn ("Redistribute[%s]: %s/%d already exists, discard.", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), inet_ntoa (p.prefix), p.prefixlen); /* XFREE (MTYPE_OSPF_TMP, rn->info); */ return rn->info; @@ -169,7 +169,7 @@ ospf_external_info_add (u_char type, struct prefix_ipv4 p, if (IS_DEBUG_OSPF (lsa, LSA_GENERATE)) zlog_debug ("Redistribute[%s]: %s/%d external info created.", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), inet_ntoa (p.prefix), p.prefixlen); return new; } diff --git a/ospfd/ospf_dump.c b/ospfd/ospf_dump.c index 4ace02bd..ac742692 100644 --- a/ospfd/ospf_dump.c +++ b/ospfd/ospf_dump.c @@ -103,21 +103,6 @@ struct message ospf_link_state_id_type_msg[] = }; int ospf_link_state_id_type_msg_max = OSPF_MAX_LSA; -struct message ospf_redistributed_proto[] = -{ - { ZEBRA_ROUTE_SYSTEM, "System" }, - { ZEBRA_ROUTE_KERNEL, "Kernel" }, - { ZEBRA_ROUTE_CONNECT, "Connected" }, - { ZEBRA_ROUTE_STATIC, "Static" }, - { ZEBRA_ROUTE_RIP, "RIP" }, - { ZEBRA_ROUTE_RIPNG, "RIPng" }, - { ZEBRA_ROUTE_OSPF, "OSPF" }, - { ZEBRA_ROUTE_OSPF6, "OSPFv3" }, - { ZEBRA_ROUTE_BGP, "BGP" }, - { ZEBRA_ROUTE_MAX, "Default" }, -}; -int ospf_redistributed_proto_max = ZEBRA_ROUTE_MAX + 1; - struct message ospf_network_type_msg[] = { { OSPF_IFTYPE_NONE, "NONE" }, @@ -148,6 +133,14 @@ unsigned long term_debug_ospf_zebra = 0; unsigned long term_debug_ospf_nssa = 0; + +const char * +ospf_redist_string(u_int route_type) +{ + return (route_type == ZEBRA_ROUTE_MAX) ? + "Default" : zebra_route_string(route_type); +} + #define OSPF_AREA_STRING_MAXLEN 16 const char * ospf_area_name_string (struct ospf_area *area) diff --git a/ospfd/ospf_vty.c b/ospfd/ospf_vty.c index 1a2afacc..a47eca18 100644 --- a/ospfd/ospf_vty.c +++ b/ospfd/ospf_vty.c @@ -7288,8 +7288,6 @@ config_write_virtual_link (struct vty *vty, struct ospf *ospf) } -const char *distribute_str[] = { "system", "kernel", "connected", "static", - "rip", "ripng", "ospf", "ospf6", "isis", "bgp"}; static int config_write_ospf_redistribute (struct vty *vty, struct ospf *ospf) { @@ -7299,7 +7297,7 @@ config_write_ospf_redistribute (struct vty *vty, struct ospf *ospf) for (type = 0; type < ZEBRA_ROUTE_MAX; type++) if (type != zclient->redist_default && zclient->redist[type]) { - vty_out (vty, " redistribute %s", distribute_str[type]); + vty_out (vty, " redistribute %s", zebra_route_string(type)); if (ospf->dmetric[type].value >= 0) vty_out (vty, " metric %d", ospf->dmetric[type].value); @@ -7336,7 +7334,7 @@ config_write_ospf_distribute (struct vty *vty, struct ospf *ospf) if (ospf->dlist[type].name) vty_out (vty, " distribute-list %s out %s%s", ospf->dlist[type].name, - distribute_str[type], VTY_NEWLINE); + zebra_route_string(type), VTY_NEWLINE); /* default-information print. */ if (ospf->default_originate != DEFAULT_ORIGINATE_NONE) diff --git a/ospfd/ospf_zebra.c b/ospfd/ospf_zebra.c index 2072b177..0d98008d 100644 --- a/ospfd/ospf_zebra.c +++ b/ospfd/ospf_zebra.c @@ -527,7 +527,7 @@ ospf_redistribute_set (struct ospf *ospf, int type, int mtype, int mvalue) if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: Refresh Type[%d], Metric[%d]", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), metric_type (ospf, type), metric_value (ospf, type)); return CMD_SUCCESS; @@ -540,7 +540,7 @@ ospf_redistribute_set (struct ospf *ospf, int type, int mtype, int mvalue) if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: Start Type[%d], Metric[%d]", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), metric_type (ospf, type), metric_value (ospf, type)); ospf_asbr_status_update (ospf, ++ospf->redistribute); @@ -561,7 +561,7 @@ ospf_redistribute_unset (struct ospf *ospf, int type) if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: Stop", - LOOKUP (ospf_redistributed_proto, type)); + ospf_redist_string(type)); ospf->dmetric[type].type = -1; ospf->dmetric[type].value = -1; @@ -597,7 +597,7 @@ ospf_redistribute_default_set (struct ospf *ospf, int originate, if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: Refresh Type[%d], Metric[%d]", - LOOKUP (ospf_redistributed_proto, DEFAULT_ROUTE), + ospf_redist_string(DEFAULT_ROUTE), metric_type (ospf, DEFAULT_ROUTE), metric_value (ospf, DEFAULT_ROUTE)); return CMD_SUCCESS; @@ -713,7 +713,7 @@ ospf_redistribute_check (struct ospf *ospf, { if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: %s/%d filtered by ditribute-list.", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), inet_ntoa (p->prefix), p->prefixlen); return 0; } @@ -734,7 +734,7 @@ ospf_redistribute_check (struct ospf *ospf, ei->route_map_set = save_values; if (IS_DEBUG_OSPF (zebra, ZEBRA_REDISTRIBUTE)) zlog_debug ("Redistribute[%s]: %s/%d filtered by route-map.", - LOOKUP (ospf_redistributed_proto, type), + ospf_redist_string(type), inet_ntoa (p->prefix), p->prefixlen); return 0; } diff --git a/ospfd/ospfd.h b/ospfd/ospfd.h index 95e4751d..7a2649f6 100644 --- a/ospfd/ospfd.h +++ b/ospfd/ospfd.h @@ -516,7 +516,6 @@ extern struct message ospf_ism_state_msg[]; extern struct message ospf_nsm_state_msg[]; extern struct message ospf_lsa_type_msg[]; extern struct message ospf_link_state_id_type_msg[]; -extern struct message ospf_redistributed_proto[]; extern struct message ospf_network_type_msg[]; extern int ospf_ism_state_msg_max; extern int ospf_nsm_state_msg_max; @@ -529,6 +528,7 @@ extern struct thread_master *master; extern int ospf_zlog; /* Prototypes. */ +extern const char *ospf_redist_string(u_int route_type); extern struct ospf *ospf_lookup (void); extern struct ospf *ospf_get (void); extern void ospf_finish (struct ospf *); |