sharpd: fix deleting nhid when suppressing nexthop from nh group

When no nexthops are in a nexthop group, two successive events are
sent: NHG_DEL and NHG_ADD, but only the NHG_DEL one is necessary.
Fixes this by returning in the nhg_add() function.

Fixes: 82beaf6ae5 ("sharpd: fix deleting nhid when suppressing nexthop from nh group")

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
This commit is contained in:
Philippe Guibert 2023-12-04 16:03:31 +01:00
parent 3f4c682e48
commit 82c1d82d77

View file

@ -567,11 +567,11 @@ void nhg_add(uint32_t id, const struct nexthop_group *nhg,
zlog_debug("%s: nhg %u: no nexthops, deleting nexthop group", __func__,
id);
zclient_nhg_send(zclient, ZEBRA_NHG_DEL, &api_nhg);
} else {
zlog_debug("%s: nhg %u not sent: no valid nexthops", __func__,
id);
is_valid = false;
return;
}
zlog_debug("%s: nhg %u not sent: no valid nexthops", __func__,
id);
is_valid = false;
goto done;
}