summaryrefslogtreecommitdiff
path: root/pimd
diff options
context:
space:
mode:
authorDon Slice <dslice@cumulusnetworks.com>2018-08-21 18:03:00 +0000
committerDon Slice <dslice@cumulusnetworks.com>2018-08-23 18:49:48 +0000
commitfec4ca191ef4e7d9576feba756f728b21819ec45 (patch)
treed2be957988ae75889b55dd385d45916f7b237c7c /pimd
parent3391232343ee5a92b17755bd29d3a246a660f3be (diff)
zebra: if multiple connecteds, select loopback or vrf if present
Signed-off-by: Don Slice <dslice@cumulusnetworks.com>
Diffstat (limited to 'pimd')
-rw-r--r--pimd/pim_iface.c8
-rw-r--r--pimd/pim_iface.h2
-rw-r--r--pimd/pim_pim.c4
3 files changed, 2 insertions, 12 deletions
diff --git a/pimd/pim_iface.c b/pimd/pim_iface.c
index e79e91d7df..72ccf3ab1e 100644
--- a/pimd/pim_iface.c
+++ b/pimd/pim_iface.c
@@ -1495,14 +1495,6 @@ int pim_if_connected_to_source(struct interface *ifp, struct in_addr src)
return 0;
}
-bool pim_if_is_loopback(struct interface *ifp)
-{
- if (if_is_loopback(ifp) || if_is_vrf(ifp))
- return true;
-
- return false;
-}
-
bool pim_if_is_vrf_device(struct interface *ifp)
{
if (if_is_vrf(ifp))
diff --git a/pimd/pim_iface.h b/pimd/pim_iface.h
index cf025cbd4a..02926a6973 100644
--- a/pimd/pim_iface.h
+++ b/pimd/pim_iface.h
@@ -207,8 +207,6 @@ void pim_if_create_pimreg(struct pim_instance *pim);
int pim_if_connected_to_source(struct interface *ifp, struct in_addr src);
int pim_update_source_set(struct interface *ifp, struct in_addr source);
-bool pim_if_is_loopback(struct interface *ifp);
-
bool pim_if_is_vrf_device(struct interface *ifp);
int pim_if_ifchannel_count(struct pim_interface *pim_ifp);
diff --git a/pimd/pim_pim.c b/pimd/pim_pim.c
index b103da2e1b..7113d5405e 100644
--- a/pimd/pim_pim.c
+++ b/pimd/pim_pim.c
@@ -655,7 +655,7 @@ static int pim_hello_send(struct interface *ifp, uint16_t holdtime)
{
struct pim_interface *pim_ifp = ifp->info;
- if (pim_if_is_loopback(ifp))
+ if (if_is_loopback_or_vrf(ifp))
return 0;
if (hello_send(ifp, holdtime)) {
@@ -757,7 +757,7 @@ void pim_hello_restart_triggered(struct interface *ifp)
/*
* No need to ever start loopback or vrf device hello's
*/
- if (pim_if_is_loopback(ifp))
+ if (if_is_loopback_or_vrf(ifp))
return;
/*