diff --git a/TODO b/TODO index f681997c..3160b34f 100644 --- a/TODO +++ b/TODO @@ -8,6 +8,7 @@ Core * Fix router ID calculation * debug dump: dump router ID as well +* proto_report_state() ! - TOS not supported by kernel -> automatically drop routes with TOS<>0 diff --git a/lib/Modules b/lib/Modules index b347aa21..19a79000 100644 --- a/lib/Modules +++ b/lib/Modules @@ -25,3 +25,5 @@ string.h patmatch.c slists.c slists.h +event.c +event.h diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c index 0d8f1257..bb8f8afa 100644 --- a/sysdep/unix/io.c +++ b/sysdep/unix/io.c @@ -20,6 +20,7 @@ #include "lib/resource.h" #include "lib/timer.h" #include "lib/socket.h" +#include "lib/event.h" #include "nest/iface.h" #include "lib/unix.h" @@ -58,7 +59,7 @@ tm_dump(resource *r) { timer *t = (timer *) r; - debug("(code %p, data %p, "); + debug("(code %p, data %p, ", t->hook, t->data); if (t->randomize) debug("rand %d, ", t->randomize); if (t->recurrent) @@ -682,6 +683,7 @@ io_init(void) init_list(&near_timers); init_list(&far_timers); init_list(&sock_list); + init_list(&global_event_list); now = time(NULL); } @@ -701,6 +703,7 @@ io_loop(void) FD_ZERO(&wr); for(;;) { + ev_run_list(&global_event_list); now = time(NULL); tout = tm_first_shot(); if (tout <= now)