summaryrefslogtreecommitdiff
path: root/nest/rt-dev.c
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-03-26 21:44:38 +0000
committerMartin Mares <mj@ucw.cz>1999-03-26 21:44:38 +0000
commit7e5f5ffdda7232048c4baf3fdec358afb494a29d (patch)
tree0cbc52ac45785f16175d04039a27aa133b4b2cf2 /nest/rt-dev.c
parent739ebd8e82b090ed91b3ebe77509ecd6784eca9a (diff)
Moved to a much more systematic way of configuring kernel protocols.
o Nothing is configured automatically. You _need_ to specify the kernel syncer in config file in order to get it started. o Syncing has been split to route syncer (protocol "Kernel") and interface syncer (protocol "Device"), device routes are generated by protocol "Direct" (now can exist in multiple instances, so that it will be possible to feed different device routes to different routing tables once multiple tables get supported). See doc/bird.conf.example for a living example of these shiny features.
Diffstat (limited to 'nest/rt-dev.c')
-rw-r--r--nest/rt-dev.c20
1 files changed, 2 insertions, 18 deletions
diff --git a/nest/rt-dev.c b/nest/rt-dev.c
index fcaabd8b..c122b967 100644
--- a/nest/rt-dev.c
+++ b/nest/rt-dev.c
@@ -18,8 +18,6 @@
#include "conf/conf.h"
#include "lib/resource.h"
-struct proto_config *cf_dev_proto;
-
static void
dev_if_notify(struct proto *p, unsigned c, struct iface *new, struct iface *old)
{
@@ -77,22 +75,8 @@ dev_init(struct proto_config *c)
return p;
}
-static void
-dev_preconfig(struct protocol *x, struct config *c)
-{
- struct rt_dev_config *p = proto_config_new(&proto_device, sizeof(struct rt_dev_config));
- struct iface_patt *k = cfg_alloc(sizeof(struct iface_patt));
-
- cf_dev_proto = &p->c;
- p->c.preference = DEF_PREF_DIRECT;
- init_list(&p->iface_list);
- k->pattern = "*";
- add_tail(&p->iface_list, &k->n);
-}
-
struct protocol proto_device = {
- name: "Device",
- priority: 100,
- preconfig: dev_preconfig,
+ name: "Direct",
+ priority: 90,
init: dev_init,
};