BSE_UNINSTALL,
/** Install the BFD session configuration. */
BSE_INSTALL,
+ /** We should install but it couldn't because of a error talking to zebra */
+ BSE_VALID_FOR_INSTALL,
};
/**
vrf_id_to_name(bsp->args.vrf_id), bsp->args.vrf_id,
bsp->lastev == BSE_INSTALL ? "installed"
: "uninstalled");
+
+ bsp->installed = false;
+ if (bsp->lastev == BSE_INSTALL)
+ bsp->lastev = BSE_VALID_FOR_INSTALL;
}
}
/* Replay all activated peers. */
TAILQ_FOREACH (bsp, &bsglobal.bsplist, entry) {
/* Skip not installed sessions. */
- if (!bsp->installed)
+ if (!bsp->installed && bsp->lastev != BSE_VALID_FOR_INSTALL)
continue;
/* We are reconnecting, so we must send installation. */