diff options
Diffstat (limited to 'pimd/pim_rpf.c')
| -rw-r--r-- | pimd/pim_rpf.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/pimd/pim_rpf.c b/pimd/pim_rpf.c index 0f5fab0d93..f454ac59c1 100644 --- a/pimd/pim_rpf.c +++ b/pimd/pim_rpf.c @@ -225,11 +225,14 @@ enum pim_rpf_result pim_rpf_update(struct pim_upstream *up, struct pim_rpf *old, if (pnc.nexthop_num) { //Compute PIM RPF using Cached nexthop - pim_ecmp_nexthop_search (&pnc, &up->rpf.source_nexthop, - &src, &grp, - !PIM_UPSTREAM_FLAG_TEST_FHR (up->flags) && - !PIM_UPSTREAM_FLAG_TEST_SRC_IGMP (up-> - flags)); + if (pim_ecmp_nexthop_search (&pnc, &up->rpf.source_nexthop, + &src, &grp, + !PIM_UPSTREAM_FLAG_TEST_FHR (up->flags) && + !PIM_UPSTREAM_FLAG_TEST_SRC_IGMP (up->flags))) + + { + return PIM_RPF_FAILURE; + } } } else |
