diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2020-02-21 02:35:50 +0100 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2020-02-21 02:35:50 +0100 |
commit | 22c3cf955dbbb65aa29e322efa70dabb749f0232 (patch) | |
tree | 85fa6ce3ab0334d5556eadb7358c176aa4a733c1 /proto/rip/config.Y | |
parent | 3343088a7164a54b1e6c6cf9648d8036a61e9827 (diff) |
RIP: Demand circuit support (RFC 2091)
Diffstat (limited to 'proto/rip/config.Y')
-rw-r--r-- | proto/rip/config.Y | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/proto/rip/config.Y b/proto/rip/config.Y index 5b5f94a0..6cea7dd0 100644 --- a/proto/rip/config.Y +++ b/proto/rip/config.Y @@ -36,7 +36,8 @@ CF_KEYWORDS(RIP, NG, ECMP, LIMIT, WEIGHT, INFINITY, METRIC, UPDATE, TIMEOUT, GARBAGE, PORT, ADDRESS, MODE, BROADCAST, MULTICAST, PASSIVE, VERSION, SPLIT, HORIZON, POISON, REVERSE, CHECK, ZERO, TIME, BFD, AUTHENTICATION, NONE, PLAINTEXT, CRYPTOGRAPHIC, MD5, TTL, SECURITY, - RX, TX, BUFFER, LENGTH, PRIORITY, ONLY, LINK, RIP_METRIC, RIP_TAG) + RX, TX, BUFFER, LENGTH, PRIORITY, ONLY, LINK, DEMAND, CIRCUIT, + RIP_METRIC, RIP_TAG) %type <i> rip_variant rip_auth @@ -102,6 +103,7 @@ rip_iface_start: RIP_IFACE->update_time = RIP_DEFAULT_UPDATE_TIME; RIP_IFACE->timeout_time = RIP_DEFAULT_TIMEOUT_TIME; RIP_IFACE->garbage_time = RIP_DEFAULT_GARBAGE_TIME; + RIP_IFACE->rxmt_time = RIP_DEFAULT_RXMT_TIME; }; rip_iface_finish: @@ -149,9 +151,11 @@ rip_iface_item: | SPLIT HORIZON bool { RIP_IFACE->split_horizon = $3; } | POISON REVERSE bool { RIP_IFACE->poison_reverse = $3; } | CHECK ZERO bool { RIP_IFACE->check_zero = $3; } + | DEMAND CIRCUIT bool { RIP_IFACE->demand_circuit = $3; } | UPDATE TIME expr { RIP_IFACE->update_time = $3 S_; if ($3<=0) cf_error("Update time must be positive"); } | TIMEOUT TIME expr { RIP_IFACE->timeout_time = $3 S_; if ($3<=0) cf_error("Timeout time must be positive"); } | GARBAGE TIME expr { RIP_IFACE->garbage_time = $3 S_; if ($3<=0) cf_error("Garbage time must be positive"); } + | RETRANSMIT TIME expr_us { RIP_IFACE->rxmt_time = $3; if ($3<=0) cf_error("Retransmit time must be positive"); } | ECMP WEIGHT expr { RIP_IFACE->ecmp_weight = $3 - 1; if (($3<1) || ($3>256)) cf_error("ECMP weight must be in range 1-256"); } | RX BUFFER expr { RIP_IFACE->rx_buffer = $3; if (($3<256) || ($3>65535)) cf_error("RX length must be in range 256-65535"); } | TX LENGTH expr { RIP_IFACE->tx_length = $3; if (($3<256) || ($3>65535)) cf_error("TX length must be in range 256-65535"); } |