diff options
author | Renato Westphal <renato@opensourcerouting.org> | 2019-02-14 23:00:15 +0100 |
---|---|---|
committer | Renato Westphal <renato@opensourcerouting.org> | 2019-02-15 01:57:39 +0100 |
commit | a106a4087b47e180e32c66e139449bcf2660578f (patch) | |
tree | 42b01877fb3d52999d9fa3049b71c40da10a50a4 /pbrd/pbr_nht.h | |
parent | pbrd: fix detection of inconsistent nexthop groups (diff) | |
download | frr-a106a4087b47e180e32c66e139449bcf2660578f.tar.xz frr-a106a4087b47e180e32c66e139449bcf2660578f.zip |
pbrd: add support for interface nexthops
Now that nexthop groups can contain interface nexthops, make the
necessary adjustments in pbrd to handle them appropriately.
For normal IP nexthops, pbrd uses the NHT callbacks to validate
these nexthops (i.e. check if they are reachable). NHT can't be
used for interface nexthops though. To work around this issue,
use the interface event callbacks from the zclient API to validate
interface nexthops (an interface nexthop is valid only if the
corresponding interface is up and running).
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'pbrd/pbr_nht.h')
-rw-r--r-- | pbrd/pbr_nht.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/pbrd/pbr_nht.h b/pbrd/pbr_nht.h index d37803fbe..4ef41cede 100644 --- a/pbrd/pbr_nht.h +++ b/pbrd/pbr_nht.h @@ -117,5 +117,10 @@ extern void pbr_nht_show_nexthop_group(struct vty *vty, const char *name); */ extern void pbr_nht_nexthop_update(struct zapi_route *nhr); +/* + * When we get a callback from zebra about an interface status update. + */ +extern void pbr_nht_nexthop_interface_update(struct interface *ifp); + extern void pbr_nht_init(void); #endif |