mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 01:31:55 +00:00
First option into config added. :-)
This commit is contained in:
parent
62924172ae
commit
3fa5722def
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* BIRD -- OSPF Configuration
|
||||
*
|
||||
* (c) 1999 Ondrej Filip <feela@network.cz>
|
||||
* (c) 1999-2000 Ondrej Filip <feela@network.cz>
|
||||
*
|
||||
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||
*/
|
||||
@ -10,10 +10,14 @@ CF_HDR
|
||||
|
||||
#include "proto/ospf/ospf.h"
|
||||
|
||||
CF_DEFINES
|
||||
|
||||
#define OSPF_CFG ((struct ospf_config *) this_proto)
|
||||
|
||||
CF_DECLS
|
||||
|
||||
CF_KEYWORDS(OSPF, AREA, OSPF_METRIC1, OSPF_METRIC2, OSPF_TAG)
|
||||
CF_KEYWORDS(NEIGHBORS)
|
||||
CF_KEYWORDS(NEIGHBORS, RFC1583COMPAT)
|
||||
|
||||
%type <t> opttext
|
||||
|
||||
@ -29,8 +33,9 @@ ospf_proto_start: proto_start OSPF {
|
||||
|
||||
ospf_proto:
|
||||
ospf_proto_start proto_name '{'
|
||||
| ospf_proto proto_item ';'
|
||||
| ospf_proto proto_item ';'
|
||||
| ospf_proto ospf_area ';'
|
||||
| ospf_proto RFC1583COMPAT bool ';' { OSPF_CFG->rfc1583 = $3; }
|
||||
;
|
||||
|
||||
ospf_area: AREA idval {
|
||||
|
@ -61,6 +61,7 @@ ospf_init(struct proto_config *c)
|
||||
{
|
||||
struct proto *p = proto_new(c, sizeof(struct proto_ospf));
|
||||
struct proto_ospf *po=(struct proto_ospf *)p;
|
||||
struct ospf_config *oc=(struct ospf_config *)c;
|
||||
|
||||
debug("OSPF: Init requested.\n");
|
||||
p->import_control = ospf_import_control;
|
||||
@ -71,6 +72,8 @@ ospf_init(struct proto_config *c)
|
||||
p->rte_better = ospf_rte_better;
|
||||
p->rte_same = ospf_rte_same;
|
||||
|
||||
po->rfc1583=oc->rfc1583;
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
|
@ -47,6 +47,7 @@
|
||||
|
||||
struct ospf_config {
|
||||
struct proto_config c;
|
||||
int rfc1583;
|
||||
u32 area; /* FIXME: Area ID !!! This is wrong !!!
|
||||
* Should respect interface */
|
||||
};
|
||||
@ -345,6 +346,7 @@ struct proto_ospf {
|
||||
list area_list;
|
||||
int areano; /* Number of area I belong to */
|
||||
struct fib efib; /* FIB for external routes */
|
||||
int rfc1583;
|
||||
};
|
||||
|
||||
static int ospf_start(struct proto *p);
|
||||
|
Loading…
Reference in New Issue
Block a user