Nest: Fixes symbols in router id

Thanks to Peter Hudec for noticing the problem.
This commit is contained in:
Ondrej Zajicek 2015-07-18 19:30:35 +02:00
parent 6683d42d5b
commit 17661ff934

View file

@ -94,6 +94,7 @@ rtrid:
idval: idval:
NUM { $$ = $1; } NUM { $$ = $1; }
| '(' term ')' { $$ = f_eval_int($2); }
| RTRID | RTRID
| IPA { | IPA {
#ifndef IPV6 #ifndef IPV6
@ -102,6 +103,16 @@ idval:
cf_error("Router IDs must be entered as hexadecimal numbers or IPv4 addresses in IPv6 version"); cf_error("Router IDs must be entered as hexadecimal numbers or IPv4 addresses in IPv6 version");
#endif #endif
} }
| SYM {
if ($1->class == (SYM_CONSTANT | T_INT) || $1->class == (SYM_CONSTANT | T_QUAD))
$$ = SYM_VAL($1).i;
#ifndef IPV6
else if ($1->class == (SYM_CONSTANT | T_IP))
$$ = SYM_VAL($1).px.ip;
#endif
else
cf_error("Number of IPv4 address constant expected");
}
; ;