From: Maria Matejka Date: Wed, 8 Nov 2023 21:14:19 +0000 (+0100) Subject: Merge branch 'mq-aggregator-for-v3' into thread-next X-Git-Tag: v3.0.0~349 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49ee823f820916f87314baf6c745b9758ae927af;p=thirdparty%2Fbird.git Merge branch 'mq-aggregator-for-v3' into thread-next --- 49ee823f820916f87314baf6c745b9758ae927af diff --cc proto/static/static.c index f30aff71d,ed29ff763..7d0ea917b --- a/proto/static/static.c +++ b/proto/static/static.c @@@ -484,9 -480,12 +485,11 @@@ static_init(struct proto_config *CF P->main_channel = proto_add_channel(P, proto_cf_main_channel(CF)); + proto_configure_channel(P, &P->mpls_channel, proto_cf_mpls_channel(CF)); + - P->neigh_notify = static_neigh_notify; + P->iface_sub.neigh_notify = static_neigh_notify; P->reload_routes = static_reload_routes; - P->rte_better = static_rte_better; - P->rte_mergable = static_rte_mergable; + P->sources.class = &static_rte_owner_class; if (cf->igp_table_ip4) p->igp_table_ip4 = cf->igp_table_ip4->table; @@@ -514,6 -516,8 +517,8 @@@ static_start(struct proto *P BUFFER_INIT(p->marked, p->p.pool, 4); - proto_setup_mpls_map(P, RTS_STATIC, 1); ++ proto_setup_mpls_map(P, RTS_STATIC); + /* We have to go UP before routes could be installed */ proto_notify_state(P, PS_UP); @@@ -531,6 -534,8 +536,8 @@@ static_shutdown(struct proto *P struct static_config *cf = (void *) P->cf; struct static_route *r; - proto_shutdown_mpls_map(P, 1); ++ proto_shutdown_mpls_map(P); + /* Just reset the flag, the routes will be flushed by the nest */ WALK_LIST(r, cf->routes) static_reset_rte(p, r); @@@ -627,9 -638,12 +634,12 @@@ static_reconfigure(struct proto *P, str (IGP_TABLE(o, ip6) != IGP_TABLE(n, ip6))) return 0; - if (!proto_configure_channel(P, &P->main_channel, proto_cf_main_channel(CF))) + if (!proto_configure_channel(P, &P->main_channel, proto_cf_main_channel(CF)) || + !proto_configure_channel(P, &P->mpls_channel, proto_cf_mpls_channel(CF))) return 0; - proto_setup_mpls_map(P, RTS_STATIC, 1); ++ proto_setup_mpls_map(P, RTS_STATIC); + p->p.cf = CF; /* Reset route lists in neighbor entries */