From: Igor Ryzhov Date: Fri, 8 Oct 2021 21:22:31 +0000 (+0300) Subject: lib: set type for newly created interfaces X-Git-Tag: base_8.2~351^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=8975bbbdd6885b8a99be4893291a82150c254452;p=matthieu%2Ffrr.git lib: set type for newly created interfaces Currently, the ll_type is set only in `netlink_interface` which is executed only during startup. If the interface is created when the FRR is already running, the type is not stored. Fixes #1164. Signed-off-by: Igor Ryzhov --- diff --git a/zebra/if_netlink.c b/zebra/if_netlink.c index 15645d024d..9385418655 100644 --- a/zebra/if_netlink.c +++ b/zebra/if_netlink.c @@ -1832,6 +1832,8 @@ int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup) /* Update link. */ zebra_if_update_link(ifp, link_ifindex, ns_id); + ifp->ll_type = + netlink_to_zebra_link_type(ifi->ifi_type); netlink_interface_update_hw_addr(tb, ifp); /* Inform clients, install any configured addresses. */ @@ -1899,6 +1901,8 @@ int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup) /* Update link. */ zebra_if_update_link(ifp, link_ifindex, ns_id); + ifp->ll_type = + netlink_to_zebra_link_type(ifi->ifi_type); netlink_interface_update_hw_addr(tb, ifp); if (if_is_no_ptm_operative(ifp)) {