summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Ryzhov <idryzhov@gmail.com>2021-07-10 09:26:58 +0300
committerGitHub <noreply@github.com>2021-07-10 09:26:58 +0300
commit91b35264c2906e05ed92d197a80b6e1962dbba38 (patch)
tree0a53692d992b4972c2895732bb71da5f0d892159
parentcf420d4b4857fc20d37d46d3653874092c6e54e8 (diff)
parent7ea5c53477164104121550365557afac84df03bd (diff)
Merge pull request #9004 from anlancs/fix-staticd-blackhole
-rw-r--r--staticd/static_routes.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/staticd/static_routes.c b/staticd/static_routes.c
index cdafc4a76a..58a29ad25b 100644
--- a/staticd/static_routes.c
+++ b/staticd/static_routes.c
@@ -278,6 +278,9 @@ static_add_nexthop(struct route_node *rn, struct static_path *pn, safi_t safi,
nh->type = type;
nh->color = color;
+ if (nh->type == STATIC_BLACKHOLE)
+ nh->bh_type = STATIC_BLACKHOLE_NULL;
+
nh->nh_vrf_id = nh_svrf ? nh_svrf->vrf->vrf_id : VRF_UNKNOWN;
strlcpy(nh->nh_vrfname, nh_vrf, sizeof(nh->nh_vrfname));
@@ -325,6 +328,7 @@ static_add_nexthop(struct route_node *rn, struct static_path *pn, safi_t safi,
switch (nh->type) {
case STATIC_IPV4_GATEWAY:
case STATIC_IPV6_GATEWAY:
+ case STATIC_BLACKHOLE:
break;
case STATIC_IPV4_GATEWAY_IFNAME:
case STATIC_IPV6_GATEWAY_IFNAME:
@@ -337,9 +341,6 @@ static_add_nexthop(struct route_node *rn, struct static_path *pn, safi_t safi,
ifname);
break;
- case STATIC_BLACKHOLE:
- nh->bh_type = STATIC_BLACKHOLE_NULL;
- break;
case STATIC_IFNAME:
ifp = if_lookup_by_name(ifname, nh->nh_vrf_id);
if (ifp && ifp->ifindex != IFINDEX_INTERNAL) {