]> git.ipfire.org Git - thirdparty/bird.git/blobdiff - proto/rip/config.Y
Dynamic attributes definition split whether it is bitmask or not.
[thirdparty/bird.git] / proto / rip / config.Y
index e3bc4ae3294217211ae1df67a74e4438b630af79..5b5f94a0b1943785ef2fb63cddaca8fcb379bf6a 100644 (file)
@@ -42,7 +42,7 @@ CF_KEYWORDS(RIP, NG, ECMP, LIMIT, WEIGHT, INFINITY, METRIC, UPDATE, TIMEOUT,
 
 CF_GRAMMAR
 
-CF_ADDTO(proto, rip_proto)
+proto: rip_proto ;
 
 rip_variant:
    RIP    { $$ = 1; }
@@ -56,6 +56,7 @@ rip_proto_start: proto_start rip_variant
 
   init_list(&RIP_CFG->patt_list);
   RIP_CFG->rip2 = $2;
+  RIP_CFG->ecmp = rt_default_ecmp;
   RIP_CFG->infinity = RIP_DEFAULT_INFINITY;
   RIP_CFG->min_timeout_time = 60 S_;
   RIP_CFG->max_garbage_time = 60 S_;
@@ -92,6 +93,7 @@ rip_iface_start:
   RIP_IFACE->split_horizon = 1;
   RIP_IFACE->poison_reverse = 1;
   RIP_IFACE->check_zero = 1;
+  RIP_IFACE->check_link = 1;
   RIP_IFACE->ttl_security = rip_cfg_is_v2() ? 0 : 1;
   RIP_IFACE->rx_buffer = rip_cfg_is_v2() ? RIP_MAX_PKT_LENGTH : 0;
   RIP_IFACE->tx_length = rip_cfg_is_v2() ? RIP_MAX_PKT_LENGTH : 0;
@@ -184,15 +186,15 @@ rip_iface:
   rip_iface_start iface_patt_list_nopx rip_iface_opt_list rip_iface_finish;
 
 
-CF_ADDTO(dynamic_attr, RIP_METRIC { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_RIP_METRIC); })
-CF_ADDTO(dynamic_attr, RIP_TAG { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_RIP_TAG); })
+dynamic_attr: RIP_METRIC { $$ = f_new_dynamic_attr(EAF_TYPE_INT, T_INT, EA_RIP_METRIC); } ;
+dynamic_attr: RIP_TAG { $$ = f_new_dynamic_attr(EAF_TYPE_INT, T_INT, EA_RIP_TAG); } ;
 
 CF_CLI_HELP(SHOW RIP, ..., [[Show information about RIP protocol]]);
 
-CF_CLI(SHOW RIP INTERFACES, optsym opttext, [<name>] [\"<interface>\"], [[Show information about RIP interfaces]])
+CF_CLI(SHOW RIP INTERFACES, optproto opttext, [<name>] [\"<interface>\"], [[Show information about RIP interfaces]])
 { rip_show_interfaces(proto_get_named($4, &proto_rip), $5); };
 
-CF_CLI(SHOW RIP NEIGHBORS, optsym opttext, [<name>] [\"<interface>\"], [[Show information about RIP neighbors]])
+CF_CLI(SHOW RIP NEIGHBORS, optproto opttext, [<name>] [\"<interface>\"], [[Show information about RIP neighbors]])
 { rip_show_neighbors(proto_get_named($4, &proto_rip), $5); };