Some ospfd fixes - [quagga-dev 1032], [quagga-dev 1048], [quagga-dev 1058].

This commit is contained in:
hasso 2004-04-20 17:25:12 +00:00
parent 9b87e41cae
commit 8585d4e5e2
4 changed files with 20 additions and 4 deletions

View File

@ -1,3 +1,11 @@
2004-04-20 Hasso Tepper <hasso@estpak.ee>
* ospfd.c: Unset NP flag if area is going to be normal or stub.
Fixes UNH OSPF_NSSA.1.2a comment.
* ospf_abr.c: Originate default into stub/nssa area even if
summaries are disabled.
* ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
2004-04-19 Hasso Tepper <hasso@estpak.ee> 2004-04-19 Hasso Tepper <hasso@estpak.ee>
* ospf_vty.c: Don't warn that export- and import-list can't be * ospf_vty.c: Don't warn that export- and import-list can't be

View File

@ -1628,9 +1628,6 @@ ospf_abr_announce_stub_defaults (struct ospf *ospf)
if (OSPF_IS_AREA_BACKBONE (area)) if (OSPF_IS_AREA_BACKBONE (area))
continue; /* Sanity Check */ continue; /* Sanity Check */
if (area->no_summary)
continue;
if (IS_DEBUG_OSPF_EVENT) if (IS_DEBUG_OSPF_EVENT)
zlog_info ("ospf_abr_announce_stub_defaults(): " zlog_info ("ospf_abr_announce_stub_defaults(): "
"announcing 0.0.0.0/0 to area %s", "announcing 0.0.0.0/0 to area %s",

View File

@ -794,6 +794,9 @@ ospf_zebra_read_ipv4 (int command, struct zclient *zclient,
p.prefixlen = stream_getc (s); p.prefixlen = stream_getc (s);
stream_get (&p.prefix, s, PSIZE (p.prefixlen)); stream_get (&p.prefix, s, PSIZE (p.prefixlen));
if (IPV4_NET127(ntohl(p.prefix.s_addr)))
return 0;
/* Nexthop, ifindex, distance, metric. */ /* Nexthop, ifindex, distance, metric. */
if (CHECK_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP)) if (CHECK_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP))
{ {

View File

@ -982,7 +982,12 @@ ospf_area_type_set (struct ospf_area *area, int type)
for (node = listhead (area->oiflist); node; nextnode (node)) for (node = listhead (area->oiflist); node; nextnode (node))
if ((oi = getdata (node)) != NULL) if ((oi = getdata (node)) != NULL)
if (oi->nbr_self != NULL) if (oi->nbr_self != NULL)
{
#ifdef HAVE_NSSA
UNSET_FLAG (oi->nbr_self->options, OSPF_OPTION_NP);
#endif /* HAVE_NSSA */
SET_FLAG (oi->nbr_self->options, OSPF_OPTION_E); SET_FLAG (oi->nbr_self->options, OSPF_OPTION_E);
}
break; break;
case OSPF_AREA_STUB: case OSPF_AREA_STUB:
for (node = listhead (area->oiflist); node; nextnode (node)) for (node = listhead (area->oiflist); node; nextnode (node))
@ -991,6 +996,9 @@ ospf_area_type_set (struct ospf_area *area, int type)
{ {
if (IS_DEBUG_OSPF_EVENT) if (IS_DEBUG_OSPF_EVENT)
zlog_info ("setting options on %s accordingly", IF_NAME (oi)); zlog_info ("setting options on %s accordingly", IF_NAME (oi));
#ifdef HAVE_NSSA
UNSET_FLAG (oi->nbr_self->options, OSPF_OPTION_NP);
#endif /* HAVE_NSSA */
UNSET_FLAG (oi->nbr_self->options, OSPF_OPTION_E); UNSET_FLAG (oi->nbr_self->options, OSPF_OPTION_E);
if (IS_DEBUG_OSPF_EVENT) if (IS_DEBUG_OSPF_EVENT)
zlog_info ("options set on %s: %x", zlog_info ("options set on %s: %x",