diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2011-09-24 02:21:52 +0200 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2011-09-24 02:24:34 +0200 |
commit | 4116db182d8d80d26902a8b33f82664bb5770066 (patch) | |
tree | cd8b81a9514c6c78af09f4c7d9e1a4ba2c3f1b8e /proto/static/config.Y | |
parent | 4271f2b77ed3862a2356475dc18b0cf5c1086364 (diff) |
Implements static recursive routes.
Diffstat (limited to 'proto/static/config.Y')
-rw-r--r-- | proto/static/config.Y | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/proto/static/config.Y b/proto/static/config.Y index 46debbc3..77d2419f 100644 --- a/proto/static/config.Y +++ b/proto/static/config.Y @@ -18,7 +18,7 @@ static struct static_route *this_srt, *this_srt_nh, *last_srt_nh; CF_DECLS CF_KEYWORDS(STATIC, ROUTE, VIA, DROP, REJECT, PROHIBIT, PREFERENCE, CHECK, LINK) -CF_KEYWORDS(MULTIPATH, WEIGHT) +CF_KEYWORDS(MULTIPATH, WEIGHT, RECURSIVE, IGP, TABLE) CF_GRAMMAR @@ -35,6 +35,7 @@ static_proto: static_proto_start proto_name '{' | static_proto proto_item ';' | static_proto CHECK LINK bool ';' { STATIC_CFG->check_link = $4; } + | static_proto IGP TABLE rtable ';' { STATIC_CFG->igp_table = $4; } | static_proto stat_route ';' ; @@ -79,6 +80,10 @@ stat_route: | stat_route0 MULTIPATH stat_multipath { this_srt->dest = RTD_MULTIPATH; } + | stat_route0 RECURSIVE ipa { + this_srt->dest = RTDX_RECURSIVE; + this_srt->via = $3; + } | stat_route0 DROP { this_srt->dest = RTD_BLACKHOLE; } | stat_route0 REJECT { this_srt->dest = RTD_UNREACHABLE; } | stat_route0 PROHIBIT { this_srt->dest = RTD_PROHIBIT; } |