diff options
| author | Quentin Young <qlyoung@cumulusnetworks.com> | 2019-11-01 18:07:56 +0000 |
|---|---|---|
| committer | Quentin Young <qlyoung@cumulusnetworks.com> | 2019-12-09 12:17:53 -0500 |
| commit | 3cb543cf1e374197ff8d056cf8258be362fbdb5a (patch) | |
| tree | 0ec66fe2e8da2a6104459731b2eafe5cfc926254 /vrrpd/vrrp.c | |
| parent | 0dcbec72aa2b508c194ec4391b6d821ea996fb08 (diff) | |
vrrpd: handle failure to lookup parent iface
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Diffstat (limited to 'vrrpd/vrrp.c')
| -rw-r--r-- | vrrpd/vrrp.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/vrrpd/vrrp.c b/vrrpd/vrrp.c index 42bb154f98..ab66e1a286 100644 --- a/vrrpd/vrrp.c +++ b/vrrpd/vrrp.c @@ -212,6 +212,15 @@ static struct vrrp_vrouter *vrrp_lookup_by_if_mvl(struct interface *mvl_ifp) } p = if_lookup_by_index(mvl_ifp->link_ifindex, VRF_DEFAULT); + + if (!p) { + DEBUGD(&vrrp_dbg_zebra, + VRRP_LOGPFX + "Tried to lookup interface %d, parent of %s, but it doesn't exist", + mvl_ifp->link_ifindex, mvl_ifp->name); + return NULL; + } + uint8_t vrid = mvl_ifp->hw_addr[5]; return vrrp_lookup(p, vrid); |
