diff options
author | Jafar Al-Gharaibeh <Jafaral@users.noreply.github.com> | 2021-05-21 17:16:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-21 17:16:03 +0200 |
commit | 10d52ac7f71a978fe6ade9b50b6d3b9d248114f0 (patch) | |
tree | 10e1b87cc006b44da59965f18700c0e05fbdff5e /pimd | |
parent | Merge pull request #8705 from donaldsharp/ospf_sr_topo1_speedup (diff) | |
parent | pimd: Fix rare crash situation (diff) | |
download | frr-10d52ac7f71a978fe6ade9b50b6d3b9d248114f0.tar.xz frr-10d52ac7f71a978fe6ade9b50b6d3b9d248114f0.zip |
Merge pull request #8671 from donaldsharp/pim_possible_crash
Pim possible crash
Diffstat (limited to 'pimd')
-rw-r--r-- | pimd/pim_igmp.c | 4 | ||||
-rw-r--r-- | pimd/pim_oil.c | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/pimd/pim_igmp.c b/pimd/pim_igmp.c index f2b909e26..73dcdbddb 100644 --- a/pimd/pim_igmp.c +++ b/pimd/pim_igmp.c @@ -1028,8 +1028,8 @@ struct igmp_sock *pim_igmp_sock_add(struct list *igmp_sock_list, sin.sin_addr = ifaddr; sin.sin_port = 0; if (bind(fd, (struct sockaddr *) &sin, sizeof(sin)) != 0) { - zlog_warn("Could not bind IGMP socket for %pI4 on %s", - &ifaddr, ifp->name); + zlog_warn("Could not bind IGMP socket for %pI4 on %s: %s(%d)", + &ifaddr, ifp->name, strerror(errno), errno); close(fd); return NULL; diff --git a/pimd/pim_oil.c b/pimd/pim_oil.c index 0a4e3e1a6..a3ca44bb5 100644 --- a/pimd/pim_oil.c +++ b/pimd/pim_oil.c @@ -426,9 +426,11 @@ static void pim_channel_update_mute(struct channel_oil *c_oil) struct pim_interface *pim_reg_ifp; struct pim_interface *vxlan_ifp; - pim_reg_ifp = c_oil->pim->regiface->info; - if (pim_reg_ifp) - pim_channel_update_oif_mute(c_oil, pim_reg_ifp); + if (c_oil->pim->regiface) { + pim_reg_ifp = c_oil->pim->regiface->info; + if (pim_reg_ifp) + pim_channel_update_oif_mute(c_oil, pim_reg_ifp); + } vxlan_ifp = pim_vxlan_get_term_ifp(c_oil->pim); if (vxlan_ifp) pim_channel_update_oif_mute(c_oil, vxlan_ifp); |