+#if 0
+#define _alert_ "do you really want to remove monitoring?"
+#define sig_monitor_init_timeouts() ((void)0)
+#define sig_monitor_clean_timeouts() ((void)0)
+#define sig_monitor(to,cb,arg) (cb(0,arg))
+#endif
+
+#define EVENT_TIMEOUT_TOP ((uint64_t)-1)
+#define EVENT_TIMEOUT_CHILD ((uint64_t)10000)
+
+/** Internal shortcut for callback */
+typedef void (*job_cb_t)(int, void*);
+
+/** Description of a pending job */
+struct job
+{
+ struct job *next; /**< link to the next job enqueued */
+ void *group; /**< group of the request */
+ job_cb_t callback; /**< processing callback */
+ void *arg; /**< argument */
+ int timeout; /**< timeout in second for processing the request */
+ unsigned blocked: 1; /**< is an other request blocking this one ? */
+ unsigned dropped: 1; /**< is removed ? */
+};
+
+/** Description of handled event loops */
+struct events
+{
+ struct events *next;
+ struct sd_event *event;
+ uint64_t timeout;
+ unsigned runs: 1;
+};
+
+/** Description of threads */