summaryrefslogtreecommitdiffstats
path: root/ospfd
diff options
context:
space:
mode:
authorChirag Shah <chirag@cumulusnetworks.com>2018-03-06 21:55:59 +0100
committerChirag Shah <chirag@cumulusnetworks.com>2018-03-08 22:15:58 +0100
commit0c74bbe03e7e47af698e3f74a4eddec190193063 (patch)
tree12e29b3977ced79c9dfab8bb642b2f5df941e8b6 /ospfd
parentzebra: set vrf as loopback upon interface add (diff)
downloadfrr-0c74bbe03e7e47af698e3f74a4eddec190193063.tar.xz
frr-0c74bbe03e7e47af698e3f74a4eddec190193063.zip
ospfd: Treat vrf interface as loopback type
Ticket:CM-19914 Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Diffstat (limited to 'ospfd')
-rw-r--r--ospfd/ospf_interface.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ospfd/ospf_interface.c b/ospfd/ospf_interface.c
index e19bfe7f5..0305305b8 100644
--- a/ospfd/ospf_interface.c
+++ b/ospfd/ospf_interface.c
@@ -459,7 +459,7 @@ struct ospf_interface *ospf_if_lookup_recv_if(struct ospf *ospf,
if (oi->type == OSPF_IFTYPE_VIRTUALLINK)
continue;
- if (if_is_loopback(oi->ifp))
+ if (if_is_loopback(oi->ifp) || if_is_vrf(oi->ifp))
continue;
if (CHECK_FLAG(oi->connected->flags, ZEBRA_IFA_UNNUMBERED))
@@ -703,7 +703,7 @@ static int ospf_if_delete_hook(struct interface *ifp)
int ospf_if_is_enable(struct ospf_interface *oi)
{
- if (!if_is_loopback(oi->ifp))
+ if (!(if_is_loopback(oi->ifp) || if_is_vrf(oi->ifp)))
if (if_is_up(oi->ifp))
return 1;
@@ -1206,7 +1206,7 @@ u_char ospf_default_iftype(struct interface *ifp)
{
if (if_is_pointopoint(ifp))
return OSPF_IFTYPE_POINTOPOINT;
- else if (if_is_loopback(ifp))
+ else if (if_is_loopback(ifp) || if_is_vrf(ifp))
return OSPF_IFTYPE_LOOPBACK;
else
return OSPF_IFTYPE_BROADCAST;