summaryrefslogtreecommitdiffstats
path: root/proto/ospf
diff options
context:
space:
mode:
Diffstat (limited to 'proto/ospf')
-rw-r--r--proto/ospf/ospf.c13
-rw-r--r--proto/ospf/ospf.h2
2 files changed, 14 insertions, 1 deletions
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c
index 2cbd964..1714992 100644
--- a/proto/ospf/ospf.c
+++ b/proto/ospf/ospf.c
@@ -67,6 +67,7 @@ ospf_init(struct proto_config *c)
p->if_notify = NULL;
init_list(&(po->iface_list));
init_list(&(po->area_list));
+ p->import_control = ospf_import_control;
return p;
}
@@ -116,6 +117,18 @@ ospf_postconfig(struct proto_config *c)
DBG( " OSPF: postconfig\n" );
}
+int
+ospf_import_control(struct proto *p, rte **new, ea_list **attrs, struct linpool *pool)
+{
+ int i;
+ rte *e=*new;
+ struct proto_ospf *po=(struct proto_ospf *)p;
+
+ if(p==e->attrs->proto) return -1;
+
+ return 0;
+}
+
struct protocol proto_ospf = {
name: "OSPF",
template: "ospf%d",
diff --git a/proto/ospf/ospf.h b/proto/ospf/ospf.h
index 8645e71..c7b48d0 100644
--- a/proto/ospf/ospf.h
+++ b/proto/ospf/ospf.h
@@ -351,7 +351,7 @@ static void ospf_preconfig(struct protocol *p, struct config *c);
static void ospf_postconfig(struct proto_config *c);
static int ospf_rte_better(struct rte *new, struct rte *old);
static int ospf_rte_same(struct rte *new, struct rte *old);
-
+int ospf_import_control(struct proto *p, rte **new, ea_list **attrs, struct linpool *pool);
#include "proto/ospf/hello.h"
#include "proto/ospf/packet.h"