summaryrefslogtreecommitdiff
path: root/conf
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2012-01-01 12:02:20 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2012-01-01 12:14:42 +0100
commit69a8259c5e438f949bd58b1a2f8e1d12a49f9216 (patch)
tree5d685368ce58732ce4a9133b5f5bc43b20b78476 /conf
parentc32c3f88f0c8788118ed3701c11a5aea2aaf9356 (diff)
Allows sticky link-local neighbors.
Allows using NEF_STICKY neighbors with link-local addresses. This is used for static route nexthops, they can be specified like fe80::1%eth0 .
Diffstat (limited to 'conf')
-rw-r--r--conf/confbase.Y7
1 files changed, 7 insertions, 0 deletions
diff --git a/conf/confbase.Y b/conf/confbase.Y
index 499a770e..14893f47 100644
--- a/conf/confbase.Y
+++ b/conf/confbase.Y
@@ -50,6 +50,7 @@ CF_DECLS
struct f_path_mask *h;
struct password_item *p;
struct rt_show_data *ra;
+ struct iface *iface;
void *g;
bird_clock_t time;
struct prefix px;
@@ -65,6 +66,7 @@ CF_DECLS
%token <a> IPA
%token <s> SYM
%token <t> TEXT
+%type <iface> ipa_scope
%type <i> expr bool pxlen
%type <time> datetime
@@ -140,6 +142,11 @@ ipa:
}
;
+ipa_scope:
+ /* empty */ { $$ = NULL; }
+ | '%' SYM { $$ = if_get_by_name($2->name); }
+ ;
+
prefix:
ipa pxlen {
if (!ip_is_prefix($1, $2)) cf_error("Invalid prefix");