summaryrefslogtreecommitdiff
path: root/nest/mpls.Y
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2023-10-05 17:54:43 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2023-10-05 17:54:43 +0200
commitba01a6f2e66d03eb5d9426fdf4973f30e09c5710 (patch)
tree72d0b5c78acd009fb7756dfb960321b789552931 /nest/mpls.Y
parentde09fda5dcef16bf50663f7ffb56074e6ad20b5a (diff)
MPLS: Handle compatibility with old configs
Old configs do not define MPLS domains and may use a static protocol to define static MPLS routes. When MPLS channel is the only channel of static protocol, handle it as a main channel. Also, define implicit MPLS domain if needed and none is defined.
Diffstat (limited to 'nest/mpls.Y')
-rw-r--r--nest/mpls.Y6
1 files changed, 5 insertions, 1 deletions
diff --git a/nest/mpls.Y b/nest/mpls.Y
index 0e755fec..726a834a 100644
--- a/nest/mpls.Y
+++ b/nest/mpls.Y
@@ -99,7 +99,11 @@ mpls_channel_start: MPLS
$$ = this_channel = channel_config_get(&channel_mpls, net_label[NET_MPLS], NET_MPLS, this_proto);
if (EMPTY_LIST(new_config->mpls_domains))
- cf_error("No MPLS domain defined");
+ {
+ int counter = 0;
+ mpls_domain_config_new(cf_default_name(new_config, "mpls%d", &counter));
+ cf_warn("No MPLS domain defined");
+ }
/* Default values for new channel */
if (!MPLS_CC->domain)