Allow setting debug value and `disabled' flag in protocol definition.
This commit is contained in:
parent
0cf86f0fc3
commit
bd5d0d62f1
3 changed files with 9 additions and 3 deletions
|
@ -6,8 +6,9 @@
|
||||||
|
|
||||||
router id 62.168.0.1
|
router id 62.168.0.1
|
||||||
|
|
||||||
define xyzzy = 120+10;
|
define xyzzy = 120+10
|
||||||
|
|
||||||
protocol rip MyRIP_test {
|
protocol rip MyRIP_test {
|
||||||
preference xyzzy;
|
preference xyzzy
|
||||||
|
debug all
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ static struct proto *this_proto;
|
||||||
|
|
||||||
CF_DECLS
|
CF_DECLS
|
||||||
|
|
||||||
CF_KEYWORDS(ROUTER, ID, PROTOCOL, PREFERENCE)
|
CF_KEYWORDS(ROUTER, ID, PROTOCOL, PREFERENCE, DISABLED, DEBUG, ALL, OFF)
|
||||||
|
|
||||||
%type <i> idval
|
%type <i> idval
|
||||||
|
|
||||||
|
@ -58,6 +58,10 @@ proto_item:
|
||||||
if ($2 < 0 || $2 > 255) cf_error("Invalid preference");
|
if ($2 < 0 || $2 > 255) cf_error("Invalid preference");
|
||||||
this_proto->preference = $2;
|
this_proto->preference = $2;
|
||||||
}
|
}
|
||||||
|
| DISABLED { this_proto->disabled = 1; }
|
||||||
|
| DEBUG expr { this_proto->debug = $2; }
|
||||||
|
| DEBUG ALL { this_proto->debug = ~0; }
|
||||||
|
| DEBUG OFF { this_proto->debug = 0; }
|
||||||
;
|
;
|
||||||
|
|
||||||
CF_CODE
|
CF_CODE
|
||||||
|
|
|
@ -60,6 +60,7 @@ struct proto {
|
||||||
pool *pool; /* Local objects */
|
pool *pool; /* Local objects */
|
||||||
unsigned preference; /* Default route preference */
|
unsigned preference; /* Default route preference */
|
||||||
unsigned state; /* PRS_... */
|
unsigned state; /* PRS_... */
|
||||||
|
unsigned disabled; /* Manually disabled */
|
||||||
|
|
||||||
void (*if_notify)(struct proto *, unsigned flags, struct iface *new, struct iface *old);
|
void (*if_notify)(struct proto *, unsigned flags, struct iface *new, struct iface *old);
|
||||||
void (*rt_notify)(struct proto *, struct network *net, struct rte *new, struct rte *old);
|
void (*rt_notify)(struct proto *, struct network *net, struct rte *new, struct rte *old);
|
||||||
|
|
Loading…
Reference in a new issue