summaryrefslogtreecommitdiff
path: root/sysdep
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2022-03-18 22:05:50 +0100
committerMaria Matejka <mq@ucw.cz>2022-04-06 18:14:08 +0200
commit4a23ede2b056a41456790cc20a0c3d92a7137693 (patch)
tree179c6f0ae13604cb85e9f10729818ef0b131e9a1 /sysdep
parent0f68515263e91dd49b2d845cdff35af40c064dc2 (diff)
Protocols have their own explicit init routines
Diffstat (limited to 'sysdep')
-rw-r--r--sysdep/unix/Makefile2
-rw-r--r--sysdep/unix/krt.c13
-rw-r--r--sysdep/unix/main.c2
3 files changed, 15 insertions, 2 deletions
diff --git a/sysdep/unix/Makefile b/sysdep/unix/Makefile
index d0d36b5f..51ab98a9 100644
--- a/sysdep/unix/Makefile
+++ b/sysdep/unix/Makefile
@@ -2,6 +2,8 @@ src := alloc.c io.c krt.c log.c main.c random.c
obj := $(src-o-files)
$(all-daemon)
$(cf-local)
+$(call proto-build,kif_build)
+$(call proto-build,krt_build)
$(conf-y-targets): $(s)krt.Y
src := $(filter-out main.c, $(src))
diff --git a/sysdep/unix/krt.c b/sysdep/unix/krt.c
index 7d7ec7e6..bfd69b73 100644
--- a/sysdep/unix/krt.c
+++ b/sysdep/unix/krt.c
@@ -243,6 +243,13 @@ struct protocol proto_unix_iface = {
.copy_config = kif_copy_config
};
+void
+kif_build(void)
+{
+ proto_build(&proto_unix_iface);
+}
+
+
/*
* Tracing of routes
*/
@@ -1177,3 +1184,9 @@ struct protocol proto_unix_kernel = {
.dump = krt_dump,
#endif
};
+
+void
+krt_build(void)
+{
+ proto_build(&proto_unix_kernel);
+}
diff --git a/sysdep/unix/main.c b/sysdep/unix/main.c
index cdf0a310..71749324 100644
--- a/sysdep/unix/main.c
+++ b/sysdep/unix/main.c
@@ -906,8 +906,6 @@ main(int argc, char **argv)
open_pid_file();
protos_build();
- proto_build(&proto_unix_kernel);
- proto_build(&proto_unix_iface);
struct config *conf = read_config();