]> git.puffer.fish Git - mirror/frr.git/commitdiff
pim: handle return code to fix a couple of coverity issues 17673/head
authorJafar Al-Gharaibeh <jafar@atcorp.com>
Wed, 18 Dec 2024 22:58:45 +0000 (16:58 -0600)
committerJafar Al-Gharaibeh <jafar@atcorp.com>
Thu, 19 Dec 2024 03:52:48 +0000 (21:52 -0600)
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
pimd/pim_rp.c
pimd/pim_tib.c

index 17e9c3f2683ed015e33c3511b190fbfaee4faf95..4fd19b5dbe139d41123dd06151637a5fc8636356 100644 (file)
@@ -960,8 +960,9 @@ void pim_rp_setup(struct pim_instance *pim)
                if (!pim_nht_lookup_ecmp(pim, &rp_info->rp.source_nexthop, nht_p, &rp_info->group,
                                         true)) {
                        if (PIM_DEBUG_PIM_NHT_RP)
-                               zlog_debug(
-                                       "Unable to lookup nexthop for rp specified");
+                               zlog_debug("%s: unable to lookup nexthop for rp %pPA", __func__,
+                                          &rp_info->rp.rpf_addr);
+
                        pim_nht_rp_del(rp_info);
                }
        }
@@ -1107,7 +1108,12 @@ struct pim_rpf *pim_rp_g(struct pim_instance *pim, pim_addr group)
                                __func__, &nht_p, &rp_info->group);
                pim_nht_find_or_track(pim, nht_p, NULL, rp_info, NULL);
                pim_rpf_set_refresh_time(pim);
-               pim_nht_lookup_ecmp(pim, &rp_info->rp.source_nexthop, nht_p, &rp_info->group, true);
+               if (!pim_nht_lookup_ecmp(pim, &rp_info->rp.source_nexthop, nht_p, &rp_info->group,
+                                        true))
+                       if (PIM_DEBUG_PIM_NHT_RP)
+                               zlog_debug("%s: unable to lookup nexthop for rp %pPA", __func__,
+                                          &rp_info->rp.rpf_addr);
+
                return (&rp_info->rp);
        }
 
index e9992691a55e5f09300be53d4f1f2054f39dd11d..d067abf45a8ae4415b8622873e16e67b693c8664 100644 (file)
@@ -35,7 +35,11 @@ tib_sg_oil_setup(struct pim_instance *pim, pim_sgaddr sg, struct interface *oif)
        up = pim_upstream_find(pim, &sg);
        if (up) {
                memcpy(&nexthop, &up->rpf.source_nexthop, sizeof(struct pim_nexthop));
-               pim_nht_lookup_ecmp(pim, &nexthop, vif_source, &grp, false);
+               if (!pim_nht_lookup_ecmp(pim, &nexthop, vif_source, &grp, false))
+                       if (PIM_DEBUG_PIM_NHT_RP)
+                               zlog_debug("%s: Nexthop Lookup failed vif_src:%pPA, sg.src:%pPA, sg.grp:%pPA",
+                                          __func__, &vif_source, &sg.src, &sg.grp);
+
                if (nexthop.interface)
                        input_iface_vif_index = pim_if_find_vifindex_by_ifindex(
                                pim, nexthop.interface->ifindex);