Event handlers no longer return re-queue flag. Instead of using it, justcall ev_schedule() on the same handler which should work perfectly now.
No more problems when events get scheduled during event processing.
ev_run() now returns whether the event has been requeued or not.ev_run_list() now returns number of events which remain in the list.
Events now return a value. If it's non-zero, the event is re-queuedfor processing in next event cycle. This can be used to prevent backgroundactions (hint: user commands) from hogging the CPU for too long time.
Real implementation of protocol state machines. Delayed startup/shutdownshould work now. Initial feeding of protocols by interfaces/routes isdone from the event queue to prevent unwanted recursion.
Grrr, forgot to commit the event routines themselves :|